	.file	"262433.c"
	.intel_syntax noprefix
	.text
	.globl	X_SIZE_VALUE
	.bss
	.align 4
	.type	X_SIZE_VALUE, @object
	.size	X_SIZE_VALUE, 4
X_SIZE_VALUE:
	.zero	4
	.globl	overflow_mode
	.data
	.align 4
	.type	overflow_mode, @object
	.size	overflow_mode, 4
overflow_mode:
	.long	1
	.globl	rounding_mode
	.bss
	.align 4
	.type	rounding_mode, @object
	.size	rounding_mode, 4
rounding_mode:
	.zero	4
	.text
	.globl	__DSVERIFIER_assume
	.type	__DSVERIFIER_assume, @function
__DSVERIFIER_assume:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -4[rbp]
	mov	edi, eax
	mov	eax, 0
	call	__CPROVER_assume@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	__DSVERIFIER_assume, .-__DSVERIFIER_assume
	.section	.rodata
	.align 8
.LC0:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/core/compatibility.h"
.LC1:
	.string	"expression"
	.text
	.globl	__DSVERIFIER_assert
	.type	__DSVERIFIER_assert, @function
__DSVERIFIER_assert:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, edi
	mov	BYTE PTR -4[rbp], al
	cmp	BYTE PTR -4[rbp], 0
	jne	.L4
	lea	rcx, __PRETTY_FUNCTION__.21[rip]
	mov	edx, 36
	lea	rsi, .LC0[rip]
	lea	rdi, .LC1[rip]
	call	__assert_fail@PLT
.L4:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	__DSVERIFIER_assert, .-__DSVERIFIER_assert
	.section	.rodata
.LC2:
	.string	"%s"
	.text
	.globl	__DSVERIFIER_assert_msg
	.type	__DSVERIFIER_assert_msg, @function
__DSVERIFIER_assert_msg:
.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, 16
	mov	eax, edi
	mov	QWORD PTR -16[rbp], rsi
	mov	BYTE PTR -4[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rax
	lea	rdi, .LC2[rip]
	mov	eax, 0
	call	printf@PLT
	cmp	BYTE PTR -4[rbp], 0
	jne	.L7
	lea	rcx, __PRETTY_FUNCTION__.20[rip]
	mov	edx, 41
	lea	rsi, .LC0[rip]
	lea	rdi, .LC1[rip]
	call	__assert_fail@PLT
.L7:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	__DSVERIFIER_assert_msg, .-__DSVERIFIER_assert_msg
	.globl	_fxp_one
	.bss
	.align 8
	.type	_fxp_one, @object
	.size	_fxp_one, 8
_fxp_one:
	.zero	8
	.globl	_fxp_half
	.align 8
	.type	_fxp_half, @object
	.size	_fxp_half, 8
_fxp_half:
	.zero	8
	.globl	_fxp_minus_one
	.align 8
	.type	_fxp_minus_one, @object
	.size	_fxp_minus_one, 8
_fxp_minus_one:
	.zero	8
	.globl	_fxp_min
	.align 8
	.type	_fxp_min, @object
	.size	_fxp_min, 8
_fxp_min:
	.zero	8
	.globl	_fxp_max
	.align 8
	.type	_fxp_max, @object
	.size	_fxp_max, 8
_fxp_max:
	.zero	8
	.globl	_dbl_max
	.align 8
	.type	_dbl_max, @object
	.size	_dbl_max, 8
_dbl_max:
	.zero	8
	.globl	_dbl_min
	.align 8
	.type	_dbl_min, @object
	.size	_dbl_min, 8
_dbl_min:
	.zero	8
	.globl	_fxp_fmask
	.align 8
	.type	_fxp_fmask, @object
	.size	_fxp_fmask, 8
_fxp_fmask:
	.zero	8
	.globl	_fxp_imask
	.align 8
	.type	_fxp_imask, @object
	.size	_fxp_imask, 8
_fxp_imask:
	.zero	8
	.section	.rodata
	.align 32
	.type	scale_factor, @object
	.size	scale_factor, 248
scale_factor:
	.long	0
	.long	1072693248
	.long	0
	.long	1073741824
	.long	0
	.long	1074790400
	.long	0
	.long	1075838976
	.long	0
	.long	1076887552
	.long	0
	.long	1077936128
	.long	0
	.long	1078984704
	.long	0
	.long	1080033280
	.long	0
	.long	1081081856
	.long	0
	.long	1082130432
	.long	0
	.long	1083179008
	.long	0
	.long	1084227584
	.long	0
	.long	1085276160
	.long	0
	.long	1086324736
	.long	0
	.long	1087373312
	.long	0
	.long	1088421888
	.long	0
	.long	1089470464
	.long	0
	.long	1090519040
	.long	0
	.long	1091567616
	.long	0
	.long	1092616192
	.long	0
	.long	1093664768
	.long	0
	.long	1094713344
	.long	0
	.long	1095761920
	.long	0
	.long	1096810496
	.long	0
	.long	1097859072
	.long	0
	.long	1098907648
	.long	0
	.long	1099956224
	.long	0
	.long	1101004800
	.long	0
	.long	1102053376
	.long	0
	.long	1103101952
	.long	0
	.long	1104150528
	.align 32
	.type	scale_factor_inv, @object
	.size	scale_factor_inv, 248
scale_factor_inv:
	.long	0
	.long	1072693248
	.long	0
	.long	1071644672
	.long	0
	.long	1070596096
	.long	0
	.long	1069547520
	.long	0
	.long	1068498944
	.long	0
	.long	1067450368
	.long	0
	.long	1066401792
	.long	0
	.long	1065353216
	.long	0
	.long	1064304640
	.long	0
	.long	1063256064
	.long	0
	.long	1062207488
	.long	0
	.long	1061158912
	.long	0
	.long	1060110336
	.long	0
	.long	1059061760
	.long	0
	.long	1058013184
	.long	0
	.long	1056964608
	.long	147574
	.long	1055916032
	.long	-295148
	.long	1054867455
	.long	442722
	.long	1053818880
	.long	442722
	.long	1052770304
	.long	-3836923
	.long	1051721727
	.long	-3836923
	.long	1050673151
	.long	-3836923
	.long	1049624575
	.long	16971005
	.long	1048576000
	.long	16971005
	.long	1047527424
	.long	-117173718
	.long	1046478847
	.long	-117173718
	.long	1045430271
	.long	243644596
	.long	1044381696
	.long	-721636628
	.long	1043333119
	.long	-721636628
	.long	1042284543
	.long	2057033325
	.long	1041235968
	.align 32
	.type	rand_uni, @object
	.size	rand_uni, 40000
rand_uni:
	.long	-1090980738
	.long	-1112175576
	.long	-1106268981
	.long	1050290517
	.long	1036740293
	.long	1064879289
	.long	1065104477
	.long	1057904025
	.long	1058341827
	.long	-1105391874
	.long	1053059208
	.long	-1096031224
	.long	1064997005
	.long	-1098026844
	.long	1053276161
	.long	-1103670874
	.long	1060153685
	.long	-1084269022
	.long	-1082623921
	.long	-1089152099
	.long	-1089971858
	.long	-1099598916
	.long	-1087529625
	.long	1051914755
	.long	-1101560469
	.long	1062690036
	.long	-1091405365
	.long	1059638621
	.long	-1087982995
	.long	-1082784013
	.long	-1113135698
	.long	1058999736
	.long	-1085745433
	.long	1019435440
	.long	1053364041
	.long	1061609359
	.long	1035087920
	.long	1063349407
	.long	1063397950
	.long	-1098958981
	.long	-1087313908
	.long	1058285497
	.long	-1082567766
	.long	-1108276165
	.long	-1086763766
	.long	-1091084444
	.long	-1085128895
	.long	-1091870424
	.long	1041742704
	.long	1055095857
	.long	-1096370585
	.long	1057705193
	.long	-1104590464
	.long	1040973022
	.long	1057691271
	.long	1055864390
	.long	-1095576813
	.long	-1087832828
	.long	1063848842
	.long	1064699740
	.long	-1085717922
	.long	1050443251
	.long	1057146058
	.long	1036170702
	.long	1043458992
	.long	1041495254
	.long	1016835224
	.long	-1097256952
	.long	1050334643
	.long	-1086652520
	.long	1060129563
	.long	1040855016
	.long	1057530281
	.long	-1156296968
	.long	-1089489913
	.long	1055300184
	.long	-1089353932
	.long	1064584069
	.long	-1098726324
	.long	-1086159967
	.long	-1084558434
	.long	-1105796200
	.long	-1097153790
	.long	-1088136037
	.long	-1094968157
	.long	1056690938
	.long	-1089811181
	.long	-1083165686
	.long	1060051278
	.long	1050076832
	.long	1004086943
	.long	-1083287383
	.long	1042023236
	.long	1059961369
	.long	-1089932017
	.long	1064213982
	.long	-1122769874
	.long	-1084694163
	.long	-1082534712
	.long	1059033125
	.long	-1087813048
	.long	1060730859
	.long	1050505517
	.long	1005731364
	.long	-1094086494
	.long	1023443447
	.long	1033720214
	.long	-1087967840
	.long	1063074669
	.long	-1089027007
	.long	1056830924
	.long	-1084263516
	.long	1064997214
	.long	-1090437037
	.long	-1091781398
	.long	1013462154
	.long	1061487913
	.long	1064434379
	.long	-1085783916
	.long	-1084945539
	.long	1061085669
	.long	-1087214440
	.long	-1115018716
	.long	-1107539666
	.long	-1095244881
	.long	-1094079747
	.long	1054997360
	.long	-1084992721
	.long	-1097179506
	.long	-1082193925
	.long	1064256557
	.long	-1097819440
	.long	-1083345928
	.long	-1092631710
	.long	-1095202339
	.long	1064506801
	.long	1057011326
	.long	1062010719
	.long	-1090327798
	.long	1050565392
	.long	-1101775798
	.long	1064188676
	.long	-1085871250
	.long	-1090877093
	.long	-1106652338
	.long	1049776288
	.long	1044034835
	.long	-1089778989
	.long	1049530284
	.long	-1089574061
	.long	1058290743
	.long	1040834867
	.long	1058690157
	.long	-1105506895
	.long	1043924977
	.long	-1087975760
	.long	1049620521
	.long	-1089176069
	.long	1060116763
	.long	1049562456
	.long	-1084589500
	.long	-1089971946
	.long	-1085130923
	.long	-1103519824
	.long	-1082400569
	.long	-1111129859
	.long	1063355442
	.long	1037186736
	.long	1063568378
	.long	-1098596375
	.long	1060308102
	.long	1053707835
	.long	-1109212671
	.long	1034768304
	.long	1062345615
	.long	1061923599
	.long	-1090681976
	.long	1049352786
	.long	-1098295281
	.long	1047366845
	.long	1060222933
	.long	1063003581
	.long	1064673460
	.long	-1093103650
	.long	-1109360283
	.long	1054719639
	.long	1060219822
	.long	1052752822
	.long	-1097442375
	.long	-1094001525
	.long	-1115589625
	.long	-1125542376
	.long	1062531190
	.long	-1089704622
	.long	1061861361
	.long	1051099679
	.long	1042219100
	.long	-1108989595
	.long	-1087593042
	.long	1059360412
	.long	-1088577714
	.long	-1096472376
	.long	-1093561192
	.long	1057771088
	.long	-1094332377
	.long	-1114119013
	.long	1058971827
	.long	-1085222409
	.long	1064775246
	.long	1059035048
	.long	-1085659782
	.long	1060936615
	.long	-1126385027
	.long	1001574693
	.long	-1096702703
	.long	-1083974080
	.long	-1084321697
	.long	-1094493936
	.long	-1109376765
	.long	1040619167
	.long	-1100018138
	.long	1059653825
	.long	1057692424
	.long	-1094387449
	.long	-1083582038
	.long	1061445852
	.long	-1108620992
	.long	-1086473013
	.long	-1116243746
	.long	-1085164901
	.long	-1093554385
	.long	1058213156
	.long	-1120632006
	.long	1064232057
	.long	1048957199
	.long	-1084138823
	.long	1051253855
	.long	1057785276
	.long	1059232672
	.long	-1088656197
	.long	1055561923
	.long	1053521159
	.long	1060520394
	.long	1061698262
	.long	-1153102175
	.long	1053095354
	.long	1062167264
	.long	1055384860
	.long	-1103392919
	.long	-1086230730
	.long	-1088768598
	.long	-1085717025
	.long	-1092703853
	.long	-1087518508
	.long	-1094505294
	.long	-1089137427
	.long	-1120532074
	.long	1039011275
	.long	-1095059595
	.long	-1084992702
	.long	-1098619933
	.long	-1083639004
	.long	1056987373
	.long	1022490082
	.long	-1091465724
	.long	1057574509
	.long	-1096689007
	.long	-1104349986
	.long	1064864162
	.long	-1085254036
	.long	-1112514868
	.long	1063118236
	.long	1057568025
	.long	-1085369128
	.long	-1088383176
	.long	-1087388104
	.long	1019473070
	.long	1057391214
	.long	1062569529
	.long	-1090060453
	.long	1040588034
	.long	-1085649984
	.long	1053586973
	.long	1040763984
	.long	-1103514382
	.long	1054284344
	.long	-1088421851
	.long	-1097454853
	.long	1010465629
	.long	-1084103735
	.long	-1084080781
	.long	1055004481
	.long	-1092564044
	.long	1063223340
	.long	1059663131
	.long	1009437053
	.long	1058833930
	.long	-1099852117
	.long	1045711641
	.long	1063418666
	.long	1040409012
	.long	-1097775037
	.long	1047747199
	.long	1058813470
	.long	-1088421293
	.long	-1082724185
	.long	-1096453257
	.long	1064707786
	.long	-1085593648
	.long	-1084749075
	.long	1050727010
	.long	-1101958715
	.long	1061214592
	.long	1042581728
	.long	-1088051683
	.long	-1102075866
	.long	1059449452
	.long	-1098528731
	.long	1042313524
	.long	1053789599
	.long	1047130836
	.long	1064889301
	.long	1049862680
	.long	-1113348555
	.long	1063959689
	.long	-1097927155
	.long	-1102031732
	.long	-1089954654
	.long	1057695456
	.long	1063351880
	.long	-1089685496
	.long	1012214508
	.long	-1089599008
	.long	-1094564282
	.long	-1146888239
	.long	1053928943
	.long	-1089169765
	.long	1062409750
	.long	-1098768917
	.long	1059575306
	.long	1059130444
	.long	-1087330811
	.long	-1087963089
	.long	1043195251
	.long	1064052303
	.long	1051992247
	.long	1063278586
	.long	-1090292782
	.long	-1088398697
	.long	-1086581584
	.long	1048280378
	.long	-1084215153
	.long	-1094257659
	.long	1011885356
	.long	-1123577871
	.long	-1093035517
	.long	1021753465
	.long	1048959908
	.long	1064510686
	.long	1064005105
	.long	1057040162
	.long	1034376718
	.long	1050923756
	.long	1047171104
	.long	-1118701853
	.long	-1114129971
	.long	-1110994531
	.long	1057514493
	.long	-1090756830
	.long	1056725401
	.long	-1097580155
	.long	1047176778
	.long	1060279566
	.long	1063689843
	.long	1064844874
	.long	-1088536598
	.long	-1089961341
	.long	-1083171359
	.long	1063451848
	.long	1056922600
	.long	1064918787
	.long	-1102302604
	.long	1060744018
	.long	-1125821916
	.long	-1083986230
	.long	-1092122572
	.long	-1090947991
	.long	-1089225433
	.long	1061618703
	.long	1053277685
	.long	-1088924150
	.long	-1084735719
	.long	-1083895063
	.long	1029963625
	.long	1045272046
	.long	1056334694
	.long	-1112609010
	.long	1057376202
	.long	-1084138799
	.long	-1107100041
	.long	-1083316990
	.long	1047453695
	.long	-1085883962
	.long	1064570154
	.long	-1084069879
	.long	-1090448114
	.long	-1089738461
	.long	1062880631
	.long	1064476148
	.long	-1087689805
	.long	1061473312
	.long	1062513771
	.long	-1086818322
	.long	1061353755
	.long	1051613023
	.long	1051429696
	.long	1056632517
	.long	-1089361596
	.long	-1097363524
	.long	1065014969
	.long	1059048869
	.long	1057868974
	.long	-1095372371
	.long	1049167335
	.long	1065116897
	.long	-1086460835
	.long	1057979279
	.long	-1088797863
	.long	-1084229752
	.long	-1124410693
	.long	1064734905
	.long	1057716630
	.long	-1106692893
	.long	1032536506
	.long	-1105188948
	.long	-1113301772
	.long	1062943777
	.long	1041396263
	.long	1053740761
	.long	-1103670427
	.long	1061506595
	.long	-1103360256
	.long	-1095863642
	.long	1046372556
	.long	-1104198514
	.long	1040354746
	.long	-1088008341
	.long	-1110826475
	.long	1050313670
	.long	1064383027
	.long	1023698376
	.long	-1089179316
	.long	-1082727482
	.long	1063969696
	.long	1055023305
	.long	-1087415912
	.long	-1093240012
	.long	1058941707
	.long	1063627605
	.long	1047600450
	.long	1015561787
	.long	1064486362
	.long	-1082783307
	.long	-1122098141
	.long	-1082983738
	.long	1060961132
	.long	1058873139
	.long	-1088724921
	.long	1062421453
	.long	1064222595
	.long	-1104341906
	.long	-1093497400
	.long	1057813381
	.long	-1117383274
	.long	-1089518059
	.long	-1086851664
	.long	1063438762
	.long	-1095075469
	.long	-1084821251
	.long	1049096184
	.long	1053418887
	.long	-1098230366
	.long	-1084389426
	.long	-1090035038
	.long	-1103607851
	.long	1058167888
	.long	-1085915989
	.long	1048613692
	.long	-1101073737
	.long	1035508024
	.long	-1096241900
	.long	1052482083
	.long	-1085863150
	.long	1059562465
	.long	-1084103266
	.long	-1088612938
	.long	-1083363259
	.long	1038385206
	.long	1033206008
	.long	1061828538
	.long	1061736922
	.long	-1082973202
	.long	1050870393
	.long	1060858224
	.long	1061776802
	.long	-1106646470
	.long	1060876463
	.long	1064991011
	.long	1065219141
	.long	-1096590235
	.long	1064655799
	.long	1057208183
	.long	1037083771
	.long	1059357974
	.long	-1104226259
	.long	1048654923
	.long	-1086134696
	.long	1060724713
	.long	1063497236
	.long	-1085720968
	.long	-1088930735
	.long	1062084885
	.long	-1082289425
	.long	1056427702
	.long	1061114463
	.long	-1085069043
	.long	1057686188
	.long	-1101673974
	.long	-1096755133
	.long	1064406591
	.long	-1110298229
	.long	-1083008501
	.long	-1089562184
	.long	1054251759
	.long	1048616744
	.long	1058067169
	.long	1040299911
	.long	-1129395501
	.long	1051670153
	.long	-1097632067
	.long	1039692580
	.long	1055381925
	.long	1057726636
	.long	-1088572479
	.long	-1123862686
	.long	-1093854960
	.long	1032032772
	.long	-1087600371
	.long	1064547288
	.long	-1099450826
	.long	1023666826
	.long	-1092224090
	.long	-1087002942
	.long	1021844704
	.long	1047518170
	.long	-1097715573
	.long	-1085600083
	.long	-1092628591
	.long	-1082866413
	.long	1058661764
	.long	1047816978
	.long	1043456260
	.long	1054883691
	.long	1053521274
	.long	1054686039
	.long	-1123365611
	.long	-1082695769
	.long	1063261962
	.long	-1116770576
	.long	1050059357
	.long	1045242239
	.long	1062444758
	.long	1049743896
	.long	-1143433210
	.long	1060026345
	.long	-1105485607
	.long	1027656974
	.long	-1099821776
	.long	-1084734577
	.long	1040802526
	.long	-1089062062
	.long	1032964689
	.long	1050646269
	.long	-1095175396
	.long	1061174419
	.long	1033668759
	.long	1063649720
	.long	1053549847
	.long	-1090256562
	.long	-1102996788
	.long	-1089387742
	.long	-1088137946
	.long	-1111183487
	.long	-1085619186
	.long	1062063068
	.long	-1100013694
	.long	-1083933589
	.long	1060446719
	.long	-1085783026
	.long	-1105204711
	.long	-1089785240
	.long	1058065828
	.long	-1086195719
	.long	-1088630866
	.long	-1086050811
	.long	1058434742
	.long	-1097875199
	.long	-1091945527
	.long	1034990474
	.long	-1088558332
	.long	1039755064
	.long	-1092130034
	.long	-1088536878
	.long	-1097704092
	.long	1038039838
	.long	-1088493104
	.long	-1098284771
	.long	-1086799897
	.long	-1105882930
	.long	-1087809405
	.long	1063704147
	.long	1046729753
	.long	1059977791
	.long	1064929767
	.long	1057559964
	.long	-1089473053
	.long	1052576338
	.long	-1125667888
	.long	-1114210070
	.long	1060877328
	.long	-1090278252
	.long	-1084633373
	.long	1059354664
	.long	1039336656
	.long	-1083690453
	.long	1061817884
	.long	-1086830332
	.long	1049392348
	.long	1062503181
	.long	1060644730
	.long	-1085120680
	.long	-1084812211
	.long	1059494558
	.long	1052973825
	.long	1051658665
	.long	-1159422238
	.long	-1101165940
	.long	1059951128
	.long	-1086346629
	.long	-1085156046
	.long	1058993349
	.long	1056013650
	.long	1054208054
	.long	-1082288518
	.long	-1090353919
	.long	1060416712
	.long	1060707137
	.long	-1088732661
	.long	-1084284732
	.long	-1087800130
	.long	-1101775365
	.long	-1098078640
	.long	1050825735
	.long	1051252996
	.long	-1082695394
	.long	-1087731824
	.long	1039329634
	.long	1047432495
	.long	-1106347698
	.long	-1083197251
	.long	-1089596538
	.long	-1088674982
	.long	-1094846787
	.long	-1091826160
	.long	1021533982
	.long	-1099472080
	.long	-1082285286
	.long	1038743984
	.long	-1083397392
	.long	1047764080
	.long	-1088581915
	.long	1045321026
	.long	-1088843016
	.long	1065057768
	.long	1040234461
	.long	-1083929803
	.long	1057192655
	.long	1047187970
	.long	1054380828
	.long	1041926869
	.long	1055211169
	.long	1052494052
	.long	-1088744984
	.long	1049411674
	.long	-1084456109
	.long	-1086634970
	.long	1043286953
	.long	1048603968
	.long	-1088676666
	.long	-1088180336
	.long	-1086953921
	.long	-1089850771
	.long	-1082761904
	.long	1061982002
	.long	1058954093
	.long	-1088776464
	.long	-1086310638
	.long	-1092788390
	.long	-1089159729
	.long	1040839150
	.long	1051322896
	.long	-1104081223
	.long	-1092688041
	.long	-1087342660
	.long	1054140678
	.long	-1096103294
	.long	1049560614
	.long	-1121909913
	.long	1007393599
	.long	-1084584852
	.long	1057400928
	.long	-1091235314
	.long	-1089095657
	.long	1059972109
	.long	1024886158
	.long	-1088567173
	.long	-1083592677
	.long	-1100837113
	.long	-1091259858
	.long	-1107137233
	.long	1063091482
	.long	1062298361
	.long	1055151783
	.long	-1088481694
	.long	-1089105324
	.long	1060633991
	.long	-1095960361
	.long	1002076311
	.long	-1089738123
	.long	1037053895
	.long	-1085561394
	.long	-1098971836
	.long	-1108928425
	.long	-1095541956
	.long	-1083625846
	.long	1051780555
	.long	-1089691814
	.long	1060517598
	.long	1049695675
	.long	1025812373
	.long	1049221217
	.long	1053883164
	.long	-1097009428
	.long	1064303450
	.long	1065221588
	.long	1059974975
	.long	1059658391
	.long	1063730096
	.long	-1083148606
	.long	-1101511839
	.long	1053661318
	.long	-1122444415
	.long	-1101649508
	.long	-1091057414
	.long	-1084464839
	.long	1062786410
	.long	1049849400
	.long	1053886095
	.long	-1086814420
	.long	1059033325
	.long	1057694346
	.long	-1095081599
	.long	-1083919964
	.long	-1086198145
	.long	-1090092613
	.long	-1082368424
	.long	-1089318613
	.long	1064190830
	.long	-1098140480
	.long	1065056845
	.long	1050182212
	.long	1064051775
	.long	1063963975
	.long	1062785706
	.long	1032024728
	.long	1049574855
	.long	1058507426
	.long	1052120374
	.long	1062665820
	.long	1046540905
	.long	-1103973099
	.long	1060465507
	.long	-1100614701
	.long	1059938075
	.long	-1083727173
	.long	-1088378955
	.long	1049035042
	.long	1039771628
	.long	-1087081694
	.long	1048094500
	.long	-1096915402
	.long	-1091196019
	.long	-1086819055
	.long	-1091847186
	.long	1061564496
	.long	1055354046
	.long	-1096659766
	.long	1042070794
	.long	-1101621624
	.long	1060076922
	.long	-1090374497
	.long	1058610613
	.long	1053313130
	.long	1064756702
	.long	1051470986
	.long	-1122588563
	.long	-1087687841
	.long	1043181906
	.long	-1092501251
	.long	1052010614
	.long	1050271074
	.long	1055762981
	.long	1051687598
	.long	-1085955156
	.long	1057367058
	.long	1064023172
	.long	1051113864
	.long	1065348665
	.long	-1109550786
	.long	-1087105496
	.long	-1086084468
	.long	1042098524
	.long	1053635230
	.long	1024755268
	.long	1058686962
	.long	-1149109409
	.long	1050149079
	.long	1058037987
	.long	1062831600
	.long	1060311350
	.long	-1090228479
	.long	1056585337
	.long	-1084424430
	.long	1024501206
	.long	1051799264
	.long	1064753772
	.long	1052095854
	.long	1062103699
	.long	1059905427
	.long	1035139716
	.long	-1088919838
	.long	1061465051
	.long	1054429019
	.long	-1096960691
	.long	1062034070
	.long	-1095614247
	.long	-1083991677
	.long	-1088954111
	.long	-1087676540
	.long	1061302237
	.long	1057232088
	.long	-1095227114
	.long	1058108410
	.long	1061013018
	.long	1048921063
	.long	1064643017
	.long	-1087749176
	.long	1061481532
	.long	-1112382846
	.long	-1095127335
	.long	-1093490628
	.long	1060325881
	.long	1058528601
	.long	1060535502
	.long	1054067646
	.long	-1084344986
	.long	-1087089454
	.long	1056867229
	.long	-1155939501
	.long	1060155674
	.long	-1084642548
	.long	1050765226
	.long	1060473129
	.long	1054885813
	.long	1061968238
	.long	1051288979
	.long	1058324565
	.long	1055278686
	.long	-1091769344
	.long	1058772050
	.long	1035467605
	.long	-1086109521
	.long	1063601656
	.long	-1086286917
	.long	-1111776631
	.long	-1083703400
	.long	1047184429
	.long	1053647696
	.long	-1087163613
	.long	1064512632
	.long	1055050863
	.long	-1084871787
	.long	1064689851
	.long	-1089031925
	.long	-1085034960
	.long	1052229528
	.long	1064736088
	.long	-1083254636
	.long	-1085652335
	.long	1053678988
	.long	-1113760868
	.long	1060790319
	.long	-1098597192
	.long	-1099643193
	.long	-1123249707
	.long	-1090508020
	.long	1046108419
	.long	-1085382485
	.long	-1095661553
	.long	1058528201
	.long	-1084240873
	.long	1053505021
	.long	-1083812199
	.long	1059407798
	.long	1060723789
	.long	1057062443
	.long	-1088961963
	.long	1044620531
	.long	1051250284
	.long	1059275629
	.long	1047132651
	.long	1051950404
	.long	1056818500
	.long	1025191880
	.long	-1089534505
	.long	-1120019688
	.long	-1087165575
	.long	-1086698842
	.long	-1103210871
	.long	1064839116
	.long	-1121817156
	.long	1065254622
	.long	-1110155038
	.long	-1107643323
	.long	-1082919511
	.long	-1096890572
	.long	1053269766
	.long	1060288339
	.long	-1089396902
	.long	-1085356159
	.long	1050101363
	.long	1052062689
	.long	-1122654519
	.long	-1092743355
	.long	-1108990801
	.long	-1086989741
	.long	-1086321572
	.long	-1093138923
	.long	-1111365402
	.long	-1101785656
	.long	-1086956453
	.long	-1086108223
	.long	1059795011
	.long	1063252907
	.long	1060893083
	.long	1033042982
	.long	-1088008453
	.long	1060490796
	.long	-1085638669
	.long	-1088689463
	.long	1042412437
	.long	1049375841
	.long	1037028131
	.long	-1095821364
	.long	1052224766
	.long	1054145733
	.long	1061331216
	.long	1042830372
	.long	1057968689
	.long	1045831524
	.long	-1098380131
	.long	1042899123
	.long	1058827473
	.long	-1088401244
	.long	-1108408345
	.long	-1087219003
	.long	1029658318
	.long	1054956015
	.long	1045375688
	.long	-1094904223
	.long	1063707112
	.long	1048778211
	.long	-1087604845
	.long	1037979600
	.long	-1082783184
	.long	-1098746492
	.long	1057868865
	.long	1038274934
	.long	-1089051949
	.long	1061775006
	.long	1044015453
	.long	1053570104
	.long	1054660224
	.long	1058424580
	.long	-1088101910
	.long	1044377004
	.long	1057245477
	.long	-1098060367
	.long	-1083243207
	.long	-1086027621
	.long	996319736
	.long	-1089078139
	.long	1055741517
	.long	1059758638
	.long	-1094089033
	.long	-1098566850
	.long	-1097270215
	.long	-1099149346
	.long	1064862888
	.long	-1090998579
	.long	-1091976265
	.long	-1098430838
	.long	-1092445618
	.long	1030740281
	.long	1064611147
	.long	1059511771
	.long	1059776562
	.long	-1103701586
	.long	1061066043
	.long	-1111151540
	.long	-1089870979
	.long	-1084737030
	.long	1038060197
	.long	-1084441402
	.long	-1091225183
	.long	1059413509
	.long	1051782773
	.long	1064188961
	.long	-1102563492
	.long	1064144265
	.long	1029246700
	.long	-1089894201
	.long	1034354292
	.long	-1090034352
	.long	-1113282835
	.long	1060692311
	.long	-1108615200
	.long	1053326702
	.long	1058795046
	.long	-1086720526
	.long	-1083404300
	.long	-1093056733
	.long	-1083264587
	.long	-1087500753
	.long	1053561975
	.long	-1094010627
	.long	1063860333
	.long	1062512164
	.long	1056484412
	.long	-1088256229
	.long	1057943426
	.long	1042089625
	.long	-1093243743
	.long	-1082761047
	.long	1056942290
	.long	1061540687
	.long	1056525237
	.long	-1087492162
	.long	-1082405751
	.long	1034183932
	.long	-1109552980
	.long	1049321838
	.long	1059500834
	.long	-1085406792
	.long	1061629958
	.long	1063156988
	.long	-1101339399
	.long	-1097582723
	.long	-1099016621
	.long	-1098105449
	.long	-1098144768
	.long	-1084617163
	.long	1061627592
	.long	1058818935
	.long	-1085050894
	.long	-1163852103
	.long	-1098876774
	.long	-1123500081
	.long	1058019530
	.long	1060074418
	.long	1063838617
	.long	-1087385197
	.long	1060320369
	.long	-1082539837
	.long	1038344991
	.long	1023428087
	.long	-1103218225
	.long	-1089043946
	.long	-1089355291
	.long	-1092743348
	.long	1061070158
	.long	1062203881
	.long	-1084882966
	.long	1053917052
	.long	1052426214
	.long	-1090074504
	.long	-1111335655
	.long	-1086980480
	.long	-1102327827
	.long	1048569514
	.long	1061984316
	.long	-1082564434
	.long	-1082752645
	.long	-1116783643
	.long	1032511224
	.long	1058977699
	.long	1058653950
	.long	-1096380189
	.long	1006150806
	.long	-1106746392
	.long	-1096813576
	.long	-1113967264
	.long	1061406403
	.long	1045709806
	.long	-1082706225
	.long	1057406626
	.long	1052464286
	.long	-1083812957
	.long	1050280783
	.long	1049651319
	.long	-1091712946
	.long	-1085592511
	.long	-1095928647
	.long	1059096311
	.long	-1088437711
	.long	-1090456829
	.long	1051569186
	.long	-1083457522
	.long	-1086268847
	.long	-1089492440
	.long	1046323230
	.long	-1102826726
	.long	1058863440
	.long	1039701678
	.long	-1091286103
	.long	1058748830
	.long	1064890324
	.long	998857678
	.long	1061779276
	.long	1060604996
	.long	-1089222214
	.long	1051478739
	.long	-1084854430
	.long	-1087048496
	.long	1059570971
	.long	-1085494968
	.long	1062080849
	.long	1053792745
	.long	1056465502
	.long	1024526952
	.long	1061574129
	.long	1053494455
	.long	1054295848
	.long	-1089771921
	.long	-1085836716
	.long	-1106991944
	.long	1047158816
	.long	1059808429
	.long	-1105017602
	.long	-1104147002
	.long	1059902432
	.long	-1102164427
	.long	-1103209683
	.long	1048185070
	.long	1050598937
	.long	-1115019096
	.long	1041066776
	.long	1049223361
	.long	1039713578
	.long	1043115335
	.long	1058325452
	.long	1056948117
	.long	-1086462772
	.long	-1096858812
	.long	-1098448041
	.long	1043911087
	.long	-1085472680
	.long	-1082970904
	.long	1040856838
	.long	1046117446
	.long	-1087424630
	.long	-1098750033
	.long	-1098554620
	.long	-1086197136
	.long	-1106670474
	.long	-1087169039
	.long	1040925633
	.long	1052108360
	.long	-1086951855
	.long	-1086660364
	.long	1051028830
	.long	-1086855492
	.long	1062127119
	.long	1049895899
	.long	-1089533579
	.long	-1088978694
	.long	-1083892829
	.long	-1095384536
	.long	-1106141104
	.long	-1087969739
	.long	1044059210
	.long	-1102699832
	.long	-1089846617
	.long	-1097198807
	.long	1039460608
	.long	1063605162
	.long	-1093409964
	.long	-1101656338
	.long	1062133581
	.long	1034051347
	.long	1050750561
	.long	1057008092
	.long	-1119733156
	.long	-1093635205
	.long	1061949406
	.long	1063715680
	.long	-1085765601
	.long	-1088980417
	.long	1059115299
	.long	-1092040738
	.long	-1089028897
	.long	1048605854
	.long	-1089138164
	.long	-1105920808
	.long	-1088268589
	.long	1059782087
	.long	1063235201
	.long	1054480568
	.long	-1085829071
	.long	-1098397278
	.long	1061687909
	.long	1050403428
	.long	1045964650
	.long	1049616939
	.long	1032823049
	.long	1051674329
	.long	-1115865681
	.long	1043686943
	.long	1061187319
	.long	-1097932111
	.long	1060998846
	.long	-1095479608
	.long	-1086723385
	.long	-1089414768
	.long	-1085831215
	.long	-1085755561
	.long	1057679523
	.long	-1085309544
	.long	-1087269174
	.long	1063991963
	.long	-1094924165
	.long	1032200361
	.long	-1092582160
	.long	-1083406589
	.long	1063898913
	.long	-1082773896
	.long	1060905381
	.long	-1091723553
	.long	-1083872667
	.long	1051926630
	.long	1059424330
	.long	-1110064000
	.long	1051841487
	.long	-1098439637
	.long	1051720795
	.long	1062429745
	.long	1032293585
	.long	1063991995
	.long	-1082144520
	.long	-1083725052
	.long	1048348704
	.long	1039976262
	.long	-1097419032
	.long	-1105614711
	.long	1063745614
	.long	1057261921
	.long	1059673682
	.long	-1085749664
	.long	-1082388276
	.long	1047884476
	.long	-1090547541
	.long	986265643
	.long	-1085184631
	.long	1046645970
	.long	1038770365
	.long	-1086867465
	.long	-1086779352
	.long	-1082751216
	.long	1046166265
	.long	-1100493384
	.long	1057582113
	.long	1038408444
	.long	1059608372
	.long	-1099582052
	.long	1036580567
	.long	-1104048290
	.long	1054106162
	.long	1041704381
	.long	-1088015548
	.long	1063806313
	.long	-1090650001
	.long	-1111214306
	.long	-1087153226
	.long	1047774045
	.long	1064457581
	.long	1041431489
	.long	1032014562
	.long	1052866734
	.long	-1093409619
	.long	-1084834399
	.long	1017802253
	.long	1056183215
	.long	1062851868
	.long	1032704137
	.long	1062698871
	.long	-1098848020
	.long	1057169553
	.long	1062467343
	.long	-1093901312
	.long	1065340129
	.long	-1147630464
	.long	1049575612
	.long	-1087446702
	.long	1065154051
	.long	1004825654
	.long	-1093555660
	.long	-1102879674
	.long	-1105312140
	.long	1050446142
	.long	-1083425206
	.long	-1115743611
	.long	-1090477217
	.long	1052218351
	.long	1059955503
	.long	-1083133337
	.long	1058115222
	.long	1064578704
	.long	-1091305227
	.long	1013389424
	.long	1060693553
	.long	-1107033621
	.long	-1089110621
	.long	-1098761398
	.long	-1094190925
	.long	-1119171327
	.long	-1090976842
	.long	-1108938006
	.long	-1088694293
	.long	-1105897451
	.long	1061458043
	.long	1061850796
	.long	1017820065
	.long	-1090111505
	.long	-1102252384
	.long	-1084887806
	.long	-1100734728
	.long	1031591888
	.long	1047464254
	.long	-1089781348
	.long	-1088368738
	.long	-1086734058
	.long	-1098105547
	.long	1050942504
	.long	-1089563390
	.long	1048962997
	.long	1060263301
	.long	1045254566
	.long	-1094022729
	.long	1017178382
	.long	-1117628943
	.long	-1088940671
	.long	-1085215214
	.long	-1083834467
	.long	1063324949
	.long	1064508758
	.long	-1099204347
	.long	1057450476
	.long	1045326994
	.long	-1087974193
	.long	1058576285
	.long	-1087839504
	.long	-1101343522
	.long	-1088341522
	.long	-1117106773
	.long	1059402187
	.long	-1092087144
	.long	-1089155825
	.long	1059190655
	.long	1065209033
	.long	1060343377
	.long	-1084159850
	.long	-1097089667
	.long	1036417160
	.long	-1091670535
	.long	1062251244
	.long	-1089967894
	.long	1064523585
	.long	1050119776
	.long	-1102371106
	.long	1042472391
	.long	1037525850
	.long	-1091106037
	.long	1056755010
	.long	1049987255
	.long	1049707809
	.long	995375065
	.long	1061424634
	.long	-1113964510
	.long	-1087502080
	.long	1057772934
	.long	-1082196722
	.long	1061708673
	.long	1053492033
	.long	1062814601
	.long	1061159747
	.long	1060826491
	.long	-1129001884
	.long	-1090934510
	.long	-1093754956
	.long	-1114770445
	.long	1064464350
	.long	-1086627609
	.long	1045098142
	.long	-1096242981
	.long	-1088148098
	.long	1044299275
	.long	-1114141497
	.long	-1096087523
	.long	-1102821701
	.long	-1088294825
	.long	-1082145279
	.long	-1087532867
	.long	1049912410
	.long	1060254314
	.long	1064778853
	.long	-1102018180
	.long	-1102572834
	.long	1061108239
	.long	1060347754
	.long	-1090574026
	.long	1049888653
	.long	1049263648
	.long	-1106804370
	.long	1053124158
	.long	-1098391855
	.long	1050460253
	.long	-1084482759
	.long	-1130217539
	.long	1047473557
	.long	1054493467
	.long	-1090336144
	.long	-1088841294
	.long	-1082594878
	.long	1057496078
	.long	-1117861526
	.long	-1084473640
	.long	1033039151
	.long	-1082252466
	.long	1058427408
	.long	-1086993808
	.long	-1086955000
	.long	980248248
	.long	1051046913
	.long	-1105752595
	.long	1054354660
	.long	-1090315658
	.long	-1087968358
	.long	-1114009467
	.long	1060147674
	.long	1005062988
	.long	1058848394
	.long	-1103412739
	.long	-1091233614
	.long	1059146959
	.long	-1102149402
	.long	1055994226
	.long	1060416757
	.long	1057036693
	.long	-1099213476
	.long	-1127137222
	.long	1048214063
	.long	-1088491468
	.long	1040545337
	.long	-1121615509
	.long	1057529975
	.long	1058127683
	.long	-1129663063
	.long	-1095738288
	.long	1060283033
	.long	1046813774
	.long	1034413820
	.long	-1094593720
	.long	1049087053
	.long	-1087924376
	.long	-1082804113
	.long	-1090104539
	.long	-1096532892
	.long	1040732706
	.long	1045550714
	.long	1061683975
	.long	1052181329
	.long	-1097372823
	.long	-1089996396
	.long	-1083325633
	.long	-1090762712
	.long	1044234010
	.long	1023218683
	.long	1036038301
	.long	-1100710583
	.long	-1086677143
	.long	1061136185
	.long	1058683012
	.long	1064340351
	.long	-1088814860
	.long	-1103691562
	.long	1062211194
	.long	-1084407157
	.long	1055234526
	.long	1054400044
	.long	1063405757
	.long	-1107713790
	.long	-1120768916
	.long	-1085089243
	.long	-1085899507
	.long	-1088486487
	.long	1057508113
	.long	-1085434787
	.long	1063632882
	.long	1054703552
	.long	-1127676593
	.long	-1085111380
	.long	-1082263307
	.long	-1084995639
	.long	1040243883
	.long	1049495815
	.long	1059044802
	.long	-1101727740
	.long	-1087724543
	.long	1054272135
	.long	-1105832665
	.long	1060361924
	.long	1062034892
	.long	1042638819
	.long	1065149080
	.long	-1084046781
	.long	-1088698410
	.long	-1107200252
	.long	1043090550
	.long	-1090232813
	.long	-1086051325
	.long	-1085022413
	.long	-1105679484
	.long	-1088106773
	.long	1061471548
	.long	1062254100
	.long	-1088035385
	.long	-1091165203
	.long	1065081581
	.long	-1087130741
	.long	1034113073
	.long	1063741661
	.long	1065025836
	.long	1045719631
	.long	-1089901952
	.long	-1084051870
	.long	-1088392613
	.long	1049579881
	.long	-1090870267
	.long	1053679124
	.long	-1089399360
	.long	-1110785682
	.long	1055585244
	.long	1063570370
	.long	1057666267
	.long	-1084542818
	.long	-1122941234
	.long	-1084336107
	.long	1041904656
	.long	1058837808
	.long	1057382551
	.long	1057895286
	.long	-1086767205
	.long	-1104806073
	.long	1058682682
	.long	1063729155
	.long	1051231847
	.long	-1085377351
	.long	-1087636930
	.long	-1087041746
	.long	1056123556
	.long	-1094557762
	.long	1053774702
	.long	1051337656
	.long	1053415679
	.long	-1122635528
	.long	1063749409
	.long	-1095330823
	.long	-1088454870
	.long	1058173244
	.long	1061983691
	.long	-1090387889
	.long	-1089959004
	.long	-1084068068
	.long	-1148506776
	.long	1059439870
	.long	1055498599
	.long	-1086054587
	.long	-1088419844
	.long	1051645824
	.long	-1095198217
	.long	-1100256529
	.long	-1087721264
	.long	1062220620
	.long	1038915367
	.long	-1100829625
	.long	1022593793
	.long	1004518978
	.long	1010617693
	.long	1063473999
	.long	1061867115
	.long	1054118279
	.long	-1088837926
	.long	1064503553
	.long	-1090071076
	.long	1064459202
	.long	-1094117044
	.long	1013794608
	.long	-1088010543
	.long	1060735725
	.long	1008130677
	.long	-1091805155
	.long	1046408645
	.long	1062772061
	.long	-1102081698
	.long	1050729442
	.long	-1086138461
	.long	1029205688
	.long	-1082357956
	.long	-1088916010
	.long	-1092865595
	.long	1041867664
	.long	1060970930
	.long	-1088745570
	.long	-1088875272
	.long	1052796897
	.long	-1096523843
	.long	1063713142
	.long	1055732710
	.long	-1086498491
	.long	1045957448
	.long	-1089861200
	.long	1053787609
	.long	-1084196283
	.long	-1112220231
	.long	1022770257
	.long	-1087868994
	.long	1042486652
	.long	1049873196
	.long	1049397699
	.long	1059424402
	.long	1054667204
	.long	-1082431664
	.long	-1085866964
	.long	-1107313032
	.long	1057015022
	.long	1062416991
	.long	-1084490014
	.long	-1083894767
	.long	1061071215
	.long	1054121324
	.long	1051523191
	.long	-1088631620
	.long	1053323136
	.long	1058205831
	.long	-1094174977
	.long	1059808236
	.long	-1086093086
	.long	-1083826205
	.long	-1082635465
	.long	-1098338988
	.long	1045120330
	.long	-1095357475
	.long	1061785969
	.long	1059565412
	.long	-1098362476
	.long	-1087741109
	.long	1031600619
	.long	-1097122302
	.long	1062117214
	.long	-1084404899
	.long	1060518172
	.long	1049178963
	.long	-1088104140
	.long	-1086766222
	.long	1063470104
	.long	-1096611850
	.long	-1082389488
	.long	-1107548786
	.long	1049075034
	.long	1048860470
	.long	-1086702844
	.long	-1100662828
	.long	1060042593
	.long	-1082301367
	.long	1050006905
	.long	-1083370485
	.long	-1085462762
	.long	-1095962991
	.long	1052138388
	.long	1064927400
	.long	1055492384
	.long	1059719294
	.long	-1083623718
	.long	-1091052640
	.long	-1107059054
	.long	-1085974439
	.long	1050926603
	.long	1048563818
	.long	1014709704
	.long	1060258856
	.long	-1093950994
	.long	1059822332
	.long	-1087529469
	.long	1044559127
	.long	1051664212
	.long	-1095525662
	.long	1018360939
	.long	1054855166
	.long	1059648306
	.long	1063732181
	.long	1062922026
	.long	1064459093
	.long	1051446279
	.long	1062640977
	.long	-1110290171
	.long	-1087128325
	.long	1053932103
	.long	-1087927237
	.long	1063450288
	.long	-1102224589
	.long	-1091818111
	.long	1049000859
	.long	1063130326
	.long	-1114830594
	.long	-1087037969
	.long	-1098983372
	.long	-1102406042
	.long	-1099327373
	.long	-1099303134
	.long	1056623967
	.long	-1111863566
	.long	-1094623453
	.long	1025377367
	.long	-1091513528
	.long	1062038097
	.long	-1093595311
	.long	1051769409
	.long	-1092751890
	.long	1008451205
	.long	-1092468950
	.long	-1085185992
	.long	1062304932
	.long	1064210944
	.long	1062308064
	.long	1061795468
	.long	1063373709
	.long	1033476317
	.long	1048903909
	.long	-1087905369
	.long	1034474060
	.long	1065021221
	.long	-1085509044
	.long	1056831049
	.long	-1086705361
	.long	-1082133123
	.long	1059077512
	.long	-1089494640
	.long	1046270845
	.long	1039727267
	.long	1042661259
	.long	-1095876919
	.long	1057330223
	.long	1059569244
	.long	-1103540373
	.long	1064292862
	.long	1057363061
	.long	1061406277
	.long	1053095834
	.long	-1086423854
	.long	1060650930
	.long	1052466017
	.long	-1086824649
	.long	1039739380
	.long	-1095367590
	.long	1052918631
	.long	-1088945028
	.long	-1092744015
	.long	-1086043490
	.long	-1094631300
	.long	-1082874692
	.long	1050576602
	.long	-1088610335
	.long	1016174226
	.long	1052364884
	.long	-1097310011
	.long	1021427073
	.long	-1082762172
	.long	1055383073
	.long	-1096978766
	.long	1064208648
	.long	1059306577
	.long	1006642562
	.long	-1119942053
	.long	-1106665929
	.long	1063596887
	.long	-1089885108
	.long	1059714836
	.long	-1084040910
	.long	-1110985506
	.long	-1092874839
	.long	-1092520970
	.long	-1160981838
	.long	1064231040
	.long	-1089500589
	.long	-1102151815
	.long	1055817703
	.long	1032824862
	.long	1062997656
	.long	-1090085317
	.long	-1082253341
	.long	-1112708434
	.long	-1093817884
	.long	-1084041865
	.long	-1091181592
	.long	1054708343
	.long	1043116801
	.long	-1092082773
	.long	1051604297
	.long	-1082583878
	.long	1030062897
	.long	-1103550724
	.long	-1087333903
	.long	-1092936793
	.long	1061525347
	.long	1051238033
	.long	1058190747
	.long	1049606520
	.long	-1098401837
	.long	-1104508677
	.long	-1116030388
	.long	1055568500
	.long	1045185387
	.long	1060015028
	.long	1052160887
	.long	1061275828
	.long	1061381856
	.long	-1083974539
	.long	-1096466481
	.long	1061988477
	.long	-1082861860
	.long	1060706866
	.long	1064412031
	.long	-1101116049
	.long	-1092972088
	.long	1062578211
	.long	1060719236
	.long	1061687250
	.long	1064145933
	.long	-1091589580
	.long	1061302941
	.long	1058470076
	.long	1064163337
	.long	1062495101
	.long	1036123985
	.long	1057885424
	.long	-1090288517
	.long	-1100800239
	.long	1056959747
	.long	-1128073863
	.long	1057964843
	.long	-1090354420
	.long	-1092396503
	.long	1059955556
	.long	-1082403797
	.long	-1097384274
	.long	-1087352011
	.long	1060810950
	.long	1063498979
	.long	1064149912
	.long	-1092888367
	.long	-1085644106
	.long	1064182517
	.long	-1085536700
	.long	-1082461950
	.long	1025026591
	.long	-1097537686
	.long	-1097100603
	.long	1042588148
	.long	-1086960904
	.long	1053300029
	.long	1065037845
	.long	-1087508553
	.long	1044083273
	.long	1059732895
	.long	-1087017488
	.long	1048729510
	.long	1030467269
	.long	-1086765750
	.long	-1086613023
	.long	1056997886
	.long	1063339929
	.long	1062431826
	.long	1064025819
	.long	1050641779
	.long	-1085683405
	.long	-1100706313
	.long	1062847754
	.long	-1095042811
	.long	1064663806
	.long	-1121152150
	.long	-1105359468
	.long	-1100946351
	.long	-1091556645
	.long	-1090127310
	.long	-1097640554
	.long	-1083584464
	.long	1053718691
	.long	1060753726
	.long	1061052379
	.long	-1094458990
	.long	-1097325941
	.long	-1091187039
	.long	1026099835
	.long	-1094001862
	.long	-1114395324
	.long	1065001542
	.long	-1086053149
	.long	-1095744709
	.long	1064402819
	.long	-1100957135
	.long	1038898041
	.long	-1095797973
	.long	1064119427
	.long	-1090984324
	.long	1033100958
	.long	-1089326700
	.long	-1112603646
	.long	1052608670
	.long	-1089612945
	.long	1063673581
	.long	-1103036440
	.long	-1089711518
	.long	1030041720
	.long	-1104829943
	.long	-1089976430
	.long	1058394111
	.long	-1094717499
	.long	-1104326424
	.long	-1091402677
	.long	1064384626
	.long	-1090252827
	.long	-1087056852
	.long	-1096536265
	.long	-1093927834
	.long	1060886697
	.long	1055273440
	.long	1038055937
	.long	-1097730206
	.long	1034873928
	.long	1031213308
	.long	-1083073633
	.long	1032526062
	.long	1036509474
	.long	-1084299248
	.long	-1105408961
	.long	-1090184509
	.long	-1088277265
	.long	-1086030275
	.long	-1083710807
	.long	-1084792136
	.long	-1098175980
	.long	1049657176
	.long	-1112341217
	.long	1031927512
	.long	1050890101
	.long	-1084394557
	.long	-1093808688
	.long	1059272435
	.long	-1087757878
	.long	-1084290440
	.long	-1083909276
	.long	1055031740
	.long	-1092938280
	.long	-1086489381
	.long	1061799054
	.long	-1089826508
	.long	1057125443
	.long	-1091822307
	.long	1059727345
	.long	1063346077
	.long	-1112910782
	.long	1064561785
	.long	1044094903
	.long	-1103824758
	.long	1062869284
	.long	-1095150352
	.long	1052173337
	.long	1065058992
	.long	-1087318656
	.long	1043789907
	.long	-1113277055
	.long	1064879891
	.long	1063259707
	.long	1042592844
	.long	-1095218279
	.long	1016215888
	.long	1017564235
	.long	1054076690
	.long	-1087565602
	.long	-1109162812
	.long	-1094485435
	.long	-1091864460
	.long	1050539701
	.long	1051091283
	.long	1052441513
	.long	1060866035
	.long	-1089519821
	.long	1062807551
	.long	-1103233063
	.long	1065303760
	.long	-1083261974
	.long	-1109803138
	.long	-1114804897
	.long	1064002466
	.long	1041006854
	.long	-1087758899
	.long	-1082367715
	.long	-1114417258
	.long	-1088801043
	.long	-1093908725
	.long	-1089158122
	.long	-1115670351
	.long	-1122455778
	.long	-1087351357
	.long	1060386841
	.long	-1091168401
	.long	1058902554
	.long	-1083133271
	.long	-1082910854
	.long	-1097219448
	.long	-1085160075
	.long	1059608037
	.long	-1119031277
	.long	1059121987
	.long	1060605479
	.long	-1123994261
	.long	-1092346878
	.long	1057324914
	.long	-1091205594
	.long	1060237438
	.long	-1122661080
	.long	1020391051
	.long	-1136214123
	.long	-1085190281
	.long	1052783982
	.long	1064418717
	.long	-1086876372
	.long	-1107867923
	.long	1065273112
	.long	-1091832829
	.long	1063751865
	.long	1062119757
	.long	-1084765077
	.long	-1083420463
	.long	-1106940912
	.long	1061337154
	.long	1065125379
	.long	-1082814635
	.long	-1102038571
	.long	-1091377361
	.long	-1084272381
	.long	1056494650
	.long	-1090259718
	.long	-1082993768
	.long	1057126666
	.long	1061713069
	.long	-1204225934
	.long	-1087754229
	.long	1063969260
	.long	-1085082457
	.long	-1091798881
	.long	-1087709957
	.long	-1140402677
	.long	1062427376
	.long	-1093996015
	.long	1015296982
	.long	-1083124454
	.long	-1090166769
	.long	-1099597055
	.long	-1095399665
	.long	1054637682
	.long	-1089555750
	.long	-1095313389
	.long	-1083942783
	.long	-1113667543
	.long	1060601498
	.long	-1083750205
	.long	1064454880
	.long	-1088588638
	.long	1064754074
	.long	1028608292
	.long	1060665689
	.long	-1082275994
	.long	1059437622
	.long	-1093864249
	.long	-1084081084
	.long	-1085619078
	.long	1060502378
	.long	-1084801935
	.long	1055634583
	.long	-1084902509
	.long	-1096243455
	.long	-1106299474
	.long	-1086156369
	.long	-1089733935
	.long	-1088871978
	.long	1048186679
	.long	1034375509
	.long	-1082491631
	.long	-1093029793
	.long	-1091530073
	.long	1062792948
	.long	1028802734
	.long	-1089752958
	.long	-1106924860
	.long	-1087933669
	.long	1026004980
	.long	1058189364
	.long	1060421491
	.long	1058427720
	.long	1047748554
	.long	1062809043
	.long	-1096593343
	.long	-1087845696
	.long	1050985779
	.long	-1088912131
	.long	-1108757916
	.long	1065334719
	.long	-1088576362
	.long	-1094403554
	.long	1042332435
	.long	1056952711
	.long	-1088378206
	.long	1043169774
	.long	1038159227
	.long	-1090779709
	.long	-1091760065
	.long	1062424521
	.long	-1126289507
	.long	1056893740
	.long	1062196891
	.long	-1102755079
	.long	1049848751
	.long	1021832429
	.long	1061852809
	.long	1052438144
	.long	-1089396266
	.long	1063935718
	.long	1059887394
	.long	1057062724
	.long	1057121456
	.long	-1119647928
	.long	1053934765
	.long	-1085134051
	.long	-1089422185
	.long	1062166433
	.long	-1092233536
	.long	-1084978345
	.long	-1087824787
	.long	-1083972637
	.long	1040558270
	.long	1064088217
	.long	1058427834
	.long	1060782298
	.long	-1100640934
	.long	-1103405014
	.long	1050540485
	.long	1064869831
	.long	1018975751
	.long	1031362006
	.long	-1114512905
	.long	1057800662
	.long	-1088841055
	.long	-1119171747
	.long	-1089434067
	.long	1060770909
	.long	-1102407245
	.long	-1082408556
	.long	-1083718992
	.long	1055397248
	.long	1061872026
	.long	-1084800923
	.long	1036554650
	.long	-1090411381
	.long	-1106067442
	.long	-1092154754
	.long	-1095345627
	.long	-1092841774
	.long	-1088958725
	.long	-1101423886
	.long	-1094612502
	.long	1057240774
	.long	-1089274645
	.long	-1087115445
	.long	1044579987
	.long	1060235528
	.long	1043710507
	.long	-1163499788
	.long	-1086054445
	.long	-1085991502
	.long	-1101665478
	.long	1033181577
	.long	-1091610227
	.long	-1094920043
	.long	-1088693562
	.long	-1089993412
	.long	1054009152
	.long	-1093628902
	.long	1064051411
	.long	-1126231119
	.long	1061679864
	.long	1063008966
	.long	-1087100905
	.long	-1097711421
	.long	-1091629546
	.long	-1086881458
	.long	1035078762
	.long	-1097889879
	.long	1061560662
	.long	-1106299257
	.long	1058234310
	.long	-1084011366
	.long	1050733099
	.long	1059869066
	.long	1057306850
	.long	1058329398
	.long	1060852023
	.long	1059860079
	.long	-1118111768
	.long	-1084134086
	.long	1043284501
	.long	-1094644850
	.long	-1091257130
	.long	1055575551
	.long	1062615586
	.long	-1114857778
	.long	-1097196351
	.long	-1087959458
	.long	1058720029
	.long	1061859713
	.long	1034019974
	.long	1062209954
	.long	1041113095
	.long	1060477954
	.long	1046997926
	.long	1061953952
	.long	-1104798062
	.long	-1124972771
	.long	1046444768
	.long	1055046819
	.long	-1091169251
	.long	1063230301
	.long	-1084344730
	.long	-1092683644
	.long	1030832457
	.long	1062486569
	.long	1058878276
	.long	-1119093013
	.long	-1085433485
	.long	-1090679837
	.long	-1107173005
	.long	-1114473259
	.long	-1088827633
	.long	1054783353
	.long	-1083947977
	.long	1057220620
	.long	1056136658
	.long	-1086885958
	.long	-1084125288
	.long	1060965346
	.long	-1099277672
	.long	-1086318546
	.long	1050371042
	.long	-1088795996
	.long	-1093862868
	.long	-1097229834
	.long	-1090207782
	.long	1054883045
	.long	-1085205867
	.long	-1085244406
	.long	-1083999949
	.long	1055267321
	.long	-1100123039
	.long	1058470786
	.long	1062286759
	.long	1057277436
	.long	-1093671590
	.long	-1085115083
	.long	1029210310
	.long	1057005051
	.long	-1085553581
	.long	1030795227
	.long	-1082788921
	.long	1024869701
	.long	1060706243
	.long	1031330771
	.long	1051508011
	.long	1062176996
	.long	-1088224859
	.long	1049823264
	.long	-1087968936
	.long	-1083579877
	.long	1059350098
	.long	-1102419134
	.long	-1098530050
	.long	1060260496
	.long	-1103681831
	.long	-1094271513
	.long	-1116517930
	.long	-1088195104
	.long	1062080917
	.long	1046611497
	.long	1049036121
	.long	-1101304425
	.long	-1098315738
	.long	-1098303354
	.long	-1082839669
	.long	1060465593
	.long	1051487333
	.long	-1082369625
	.long	-1084092470
	.long	1057976294
	.long	-1087281578
	.long	1064974371
	.long	1033474235
	.long	1063954312
	.long	1064374446
	.long	1055425993
	.long	1043612384
	.long	1037265462
	.long	1064287993
	.long	-1084308801
	.long	-1109783950
	.long	1060054618
	.long	1059812965
	.long	-1088491392
	.long	1064331063
	.long	-1088971763
	.long	1058989729
	.long	1027284543
	.long	1060969799
	.long	-1086306434
	.long	1060046066
	.long	1042121847
	.long	-1098717337
	.long	-1085925895
	.long	-1087704596
	.long	1063468161
	.long	-1087761568
	.long	1057169233
	.long	-1128268441
	.long	1064394875
	.long	-1093652437
	.long	-1106264149
	.long	-1116698102
	.long	1054265855
	.long	1057529575
	.long	1038009984
	.long	-1087232709
	.long	1056344709
	.long	1057151928
	.long	1040932649
	.long	-1091125753
	.long	1061285528
	.long	1064642670
	.long	-1083661460
	.long	-1094020762
	.long	1028267234
	.long	1050037954
	.long	1053187062
	.long	1035872060
	.long	1053854202
	.long	-1085687550
	.long	-1082662786
	.long	-1093555137
	.long	1061579621
	.long	-1101072703
	.long	-1094881033
	.long	-1089328264
	.long	1062737154
	.long	1059793590
	.long	985088385
	.long	-1111826165
	.long	-1122385793
	.long	1060706059
	.long	1052602524
	.long	1063041993
	.long	1061150954
	.long	1061041342
	.long	-1090659508
	.long	-1110390309
	.long	-1105448287
	.long	1031077327
	.long	-1092649850
	.long	1057300604
	.long	1047972409
	.long	1064857562
	.long	-1094665790
	.long	1058880956
	.long	1051486308
	.long	1052824059
	.long	997529765
	.long	-1093356891
	.long	1051279159
	.long	-1097993274
	.long	1063021331
	.long	-1143542257
	.long	1062171847
	.long	-1137038186
	.long	-1102820121
	.long	-1085335682
	.long	1062218897
	.long	1056058149
	.long	1043888279
	.long	-1098485514
	.long	1045969016
	.long	-1084101509
	.long	-1089250864
	.long	1037761750
	.long	1064759157
	.long	1060960823
	.long	1060112841
	.long	-1100307370
	.long	-1095403404
	.long	-1093185853
	.long	1060062328
	.long	-1088705747
	.long	1043386353
	.long	1058160741
	.long	-1102111494
	.long	1044082104
	.long	-1093015831
	.long	-1103474015
	.long	1061967459
	.long	-1086831416
	.long	-1094665756
	.long	1036881705
	.long	-1087588306
	.long	-1090033324
	.long	1056308401
	.long	1054699596
	.long	1063464768
	.long	1058612830
	.long	-1098905468
	.long	-1086440314
	.long	1064282660
	.long	-1084355367
	.long	1062879184
	.long	-1092989361
	.long	1061894402
	.long	1062941708
	.long	1060893112
	.long	999562574
	.long	-1084072249
	.long	-1112858300
	.long	-1086568724
	.long	-1086983626
	.long	1062971696
	.long	-1088403928
	.long	-1084677181
	.long	1016346775
	.long	-1123043086
	.long	-1083911563
	.long	-1114909242
	.long	-1089848065
	.long	-1089551659
	.long	1049212522
	.long	1057054601
	.long	-1119986329
	.long	-1090020926
	.long	-1106393952
	.long	1065227908
	.long	1064926831
	.long	1064352449
	.long	1059449067
	.long	-1093514229
	.long	1062067092
	.long	-1085907032
	.long	1043760696
	.long	-1095159631
	.long	-1084880327
	.long	1062103628
	.long	-1086187459
	.long	1060628920
	.long	-1101381516
	.long	-1117336668
	.long	1026059442
	.long	-1089973825
	.long	-1121192099
	.long	1061484928
	.long	1048695327
	.long	-1086406421
	.long	-1083965201
	.long	-1106246429
	.long	1050861965
	.long	-1090605757
	.long	-1094427835
	.long	-1091566493
	.long	-1097581205
	.long	-1112912520
	.long	1009747177
	.long	-1089382307
	.long	1064117855
	.long	-1088838723
	.long	-1111715247
	.long	1063500715
	.long	-1114538146
	.long	-1103422416
	.long	1047108669
	.long	1062853671
	.long	1059532123
	.long	-1082353965
	.long	-1084282698
	.long	-1085070906
	.long	-1090846555
	.long	1048194707
	.long	-1083408945
	.long	1059826237
	.long	1062827213
	.long	-1100563968
	.long	1055658522
	.long	1059589175
	.long	-1093324077
	.long	1045598408
	.long	-1104711954
	.long	-1115076865
	.long	-1096707769
	.long	-1111284469
	.long	-1094612892
	.long	1063007306
	.long	-1087673239
	.long	1058559431
	.long	-1093013414
	.long	-1121580804
	.long	1040520836
	.long	-1105199493
	.long	1065302828
	.long	-1083999911
	.long	-1083377875
	.long	-1086257659
	.long	1060563175
	.long	-1096966527
	.long	1057573190
	.long	-1091762409
	.long	1059014824
	.long	-1101217400
	.long	-1108622998
	.long	1040400000
	.long	-1089575093
	.long	1064041460
	.long	-1097626755
	.long	-1103937189
	.long	1031714569
	.long	-1091563828
	.long	1064953659
	.long	1055906605
	.long	1059974351
	.long	-1115323238
	.long	1063218163
	.long	-1083510859
	.long	1049298625
	.long	1049094143
	.long	1057672447
	.long	-1129654218
	.long	1065072575
	.long	-1090147179
	.long	1062565240
	.long	1054090256
	.long	1058450673
	.long	1050870093
	.long	1063179603
	.long	-1093112052
	.long	-1102250676
	.long	-1085986080
	.long	-1084175003
	.long	-1086947620
	.long	1059442712
	.long	1058535764
	.long	1040266027
	.long	-1102959533
	.long	1060452216
	.long	1061831183
	.long	1060296170
	.long	1058554231
	.long	1058096047
	.long	-1088978225
	.long	-1088292536
	.long	1054128293
	.long	1038899342
	.long	-1094686569
	.long	1040000964
	.long	-1084410295
	.long	1038891723
	.long	-1090257618
	.long	1063350119
	.long	1052133164
	.long	-1096622161
	.long	1061423433
	.long	-1100466408
	.long	1055020712
	.long	1051882708
	.long	1063040550
	.long	-1083894333
	.long	1056149737
	.long	1057843359
	.long	-1112814278
	.long	-1100407215
	.long	1036812119
	.long	1063185805
	.long	-1090212852
	.long	-1115540022
	.long	-1097763379
	.long	-1092037322
	.long	1060668572
	.long	1033558618
	.long	-1117099040
	.long	-1087288003
	.long	1061599317
	.long	1057200370
	.long	1006409406
	.long	1061589564
	.long	1064230081
	.long	1028489343
	.long	-1083435799
	.long	1049134811
	.long	-1093586433
	.long	1061948562
	.long	-1085727956
	.long	1064202360
	.long	1059663390
	.long	-1088321831
	.long	-1087616570
	.long	1057281651
	.long	-1095819234
	.long	1053797533
	.long	-1094763122
	.long	-1101706598
	.long	1028735158
	.long	1053500629
	.long	1001400828
	.long	1064274728
	.long	-1089431859
	.long	-1083681927
	.long	1059825987
	.long	-1091951492
	.long	1052401256
	.long	1041248083
	.long	-1095554039
	.long	-1122757259
	.long	-1097086698
	.long	1058952422
	.long	-1136342527
	.long	1037686158
	.long	-1092948810
	.long	1055765005
	.long	-1085346674
	.long	1059905270
	.long	-1115164601
	.long	-1092802373
	.long	1064580654
	.long	-1086728487
	.long	-1087412508
	.long	1042813538
	.long	1064259323
	.long	-1087241718
	.long	-1093192744
	.long	-1087343993
	.long	-1088742429
	.long	-1087267066
	.long	1055455904
	.long	1064827166
	.long	-1112810626
	.long	1058700437
	.long	1061610450
	.long	-1090802230
	.long	1060189780
	.long	1034469953
	.long	1055589714
	.long	-1083505316
	.long	-1085863982
	.long	-1104877277
	.long	1065061352
	.long	1060334897
	.long	1065324770
	.long	-1095133152
	.long	1043307548
	.long	1058069743
	.long	-1082707225
	.long	-1084889731
	.long	1063433879
	.long	1058803462
	.long	1060744519
	.long	1042101608
	.long	-1087792053
	.long	1063879257
	.long	1040899447
	.long	-1113149033
	.long	1048053159
	.long	-1098408152
	.long	-1096053161
	.long	1062399738
	.long	-1096789999
	.long	-1095415704
	.long	-1122229588
	.long	1039220318
	.long	-1088766782
	.long	1057382880
	.long	-1086241527
	.long	-1095245126
	.long	-1099047856
	.long	1058198925
	.long	1057688840
	.long	-1086852323
	.long	1045382650
	.long	-1084477708
	.long	-1135769620
	.long	1057121455
	.long	1051906653
	.long	1054427756
	.long	1029975900
	.long	1060995784
	.long	1056265267
	.long	-1100795184
	.long	-1086410577
	.long	1053378113
	.long	-1086606541
	.long	-1090409463
	.long	-1090426227
	.long	-1090360647
	.long	1059751618
	.long	1015441260
	.long	-1090011082
	.long	1061768573
	.long	-1082381955
	.long	1056293145
	.long	-1100004711
	.long	1062646063
	.long	-1093626861
	.long	-1096751227
	.long	-1083170054
	.long	-1088382949
	.long	-1100305249
	.long	1059355462
	.long	-1094281986
	.long	1052277866
	.long	-1083795299
	.long	1043655329
	.long	1062566422
	.long	-1129690582
	.long	-1102086918
	.long	1060431524
	.long	-1085185182
	.long	-1099394720
	.long	1049653411
	.long	1015470065
	.long	-1090441430
	.long	1026174957
	.long	-1085690930
	.long	1052353851
	.long	-1094835577
	.long	-1085177589
	.long	1060786122
	.long	-1084873459
	.long	1026399720
	.long	-1097768989
	.long	1059747348
	.long	-1120968686
	.long	1048142116
	.long	-1085422301
	.long	1058153556
	.long	1051616554
	.long	-1096442857
	.long	1053717961
	.long	-1114957956
	.long	-1084362042
	.long	-1092536546
	.long	-1099152101
	.long	1054825005
	.long	1057983232
	.long	-1088294979
	.long	-1096677920
	.long	-1082514248
	.long	1033361157
	.long	-1101064376
	.long	1063458952
	.long	-1093261046
	.long	-1088194499
	.long	-1098483789
	.long	-1089386592
	.long	1059920399
	.long	1064238399
	.long	-1134235351
	.long	-1088661474
	.long	1058057203
	.long	1047278975
	.long	1051056862
	.long	1059231918
	.long	1065037546
	.long	1063401502
	.long	-1097858009
	.long	1058360544
	.long	1041922471
	.long	-1085890370
	.long	1054278633
	.long	-1089415640
	.long	-1084559228
	.long	1056031412
	.long	-1090494491
	.long	1060789151
	.long	1064970492
	.long	1063811620
	.long	-1089341264
	.long	1060589107
	.long	1041720027
	.long	1046483569
	.long	-1115038022
	.long	1054737014
	.long	1055273523
	.long	1057911828
	.long	1054191186
	.long	-1085765293
	.long	1062986004
	.long	1043767920
	.long	-1106919170
	.long	1062975596
	.long	1057114196
	.long	1041162882
	.long	1047931762
	.long	-1110256736
	.long	1062697088
	.long	-1087224817
	.long	-1085592504
	.long	-1087192560
	.long	-1100338619
	.long	-1102537039
	.long	-1097012389
	.long	-1084389982
	.long	1059635305
	.long	-1094919791
	.long	1051506769
	.long	1033125153
	.long	1063800909
	.long	1057219090
	.long	1034015620
	.long	-1086212372
	.long	1064790803
	.long	-1087781164
	.long	1041580696
	.long	1052806517
	.long	1059177239
	.long	-1082859098
	.long	-1086559770
	.long	-1085552991
	.long	1064656281
	.long	1050897310
	.long	-1083679562
	.long	1065225395
	.long	-1090330999
	.long	-1086915328
	.long	-1086878017
	.long	1057732599
	.long	-1120548142
	.long	1051371483
	.long	1058931529
	.long	-1112058397
	.long	1057073509
	.long	-1095411077
	.long	1061628559
	.long	-1087708308
	.long	-1109979790
	.long	-1095981973
	.long	-1095956052
	.long	1058793573
	.long	-1094917257
	.long	1063494038
	.long	-1087559669
	.long	1054606297
	.long	1063956531
	.long	-1087908306
	.long	1057617718
	.long	1053027814
	.long	1030610767
	.long	-1135859253
	.long	-1127944937
	.long	-1086722415
	.long	-1085390223
	.long	1064436245
	.long	-1087699360
	.long	1061350778
	.long	-1096750915
	.long	-1094064686
	.long	1049008436
	.long	1042205007
	.long	-1089481718
	.long	-1090802828
	.long	1064048760
	.long	1058215784
	.long	1059174541
	.long	-1094919563
	.long	1065097878
	.long	1062757546
	.long	-1082707037
	.long	-1092676241
	.long	-1088564684
	.long	1063438359
	.long	1054472623
	.long	1061607227
	.long	-1115309990
	.long	-1086585926
	.long	1060748171
	.long	-1091386548
	.long	1063597611
	.long	-1114342032
	.long	-1095210424
	.long	1057960340
	.long	1052390975
	.long	1042014851
	.long	1060289790
	.long	1028926554
	.long	-1106354242
	.long	1051617294
	.long	1058377988
	.long	-1092454985
	.long	-1090492628
	.long	1048581204
	.long	1050941386
	.long	-1105603906
	.long	-1122224199
	.long	1060903241
	.long	-1089267892
	.long	1058532277
	.long	1053879273
	.long	-1112731763
	.long	-1084554609
	.long	-1091418356
	.long	1051295029
	.long	1044982009
	.long	-1085490153
	.long	-1082574734
	.long	1051386141
	.long	-1085949651
	.long	-1092841240
	.long	1059478717
	.long	1057037722
	.long	1061655318
	.long	1010253905
	.long	-1082205479
	.long	-1087566124
	.long	1046346242
	.long	-1088523746
	.long	-1093269055
	.long	-1089981097
	.long	-1089395319
	.long	1048329033
	.long	1063149552
	.long	-1120827258
	.long	1055723251
	.long	-1104805683
	.long	1049763147
	.long	1063700878
	.long	-1087047562
	.long	1060079770
	.long	-1087616288
	.long	1031564517
	.long	1041699541
	.long	-1137584921
	.long	1064696240
	.long	-1082966105
	.long	1065221874
	.long	1060581392
	.long	1064949021
	.long	-1086005725
	.long	-1091753426
	.long	-1113848585
	.long	-1087082549
	.long	-1100882009
	.long	1062683848
	.long	-1092794635
	.long	-1082855368
	.long	1039831015
	.long	-1099435554
	.long	1063818344
	.long	1050376313
	.long	1061267978
	.long	-1086287695
	.long	1052531888
	.long	-1087122088
	.long	1044497592
	.long	1053669704
	.long	1058784826
	.long	-1092620282
	.long	-1105027889
	.long	-1094511078
	.long	-1082979292
	.long	1052608897
	.long	-1084266922
	.long	-1095957042
	.long	-1115829205
	.long	1052001721
	.long	1040439697
	.long	1054696771
	.long	-1090603791
	.long	1057852678
	.long	1051349809
	.long	-1089524797
	.long	-1084039867
	.long	1015789229
	.long	1044732665
	.long	-1087592551
	.long	-1090082585
	.long	1054448335
	.long	-1103191564
	.long	1044573764
	.long	-1111588483
	.long	1061900267
	.long	-1099340525
	.long	1039378084
	.long	-1101173899
	.long	1054030952
	.long	1059641525
	.long	-1105582267
	.long	-1084632615
	.long	-1084750566
	.long	1059133871
	.long	1064418793
	.long	-1108267357
	.long	1057947228
	.long	1060852651
	.long	-1148741343
	.long	-1098842771
	.long	-1091413388
	.long	1043796749
	.long	1057766045
	.long	-1093393644
	.long	-1089675961
	.long	-1083384467
	.long	1059042178
	.long	-1090711942
	.long	1032045222
	.long	1060774846
	.long	1062247164
	.long	1016153057
	.long	1061147582
	.long	-1098360676
	.long	1059904019
	.long	-1114027783
	.long	-1086360748
	.long	-1100748871
	.long	-1088692262
	.long	-1122418953
	.long	1062879904
	.long	-1089077409
	.long	1058710543
	.long	1058190568
	.long	1062280166
	.long	1060722289
	.long	1052531632
	.long	1061415479
	.long	1062609985
	.long	1059035489
	.long	1061051014
	.long	1041225864
	.long	-1086386344
	.long	1060328380
	.long	1057798332
	.long	1060812848
	.long	1060792926
	.long	-1088591186
	.long	-1086220556
	.long	-1090011992
	.long	-1096812068
	.long	-1086285063
	.long	-1088262915
	.long	-1106743317
	.long	1048669622
	.long	1061337188
	.long	-1084843942
	.long	-1098367655
	.long	1057792381
	.long	-1097962131
	.long	1044580251
	.long	1063789819
	.long	-1089179749
	.long	-1106679427
	.long	1048221732
	.long	1061922311
	.long	1049818180
	.long	-1083702828
	.long	-1085199456
	.long	1058866780
	.long	1057270089
	.long	-1094246844
	.long	-1085724473
	.long	1058222504
	.long	-1097794712
	.long	-1084524165
	.long	1054445744
	.long	1064006956
	.long	1054041908
	.long	-1082524512
	.long	1042390284
	.long	-1116179003
	.long	1057106186
	.long	-1090299007
	.long	1063363303
	.long	-1106980255
	.long	1053020715
	.long	-1089868897
	.long	1062279138
	.long	1063155624
	.long	-1086687431
	.long	-1082856276
	.long	-1084829767
	.long	1053435388
	.long	1060688873
	.long	-1112702124
	.long	1017721762
	.long	1054102674
	.long	1048347283
	.long	-1089744141
	.long	-1089194345
	.long	1042727113
	.long	1056754258
	.long	-1086059394
	.long	1041973366
	.long	-1108922519
	.long	1063328540
	.long	1050098541
	.long	-1090428943
	.long	-1088248761
	.long	-1096900473
	.long	1061471422
	.long	-1089774560
	.long	1061309472
	.long	-1109839551
	.long	1057109169
	.long	-1101778282
	.long	1058924896
	.long	1060125121
	.long	1059375973
	.long	-1083691004
	.long	1057405213
	.long	-1087723213
	.long	1050750539
	.long	-1097498359
	.long	-1095271895
	.long	1042290889
	.long	1059273269
	.long	-1102291780
	.long	-1087677495
	.long	1047738038
	.long	-1089231526
	.long	1033478079
	.long	-1088272948
	.long	1062489095
	.long	1059017220
	.long	-1083932010
	.long	-1097885919
	.long	1047981909
	.long	-1113550583
	.long	1054110663
	.long	1049825511
	.long	-1087306903
	.long	1058603006
	.long	1057787062
	.long	-1088996061
	.long	1059762048
	.long	-1086440244
	.long	1042807077
	.long	-1100288246
	.long	1049703529
	.long	-1089948725
	.long	1044268021
	.long	-1096627511
	.long	1041221708
	.long	1049606352
	.long	1026827543
	.long	1043641587
	.long	-1088604018
	.long	1050729996
	.long	1057292986
	.long	-1084637836
	.long	-1090259648
	.long	1052035059
	.long	-1127911341
	.long	1049228744
	.long	-1088698455
	.long	-1085858024
	.long	-1084910795
	.long	-1084769368
	.long	-1083312427
	.long	-1084064981
	.long	1060497752
	.long	1041423791
	.long	1061949731
	.long	1047456031
	.long	-1083419426
	.long	1059110614
	.long	-1095948577
	.long	1045961734
	.long	-1092408166
	.long	1048797243
	.long	-1093650048
	.long	1052431434
	.long	1063684396
	.long	-1104915490
	.long	1031922493
	.long	1060475100
	.long	-1085660995
	.long	1007818060
	.long	1062025871
	.long	-1087090146
	.long	1054635149
	.long	1061946393
	.long	-1102709442
	.long	-1090722886
	.long	-1083207838
	.long	1055895642
	.long	1008614981
	.long	1034609287
	.long	1058637514
	.long	-1086565054
	.long	1045230791
	.long	-1086297829
	.long	1032771707
	.long	1050275003
	.long	-1083775106
	.long	-1082821381
	.long	-1086241251
	.long	1060650599
	.long	-1095953561
	.long	-1087108552
	.long	-1089191145
	.long	1057906074
	.long	-1083460682
	.long	-1097962148
	.long	-1085589973
	.long	1063953118
	.long	1054262376
	.long	1043739610
	.long	1060032049
	.long	-1083357689
	.long	1043814306
	.long	-1101631263
	.long	-1083983444
	.long	1064709968
	.long	-1098896185
	.long	1037584396
	.long	-1089716077
	.long	1062764560
	.long	1063455589
	.long	1061463158
	.long	-1082889134
	.long	-1086859822
	.long	-1089163789
	.long	-1127869124
	.long	1062250496
	.long	-1095486054
	.long	1061500652
	.long	1057315019
	.long	-1099816562
	.long	1035492099
	.long	-1144515122
	.long	1036654621
	.long	1049484761
	.long	1035182213
	.long	1060249824
	.long	1049616903
	.long	-1087138965
	.long	-1085729203
	.long	-1085391530
	.long	-1118390583
	.long	1034636390
	.long	1055865795
	.long	1041795829
	.long	1050728221
	.long	-1086789510
	.long	1041668390
	.long	-1084339873
	.long	1039343518
	.long	1060955850
	.long	1063633996
	.long	1062705897
	.long	1062289839
	.long	1057338997
	.long	-1093567897
	.long	1058317770
	.long	-1094387824
	.long	-1085999282
	.long	-1085631549
	.long	1052167005
	.long	-1099886738
	.long	-1096346354
	.long	-1093307686
	.long	-1084428407
	.long	1057051367
	.long	-1086681930
	.long	1057879753
	.long	1060948022
	.long	-1095381460
	.long	1063876608
	.long	1057398234
	.long	1062862635
	.long	-1085950542
	.long	1026347992
	.long	-1090152682
	.long	1065274022
	.long	-1103146783
	.long	1054321649
	.long	-1112106837
	.long	1059667420
	.long	1053401451
	.long	1051802768
	.long	1053079131
	.long	-1096247388
	.long	1055157145
	.long	-1086354922
	.long	-1126078462
	.long	1061523004
	.long	-1131303513
	.long	1053837778
	.long	1058743356
	.long	1046457719
	.long	1047674852
	.long	-1090292618
	.long	1060808040
	.long	-1106438885
	.long	1023637454
	.long	-1096777351
	.long	1037566458
	.long	1054401274
	.long	-1100162474
	.long	1055797546
	.long	1052927059
	.long	-1146938149
	.long	1057120472
	.long	1055865369
	.long	1052051835
	.long	1053288896
	.long	1060681370
	.long	-1084832867
	.long	1062461294
	.long	1061475064
	.long	-1085251613
	.long	-1085535296
	.long	-1083253845
	.long	-1114356682
	.long	-1087753750
	.long	1060251514
	.long	-1101855629
	.long	1063329706
	.long	1044004053
	.long	-1089129363
	.long	1059049164
	.long	1045553399
	.long	1052093565
	.long	1051500357
	.long	1058577437
	.long	-1097376912
	.long	-1092418152
	.long	1061058166
	.long	1057697885
	.long	1062431399
	.long	-1086073374
	.long	-1122926616
	.long	-1087457751
	.long	-1083572644
	.long	-1100731433
	.long	1062422627
	.long	1033737682
	.long	1060260559
	.long	1061339873
	.long	-1090091723
	.long	1061410252
	.long	1055572945
	.long	-1088628188
	.long	1059078808
	.long	1049743672
	.long	-1106933137
	.long	-1086649214
	.long	1020156551
	.long	1061065319
	.long	1056336432
	.long	-1086850095
	.long	-1082598339
	.long	-1103739097
	.long	-1086131181
	.long	1059903600
	.long	-1088622064
	.long	-1084567196
	.long	1059344013
	.long	1038514502
	.long	1045303448
	.long	-1096135263
	.long	1058676358
	.long	1056546159
	.long	-1083195157
	.long	1064226835
	.long	-1110954210
	.long	-1091007271
	.long	-1089247204
	.long	-1083463764
	.long	-1083167117
	.long	1063508628
	.long	-1105290472
	.long	-1109761860
	.long	1051036991
	.long	1037547079
	.long	-1084861805
	.long	1056889752
	.long	-1099972860
	.long	1062684338
	.long	-1082226107
	.long	1048036849
	.long	-1099501973
	.long	-1088858882
	.long	1062653971
	.long	-1088177480
	.long	-1100927082
	.long	-1085852671
	.long	-1102167475
	.long	-1090985258
	.long	1063255175
	.long	-1106864253
	.long	-1087592634
	.long	-1104879853
	.long	1046246378
	.long	-1082750390
	.long	-1084797660
	.long	1048901555
	.long	-1104590085
	.long	1058178939
	.long	-1092673142
	.long	-1113656496
	.long	-1125110588
	.long	-1084681491
	.long	-1089229008
	.long	1060798951
	.long	1038264972
	.long	1061334386
	.long	1056526284
	.long	1059994624
	.long	1051272381
	.long	1063694841
	.long	-1083920166
	.long	1049202796
	.long	1061907440
	.long	1046672616
	.long	-1129706356
	.long	-1089082323
	.long	1058435066
	.long	-1096633305
	.long	1061835395
	.long	1048630045
	.long	-1122088519
	.long	1063365834
	.long	-1091550540
	.long	-1083799012
	.long	-1095720708
	.long	-1098189431
	.long	1063065331
	.long	1062096628
	.long	-1096390919
	.long	-1088007621
	.long	1057565492
	.long	1054540902
	.long	1064086838
	.long	1058156796
	.long	1057802181
	.long	-1088179151
	.long	1050495752
	.long	-1084044830
	.long	-1090082788
	.long	1060886166
	.long	1044342720
	.long	1050997539
	.long	-1083246385
	.long	1050494698
	.long	-1094144267
	.long	-1083937370
	.long	1036840768
	.long	-1083255131
	.long	-1088110889
	.long	1045270699
	.long	1050617161
	.long	-1083415284
	.long	1054977139
	.long	-1087718408
	.long	-1091006007
	.long	-1115647123
	.long	-1096186978
	.long	1024035951
	.long	-1087941879
	.long	-1096539161
	.long	1057957200
	.long	-1090607508
	.long	-1096227102
	.long	-1105845885
	.long	-1126608966
	.long	-1097610320
	.long	-1082195219
	.long	1060416454
	.long	1059216371
	.long	1042888422
	.long	-1109203255
	.long	-1116793190
	.long	1060398299
	.long	1037635517
	.long	-1087595868
	.long	-1084600157
	.long	1061653145
	.long	-1090415626
	.long	1059672984
	.long	1052367201
	.long	1059945473
	.long	1063838310
	.long	-1087530521
	.long	-1087149254
	.long	-1082886987
	.long	1062322063
	.long	-1097939051
	.long	1047943356
	.long	-1088875318
	.long	1057312020
	.long	-1083945785
	.long	-1114582753
	.long	1060827902
	.long	-1102074523
	.long	1060536532
	.long	1062264834
	.long	-1088517772
	.long	1058985127
	.long	1046258255
	.long	1063905451
	.long	-1097757838
	.long	1041037609
	.long	-1096538707
	.long	-1097904869
	.long	1033608893
	.long	1052351540
	.long	1035451982
	.long	1060830198
	.long	-1086900784
	.long	-1082729475
	.long	1051517663
	.long	1058034675
	.long	1057539598
	.long	1059816793
	.long	1064960340
	.long	-1089243617
	.long	1050886684
	.long	1052764889
	.long	1054871777
	.long	1059134430
	.long	1062009069
	.long	-1082718458
	.long	-1108599765
	.long	1058326579
	.long	1063543008
	.long	-1100651819
	.long	-1090960326
	.long	1061470999
	.long	-1091223785
	.long	1065138737
	.long	-1140345962
	.long	1055065028
	.long	-1101643947
	.long	1061735921
	.long	-1085130919
	.long	1043146105
	.long	1044458801
	.long	1061936062
	.long	1062080243
	.long	-1083012310
	.long	-1096546477
	.long	-1112570426
	.long	-1100255588
	.long	-1085452088
	.long	1056878855
	.long	1061847461
	.long	1058413656
	.long	1063192922
	.long	1061495998
	.long	-1091915017
	.long	1063191470
	.long	1061224267
	.long	1050113882
	.long	1058216465
	.long	1053086011
	.long	-1082499178
	.long	1025691419
	.long	1059113689
	.long	-1082666305
	.long	-1093729974
	.long	1059637236
	.long	-1095694268
	.long	-1118558280
	.long	-1088165380
	.long	1064769415
	.long	1063838286
	.long	-1086416255
	.long	-1087552216
	.long	1028641800
	.long	1053430426
	.long	1048588305
	.long	-1097652321
	.long	-1090153959
	.long	1046192775
	.long	-1083434684
	.long	-1082630100
	.long	-1088292609
	.long	-1086827779
	.long	-1090411774
	.long	1061564464
	.long	1063533665
	.long	1057966317
	.long	-1090292850
	.long	1060919457
	.long	-1101742281
	.long	1064626296
	.long	-1090238911
	.long	-1084713863
	.long	-1102305307
	.long	1064138225
	.long	1059813159
	.long	-1101704980
	.long	-1095554485
	.long	1053029426
	.long	-1092007676
	.long	-1089279998
	.long	1047770089
	.long	-1156970095
	.long	1062770128
	.long	1064043457
	.long	1041319775
	.long	1063194276
	.long	-1088294258
	.long	-1089415076
	.long	-1082803509
	.long	-1086617335
	.long	-1087913920
	.long	1040977276
	.long	1045649568
	.long	1036119683
	.long	-1105771353
	.long	1041362121
	.long	-1083951700
	.long	-1087831971
	.long	-1083494701
	.long	1057381539
	.long	-1084789078
	.long	-1087785496
	.long	1055287517
	.long	1042388161
	.long	-1089470036
	.long	1058710302
	.long	1062991335
	.long	1064402307
	.long	1057152320
	.long	-1096122948
	.long	1063754499
	.long	-1095991389
	.long	-1123622452
	.long	1050497448
	.long	-1088159234
	.long	1061858133
	.long	1055291492
	.long	1061091807
	.long	-1083549176
	.long	1064959193
	.long	1062468766
	.long	1065197104
	.long	1054270656
	.long	-1097669577
	.long	1038379102
	.long	-1082853304
	.long	1049038026
	.long	1057547436
	.long	-1083500880
	.long	1059992928
	.long	-1126981681
	.long	-1087221948
	.long	1049401123
	.long	-1085127941
	.long	1037387560
	.long	-1085651887
	.long	1053584530
	.long	1039362513
	.long	1050574250
	.long	-1082783053
	.long	-1087739973
	.long	-1107244774
	.long	1052842591
	.long	-1082600418
	.long	-1105737604
	.long	-1085467886
	.long	1060918548
	.long	1048425253
	.long	1061311481
	.long	-1090016618
	.long	1058545610
	.long	-1085468832
	.long	1041325707
	.long	1040890269
	.long	-1120874777
	.long	-1092627056
	.long	1055857581
	.long	1051081688
	.long	1039862358
	.long	-1123027125
	.long	-1092625040
	.long	-1085106344
	.long	1065176412
	.long	-1099440499
	.long	1062011824
	.long	-1094282757
	.long	1050802745
	.long	1058683267
	.long	1063524365
	.long	1050914276
	.long	1064184295
	.long	-1104224024
	.long	-1092612763
	.long	1062597795
	.long	1057349188
	.long	1050091212
	.long	-1084518731
	.long	-1092149048
	.long	1061206830
	.long	-1085046415
	.long	-1083691365
	.long	1039331283
	.long	-1088386662
	.long	1042754733
	.long	-1086838743
	.long	-1089234510
	.long	-1094883139
	.long	-1097425199
	.long	1063145848
	.long	1064446502
	.long	-1084156114
	.long	1052808631
	.long	-1089696627
	.long	-1095001782
	.long	-1088316047
	.long	-1093932530
	.long	1059175522
	.long	-1090592149
	.long	-1113940864
	.long	1052209887
	.long	-1092566824
	.long	-1084882519
	.long	1061520375
	.long	1040659268
	.long	1036350710
	.long	-1104199530
	.long	1060894534
	.long	1061558684
	.long	1058498760
	.long	1055281528
	.long	-1098961559
	.long	1063847877
	.long	-1088443902
	.long	-1082895499
	.long	1060336415
	.long	-1107076897
	.long	1060722231
	.long	-1099587305
	.long	1058627258
	.long	1051042418
	.long	1060757538
	.long	1061578571
	.long	-1086556981
	.long	1060003454
	.long	-1082307316
	.long	-1084469860
	.long	-1087959725
	.long	1047068315
	.long	1049020409
	.long	-1093444985
	.long	-1085912899
	.long	1064677920
	.long	1021934772
	.long	1020643394
	.long	-1085196472
	.long	-1098051671
	.long	-1082850660
	.long	1061257465
	.long	1031161179
	.long	1042210636
	.long	1061065940
	.long	1045632812
	.long	1053796239
	.long	1058495916
	.long	-1097687653
	.long	1043108139
	.long	-1114132454
	.long	1065215592
	.long	994544143
	.long	1036229355
	.long	1058563348
	.long	-1088279939
	.long	1064845208
	.long	-1085671439
	.long	-1087317059
	.long	-1086293705
	.long	-1092058995
	.long	1057428535
	.long	-1098964282
	.long	-1094025927
	.long	-1089070675
	.long	1061565200
	.long	978368290
	.long	1061223889
	.long	1060183875
	.long	-1088844705
	.long	1041242273
	.long	1053609721
	.long	-1093440471
	.long	1061707246
	.long	-1084858144
	.long	1057020716
	.long	1055059461
	.long	-1084327110
	.long	1063533019
	.long	-1098612955
	.long	-1088973658
	.long	1057683150
	.long	-1082810301
	.long	-1094768602
	.long	1057954055
	.long	1062813290
	.long	-1084450692
	.long	-1083176572
	.long	1027280887
	.long	-1088112134
	.long	-1102606159
	.long	1058255459
	.long	-1083985750
	.long	-1107913487
	.long	1058339939
	.long	-1083564048
	.long	1058972425
	.long	-1092319054
	.long	-1087389920
	.long	1045154972
	.long	1032524681
	.long	1064334605
	.long	1064008597
	.long	-1083448777
	.long	-1083239991
	.long	-1104046277
	.long	1027955961
	.long	1049663454
	.long	1053981402
	.long	1051352287
	.long	-1089863919
	.long	-1087088245
	.long	-1090482740
	.long	1064602072
	.long	1058978954
	.long	-1091518205
	.long	1061236338
	.long	-1088567706
	.long	-1083563631
	.long	1059046096
	.long	1062617041
	.long	1063904327
	.long	1059535355
	.long	-1098238975
	.long	1050690153
	.long	1065096130
	.long	-1090787047
	.long	1064629586
	.long	1049974535
	.long	1025539094
	.long	1058187405
	.long	1026403539
	.long	1064606404
	.long	-1093796731
	.long	-1088732853
	.long	1057758113
	.long	-1098483717
	.long	-1089589354
	.long	-1096264170
	.long	1041582920
	.long	1041278618
	.long	-1092141196
	.long	1050440067
	.long	1062479697
	.long	1049043865
	.long	-1088687246
	.long	1060171912
	.long	-1094790454
	.long	1061162895
	.long	-1098951049
	.long	1052933737
	.long	1053131050
	.long	-1090265411
	.long	1060604215
	.long	1051721713
	.long	-1091761820
	.long	-1089804670
	.long	1063091041
	.long	1051876372
	.long	-1096907729
	.long	-1118909717
	.long	-1085102411
	.long	1045176531
	.long	-1085642437
	.long	-1111850855
	.long	-1127776180
	.long	1062543061
	.long	1058725102
	.long	1063659607
	.long	1049269504
	.long	1057362084
	.long	-1112778151
	.long	-1084741096
	.long	-1083623808
	.long	-1091503721
	.long	-1110137847
	.long	1048703128
	.long	-1110225833
	.long	-1095891214
	.long	-1092288969
	.long	1046374861
	.long	-1091363240
	.long	1047091301
	.long	-1084624335
	.long	-1083773281
	.long	1055134698
	.long	-1084773104
	.long	-1106181797
	.long	1037398968
	.long	-1089597956
	.long	1062309097
	.long	-1084937085
	.long	-1097741285
	.long	1060285872
	.long	1047578561
	.long	1057607144
	.long	-1088866861
	.long	-1084916124
	.long	-1104641653
	.long	-1092401366
	.long	1056437492
	.long	1050903210
	.long	1034611241
	.long	-1084828638
	.long	-1090270992
	.long	1055838005
	.long	1058602759
	.long	-1095729823
	.long	1051829257
	.long	1041902743
	.long	-1082737117
	.long	-1101564748
	.long	1061003743
	.long	-1090185227
	.long	1063378161
	.long	1065063557
	.long	-1087306424
	.long	-1107879678
	.long	1049013545
	.long	-1091454146
	.long	-1091554009
	.long	-1089467009
	.long	-1086534402
	.long	1041990165
	.long	-1094973958
	.long	1041837289
	.long	-1105418510
	.long	1058186432
	.long	-1090562056
	.long	-1113412120
	.long	1059644943
	.long	-1089263853
	.long	1055331496
	.long	1056060884
	.long	-1106614974
	.long	1052923695
	.long	-1096937598
	.long	-1106501448
	.long	1053463793
	.long	1044968103
	.long	1058443470
	.long	1061502934
	.long	-1084392188
	.long	1049127557
	.long	-1092930446
	.long	1059681968
	.long	-1086284112
	.long	-1089572975
	.long	1054446157
	.long	-1091171524
	.long	1063946608
	.long	-1109021308
	.long	1052383607
	.long	1060300014
	.long	-1084439273
	.long	-1090874196
	.long	1055389442
	.long	-1088737572
	.long	-1139901149
	.long	-1097607759
	.long	1056561552
	.long	1058086501
	.long	1035416960
	.long	1063471354
	.long	-1110903032
	.long	-1097903193
	.long	1057080222
	.long	1064563030
	.long	1055555415
	.long	-1089354520
	.long	1062828552
	.long	-1089092625
	.long	1059918023
	.long	1050222726
	.long	1063866510
	.long	-1082886085
	.long	-1087477572
	.long	1059168599
	.long	1057338212
	.long	1063687257
	.long	-1088041014
	.long	1058104801
	.long	-1106359485
	.long	1049147258
	.long	-1082536925
	.long	1050746373
	.long	-1094585791
	.long	1059749474
	.long	-1089282989
	.long	-1084471679
	.long	1057242799
	.long	-1102877528
	.long	-1092130614
	.long	-1085349762
	.long	1063011891
	.long	1052863550
	.long	1040318190
	.long	-1083938955
	.long	1058181014
	.long	1064937560
	.long	-1102107911
	.long	1056975775
	.long	-1118760766
	.long	1052039883
	.long	-1085392662
	.long	-1102279105
	.long	-1084991161
	.long	1021797367
	.long	1062241798
	.long	1057931853
	.long	1058876401
	.long	-1087519083
	.long	1063616779
	.long	-1088377889
	.long	1062040472
	.long	1045984438
	.long	-1082476374
	.long	1062447141
	.long	-1087655339
	.long	1061811177
	.long	1040997457
	.long	1063707493
	.long	-1090079186
	.long	-1089763330
	.long	1056788657
	.long	1047680630
	.long	1042308255
	.long	1057239708
	.long	-1096362975
	.long	1055645361
	.long	-1102529986
	.long	-1092465319
	.long	-1085336015
	.long	1049984619
	.long	-1084922430
	.long	1052454035
	.long	-1085533866
	.long	-1115358874
	.long	-1170828095
	.long	1036848779
	.long	1058609368
	.long	-1096808872
	.long	1026151047
	.long	-1087567708
	.long	1047652919
	.long	1057811258
	.long	1044775418
	.long	-1083746849
	.long	-1138575187
	.long	1016344995
	.long	1063351330
	.long	1042975062
	.long	-1082390320
	.long	1062170295
	.long	-1083382483
	.long	1044786290
	.long	-1086347476
	.long	1057543567
	.long	1052415864
	.long	-1094311373
	.long	1054547313
	.long	1052359271
	.long	1054310015
	.long	1022755299
	.long	-1087914870
	.long	1028564745
	.long	1056046586
	.long	-1093279032
	.long	1032671103
	.long	1055663786
	.long	-1091072098
	.long	-1093489823
	.long	1059023856
	.long	1059643714
	.long	1048166645
	.long	-1087426056
	.long	-1087353196
	.long	-1096691978
	.long	-1088098149
	.long	-1099838229
	.long	1063344303
	.long	-1082853855
	.long	1060953826
	.long	-1090031506
	.long	1061899116
	.long	-1094689918
	.long	1056744748
	.long	-1086282606
	.long	-1083117882
	.long	1058811797
	.long	1048703205
	.long	-1094881297
	.long	-1087207817
	.long	-1087476315
	.long	-1089312029
	.long	-1086329814
	.long	1058843616
	.long	1063553489
	.long	-1092524743
	.long	989887333
	.long	1064535363
	.long	1024467417
	.long	-1091465055
	.long	-1087881133
	.long	-1112349803
	.long	-1123300700
	.long	1058293102
	.long	-1100630022
	.long	-1097278324
	.long	-1090361309
	.long	1044472528
	.long	-1096504508
	.long	-1088620531
	.long	1058139719
	.long	1060306851
	.long	1057592734
	.long	1057458542
	.long	-1086416554
	.long	1052365941
	.long	1057463876
	.long	-1108664643
	.long	1065203722
	.long	-1103154535
	.long	-1101042436
	.long	-1119207251
	.long	-1083324762
	.long	-1110402648
	.long	1055430114
	.long	1058937468
	.long	-1102429553
	.long	1036473287
	.long	-1103224593
	.long	1059479893
	.long	-1083860785
	.long	1058558437
	.long	-1086375420
	.long	1058485344
	.long	1064264541
	.long	-1097454383
	.long	1061717288
	.long	-1102940965
	.long	1054107751
	.long	-1112549878
	.long	1034285313
	.long	-1088287260
	.long	1048471502
	.long	1065094622
	.long	1065064843
	.long	1057760789
	.long	1056167343
	.long	-1083846575
	.long	-1101723168
	.long	-1084468553
	.long	-1090628409
	.long	-1083066846
	.long	1042375878
	.long	1064937378
	.long	1057807927
	.long	-1088331957
	.long	1059857341
	.long	-1083856149
	.long	-1087657578
	.long	1050212251
	.long	-1096878766
	.long	-1082496953
	.long	1044535050
	.long	1064166932
	.long	1061297692
	.long	1062112356
	.long	-1091432142
	.long	-1085451777
	.long	1055481825
	.long	1065110294
	.long	1060985053
	.long	1050646480
	.long	-1107894981
	.long	1064980522
	.long	-1084671260
	.long	-1097861446
	.long	1064197303
	.long	-1098731708
	.long	-1097734845
	.long	-1102978394
	.long	1059440475
	.long	-1091384643
	.long	-1089748704
	.long	1059861973
	.long	-1099627425
	.long	1064624161
	.long	-1112557268
	.long	-1086186770
	.long	-1140458626
	.long	-1090504050
	.long	-1087677198
	.long	-1095738411
	.long	-1086692973
	.long	1062066914
	.long	1005284054
	.long	1044900942
	.long	-1091442283
	.long	1059348151
	.long	-1098156532
	.long	-1086631502
	.long	-1085632398
	.long	1024142560
	.long	1032758626
	.long	-1083905973
	.long	991518060
	.long	-1121633858
	.long	-1083076657
	.long	-1085684155
	.long	1062860228
	.long	-1110649554
	.long	1041563273
	.long	-1090036919
	.long	-1124039639
	.long	-1087797413
	.long	-1084047698
	.long	-1086421085
	.long	1057383641
	.long	1044287209
	.long	1043990437
	.long	-1088732557
	.long	1062824949
	.long	1046973310
	.long	-1087330940
	.long	-1098688088
	.long	-1101745412
	.long	-1092266783
	.long	1052779373
	.long	-1084071345
	.long	-1112816362
	.long	1064848196
	.long	-1086546060
	.long	1059797863
	.long	-1088842368
	.long	1055960568
	.long	1063728097
	.long	-1083881651
	.long	-1088208916
	.long	1058183800
	.long	-1087227158
	.long	-1085140642
	.long	1064302370
	.long	1054362758
	.long	-1088942579
	.long	-1089071757
	.long	1021792771
	.long	1050188329
	.long	1058521959
	.long	1060591770
	.long	-1087431891
	.long	-1104442529
	.long	-1094854467
	.long	1061461820
	.long	1065316904
	.long	-1095006538
	.long	-1090131251
	.long	-1091930113
	.long	-1089999934
	.long	1050211605
	.long	1053299163
	.long	1035102843
	.long	1061393838
	.long	1047500031
	.long	-1108427239
	.long	1054485573
	.long	-1098708513
	.long	1050331373
	.long	-1098740824
	.long	-1096194246
	.long	-1112795055
	.long	-1086963770
	.long	1059021249
	.long	1052521842
	.long	1054350807
	.long	1049233003
	.long	1060438898
	.long	1059067921
	.long	-1086667079
	.long	1060465672
	.long	996747212
	.long	1052909833
	.long	-1087351645
	.long	1048966488
	.long	1060387307
	.long	-1083513109
	.long	1063448046
	.long	-1083412891
	.long	1052279259
	.long	1057754115
	.long	-1097905941
	.long	-1082191972
	.long	-1096433481
	.long	-1088526103
	.long	1050743523
	.long	1037688387
	.long	-1099911313
	.long	1025944182
	.long	1060107642
	.long	1051758229
	.long	1039947802
	.long	-1086571961
	.long	1025658142
	.long	1049267291
	.long	-1096689545
	.long	1045341402
	.long	-1095586173
	.long	1065257789
	.long	-1082364081
	.long	-1085694396
	.long	1057106559
	.long	-1092409363
	.long	1062002864
	.long	1060524036
	.long	1064654691
	.long	-1118708964
	.long	-1094173268
	.long	-1097501343
	.long	1060685302
	.long	-1104709798
	.long	1024863606
	.long	1060334364
	.long	-1090383314
	.long	-1094710908
	.long	1042642595
	.long	1060090632
	.long	-1108881554
	.long	1062993578
	.long	-1086774388
	.long	1053571554
	.long	1041150916
	.long	1056453926
	.long	-1120717990
	.long	-1084331877
	.long	-1105761771
	.long	-1108439782
	.long	-1082351119
	.long	-1084489220
	.long	-1088315186
	.long	-1124204186
	.long	-1097619755
	.long	-1090502919
	.long	-1085391368
	.long	-1084854979
	.long	1023752518
	.long	-1089865503
	.long	1063907759
	.long	1060017515
	.long	-1087888785
	.long	1064052857
	.long	-1087339300
	.long	1060123152
	.long	-1100555113
	.long	1022054038
	.long	-1093614618
	.long	-1091279829
	.long	-1085815144
	.long	1056971325
	.long	-1089971315
	.long	1065347835
	.long	1040925791
	.long	-1085296834
	.long	-1089092643
	.long	1040218631
	.long	1045432672
	.long	-1110474182
	.long	1057699187
	.long	1059147985
	.long	1061583752
	.long	1047184326
	.long	-1087888007
	.long	1061929674
	.long	1049021646
	.long	-1094638256
	.long	-1086924227
	.long	-1104818326
	.long	1062069814
	.long	-1090510852
	.long	1060599485
	.long	-1087003114
	.long	-1098547040
	.long	-1090623512
	.long	-1083872667
	.long	-1083953240
	.long	1030837052
	.long	-1082927402
	.long	-1089792351
	.long	1033127611
	.long	-1106820511
	.long	1060235114
	.long	-1084068044
	.long	-1083060095
	.long	1051829081
	.long	-1089044318
	.long	1057488358
	.long	1053751456
	.long	1044064241
	.long	1062078756
	.long	1058665797
	.long	-1086023856
	.long	-1096233561
	.long	-1084132823
	.long	1024976075
	.long	-1093697629
	.long	-1089646739
	.long	1052177595
	.long	-1092434642
	.long	-1082493574
	.long	-1088188559
	.long	1049141092
	.long	1061640399
	.long	-1082681052
	.long	-1085939856
	.long	-1098279974
	.long	-1096354751
	.long	1025404265
	.long	1058244597
	.long	1055182331
	.long	1053498545
	.long	-1086850977
	.long	1058408140
	.long	-1085636207
	.long	1057914838
	.long	1060801752
	.long	-1089234726
	.long	1060156096
	.long	1027139613
	.long	-1117169563
	.long	1063300929
	.long	-1098283439
	.long	-1085977101
	.long	1059150169
	.long	1062026329
	.long	1043681879
	.long	-1113808077
	.long	-1091293129
	.long	1017200363
	.long	-1089408582
	.long	1050585594
	.long	-1088125228
	.long	-1088072256
	.long	-1082381558
	.long	1042068335
	.long	-1092306661
	.long	-1088568169
	.long	-1097014571
	.long	1050691557
	.long	1064425984
	.long	-1097487903
	.long	1049032878
	.long	1061608162
	.long	-1090029433
	.long	-1093237080
	.long	1049816202
	.long	1058446654
	.long	1049187341
	.long	-1087218500
	.long	1062099932
	.long	1025656130
	.long	-1088613641
	.long	1052199956
	.long	-1116996247
	.long	-1084484864
	.long	1064192118
	.long	-1109449725
	.long	1059319247
	.long	1022836664
	.long	1057106133
	.long	-1085906509
	.long	1048728615
	.long	-1102762947
	.long	-1093811826
	.long	-1106543242
	.long	-1091177938
	.long	1041636903
	.long	1046949771
	.long	-1101782680
	.long	1061385262
	.long	1042616250
	.long	-1089261283
	.long	-1092061087
	.long	1054519535
	.long	1043250814
	.long	1032679221
	.long	1024689879
	.long	-1099281457
	.long	-1082583181
	.long	-1104099037
	.long	-1085507941
	.long	-1088461715
	.long	-1086435320
	.long	-1096691130
	.long	1063819924
	.long	1064486783
	.long	1058203749
	.long	1055523969
	.long	-1099162457
	.long	-1086315922
	.long	1058859958
	.long	1064540004
	.long	-1090019473
	.long	1035313971
	.long	-1127206823
	.long	1064999176
	.long	1050048830
	.long	1058981525
	.long	1063043882
	.long	-1094577767
	.long	1061832649
	.long	1041673984
	.long	1060123279
	.long	-1083844266
	.long	-1122923572
	.long	-1084642763
	.long	-1122949134
	.long	-1088408520
	.long	1062865659
	.long	1050078353
	.long	1062573017
	.long	1033593943
	.long	1063887111
	.long	-1096334088
	.long	-1084735119
	.long	-1087410833
	.long	-1102462407
	.long	1058498324
	.long	-1106898849
	.long	-1090111476
	.long	1052140169
	.long	-1105612390
	.long	-1083217057
	.long	-1097159361
	.long	-1082154633
	.long	-1091290366
	.long	-1084104383
	.long	1045945133
	.long	-1082741687
	.long	-1084553047
	.long	-1085649765
	.long	-1088417930
	.long	1037691628
	.long	-1086147830
	.long	1009317299
	.long	-1088670906
	.long	1064822293
	.long	1058683804
	.long	-1101158606
	.long	1064265720
	.long	-1094905905
	.long	-1097588115
	.long	-1085949099
	.long	-1095702742
	.long	1040894670
	.long	-1086368197
	.long	-1084651629
	.long	-1086502691
	.long	-1124670468
	.long	1052730335
	.long	1061334142
	.long	-1095024059
	.long	1039765878
	.long	-1086840509
	.long	-1106496676
	.long	-1103707314
	.long	-1095999269
	.long	-1085568820
	.long	-1112358107
	.long	-1082960727
	.long	-1094033313
	.long	1059259283
	.long	-1105573759
	.long	1057541766
	.long	-1095573296
	.long	-1085742075
	.long	-1118747589
	.long	-1083158836
	.long	1058926362
	.long	-1100345233
	.long	1047844625
	.long	1025514153
	.long	-1097407571
	.long	-1084681768
	.long	-1119565536
	.long	1056540195
	.long	-1085137977
	.long	1040435197
	.long	-1097057684
	.long	1051760318
	.long	-1086084551
	.long	1060614149
	.long	1059579315
	.long	1056288473
	.long	-1109628347
	.long	-1095692584
	.long	1034448433
	.long	-1136260918
	.long	1056154970
	.long	-1144852021
	.long	1063159220
	.long	-1098476069
	.long	1049328639
	.long	-1086588770
	.long	1065027629
	.long	1038229675
	.long	-1086618563
	.long	1055983371
	.long	1063627401
	.long	-1105487405
	.long	-1088987344
	.long	-1108884433
	.long	-1110246292
	.long	1046588519
	.long	-1117160511
	.long	1035800581
	.long	-1090132991
	.long	1053107659
	.long	-1100656594
	.long	-1117255291
	.long	1059252854
	.long	-1086263473
	.long	-1086065522
	.long	1061836209
	.long	1059027357
	.long	-1111354543
	.long	1039835903
	.long	-1106385352
	.long	-1089775841
	.long	1057558796
	.long	-1095850594
	.long	1049121689
	.long	1058979694
	.long	1044577989
	.long	1064993506
	.long	-1083375756
	.long	-1097228641
	.long	1064738714
	.long	-1090498316
	.long	1062473834
	.long	-1088913190
	.long	-1083988150
	.long	-1094215291
	.long	1059639462
	.long	-1088279682
	.long	-1087019184
	.long	-1086530450
	.long	1065105673
	.long	1064964890
	.long	-1084427695
	.long	-1085723605
	.long	1050570243
	.long	1042993440
	.long	-1089631250
	.long	1025359064
	.long	1055148205
	.long	1046734356
	.long	1032946559
	.long	-1094929317
	.long	1050837774
	.long	1051156403
	.long	1063143008
	.long	-1083844418
	.long	1059722183
	.long	-1094769268
	.long	-1088844518
	.long	-1093497453
	.long	-1108210737
	.long	1057718927
	.long	1053472458
	.long	1051506384
	.long	-1130353319
	.long	-1089170430
	.long	1033873175
	.long	-1083763932
	.long	-1085124252
	.long	1063172125
	.long	1059416466
	.long	-1113004626
	.long	1059369083
	.long	-1083742849
	.long	-1091941897
	.long	1057643446
	.long	-1091608544
	.long	1037838258
	.long	-1107650525
	.long	-1098002750
	.long	-1092652649
	.long	1033067887
	.long	-1085570810
	.long	-1088147669
	.long	-1083225411
	.long	-1116075063
	.long	-1097141911
	.long	1049620090
	.long	1057928620
	.long	-1095550367
	.long	1060015606
	.long	-1120273299
	.long	-1083855060
	.long	1022166100
	.long	1059721318
	.long	-1094920891
	.long	-1089228086
	.long	-1103076039
	.long	1054427409
	.long	1048844244
	.long	-1089384059
	.long	-1120291980
	.long	-1095119023
	.long	1055290093
	.long	-1086930893
	.long	-1082858839
	.long	-1082635565
	.long	-1093278698
	.long	-1100200263
	.long	-1105393512
	.long	1057625101
	.long	1058493281
	.long	1061647054
	.long	-1089201596
	.long	-1089046384
	.long	-1097194652
	.long	-1096570396
	.long	-1095770464
	.long	1063812524
	.long	1061397485
	.long	1029420949
	.long	-1118241625
	.long	1048513323
	.long	-1084812234
	.long	-1090016202
	.long	-1092214807
	.long	1055862171
	.long	-1090517298
	.long	-1086183968
	.long	1052593822
	.long	1044492689
	.long	-1103049390
	.long	-1092949597
	.long	-1103150691
	.long	-1138610824
	.long	-1085760202
	.long	-1088397546
	.long	-1096289872
	.long	1061333117
	.long	-1140600710
	.long	-1082419009
	.long	1053365241
	.long	1039220909
	.long	1051967983
	.long	-1098580487
	.long	1061603430
	.long	-1087112267
	.long	-1095120486
	.long	-1093158253
	.long	-1085167630
	.long	1064294364
	.long	1060543199
	.long	1063954144
	.long	-1105764900
	.long	1050826328
	.long	1063436909
	.long	-1083846630
	.long	1060075492
	.long	1063806867
	.long	1031954673
	.long	-1093102106
	.long	1053997244
	.long	1063861057
	.long	-1088542128
	.long	-1087003483
	.long	-1085190030
	.long	-1098825977
	.long	1042566830
	.long	-1104896079
	.long	-1088472202
	.long	-1091517031
	.long	1061840793
	.long	-1088032969
	.long	-1085004455
	.long	-1128282982
	.long	-1089464339
	.long	1052579042
	.long	-1093074205
	.long	1057311893
	.long	-1084182917
	.long	-1086495114
	.long	1050271201
	.long	1032211082
	.long	1064864049
	.long	-1088267014
	.long	1051088557
	.long	-1091220675
	.long	-1102503156
	.long	1058118256
	.long	1060306887
	.long	1055144009
	.long	1059982307
	.long	1037853327
	.long	-1082449476
	.long	-1085680170
	.long	1032755615
	.long	995681081
	.long	1053349642
	.long	1062055982
	.long	1040592053
	.long	-1084724048
	.long	-1086244242
	.long	-1085079731
	.long	1057133601
	.long	-1085326630
	.long	-1128583660
	.long	1064011290
	.long	1054987122
	.long	1064847330
	.long	-1102328541
	.long	1063450081
	.long	1045488830
	.long	1056345443
	.long	-1088208105
	.long	1032330851
	.long	1038065015
	.long	-1082924384
	.long	1050564001
	.long	1063348920
	.long	-1098257933
	.long	1049583059
	.long	1062887496
	.long	-1101173447
	.long	1063728851
	.long	1062634462
	.long	1061134817
	.long	1049137552
	.long	-1087412302
	.long	1057063489
	.long	1064979453
	.long	-1087714704
	.long	-1092137233
	.long	-1094352438
	.long	1060001909
	.long	1057805656
	.long	1060388507
	.long	1057293853
	.long	1061824152
	.long	1043631812
	.long	1060051808
	.long	-1091555008
	.long	-1084784351
	.long	-1083783435
	.long	-1108269620
	.long	-1088698158
	.long	1045201071
	.long	-1095571317
	.long	-1092694618
	.long	-1094943191
	.long	1060304683
	.long	-1092328666
	.long	1045047466
	.long	1057382253
	.long	1060428696
	.long	1063877170
	.long	-1085142408
	.long	-1096064168
	.long	-1084618074
	.long	-1087127280
	.long	-1088008255
	.long	1053992876
	.long	-1120694728
	.long	1061984879
	.long	1060544394
	.long	1048657775
	.long	-1087404213
	.long	1033270470
	.long	-1093856047
	.long	-1093350949
	.long	1047493173
	.long	1062481737
	.long	1058752682
	.long	-1098370239
	.long	-1088520760
	.long	-1087317054
	.long	-1090460324
	.long	-1093546931
	.long	1030491330
	.long	1057830011
	.long	1040699530
	.long	-1084844509
	.long	-1109648322
	.long	-1084222436
	.long	-1103289825
	.long	-1096657015
	.long	-1089161551
	.long	1055418291
	.long	1060160181
	.long	1060535390
	.long	1050749881
	.long	1061323927
	.long	-1087648619
	.long	-1093596733
	.long	-1085217634
	.long	1047089869
	.long	-1119506126
	.long	1064818714
	.long	1052733272
	.long	1062340629
	.long	1062295515
	.long	-1111043358
	.long	1059970584
	.long	-1089210643
	.long	-1118407580
	.long	-1085872923
	.long	-1089504747
	.long	1064141024
	.long	1024421583
	.long	1062751708
	.long	1007360898
	.long	1051095574
	.long	-1084616393
	.long	1062589198
	.long	-1098357425
	.long	1037967952
	.long	-1085186085
	.long	1058481267
	.long	1060307881
	.long	1045273051
	.long	-1083201559
	.long	1046460190
	.long	-1083969168
	.long	1049196638
	.long	1063360619
	.long	1049561170
	.long	-1090774041
	.long	-1083902497
	.long	1058392837
	.long	1051600437
	.long	1055484190
	.long	-1084461089
	.long	-1097118488
	.long	-1089465736
	.long	-1090082132
	.long	1065346202
	.long	1048563527
	.long	-1118034329
	.long	-1084726887
	.long	-1084243956
	.long	1065315497
	.long	-1084452103
	.long	1059839517
	.long	-1087365354
	.long	-1082642774
	.long	-1092253638
	.long	1060539236
	.long	-1142194623
	.long	-1092176340
	.long	-1109838443
	.long	-1088976185
	.long	1058451624
	.long	-1086235124
	.long	-1089802394
	.long	1061313250
	.long	1022616187
	.long	-1082175006
	.long	1058207410
	.long	-1087218627
	.long	-1084609643
	.long	1063781737
	.long	-1104155477
	.long	-1083386523
	.long	-1129458575
	.long	-1083131756
	.long	1049011043
	.long	1063712381
	.long	-1098402417
	.long	1042669285
	.long	1016368870
	.long	1055889982
	.long	1062959976
	.long	-1083977896
	.long	1060804381
	.long	1059836662
	.long	-1097334530
	.long	-1085601651
	.long	1051446982
	.long	1032427923
	.long	-1112569102
	.long	-1095455874
	.long	-1107977124
	.long	1062234786
	.long	-1096427630
	.long	-1096777107
	.long	1032678271
	.long	1063292228
	.long	1061461588
	.long	1042463096
	.long	-1085076264
	.long	1005294455
	.long	-1084329635
	.long	-1089429066
	.long	1045640753
	.long	-1114683943
	.long	-1117776087
	.long	1062193645
	.long	-1089462177
	.long	1054992010
	.long	1063976664
	.long	1063936749
	.long	1035515978
	.long	1058879193
	.long	1061334629
	.long	-1089403263
	.long	1007693592
	.long	1064944292
	.long	1052627300
	.long	-1127849662
	.long	1062482428
	.long	-1087746759
	.long	983666197
	.long	1044148162
	.long	1062499705
	.long	-1092268739
	.long	1057457125
	.long	-1082211085
	.long	-1084751895
	.long	-1093110604
	.long	-1094338225
	.long	1045645047
	.long	-1094887237
	.long	1049144204
	.long	1063551638
	.long	1060991453
	.long	-1091126131
	.long	1048459796
	.long	-1094452601
	.long	1064924127
	.long	-1084155102
	.long	-1125015049
	.long	1059291496
	.long	-1086070944
	.long	-1104888297
	.long	-1086744149
	.long	994124807
	.long	-1087130882
	.long	-1087013720
	.long	-1091730569
	.long	1056181117
	.long	-1101857538
	.long	1046764845
	.long	-1098617833
	.long	1045645081
	.long	-1092789437
	.long	1064044257
	.long	-1083063302
	.long	-1143012508
	.long	1050900097
	.long	-1084875364
	.long	1038379867
	.long	-1083168231
	.long	-1088215718
	.long	-1084911900
	.long	1048642081
	.long	-1082619075
	.long	1062528980
	.long	-1092311914
	.long	-1087849633
	.long	-1084179447
	.long	-1083964681
	.long	1056213087
	.long	1051083781
	.long	-1105785406
	.long	-1103162710
	.long	-1097804888
	.long	1061076602
	.long	1063935556
	.long	1026338502
	.long	-1091078697
	.long	1000673364
	.long	1057900657
	.long	1040483517
	.long	-1100293581
	.long	-1087497443
	.long	-1084377507
	.long	1054876513
	.long	1040788569
	.long	1058461696
	.long	-1090584340
	.long	1043936340
	.long	1057400074
	.long	-1089155875
	.long	-1096292588
	.long	1056373419
	.long	-1084349999
	.long	1062563719
	.long	-1088711097
	.long	-1086181924
	.long	1025243206
	.long	1060653283
	.long	1059502723
	.long	-1088602777
	.long	-1099595237
	.long	-1086593305
	.long	-1093118107
	.long	1064534747
	.long	1063383059
	.long	1064297165
	.long	1044182544
	.long	-1110101720
	.long	1060207265
	.long	1062001832
	.long	-1082160119
	.long	1048906029
	.long	1058017305
	.long	1046592338
	.long	1050714625
	.long	1051291910
	.long	-1088793127
	.long	1062697010
	.long	1061153904
	.long	1049137266
	.long	1060259302
	.long	-1092843720
	.long	-1098009453
	.long	-1112361898
	.long	-1086793941
	.long	-1084859924
	.long	-1088342375
	.long	-1103223246
	.long	-1109226329
	.long	1057231049
	.long	-1109863078
	.long	-1090289189
	.long	1064703022
	.long	1059573695
	.long	-1111702560
	.long	-1087248733
	.long	-1084274983
	.long	1023122081
	.long	1057486726
	.long	1064770565
	.long	-1138776538
	.long	-1090608872
	.long	1060212101
	.long	1057751773
	.long	-1100247175
	.long	-1096692235
	.long	1060055501
	.long	-1097016426
	.long	1063027327
	.long	1052901926
	.long	1048892884
	.long	-1084837987
	.long	-1101904016
	.long	-1106304859
	.long	-1102738345
	.long	1058682677
	.long	-1089891445
	.long	-1084193910
	.long	1052318659
	.long	-1086626219
	.long	-1090895085
	.long	1058853572
	.long	1058091795
	.long	1044921493
	.long	-1092902892
	.long	-1087724121
	.long	-1087122201
	.long	-1083902931
	.long	-1115808187
	.long	-1089124609
	.long	-1091117787
	.long	1046036093
	.long	1038523509
	.long	1032590493
	.long	1059299600
	.long	1059357207
	.long	-1087019224
	.long	1060984340
	.long	-1090761094
	.long	-1096954911
	.long	1063990037
	.long	1044330434
	.long	1054898897
	.long	1059292775
	.long	1064160293
	.long	1058305871
	.long	1046469356
	.long	-1090081656
	.long	-1106269261
	.long	1050399609
	.long	1056566088
	.long	1065138585
	.long	-1089908384
	.long	-1089624879
	.long	1044166604
	.long	-1110449974
	.long	1049818907
	.long	1059618306
	.long	-1098231799
	.long	-1130326840
	.long	978075218
	.long	-1119032401
	.long	-1089034169
	.long	1057818846
	.long	1060374936
	.long	1065056857
	.long	1064382378
	.long	1060164727
	.long	1027542024
	.long	-1083117297
	.long	1039738437
	.long	1061627418
	.long	1040686033
	.long	-1108663650
	.long	-1087262682
	.long	-1092485408
	.long	-1103118523
	.long	-1087629196
	.long	-1087350342
	.long	-1114361721
	.long	1057866879
	.long	1052958549
	.long	-1094141842
	.long	-1087005831
	.long	-1088720787
	.long	1060290315
	.long	-1098139723
	.long	1033296777
	.long	1060103731
	.long	-1100225469
	.long	1053395787
	.long	-1084698928
	.long	1033175838
	.long	-1136370587
	.long	1055962091
	.long	-1104163512
	.long	-1096247827
	.long	-1092766722
	.long	-1083078353
	.long	-1107510374
	.long	-1112511478
	.long	-1100329217
	.long	1029290248
	.long	1063699756
	.long	1055982748
	.long	1047796433
	.long	1050013535
	.long	-1088548998
	.long	-1084382167
	.long	1058413022
	.long	1049167170
	.long	1063483815
	.long	-1129004663
	.long	-1083029935
	.long	1050838780
	.long	-1097995133
	.long	-1101771418
	.long	1060913758
	.long	1064705384
	.long	-1089444660
	.long	1062668983
	.long	-1098485065
	.long	-1089573161
	.long	-1095668644
	.long	1007859287
	.long	-1087240251
	.long	-1109945494
	.long	-1087862500
	.long	-1088319654
	.long	1058669843
	.long	1063454550
	.long	-1088831398
	.long	-1095542272
	.long	1050064075
	.long	1057901221
	.long	1046319173
	.long	-1087622386
	.long	-1089307685
	.long	1045406880
	.long	-1090830795
	.long	1014213401
	.long	-1085502129
	.long	-1100842748
	.long	1023710129
	.long	-1106941204
	.long	1058870376
	.long	1052694991
	.long	-1089839514
	.long	-1086492141
	.long	1059529653
	.long	-1087731373
	.long	1056164544
	.long	-1088303084
	.long	-1089875768
	.long	-1098044722
	.long	1051360460
	.long	-1082303918
	.long	1046084168
	.long	-1099646808
	.long	-1092095898
	.long	-1085385622
	.long	-1082999615
	.long	-1097520845
	.long	1057800309
	.long	1049956697
	.long	1063840004
	.long	1033188392
	.long	1060953687
	.long	1058731779
	.long	1049409054
	.long	1060496507
	.long	1059760868
	.long	1057334698
	.long	-1089623157
	.long	-1093652678
	.long	-1083921693
	.long	1057796552
	.long	1060563289
	.long	1049644151
	.long	1059527966
	.long	1062419950
	.long	1052981675
	.long	-1091003933
	.long	-1084110786
	.long	1050553625
	.long	-1090107279
	.long	1051230639
	.long	1054771207
	.long	-1083896531
	.long	-1084956917
	.long	1059812718
	.long	-1087588888
	.long	-1094776430
	.long	1055508432
	.long	1053199962
	.long	-1089563009
	.long	978893306
	.long	1060118285
	.long	1027689988
	.long	1033722156
	.long	1050842839
	.long	-1085094689
	.long	1053431297
	.long	1058802655
	.long	-1121374590
	.long	-1099303531
	.long	-1083142451
	.long	1053722920
	.long	-1083244984
	.long	-1096184709
	.long	-1126576293
	.long	1046847893
	.long	1063478729
	.long	-1107988112
	.long	-1095308082
	.long	-1088891628
	.long	-1090960375
	.long	-1103522558
	.long	1038904444
	.long	-1088857160
	.long	1046105009
	.long	-1101911553
	.long	-1094748840
	.long	-1088662121
	.long	-1090662057
	.long	-1098651483
	.long	1058369001
	.long	-1094812426
	.long	1064579428
	.long	-1088294448
	.long	1055355665
	.long	1042979309
	.long	1061554099
	.long	-1097996498
	.long	-1089560572
	.long	-1082378023
	.long	-1092492944
	.long	1057991739
	.long	-1095484929
	.long	1064854806
	.long	1062929308
	.long	-1090047381
	.long	1060076022
	.long	1050998639
	.long	1064568881
	.long	1062428511
	.long	1043692486
	.long	-1086689104
	.long	-1091222650
	.long	-1142659523
	.long	1062864358
	.long	1062901490
	.long	1057211854
	.long	-1083078190
	.long	-1118395820
	.long	-1113349507
	.long	-1095370529
	.long	-1095006141
	.long	-1089416286
	.long	-1083278431
	.long	1051767673
	.long	1059286161
	.long	1060513398
	.long	1051316213
	.long	-1082352082
	.long	1057320295
	.long	1059586734
	.long	-1092636071
	.long	1050424034
	.long	-1084674909
	.long	1052067161
	.long	1060163884
	.long	1063681404
	.long	1056131827
	.long	1046502558
	.long	1063431185
	.long	1054329085
	.long	-1084145808
	.long	1063564283
	.long	-1089760473
	.long	1062010050
	.long	1048537202
	.long	1033693836
	.long	-1086396081
	.long	-1088613565
	.long	-1087160246
	.long	1032729902
	.long	1061325898
	.long	-1111013678
	.long	-1097276389
	.long	1016109085
	.long	-1098251238
	.long	-1093690297
	.long	-1147062471
	.long	-1123672187
	.long	-1087362091
	.long	1060370625
	.long	-1111866483
	.long	1060964596
	.long	1045380140
	.long	1051543426
	.long	-1093579531
	.long	1058839902
	.long	-1086978313
	.long	1062693955
	.long	-1120497485
	.long	-1107143143
	.long	-1085841589
	.long	1045914773
	.long	1049820418
	.long	-1087101482
	.long	-1105541620
	.long	-1085734506
	.long	1054547455
	.long	1063236168
	.long	-1095741561
	.long	-1086228657
	.long	1062769749
	.long	1040300009
	.long	1042985024
	.long	-1105734405
	.long	-1085979807
	.long	-1082145041
	.long	-1100673100
	.long	-1087956943
	.long	1055892695
	.long	-1083610481
	.long	1057888778
	.long	1037365192
	.long	-1093403986
	.long	1064326348
	.long	1057224005
	.long	-1107116578
	.long	1057143478
	.long	1063648809
	.long	1057435982
	.long	-1092377255
	.long	-1098038254
	.long	-1090249349
	.long	1038188151
	.long	-1097460954
	.long	-1088898002
	.long	1042053519
	.long	-1088961035
	.long	1064485754
	.long	-1089256071
	.long	-1096811716
	.long	1059726091
	.long	-1103765018
	.long	-1083266926
	.long	-1097395190
	.long	1060849190
	.long	1063011270
	.long	-1111360282
	.long	1037647105
	.long	-1099888164
	.long	-1090693953
	.long	-1089909068
	.long	-1087484679
	.long	1058960753
	.long	1058875424
	.long	-1096941164
	.long	1060232634
	.long	-1092530632
	.long	1063821294
	.long	1047476236
	.long	-1102889716
	.long	-1095726692
	.long	-1103210850
	.long	-1089620722
	.long	-1084486900
	.long	-1082196789
	.long	1025450422
	.long	1059489723
	.long	-1093027793
	.long	-1089229879
	.long	1052895474
	.long	1057496674
	.long	1057066893
	.long	1062916815
	.long	1060744560
	.long	-1093381719
	.long	1059551797
	.long	1058312962
	.long	-1178947981
	.long	-1083851879
	.long	-1084721417
	.long	1058894727
	.long	1026687575
	.long	1051667002
	.long	-1087223748
	.long	-1086940971
	.long	-1089162318
	.long	-1097535730
	.long	-1091422241
	.long	1057265629
	.long	-1084711447
	.long	-1086905056
	.long	-1090078258
	.long	1038711551
	.long	-1101766635
	.long	-1083466240
	.long	-1097969103
	.long	-1088228389
	.long	-1082591273
	.long	-1087381698
	.long	1063218355
	.long	1058942179
	.long	-1084894072
	.long	-1094435420
	.long	1053583451
	.long	-1102851596
	.long	1058981612
	.long	1037688168
	.long	1065138845
	.long	1046497103
	.long	1043857514
	.long	-1082774350
	.long	1058142009
	.long	-1085299790
	.long	1064086276
	.long	1061066765
	.long	1049345619
	.long	1032084890
	.long	1050723655
	.long	1057951673
	.long	-1096231853
	.long	-1089780078
	.long	1063604521
	.long	1061966329
	.long	1063297560
	.long	1058913505
	.long	1054986822
	.long	-1088128317
	.long	1065169666
	.long	-1094721024
	.long	1056322967
	.long	1063758402
	.long	1054573592
	.long	-1092851622
	.long	1034557776
	.long	1060223093
	.long	-1088791577
	.long	-1090138654
	.long	1060613565
	.long	-1083506126
	.long	-1092060021
	.long	-1094590466
	.long	1046662232
	.long	1061174314
	.long	-1088233798
	.long	-1098755675
	.long	-1083059501
	.long	-1086815037
	.long	-1087589049
	.long	-1101709849
	.long	-1082810097
	.long	-1088506336
	.long	1058633717
	.long	-1111249786
	.long	-1091922253
	.long	1060939374
	.long	-1103820688
	.long	1059928348
	.long	-1082679457
	.long	1050903933
	.long	-1092967491
	.long	1032411355
	.long	1061493545
	.long	1061459613
	.long	1065114818
	.long	-1101785827
	.long	1046504645
	.long	1057778531
	.long	1064971155
	.long	-1102388506
	.long	1063913124
	.long	1043758556
	.long	-1099539125
	.long	1052137088
	.long	1055390687
	.long	-1121693735
	.long	1062300785
	.long	-1084134447
	.long	1059171144
	.long	1059629372
	.long	-1103621881
	.long	-1099723423
	.long	1060988365
	.long	1060510566
	.long	1061575942
	.long	1050987364
	.long	1055977255
	.long	1048977472
	.long	-1088262821
	.long	1055668168
	.long	1035208104
	.long	1060292427
	.long	1031445256
	.long	1063987534
	.long	-1105764658
	.long	-1101706355
	.long	1061585671
	.long	1025246663
	.long	-1082894323
	.long	-1088498203
	.long	-1085984968
	.long	1061532151
	.long	1051141654
	.long	1054204369
	.long	1036062122
	.long	1056500010
	.long	-1086824653
	.long	1015889968
	.long	-1091846783
	.long	-1089127643
	.long	-1092541660
	.long	-1087258600
	.long	1056747057
	.long	-1082239025
	.long	-1089466042
	.long	-1115417261
	.long	1061015909
	.long	-1087690589
	.long	1058544756
	.long	-1088753728
	.long	1038184086
	.long	-1088851405
	.long	1060720725
	.long	1059963499
	.long	-1088697210
	.long	-1084119884
	.long	-1106332729
	.long	1063236401
	.long	1050750262
	.long	-1091961282
	.long	-1090082777
	.long	-1093491798
	.long	-1085615824
	.long	-1097242145
	.long	1009230500
	.long	1042665136
	.long	1065041613
	.long	-1088046891
	.long	-1103382986
	.long	-1095597453
	.long	-1102387731
	.long	1058472367
	.long	-1102133805
	.long	1024091918
	.long	-1126005399
	.long	1047699790
	.long	-1091421533
	.long	1064587474
	.long	-1089906345
	.long	-1088784880
	.long	1061599606
	.long	1061673339
	.long	1049890907
	.long	-1092533838
	.long	1026553159
	.long	1055532570
	.long	1047690872
	.long	1043032359
	.long	1059221506
	.long	1042161020
	.long	-1086314855
	.long	1063048826
	.long	1062000831
	.long	-1095820254
	.long	-1110289671
	.long	-1085531937
	.long	-1086851549
	.long	-1086675280
	.long	-1105455845
	.long	-1087116932
	.long	-1129430885
	.long	1064703244
	.long	-1088866736
	.long	1044418164
	.long	-1090317873
	.long	-1092617874
	.long	-1095470231
	.long	1036718589
	.long	-1087779616
	.long	-1084896334
	.long	1058434338
	.long	-1083140906
	.long	1058875172
	.long	-1090118779
	.long	1055113829
	.long	-1097330538
	.long	-1083563522
	.long	1057884752
	.long	-1085210729
	.long	1062395838
	.long	1060394292
	.long	-1085160432
	.long	1065336497
	.long	-1082654694
	.long	1023356539
	.long	1048432876
	.long	1062594386
	.long	1043193528
	.long	-1097161437
	.long	1049903058
	.long	1059852659
	.long	1064465032
	.long	1051084334
	.long	1061998008
	.long	-1085730338
	.long	-1091757462
	.long	1059635421
	.long	1039288311
	.long	-1089809408
	.long	-1096023396
	.long	1061910667
	.long	1059064001
	.long	1047094047
	.long	1057527604
	.long	-1082988119
	.long	1044309077
	.long	1062997576
	.long	-1131008758
	.long	1064800688
	.long	-1106199058
	.long	1064650376
	.long	1049057814
	.long	-1088315766
	.long	1060061649
	.long	-1090058212
	.long	1050074517
	.long	-1092558473
	.long	1053308457
	.long	1014959206
	.long	-1087475917
	.long	1041646302
	.long	-1086217280
	.long	1052978077
	.long	1055047004
	.long	1064749270
	.long	-1118845588
	.long	1058029338
	.long	1044615278
	.long	1056380720
	.long	-1098121599
	.long	1065028421
	.long	1045106377
	.long	1059952633
	.long	1057474914
	.long	1044984594
	.long	-1146551530
	.long	1021313076
	.long	-1098664432
	.long	-1089227790
	.long	-1096188710
	.long	1053246043
	.long	1032994218
	.long	1063930158
	.long	1057463543
	.long	-1112642399
	.long	-1087294243
	.long	1033964427
	.long	-1107603242
	.long	-1105307081
	.long	-1090937222
	.long	1026715848
	.long	1062953045
	.long	1051994327
	.long	1060455960
	.long	-1087143456
	.long	1034207716
	.long	-1113411547
	.long	1057698640
	.long	1051802070
	.long	-1087492877
	.long	-1089306363
	.long	1047769466
	.long	1032422668
	.long	1062876798
	.long	-1097187550
	.long	1057363283
	.long	1035295319
	.long	1063426662
	.long	-1096110840
	.long	-1083570129
	.long	1059602326
	.long	1045370791
	.long	-1087823198
	.long	1059334753
	.long	1061929384
	.long	-1096134661
	.long	-1097310617
	.long	1054524651
	.long	1058674105
	.long	1052107546
	.long	-1093177664
	.long	1052104582
	.long	-1085372903
	.long	-1087257487
	.long	-1086840624
	.long	1058314968
	.long	1064667970
	.long	-1083105213
	.long	1064691671
	.long	1039383126
	.long	-1082575557
	.long	-1088379361
	.long	1051307143
	.long	-1093363440
	.long	1046922120
	.long	-1101134420
	.long	1060597775
	.long	1041804563
	.long	-1101424773
	.long	1060012116
	.long	1059906639
	.long	1030900888
	.long	-1100811785
	.long	-1099855300
	.long	1043085693
	.long	-1087000213
	.long	1062717354
	.long	-1096183842
	.long	1047326122
	.long	-1086912122
	.long	-1090765821
	.long	1057844151
	.long	-1092633392
	.long	-1096016759
	.long	1041037408
	.long	1060980191
	.long	1056737202
	.long	1049704991
	.long	-1088782214
	.long	-1091385373
	.long	1048530054
	.long	1051050194
	.long	1064239426
	.long	-1087976369
	.long	-1086438331
	.long	-1088030822
	.long	1038861014
	.long	-1114812602
	.long	1025624226
	.long	1060869166
	.long	1056548019
	.long	1062144657
	.long	1062461125
	.long	1057817339
	.long	1063522122
	.long	1042066319
	.long	1053649371
	.long	1044359814
	.long	1058246169
	.long	-1091696670
	.long	1060910144
	.long	-1121892854
	.long	-1090486709
	.long	-1084597920
	.long	1053098265
	.long	1060721989
	.long	1063165707
	.long	1060288594
	.long	-1115862827
	.long	-1098106384
	.long	-1114074172
	.long	-1086250780
	.long	-1084494604
	.long	-1087012402
	.long	-1084083375
	.long	1051139091
	.long	1061271093
	.long	-1088173290
	.long	-1089906142
	.long	-1088894021
	.long	-1103127589
	.long	1061330181
	.long	1044642282
	.long	-1085964966
	.long	-1094841823
	.long	1060711610
	.long	-1096387241
	.long	-1087955083
	.long	-1083761755
	.long	-1109316879
	.long	1063066943
	.long	1061369164
	.long	1056450260
	.long	-1094655255
	.long	-1082781787
	.long	1052753653
	.long	-1098059589
	.long	1064479981
	.long	1063534743
	.long	1047447174
	.long	1063150274
	.long	-1102141476
	.long	-1087560497
	.long	1064717923
	.long	1036048615
	.long	-1112580927
	.long	1052772357
	.long	-1098057280
	.long	1031511508
	.long	-1103388221
	.long	1041661424
	.long	-1096988998
	.long	-1106348442
	.long	1040579323
	.long	-1115285878
	.long	1065164018
	.long	-1085390498
	.long	1061382040
	.long	1041740035
	.long	-1092794596
	.long	-1088972417
	.long	-1088944746
	.long	-1095010801
	.long	1062678370
	.long	1058173456
	.long	-1085054994
	.long	-1082630020
	.long	-1089606003
	.long	1051080777
	.long	1027698348
	.long	1043079707
	.long	1003491936
	.long	1062840614
	.long	1049804909
	.long	1044955022
	.long	1049890039
	.long	1051421452
	.long	1063193766
	.long	-1086247401
	.long	1059042819
	.long	1034730502
	.long	-1086553410
	.long	1053626200
	.long	1062271667
	.long	-1090507841
	.long	1055390665
	.long	1049642970
	.long	1059178691
	.long	1056040758
	.long	1057400627
	.long	-1107314648
	.long	-1084094969
	.long	-1090500753
	.long	1059172864
	.long	-1128276619
	.long	-1090165145
	.long	-1121661083
	.long	-1086106643
	.long	1064492818
	.long	-1089298651
	.long	-1098537110
	.long	-1090416559
	.long	1058406333
	.long	-1095134013
	.long	-1084053520
	.long	-1084885970
	.long	1051503652
	.long	1050207357
	.long	-1086410245
	.long	-1082468515
	.long	-1090904280
	.long	-1180973488
	.long	-1106433008
	.long	-1088384857
	.long	-1082626739
	.long	-1088816356
	.long	-1082138355
	.long	1039069664
	.long	-1085715206
	.long	1060993124
	.long	1062945442
	.long	-1089593862
	.long	-1131782274
	.long	-1085912950
	.long	-1085774992
	.long	-1088827144
	.long	1063437528
	.long	1058257725
	.long	1059713219
	.long	-1095250209
	.long	-1094209706
	.long	1045370921
	.long	-1130570832
	.long	-1089404035
	.long	1049880716
	.long	1064725471
	.long	1061697859
	.long	-1096816818
	.long	-1086335571
	.long	1045601686
	.long	1062064957
	.long	-1086608627
	.long	-1092995503
	.long	1060099808
	.long	-1093917943
	.long	-1098310835
	.long	-1094736622
	.long	1059195852
	.long	-1082596541
	.long	-1104472265
	.long	1058779513
	.long	-1083211721
	.long	-1093121132
	.long	1056952661
	.long	-1090819856
	.long	-1127099793
	.long	-1105036744
	.long	1052283897
	.long	1047080475
	.long	-1106380351
	.long	-1114578087
	.long	1031977702
	.long	-1104356106
	.long	-1089249497
	.long	-1104803579
	.long	1057444790
	.long	1058328316
	.long	1055100013
	.long	1062992466
	.long	-1104243636
	.long	-1092526410
	.long	-1103282716
	.long	1059917579
	.long	-1136619012
	.long	-1100141998
	.long	-1101589181
	.long	-1090217877
	.long	-1085389024
	.long	1042330778
	.long	1063542550
	.long	1053739171
	.long	1058173096
	.long	-1088771762
	.long	-1096220720
	.long	1023465476
	.long	1060048051
	.long	-1085677434
	.long	1062589611
	.long	-1115421012
	.long	1064317562
	.long	-1095722396
	.long	-1082520997
	.long	1063780588
	.long	-1088033449
	.long	-1085872003
	.long	-1097247691
	.long	-1093079557
	.long	1061157430
	.long	-1087131219
	.long	-1087747590
	.long	-1089372161
	.long	-1082846662
	.long	1063911868
	.long	1061510445
	.long	1035814455
	.long	1062746036
	.long	-1088617565
	.long	-1087444277
	.long	1052218777
	.long	1064255939
	.long	1047676513
	.long	-1083875861
	.long	-1087611509
	.long	1055450743
	.long	-1091393938
	.long	-1089243961
	.long	-1088088844
	.long	-1082462305
	.long	1050979181
	.long	-1085487138
	.long	1031661144
	.long	-1088686034
	.long	1042485409
	.long	-1095895647
	.long	1052933547
	.long	-1083420059
	.long	-1124718038
	.long	-1103347881
	.long	1039871781
	.long	1063468330
	.long	-1088565358
	.long	-1083462528
	.long	1052027462
	.long	-1083295134
	.long	-1094585197
	.long	1061585452
	.long	1062618157
	.long	1027698292
	.long	1056459088
	.long	-1083151239
	.long	1048963731
	.long	1041435285
	.long	-1096440803
	.long	1056409834
	.long	-1093097239
	.long	1052165211
	.long	-1084749233
	.long	1064445628
	.long	-1090654858
	.long	1064888102
	.long	1042069932
	.long	-1086896925
	.long	-1088555621
	.long	-1096145876
	.long	-1104195350
	.long	1062698579
	.long	-1124277067
	.long	-1088397057
	.long	-1086673106
	.long	-1086433497
	.long	-1086595371
	.long	-1092223845
	.long	1052343709
	.long	1051174344
	.long	1058806221
	.long	-1105786361
	.long	-1091519120
	.long	-1100104343
	.long	1046903305
	.long	-1113087200
	.long	1061887109
	.long	1049167504
	.long	-1094152939
	.long	-1084697480
	.long	-1085884811
	.long	1039697696
	.long	-1102948315
	.long	-1083902237
	.long	-1088289947
	.long	1064142199
	.long	-1086619099
	.long	1048911936
	.long	-1086929161
	.long	1055950057
	.long	-1088692081
	.long	-1087415373
	.long	-1086399289
	.long	-1089909889
	.long	1058417199
	.long	1041851983
	.long	1053662072
	.long	-1086833584
	.long	1058955390
	.long	-1098684854
	.long	-1084429480
	.long	1063572592
	.long	1063034618
	.long	-1087081460
	.long	1042144514
	.long	-1113660898
	.long	-1098830562
	.long	1063169693
	.long	1054573767
	.long	-1085177631
	.long	-1086507312
	.long	-1087207586
	.long	1044079563
	.long	1060144949
	.long	-1118876184
	.long	-1087078405
	.long	1055383941
	.long	-1095046545
	.long	-1083988931
	.long	1017095996
	.long	1062798776
	.long	-1115344782
	.long	-1109458512
	.long	-1104378025
	.long	1063885763
	.long	1054553130
	.long	1060196789
	.long	1040563202
	.long	1053986499
	.long	-1102604711
	.long	1058007348
	.long	1057028282
	.long	1062028065
	.long	1061925935
	.long	-1096291241
	.long	1061517768
	.long	1047712965
	.long	-1085589913
	.long	1057599200
	.long	-1113775575
	.long	1055103627
	.long	1059036142
	.long	-1090507902
	.long	-1083969218
	.long	1053257808
	.long	-1083542532
	.long	975905896
	.long	-1107791460
	.long	1045667637
	.long	-1093555258
	.long	-1119140631
	.long	-1096783168
	.long	-1082217013
	.long	1051747337
	.long	1048603812
	.long	1062760101
	.long	-1086680349
	.long	1048553892
	.long	1057696121
	.long	1013145179
	.long	-1115113096
	.long	-1085428475
	.long	-1100737725
	.long	1055686081
	.long	-1094594656
	.long	-1091720288
	.long	-1095110282
	.long	1058911951
	.long	-1096679369
	.long	1040638363
	.long	1031722174
	.long	-1084114944
	.long	1053636399
	.long	1042789708
	.long	-1090036392
	.long	1057855014
	.long	1064202182
	.long	1053946818
	.long	-1102873482
	.long	1029345763
	.long	-1083610514
	.long	1062395332
	.long	1061271923
	.long	-1084652026
	.long	1037646679
	.long	1061123520
	.long	-1089515372
	.long	1064953610
	.long	1057074063
	.long	-1114205401
	.long	1059239777
	.long	1058771988
	.long	-1094430044
	.long	-1088156219
	.long	1035452777
	.long	1060696229
	.long	-1094920246
	.long	1060064876
	.long	-1123419919
	.long	1045208422
	.long	1051992606
	.long	-1092754201
	.long	1060477789
	.long	-1133217136
	.long	-1089695015
	.long	-1085921256
	.long	1054963984
	.long	1060994012
	.long	-1096481596
	.long	-1105735179
	.long	1060731549
	.long	-1086422410
	.long	-1086441649
	.long	-1138526279
	.long	1057804725
	.long	1041719165
	.long	1061614960
	.long	-1088414975
	.long	-1115974380
	.long	-1093870413
	.long	1063080102
	.long	1051181718
	.long	1061424645
	.long	-1083704385
	.long	1057697038
	.long	-1090060395
	.long	1057718451
	.long	1055419983
	.long	-1093105857
	.long	1062055749
	.long	1056852244
	.long	-1098743536
	.long	-1083121921
	.long	-1114793013
	.long	1015520014
	.long	1057135719
	.long	-1125478408
	.long	-1106190886
	.long	1063205749
	.long	-1086274487
	.long	1043052707
	.long	-1103492956
	.long	1056838318
	.long	1062904121
	.long	1053217271
	.long	1056941803
	.long	1043443697
	.long	1023992481
	.long	1059168257
	.long	-1084935531
	.long	-1090119305
	.long	1051010632
	.long	1020786024
	.long	1064497281
	.long	-1098773709
	.long	-1104546782
	.long	1051317413
	.long	1062144269
	.long	1042526997
	.long	-1092593433
	.long	-1083074157
	.long	-1082670325
	.long	1049025759
	.long	1060504294
	.long	-1098082297
	.long	1064172210
	.long	1040250694
	.long	1060174193
	.long	-1088707992
	.long	1049728676
	.long	-1093147576
	.long	-1093556396
	.long	-1105466512
	.long	1059160220
	.long	1039938397
	.long	-1088084570
	.long	1052272135
	.long	1060049699
	.long	1061202513
	.long	-1089151783
	.long	-1091555303
	.long	-1114789280
	.long	1043521306
	.long	1051974035
	.long	1053435196
	.long	1060492554
	.long	-1088529371
	.long	-1086802108
	.long	-1082565151
	.long	1064339147
	.long	1058632381
	.long	-1095813480
	.long	-1094306149
	.long	-1089310612
	.long	-1088460181
	.long	-1087550314
	.long	1065251767
	.long	-1085745264
	.long	1061809502
	.long	-1115313350
	.long	-1082319333
	.long	1061141962
	.long	1054043668
	.long	1045667582
	.long	1058191292
	.long	1064321385
	.long	1061044285
	.long	1061254192
	.long	-1097394478
	.long	1046372560
	.long	1047244587
	.long	-1090440949
	.long	1056038580
	.long	-1084349189
	.long	1063156241
	.long	-1083719483
	.long	-1114693751
	.long	1061366602
	.long	1059215963
	.long	-1090569807
	.long	-1097758153
	.long	1046847669
	.long	1054043725
	.long	-1084949261
	.long	-1094691076
	.long	1042113416
	.long	-1082902233
	.long	-1089758013
	.long	1059274613
	.long	1055805616
	.long	1033731676
	.long	1049150564
	.long	1057733718
	.long	1061643622
	.long	-1095101496
	.long	1056286361
	.long	-1088826006
	.long	-1086511877
	.long	-1085888744
	.long	-1087070320
	.long	-1096876808
	.long	-1089242599
	.long	-1123284330
	.long	-1094263230
	.long	-1085642217
	.long	-1104313893
	.long	1046550351
	.long	-1096443021
	.long	1062595430
	.long	-1083263795
	.long	-1084957712
	.long	-1103266360
	.long	1064448005
	.long	1063083942
	.long	1063959348
	.long	-1101991350
	.long	-1085365358
	.long	-1091037661
	.long	1064920957
	.long	-1101724928
	.long	1059437760
	.long	1036313670
	.long	-1085481538
	.long	1052031507
	.long	1063965309
	.long	-1086594275
	.long	-1100288745
	.long	-1095267020
	.long	1055929675
	.long	-1084489995
	.long	-1083174610
	.long	1053266118
	.long	1055569603
	.long	1057685578
	.long	1059901011
	.long	1064414182
	.long	-1085921619
	.long	1049011699
	.long	1062713977
	.long	1051906340
	.long	1062265185
	.long	-1100499223
	.long	1041486373
	.long	-1088663677
	.long	1057630583
	.long	1059577818
	.long	-1086730658
	.long	-1102600123
	.long	-1097025074
	.long	1060747226
	.long	1059955714
	.long	1048595391
	.long	-1089316572
	.long	1038460393
	.long	-1099819508
	.long	1061463805
	.long	-1085498441
	.long	1036929039
	.long	1038691779
	.long	-1125730762
	.long	-1114303729
	.long	-1090263212
	.long	1061926721
	.long	1057057556
	.long	-1090649085
	.long	-1095115659
	.long	-1097160564
	.long	1064368558
	.long	1030181870
	.long	1060874157
	.long	1058352658
	.long	-1105014070
	.long	1062461453
	.long	-1104742058
	.long	1052010548
	.long	1064017840
	.long	-1097877810
	.long	-1093808242
	.long	-1106869906
	.long	1033070205
	.long	1061927236
	.long	-1095612491
	.long	1064450344
	.long	-1103041511
	.long	1065006250
	.long	-1106813379
	.long	1058404640
	.long	-1083896563
	.long	-1082163215
	.long	-1086864223
	.long	-1087056682
	.long	1047738330
	.long	1061448033
	.long	-1099170671
	.long	-1086024628
	.long	1041160561
	.long	-1089753012
	.long	1056318871
	.long	-1095359246
	.long	-1090736511
	.long	1062534830
	.long	1039857600
	.long	1043835195
	.long	1059159155
	.long	-1084000129
	.long	1063027488
	.long	1064740305
	.long	-1146918237
	.long	1051659468
	.long	1059561856
	.long	-1085034401
	.long	1037026072
	.long	1053659971
	.long	-1084973214
	.long	1062537790
	.long	-1087880755
	.long	1022964433
	.long	-1086853849
	.long	-1088969772
	.long	-1095339697
	.long	1059886118
	.long	1058751224
	.long	-1087040640
	.long	1020153854
	.long	1061377434
	.long	-1098631676
	.long	1055501105
	.long	1059086641
	.long	1042694140
	.long	1064753944
	.long	1063159801
	.long	-1115221792
	.long	-1086947678
	.long	-1083020157
	.long	-1084599657
	.long	1061855549
	.long	1062409324
	.long	-1094901799
	.long	1039297048
	.long	-1086940815
	.long	1057789469
	.long	-1157379219
	.long	1061141382
	.long	-1104028765
	.long	1043553734
	.long	1034412411
	.long	-1085404788
	.long	1064899670
	.long	-1115956740
	.long	-1097449258
	.long	1063439259
	.long	1056915325
	.long	-1085336994
	.long	1052412760
	.long	-1083042833
	.long	-1097704247
	.long	-1120699835
	.long	1050387318
	.long	1052356008
	.long	-1089794979
	.long	1043512751
	.long	1041201075
	.long	-1087093737
	.long	-1088045039
	.long	1062521959
	.long	-1095050421
	.long	-1086655417
	.long	1011097903
	.long	1061936343
	.long	-1100393978
	.long	-1083349630
	.long	1031188503
	.long	-1091015509
	.long	1045107770
	.long	-1090020368
	.long	-1096508713
	.long	-1084822065
	.long	-1103080982
	.long	-1094003925
	.long	1052522006
	.long	-1083428018
	.long	1063566592
	.long	-1090444645
	.long	1059702395
	.long	1063471045
	.long	1049149898
	.long	1065090034
	.long	-1087708599
	.long	1033052604
	.long	-1086603856
	.long	989085288
	.long	-1096675226
	.long	-1091607891
	.long	1058136757
	.long	-1089571091
	.long	-1087987414
	.long	1058046114
	.long	1058395312
	.long	-1092766998
	.long	1062786510
	.long	-1091791152
	.long	-1094563402
	.long	-1137976514
	.long	1059551515
	.long	-1083920916
	.long	-1087342270
	.long	-1096115224
	.long	-1120068323
	.long	-1091746746
	.long	-1082212891
	.long	1057402083
	.long	-1114856691
	.long	-1084547893
	.long	-1099593877
	.long	-1090114000
	.long	1039452768
	.long	-1084843870
	.long	-1091882467
	.long	-1082551184
	.long	-1087490456
	.long	1057093713
	.long	1035758340
	.long	-1087592089
	.long	1057880397
	.long	1052195563
	.long	1055389295
	.long	-1082269554
	.long	1041511147
	.long	1035309058
	.long	1060458584
	.long	1058295900
	.long	1063710702
	.long	1009488067
	.long	1038533514
	.long	1028813057
	.long	-1088043368
	.long	1050990539
	.long	-1092750066
	.long	-1091140004
	.long	1059509103
	.long	1064055488
	.long	-1086294549
	.long	-1123439821
	.long	1047694997
	.long	-1120788793
	.long	1041919518
	.long	-1101079992
	.long	1051793548
	.long	-1091460521
	.long	1059900638
	.long	-1082355493
	.long	-1085742906
	.long	1049271497
	.long	1058571733
	.long	-1090989837
	.long	1046731022
	.long	-1084645835
	.long	-1089257654
	.long	-1100863162
	.long	-1086333980
	.long	1061042136
	.long	1055753051
	.long	1046886838
	.long	1064269583
	.long	1002946718
	.long	1062515817
	.long	1021144573
	.long	-1088023197
	.long	1056024489
	.long	-1105905561
	.long	1059497082
	.long	-1098365244
	.long	-1082761618
	.long	1052094362
	.long	-1103328296
	.long	-1085056010
	.long	1058566751
	.long	1055242580
	.long	-1084820290
	.long	1050326161
	.long	-1086568264
	.long	-1083958464
	.long	1063344960
	.long	-1097860764
	.long	1017103716
	.long	-1090325842
	.long	1055196397
	.long	1052780959
	.long	1064756664
	.long	1043049153
	.long	1010977561
	.long	1064651711
	.long	1050770307
	.long	1044472486
	.long	1054194712
	.long	-1089838453
	.long	-1093112495
	.long	1037023288
	.long	-1099883055
	.long	-1085384465
	.long	-1088553525
	.long	1051953534
	.long	-1086516993
	.long	1049981698
	.long	1051442740
	.long	1062535461
	.long	-1088681267
	.long	-1092633229
	.long	-1087409954
	.long	-1090483678
	.long	-1083917865
	.long	-1098496147
	.long	1055435097
	.long	1046779338
	.long	1058731054
	.long	-1087183720
	.long	1063085660
	.long	1052392891
	.long	-1095398812
	.long	-1089260603
	.long	1054382982
	.long	-1098154027
	.long	-1108379001
	.long	1057754368
	.long	-1083962127
	.long	-1084072184
	.long	-1083979231
	.long	1046405742
	.long	1042191503
	.long	-1096113086
	.long	-1085048203
	.long	-1082831746
	.long	1062838560
	.long	-1094170070
	.long	1064624717
	.long	1029560031
	.long	1036678280
	.long	1062868573
	.long	1052332739
	.long	-1083777651
	.long	-1117390028
	.long	1057335230
	.long	1049025090
	.long	-1104876219
	.long	-1082403775
	.long	-1096118307
	.long	-1089738309
	.long	1059099708
	.long	1053902149
	.long	1061237780
	.long	1063168367
	.long	1052342246
	.long	1062896825
	.long	-1087181872
	.long	-1087634277
	.long	1062042332
	.long	1051552312
	.long	-1124861668
	.long	-1084121702
	.long	-1097340078
	.long	-1082705891
	.long	-1086540081
	.long	1006883189
	.long	1065180695
	.long	-1084941644
	.long	1055439660
	.long	-1083241055
	.long	-1088093685
	.long	1037437055
	.long	-1089924687
	.long	-1083186695
	.long	1058640841
	.long	-1085668589
	.long	1062355015
	.long	1062300305
	.long	-1084843199
	.long	-1104082816
	.long	-1103217650
	.long	-1087629064
	.long	-1093454212
	.long	1041346505
	.long	1061865849
	.long	-1086722113
	.long	-1092331601
	.long	-1084515794
	.long	-1085770971
	.long	1054910283
	.long	1053615646
	.long	1043712324
	.long	-1092687306
	.long	1057766823
	.long	1028346566
	.long	-1092459345
	.long	-1112582516
	.long	-1127544832
	.long	-1085837926
	.long	-1090321029
	.long	1050921030
	.long	1060685906
	.long	1061501560
	.long	1062165035
	.long	-1102518643
	.long	-1109884112
	.long	-1097173739
	.long	1058870873
	.long	-1082641847
	.long	1013768115
	.long	-1087686552
	.long	1061165253
	.long	1060267345
	.long	-1089453930
	.long	1060760052
	.long	-1100414863
	.long	1059741046
	.long	-1107348358
	.long	1056613974
	.long	-1089190531
	.long	1059123623
	.long	-1097371834
	.long	1047928961
	.long	-1105239894
	.long	-1084043943
	.long	1053226385
	.long	-1087769889
	.long	1052393805
	.long	-1094837969
	.long	1058024252
	.long	1037197748
	.long	-1096528331
	.long	1051405605
	.long	-1093818635
	.long	1060768481
	.long	-1102779154
	.long	-1109581539
	.long	1063644923
	.long	1055511107
	.long	1063520176
	.long	-1086446019
	.long	1024081100
	.long	1061766093
	.long	1063868491
	.long	1049863959
	.long	-1098942585
	.long	-1092802426
	.long	-1112696381
	.long	-1091343909
	.long	-1095125373
	.long	1059932678
	.long	1000346858
	.long	-1100405651
	.long	-1115578191
	.long	-1082293824
	.long	-1087021229
	.long	-1097067302
	.long	-1091180405
	.long	-1088954481
	.long	-1087896158
	.long	1058380158
	.long	-1090744915
	.long	-1156882489
	.long	-1091182693
	.long	1059017553
	.long	-1098610857
	.long	1064410763
	.long	-1086884385
	.long	-1086067755
	.long	1051075397
	.long	1037927014
	.long	-1085643863
	.long	-1088015567
	.long	1061182563
	.long	1050302550
	.long	1058985966
	.long	1053978827
	.long	-1084163096
	.long	-1085826899
	.long	1058919297
	.long	1033487843
	.long	1051629834
	.long	-1089623528
	.long	1049500797
	.long	1057425980
	.long	-1090866507
	.long	1057205428
	.long	1047223255
	.long	1041138521
	.long	1061892969
	.long	1062594292
	.long	1061899134
	.long	-1110722224
	.long	1038053192
	.long	1053042882
	.long	1049332619
	.long	1060036023
	.long	1057347518
	.long	1047630017
	.long	-1098253672
	.long	-1110144927
	.long	-1082229686
	.long	1061242523
	.long	1062103610
	.long	-1082171648
	.long	-1149115975
	.long	-1084248247
	.long	-1086225621
	.long	1060382348
	.long	-1114453107
	.long	1034053221
	.long	-1108804753
	.long	1062470691
	.long	-1110240652
	.long	1027235838
	.long	1051282447
	.long	-1088576056
	.long	1062465690
	.long	-1090392339
	.long	-1094846059
	.long	1060714136
	.long	1043145046
	.long	1063434120
	.long	-1090637289
	.long	1038764743
	.long	1054547410
	.long	-1120202257
	.long	1019875464
	.long	1043584182
	.long	-1095559659
	.long	-1083145874
	.long	-1101252321
	.long	1063793760
	.long	-1117601488
	.long	-1082424635
	.long	1053807804
	.long	1061258777
	.long	-1087240394
	.long	1052712609
	.long	1056424684
	.long	1061744376
	.long	1064996233
	.long	-1108790617
	.long	-1088337718
	.long	1057178394
	.long	-1084997590
	.long	-1099512807
	.long	1009772154
	.long	-1092576511
	.long	1064274945
	.long	-1082911447
	.long	-1082395194
	.long	-1086407329
	.long	-1091652075
	.long	1023779746
	.long	1050383832
	.long	-1102273575
	.long	1059889171
	.long	1055242558
	.long	-1087467882
	.long	1049361091
	.long	1044757637
	.long	-1095791834
	.long	-1091016326
	.long	-1089075075
	.long	1053377632
	.long	-1082426978
	.long	-1084604175
	.long	1061555086
	.long	-1089004795
	.long	1062634509
	.long	-1088117587
	.long	-1096828761
	.long	-1083999605
	.long	1050409074
	.long	-1085316443
	.long	-1089943722
	.long	1063316491
	.long	1052357801
	.long	-1098758409
	.long	1058714627
	.long	-1082511838
	.long	1048607134
	.long	1057796767
	.long	-1085550370
	.long	1046990439
	.long	1013016710
	.long	1062328427
	.long	1044258393
	.long	-1092181445
	.long	1036212529
	.long	1060938662
	.long	-1089142900
	.long	-1118442729
	.long	1053419527
	.long	-1091826860
	.long	1041193770
	.long	-1085650814
	.long	1060194962
	.long	-1089166734
	.long	-1089100681
	.long	-1082683035
	.long	-1139723149
	.long	-1118481123
	.long	-1082136892
	.long	-1082703865
	.long	1052481401
	.long	1023693910
	.long	1042848360
	.long	1050262446
	.long	-1095866447
	.long	-1099702403
	.long	-1097510242
	.long	-1085924065
	.long	-1105988032
	.long	1059654493
	.long	-1088392897
	.long	-1082214904
	.long	1042604520
	.long	-1096316858
	.long	1026054031
	.long	1011522663
	.long	1061111536
	.long	-1090989418
	.long	1004200102
	.long	1059172922
	.long	-1084960841
	.long	1055273682
	.long	1061475080
	.long	1064151205
	.long	1062209971
	.long	1052046137
	.long	-1084274816
	.long	-1089191449
	.long	-1083591256
	.long	-1085830070
	.long	1057550415
	.long	1051137989
	.long	1053455873
	.long	-1084779489
	.long	1044991723
	.long	-1098527885
	.long	1061162109
	.long	-1110194021
	.long	-1102165621
	.long	-1101348155
	.long	1058287023
	.long	-1106906410
	.long	-1085911869
	.long	-1128921325
	.long	1040320988
	.long	1061759211
	.long	1025208273
	.long	1062620893
	.long	-1102866538
	.long	1037742170
	.long	1065190446
	.long	1058949985
	.long	1055631004
	.long	1060594859
	.long	-1104986301
	.long	-1089508842
	.long	-1105802210
	.long	-1082762905
	.long	-1096300401
	.long	-1085922762
	.long	1051973040
	.long	-1087460864
	.long	1051669344
	.long	-1086441519
	.long	1060331968
	.long	1064005190
	.long	1059084296
	.long	-1105136050
	.long	1061693813
	.long	1051929885
	.long	1052308438
	.long	1050698057
	.long	1058343447
	.long	1057879039
	.long	1060508257
	.long	1051343347
	.long	1042876996
	.long	-1100360620
	.long	1063670977
	.long	1059546529
	.long	-1120304519
	.long	1023847891
	.long	1061892098
	.long	-1087099403
	.long	-1083780490
	.long	-1102556225
	.long	-1119829754
	.long	1056534631
	.long	1043607370
	.long	1062300245
	.long	-1100626366
	.long	1063708616
	.long	-1105402949
	.long	-1091433472
	.long	-1089051509
	.long	1055365410
	.long	1065293554
	.long	-1084661674
	.long	-1093746965
	.long	1064068549
	.long	-1118609791
	.long	-1094534320
	.long	-1097232789
	.long	1061402050
	.long	1061552561
	.long	1016052607
	.long	-1093849574
	.long	1063882775
	.long	1065349300
	.long	-1090161320
	.long	-1095023068
	.long	1056213405
	.long	-1118434214
	.long	-1091214984
	.long	1059400012
	.long	-1087120881
	.long	1052258143
	.long	1059282060
	.long	1038930231
	.long	-1087592920
	.long	-1105563173
	.long	-1085068886
	.long	-1090445050
	.long	1057976569
	.long	-1104973506
	.long	1065313748
	.long	1060366657
	.long	-1083028109
	.long	-1137468985
	.long	-1094419525
	.long	1063216974
	.long	-1092078398
	.long	-1088242050
	.long	1064226662
	.long	-1085473200
	.long	-1100571053
	.long	1048615042
	.long	-1088872396
	.long	-1105266797
	.long	1064811924
	.long	-1132408359
	.long	1048595157
	.long	1045874845
	.long	-1094511478
	.long	-1087510878
	.long	1042549467
	.long	-1086328039
	.long	1058590606
	.long	-1112279254
	.long	1059353720
	.long	1048965734
	.long	-1109063471
	.long	1050259454
	.long	1050856587
	.long	1030735123
	.long	-1084769330
	.long	1061330169
	.long	-1082476610
	.long	1064358387
	.long	1063113258
	.long	1057862141
	.long	1040339075
	.long	1057469705
	.long	1060742357
	.long	1052157692
	.long	-1101602627
	.long	-1104662916
	.long	-1083995083
	.long	1024888231
	.long	1062056428
	.long	-1088926428
	.long	-1151100864
	.long	1038726961
	.long	-1092939507
	.long	1060639178
	.long	1051456507
	.long	1017757797
	.long	-1090130699
	.long	-1105954006
	.long	1056648082
	.long	1055686341
	.long	-1083858316
	.long	-1083879660
	.long	1051709900
	.long	-1087425697
	.long	-1132701859
	.long	-1091760970
	.long	1063407814
	.long	1044725104
	.long	1046998760
	.long	-1085684663
	.long	-1102898040
	.long	-1089569214
	.long	-1106324507
	.long	1045004822
	.long	1064998279
	.long	-1097541108
	.long	-1088978657
	.long	-1113751676
	.long	-1091624829
	.long	1043313662
	.long	1053884832
	.long	-1085172040
	.long	-1096285537
	.long	1061834620
	.long	-1082508068
	.long	-1082471357
	.long	-1090101705
	.long	-1098442616
	.long	1016338928
	.long	-1082392314
	.long	1064552517
	.long	-1084623515
	.long	1060201930
	.long	-1105597596
	.long	1060522494
	.long	-1090776194
	.long	-1092077311
	.long	-1104968936
	.long	1061089029
	.long	-1086728003
	.long	-1086822318
	.long	1052625159
	.long	-1084714544
	.long	-1147990655
	.long	-1088908878
	.long	1064805813
	.long	1057181865
	.long	1063501335
	.long	1065197494
	.long	-1087796991
	.long	1051389415
	.long	-1093098892
	.long	1057797386
	.long	-1082333838
	.long	-1085775870
	.long	1050081553
	.long	1064200362
	.long	1055136643
	.long	-1094263709
	.long	-1103425870
	.long	-1085930657
	.long	1054910693
	.long	1058275018
	.long	-1094765383
	.long	-1097162934
	.long	-1100442779
	.long	1060323007
	.long	-1083624461
	.long	1060880618
	.long	1056500016
	.long	-1082565656
	.long	1046340829
	.long	1041701657
	.long	-1086908713
	.long	-1094981886
	.long	1058120711
	.long	-1113200904
	.long	-1094839044
	.long	1048734945
	.long	-1084328811
	.long	1044570441
	.long	1055530284
	.long	1064364089
	.long	-1097314794
	.long	1048191501
	.long	-1099570512
	.long	-1086049847
	.long	1061411332
	.long	-1088702894
	.long	-1086609067
	.long	-1098289139
	.long	1060883734
	.long	-1117697975
	.long	1049377723
	.long	-1087840698
	.long	1064800117
	.long	1053277869
	.long	1057279026
	.long	-1084489517
	.long	1057872545
	.long	1059462818
	.long	-1086226070
	.long	1062572084
	.long	-1106456563
	.long	1027826674
	.long	-1084137582
	.long	1055580944
	.long	1059481801
	.long	1056843339
	.long	-1093252481
	.long	-1089419093
	.long	-1100387956
	.long	-1104609761
	.long	1045520197
	.long	-1087363353
	.long	-1087518018
	.long	1062228709
	.long	-1089483494
	.long	-1089247231
	.long	-1097629325
	.long	1064516353
	.long	1060485807
	.long	1060824495
	.long	1060501464
	.long	-1102777559
	.long	-1102904229
	.long	1063217129
	.long	1040800979
	.long	-1082475307
	.long	-1110131994
	.long	-1117206115
	.long	-1084428573
	.long	-1127010063
	.long	-1089211042
	.long	-1119038782
	.long	1044671433
	.long	-1085488328
	.long	-1109306915
	.long	1062681508
	.long	1052118956
	.long	1049398126
	.long	1061285384
	.long	1061520416
	.long	1025601784
	.long	1039616171
	.long	1051070365
	.long	-1094542662
	.long	-1085955205
	.long	1056091751
	.long	1060374536
	.long	1060901675
	.long	-1088937113
	.long	1061329346
	.long	1059054273
	.long	-1083119394
	.long	-1104550579
	.long	-1119094723
	.long	-1120768799
	.long	-1087781579
	.long	-1089328319
	.long	1054543489
	.long	1035461628
	.long	-1091128891
	.long	-1111978749
	.long	1063470316
	.long	1061510990
	.long	1008618403
	.long	-1096187748
	.long	-1097698560
	.long	-1114692379
	.long	1062574780
	.long	1063265080
	.long	-1087869596
	.long	1058372065
	.long	-1093254361
	.long	-1097825773
	.long	1063081195
	.long	-1083835549
	.long	1062262927
	.long	1058911795
	.long	1040681692
	.long	-1100847111
	.long	-1084601342
	.long	-1098253350
	.long	1052294775
	.long	-1107964292
	.long	-1122941959
	.long	-1086855067
	.long	1064908453
	.long	-1102143970
	.long	1051890155
	.long	-1095929680
	.long	-1098244297
	.long	1056928065
	.long	-1085693094
	.long	1057105672
	.long	-1083737421
	.long	-1085845327
	.long	-1087786207
	.long	-1085695539
	.long	-1083553696
	.long	-1093344833
	.long	1060853681
	.long	-1083742351
	.long	1035124847
	.long	-1092112313
	.long	1058272267
	.long	-1102202067
	.long	1063107887
	.long	1065060496
	.long	-1096146879
	.long	1045332894
	.long	1063360751
	.long	-1125079904
	.long	1036391317
	.long	-1086063464
	.long	-1103657255
	.long	-1083279155
	.long	-1087120038
	.long	1054921347
	.long	-1091547008
	.long	1045963009
	.long	-1099185570
	.long	1064285784
	.long	1023989658
	.long	1033681402
	.long	1054182667
	.long	1064723518
	.long	-1103558426
	.long	-1106973030
	.long	-1084920576
	.long	-1085476109
	.long	1060930344
	.long	1015475448
	.long	1045721344
	.long	1050272354
	.long	1061614484
	.long	-1113275212
	.long	-1097903024
	.long	1045428716
	.long	1055202898
	.long	1057104754
	.long	1059386128
	.long	1063629513
	.long	-1087569841
	.long	1041820638
	.long	1051963430
	.long	1058647307
	.long	-1088739008
	.long	-1093260030
	.long	1061872803
	.long	-1083069521
	.long	-1083420492
	.long	1057115432
	.long	1037040525
	.long	-1085496451
	.long	-1100316812
	.long	1044976817
	.long	-1088269577
	.long	1049161415
	.long	1064409762
	.long	1051257819
	.long	-1083837760
	.long	1058031521
	.long	-1082517410
	.long	-1088677827
	.long	1056930706
	.long	-1109889335
	.long	-1093849963
	.long	1049076602
	.long	-1096791480
	.long	-1091680024
	.long	-1093031464
	.long	-1088681699
	.long	1063953339
	.long	1015961475
	.long	1041718440
	.long	1058544225
	.long	-1105908371
	.long	-1092960719
	.long	1047466045
	.long	1051507358
	.long	1052807430
	.long	1063680146
	.long	1054432847
	.long	-1086982563
	.long	1034775211
	.long	-1136063696
	.long	1039514936
	.long	-1099593877
	.long	-1087292766
	.long	-1086574563
	.long	1062035963
	.long	1051897286
	.long	1063948998
	.long	-1112823815
	.long	-1082312717
	.long	1062549904
	.long	-1087140722
	.long	-1105585787
	.long	-1086683868
	.long	-1105994812
	.long	-1091899578
	.long	1060878656
	.long	-1093686287
	.long	1057348330
	.long	1055898362
	.long	-1089258408
	.long	-1099465706
	.long	-1090547877
	.long	-1094022576
	.long	1060198341
	.long	-1107286711
	.long	-1095813518
	.long	1040780714
	.long	-1089856702
	.long	-1084009917
	.long	-1091390318
	.long	-1084863203
	.long	1061551370
	.long	1039207287
	.long	-1091807698
	.long	-1090038044
	.long	-1082838438
	.long	-1091570823
	.long	-1116294508
	.long	1042170708
	.long	-1093107622
	.long	-1090648676
	.long	-1095614113
	.long	1030496291
	.long	1057670744
	.long	-1119958031
	.long	-1097896713
	.long	-1083796485
	.long	1057385895
	.long	-1082847387
	.long	1040958518
	.long	-1101375790
	.long	1060152952
	.long	1049227250
	.long	-1119335725
	.long	-1084856283
	.long	-1097594762
	.long	1041819834
	.long	-1087261413
	.long	-1128473259
	.long	-1094937713
	.long	1051744688
	.long	1062989900
	.long	1062657732
	.long	-1090321337
	.long	-1123076885
	.long	1064277091
	.long	1062333855
	.long	-1121883593
	.long	-1087895873
	.long	-1084237929
	.long	-1093007560
	.long	1045797703
	.long	-1106585134
	.long	1058079131
	.long	1062347425
	.long	1060919780
	.long	-1086064976
	.long	-1130352837
	.long	1058746620
	.long	1054818059
	.long	-1088686405
	.long	-1082741996
	.long	-1089256194
	.long	1060200486
	.long	1041397477
	.long	1063510358
	.long	1061365260
	.long	1059541895
	.long	-1082847513
	.long	1057331949
	.long	-1088708406
	.long	-1082855279
	.long	1056214119
	.long	1061902176
	.long	1041177464
	.long	1052660459
	.long	-1085405479
	.long	1062619874
	.long	-1092499019
	.long	1058390437
	.long	1064521772
	.long	1058862264
	.long	1059211899
	.long	-1089155944
	.long	1060828236
	.long	1058627552
	.long	1039529202
	.long	-1106009820
	.long	1064191837
	.long	-1129591811
	.long	1058189272
	.long	1064088605
	.long	-1086293986
	.long	1059148948
	.long	1057075911
	.long	1025463634
	.long	-1096859445
	.long	-1086676234
	.long	-1083492482
	.long	-1110123495
	.long	-1172081322
	.long	1037218526
	.long	-1089451387
	.long	-1096151209
	.long	1056028914
	.long	1050110012
	.long	1048370955
	.long	-1086942279
	.long	1042563738
	.long	1038307396
	.long	1046151862
	.long	1057663564
	.long	-1084271109
	.long	1053223795
	.long	-1084801169
	.long	-1082667159
	.long	1059815861
	.long	-1107572313
	.long	1058070715
	.long	-1087240622
	.long	1052310506
	.long	1058210861
	.long	1035183494
	.long	-1087258957
	.long	1051183061
	.long	1049909688
	.long	-1099479662
	.long	1058727637
	.long	1035882658
	.long	-1094163059
	.long	-1088624419
	.long	1027691380
	.long	1042360961
	.long	1058234560
	.long	1055302103
	.long	1063283295
	.long	-1091978652
	.long	1054847357
	.long	1061942986
	.long	1061511374
	.long	-1085741885
	.long	1053782732
	.long	1064655178
	.long	1061786046
	.long	-1098477278
	.long	1061550276
	.long	1056365395
	.long	-1091807277
	.long	-1105350523
	.long	-1107009021
	.long	1063705905
	.long	-1109105404
	.long	-1111011208
	.long	-1097441460
	.long	-1102931154
	.long	-1101941471
	.long	1056982835
	.long	1061258793
	.long	-1093005864
	.long	-1112221653
	.long	1061378213
	.long	-1089574660
	.long	1058262669
	.long	1027922566
	.long	-1085579430
	.long	1061270413
	.long	1058148052
	.long	1063215386
	.long	-1092412430
	.long	-1119364104
	.long	1049716400
	.long	-1104215233
	.long	-1096227756
	.long	-1082427006
	.long	1057893130
	.long	-1095486282
	.long	1061598017
	.long	-1105745875
	.long	1063499881
	.long	-1096861518
	.long	1060518692
	.long	-1088063097
	.long	1041569338
	.long	1047498875
	.long	-1085058533
	.long	-1094872769
	.long	-1085868487
	.long	-1100608316
	.long	1049021646
	.long	1062830961
	.long	1049289417
	.long	-1083541640
	.long	-1083017200
	.long	1047096951
	.long	1061737119
	.long	1065284134
	.long	-1082343943
	.long	1034046304
	.long	-1085680432
	.long	-1088506178
	.long	1062017600
	.long	1064814405
	.long	-1085800900
	.long	-1097205885
	.long	1065265118
	.long	-1102252866
	.long	-1110396936
	.long	1057684595
	.long	1053868539
	.long	-1109951640
	.long	1059280972
	.long	-1089449026
	.long	1040804082
	.long	-1090463330
	.long	-1122283805
	.long	1060716633
	.long	1061124492
	.long	1064149281
	.long	-1086544790
	.long	1063545352
	.long	1055924362
	.long	-1100625206
	.long	1061305786
	.long	1065264951
	.long	-1086327455
	.long	-1083157578
	.long	-1088519722
	.long	1062465450
	.long	1050053508
	.long	-1094788294
	.long	-1097473125
	.long	1053496085
	.long	-1082352547
	.long	-1112774565
	.long	1065349203
	.long	1013524334
	.long	-1085143722
	.long	1053943779
	.long	1047053697
	.long	-1088145058
	.long	-1091499232
	.long	-1090983062
	.long	-1086188158
	.long	-1082607916
	.long	-1082985404
	.long	-1105830264
	.long	-1130992263
	.long	1053707102
	.long	1031671725
	.long	-1103435632
	.long	-1094733633
	.long	1058081706
	.long	1063332343
	.long	1062893008
	.long	-1090261980
	.long	1057160778
	.long	1051668111
	.long	1052759782
	.long	-1085580281
	.long	-1088024765
	.long	1061346685
	.long	1046817210
	.long	-1095796479
	.long	1064776290
	.long	-1085549746
	.long	1046231023
	.long	-1120127518
	.long	1063189755
	.long	1059727352
	.long	-1089742226
	.long	-1083138559
	.long	-1101377542
	.long	1057963584
	.long	-1098711529
	.long	1057125267
	.long	-1087180289
	.long	-1090178166
	.long	-1083400355
	.long	-1083408618
	.long	1063145356
	.long	-1089324007
	.long	1065097207
	.long	-1083610473
	.long	-1098394417
	.long	1027902409
	.long	-1102576620
	.long	1061297852
	.long	-1093264557
	.long	-1098460584
	.long	1019021935
	.long	1053025486
	.long	-1089240464
	.long	-1086496114
	.long	1036246927
	.long	1024945694
	.long	1033327827
	.long	1058464016
	.long	1057779750
	.long	1065287727
	.long	-1089274533
	.long	-1085031895
	.long	1058647084
	.long	-1115335055
	.long	1065115936
	.long	1065062982
	.long	1061622445
	.long	-1106328833
	.long	1064533756
	.long	1062105000
	.long	1040887539
	.long	1048656142
	.long	1056479455
	.long	1049270205
	.long	1063555539
	.long	1054956985
	.long	1057222715
	.long	1058657163
	.long	1064480570
	.long	1051577138
	.long	1053738601
	.long	-1083187135
	.long	1060815474
	.long	-1094223387
	.long	-1093179483
	.long	-1086106570
	.long	-1115831573
	.long	1056516807
	.long	-1083077726
	.long	1055997291
	.long	1065300975
	.long	-1083047873
	.long	1047285681
	.long	-1088485270
	.long	1062650980
	.long	1040058004
	.long	1060950485
	.long	-1101061971
	.long	1026560512
	.long	1046810058
	.long	1062334558
	.long	-1094599892
	.long	-1096032950
	.long	1059477688
	.long	-1091953362
	.long	-1087754543
	.long	1041893945
	.long	1064930648
	.long	983384075
	.long	1041244015
	.long	-1098819324
	.long	-1107402858
	.long	-1094438384
	.long	-1095335596
	.long	1032738172
	.long	1044430689
	.long	-1084569962
	.long	-1083765214
	.long	1055422922
	.long	1057546522
	.long	1062112483
	.long	1049388142
	.long	-1086065800
	.long	1055601124
	.long	-1083861887
	.long	1053035400
	.long	1043167054
	.long	-1103329359
	.long	1023705844
	.long	1058994912
	.long	1041185470
	.long	1056325908
	.long	1032126101
	.long	1062255567
	.long	1061360075
	.long	-1111625955
	.long	-1089162539
	.long	1046000048
	.long	1042882482
	.long	1050438795
	.long	1060752038
	.long	-1087706343
	.long	-1088474850
	.long	-1083148521
	.long	-1102457122
	.long	1063711599
	.long	-1083980210
	.long	1059768303
	.long	1064169948
	.long	1059649396
	.long	-1114514176
	.long	1054151146
	.long	-1088804008
	.long	-1085008347
	.long	-1082853276
	.long	1050193208
	.long	-1083240011
	.long	-1102347300
	.long	1061143833
	.long	-1083432908
	.long	1061493668
	.long	1064874387
	.long	-1100475503
	.long	-1088950215
	.long	-1088243220
	.long	-1092427355
	.long	1051947022
	.long	1052937389
	.long	1063613130
	.long	1007598892
	.long	1053670191
	.long	1062256521
	.long	1046285460
	.long	1060021716
	.long	1057112577
	.long	-1082323634
	.long	1046338382
	.long	-1103217521
	.long	1057335491
	.long	1063578376
	.long	-1085833149
	.long	1041046515
	.long	-1085171454
	.long	1059266685
	.long	1044406372
	.long	1044212966
	.long	1050767889
	.long	-1124072800
	.long	1056916260
	.long	1062933576
	.long	1064293754
	.long	-1118387790
	.long	1048813809
	.long	1062268588
	.long	-1105806922
	.long	1044854489
	.long	-1087911383
	.long	-1087995045
	.long	1057568847
	.long	1020057985
	.long	-1084422530
	.long	1031273208
	.long	-1082740075
	.long	1060137796
	.long	-1083310472
	.long	-1096312232
	.long	1060540206
	.long	1061420420
	.long	-1096748409
	.long	1053944458
	.long	1061215583
	.long	-1086209837
	.long	1061339903
	.long	1057169511
	.long	-1087586043
	.long	1057984272
	.long	-1084229163
	.long	1064098325
	.long	-1083683918
	.long	-1089246717
	.long	-1099030196
	.long	-1103073549
	.long	1047297643
	.long	-1089844753
	.long	1053303506
	.long	-1087071126
	.long	1036569649
	.long	1063339610
	.long	-1094601740
	.long	-1088080243
	.long	1063396414
	.long	1060801906
	.long	-1102828713
	.long	-1083103691
	.long	1064418929
	.long	-1094975572
	.long	-1082564550
	.long	-1089177756
	.long	1057129448
	.long	1064548701
	.long	-1111249698
	.long	-1146874068
	.long	-1164837422
	.long	-1121609727
	.long	-1098380630
	.long	1063103087
	.long	-1083004265
	.long	-1085144661
	.long	1034734764
	.long	-1082992789
	.long	-1091726378
	.long	1058655591
	.long	-1113617678
	.long	1061275510
	.long	-1082878084
	.long	-1089624036
	.long	-1093832335
	.long	1058132707
	.long	1043841817
	.long	-1102975328
	.long	-1091620750
	.long	1052523497
	.long	-1086788815
	.long	1063069899
	.long	1031879682
	.long	-1082427905
	.long	-1084851890
	.long	1054338324
	.long	-1087637633
	.long	1062978702
	.long	-1086403619
	.long	-1087841481
	.long	1053717827
	.long	1064547707
	.long	1047159158
	.long	-1096167400
	.long	1061910362
	.long	1059816368
	.long	1064977136
	.long	-1095673035
	.long	1060186727
	.long	-1104987194
	.long	1060501389
	.long	-1089584526
	.long	1059072930
	.long	-1086978237
	.long	-1087626119
	.long	-1091361344
	.long	-1102514708
	.long	1063711408
	.long	-1091870209
	.long	1059504885
	.long	-1087396170
	.long	-1085431708
	.long	1052640135
	.long	1049913811
	.long	-1086811625
	.long	-1111450314
	.long	1044215658
	.long	1053660304
	.long	1062194424
	.long	1046875452
	.long	1037696151
	.long	-1108308398
	.long	-1093627473
	.long	1060049790
	.long	-1101150264
	.long	1060498637
	.long	1063135225
	.long	1059090005
	.long	1038853415
	.long	1064963023
	.long	1048599517
	.long	1049338475
	.long	1042531081
	.long	1043053831
	.long	-1092338885
	.long	-1090870071
	.long	1047091612
	.long	1059828514
	.long	1058816167
	.long	1057028394
	.long	-1087368009
	.long	-1121355156
	.long	1042252265
	.long	1064043087
	.long	-1091616296
	.long	-1082264909
	.long	-1090065900
	.long	1048452379
	.long	1059668187
	.long	-1082533967
	.long	-1099414052
	.long	-1097969591
	.long	1042671120
	.long	1063498599
	.long	-1104191831
	.long	-1115535552
	.long	1050633516
	.long	-1100399392
	.long	-1089383188
	.long	-1106767329
	.long	1063186387
	.long	1054953973
	.long	-1111875512
	.long	1053947311
	.long	1063972084
	.long	1064938740
	.long	1060932659
	.long	1059546561
	.long	-1104510370
	.long	-1101010479
	.long	-1114830671
	.long	-1088898531
	.long	-1103546655
	.long	1047166888
	.long	-1088042203
	.long	1060699483
	.long	1061329939
	.long	1048685483
	.long	1033264332
	.long	-1083113108
	.long	1046839147
	.long	1059229381
	.long	1057612586
	.long	-1088984137
	.long	1062488558
	.long	1054503726
	.long	-1089471548
	.long	1064081137
	.long	-1087264849
	.long	-1090175566
	.long	1062755383
	.long	1042736472
	.long	-1101455634
	.long	1027975369
	.long	1062343115
	.long	1059919412
	.long	1058477483
	.long	-1091952152
	.long	-1095509170
	.long	1050997378
	.long	-1087436626
	.long	-1097913207
	.long	-1103193688
	.long	1064774096
	.long	-1117693498
	.long	-1092604621
	.long	-1092241371
	.long	-1092568651
	.long	1062504535
	.long	-1135711384
	.long	1060885720
	.long	1063172189
	.long	-1102939879
	.long	-1087561731
	.long	-1096007440
	.long	-1097602619
	.long	-1083597276
	.long	1057129927
	.long	-1087860651
	.long	-1089464623
	.long	-1110372180
	.long	1063743644
	.long	1056070047
	.long	1045907409
	.long	-1112208531
	.long	1060670226
	.long	1057607431
	.long	-1084068448
	.long	1042592842
	.long	1059076248
	.long	-1083011451
	.long	1052355700
	.long	-1102940000
	.long	-1109251980
	.long	-1087725461
	.long	-1101268061
	.long	1063888057
	.long	-1082568383
	.long	1059739119
	.long	1041739958
	.long	1040289712
	.long	993654688
	.long	1050679880
	.long	1058298745
	.long	1059943957
	.long	-1085828677
	.long	1032738235
	.long	-1097271443
	.long	1059568601
	.long	1054814074
	.long	1050995126
	.long	1061407671
	.long	-1086933132
	.long	1065233166
	.long	-1086561035
	.long	1049589507
	.long	1058381386
	.long	1061946695
	.long	1061033219
	.long	1033953294
	.long	-1089472823
	.long	1063246811
	.long	-1085582312
	.long	-1087855369
	.long	1039518425
	.long	1059688761
	.long	-1086839210
	.long	-1087776397
	.long	-1088209423
	.long	1060423024
	.long	1060903744
	.long	-1092226331
	.long	-1086188410
	.long	1060639814
	.long	-1100338412
	.long	-1113568636
	.long	1059277020
	.long	-1103692753
	.long	-1084675973
	.long	1062683666
	.long	1064980996
	.long	1058063096
	.long	-1085363152
	.long	-1110579914
	.long	-1092660250
	.long	1062914876
	.long	-1089720845
	.long	-1088475842
	.long	1060130260
	.long	-1087348782
	.long	-1082148641
	.long	1061183967
	.long	-1102060507
	.long	-1084121601
	.long	-1093120149
	.long	-1096522782
	.long	-1086167376
	.long	-1085376772
	.long	-1090625162
	.long	1046367270
	.long	-1085875082
	.long	-1092339452
	.long	1060491259
	.long	1049390600
	.long	1059487855
	.long	-1087005959
	.long	1063049093
	.long	-1083033613
	.long	1062444693
	.long	-1092177054
	.long	-1085347335
	.long	-1093392623
	.long	-1091488153
	.long	1065044396
	.long	1044737031
	.long	-1096727286
	.long	1060697857
	.long	-1085554416
	.long	1039710588
	.long	1027017767
	.long	1059510063
	.long	1063627313
	.long	1049711286
	.long	1052588117
	.long	-1104693505
	.long	-1085500233
	.long	1051533378
	.long	1061930525
	.long	1058671447
	.long	-1089568531
	.long	1063793681
	.long	-1094726629
	.long	1062237830
	.long	-1098763518
	.long	1055055476
	.long	-1129130977
	.long	1062446206
	.long	1061548240
	.long	1043335403
	.long	1056886442
	.long	1064584462
	.long	1034685788
	.long	-1087065263
	.long	1041574121
	.long	-1092659646
	.long	1056272031
	.long	-1086836545
	.long	-1090130711
	.long	-1083509138
	.long	-1088673484
	.long	-1102782066
	.long	-1094629218
	.long	-1098893579
	.long	1063233035
	.long	1064059688
	.long	-1083767692
	.long	1049778283
	.long	-1089221010
	.long	-1088869904
	.long	-1132867050
	.long	1057027119
	.long	1064455665
	.long	1048948727
	.long	1045640590
	.long	-1084025883
	.long	1065171805
	.long	1055681624
	.long	1050430899
	.long	1048171527
	.long	-1089282483
	.long	1038416476
	.long	-1094760655
	.long	1058215598
	.long	-1086947426
	.long	-1117157768
	.long	1048187401
	.long	-1086870117
	.long	-1091293469
	.long	-1092392385
	.long	-1098744861
	.long	-1090423768
	.long	-1082909750
	.long	-1123956920
	.long	1045103571
	.long	1041995186
	.long	-1126944201
	.long	-1085491816
	.long	-1083987520
	.long	1051569777
	.long	1063755765
	.long	-1094970676
	.long	1063109796
	.long	1038545269
	.long	-1112625417
	.long	-1097782287
	.long	-1086577209
	.long	1057014451
	.long	-1089823877
	.long	1063365054
	.long	-1100424037
	.long	-1088220831
	.long	-1113339084
	.long	-1084919136
	.long	-1100733857
	.long	1054721286
	.long	1036205562
	.long	1064772729
	.long	1050553293
	.long	1051740733
	.long	1039902956
	.long	-1083833153
	.long	-1103131311
	.long	1060409847
	.long	-1085187056
	.long	1050378360
	.long	1060569412
	.long	-1139979641
	.long	-1084769222
	.long	1062274665
	.long	1064088115
	.long	1051415334
	.long	-1101429952
	.long	-1086185659
	.long	1058414254
	.long	1063830639
	.long	-1085478785
	.long	1053522960
	.long	-1093578283
	.long	-1093474742
	.long	-1088795967
	.long	-1083915671
	.long	1054201359
	.long	-1086050216
	.long	-1104540759
	.long	1063394210
	.long	-1114115741
	.long	1038699304
	.long	-1098295337
	.long	-1085056618
	.long	1063431322
	.long	-1082188760
	.long	-1168333078
	.long	1064351390
	.long	-1090043733
	.long	1036011619
	.long	-1082695877
	.long	1063540547
	.long	-1091076560
	.long	1048817939
	.long	-1085146634
	.long	1052398314
	.long	1024815845
	.long	1031641936
	.long	-1088078829
	.long	1057774601
	.long	-1097581367
	.long	-1090405289
	.long	-1083778438
	.long	-1092603640
	.long	1061133951
	.long	-1090017666
	.long	1064079190
	.long	-1095034385
	.long	-1098461508
	.long	-1083353761
	.long	-1102750437
	.long	-1092195045
	.long	-1089788751
	.long	1062584588
	.long	-1092969351
	.long	-1095181224
	.long	1063405047
	.long	1059990889
	.long	-1089619068
	.long	1057784126
	.long	-1095302887
	.long	1045921510
	.long	1064506161
	.long	-1088652089
	.long	1051755112
	.long	1032593997
	.long	-1084191435
	.long	-1090150064
	.long	-1124542466
	.long	-1088049097
	.long	1060205552
	.long	-1111247591
	.long	-1086063351
	.long	-1085128217
	.long	-1100858060
	.long	1042470013
	.long	1018591436
	.long	1058129591
	.long	1063609785
	.long	1064911960
	.long	-1093759091
	.long	-1082517465
	.long	-1114401566
	.long	1033997450
	.long	-1092841632
	.long	1058313132
	.long	-1103910836
	.long	-1098681372
	.long	-1087219501
	.long	1063180114
	.long	1041641018
	.long	1049506847
	.long	1056999422
	.long	1053492733
	.long	-1185202228
	.long	-1082516242
	.long	1055335786
	.long	1054297355
	.long	-1112981785
	.long	1055660035
	.long	1061777442
	.long	1054590797
	.long	1063581993
	.long	-1087661926
	.long	-1084921315
	.long	-1083664071
	.long	1057238263
	.long	1064937711
	.long	-1089966171
	.long	1061583234
	.long	-1134633980
	.long	1059562008
	.long	1052384835
	.long	1059058053
	.long	1019357051
	.long	-1104103853
	.long	1053669826
	.long	1065309449
	.long	-1089613584
	.long	-1093356900
	.long	-1086189967
	.long	-1091097314
	.long	1059272722
	.long	-1086677057
	.long	1060317559
	.long	-1085024367
	.long	1063686497
	.long	-1092829269
	.long	1024937818
	.long	-1094592276
	.long	1047741444
	.long	1057518599
	.long	-1097891968
	.long	-1084411030
	.long	-1122221760
	.long	-1089396870
	.long	1057631128
	.long	1042996525
	.long	1062837981
	.long	1053095451
	.long	-1094377958
	.long	1050376398
	.long	-1089171870
	.long	1032121839
	.long	-1104751332
	.long	-1099912977
	.long	-1098388604
	.long	-1107722087
	.long	1026205362
	.long	1051712720
	.long	-1098859680
	.long	-1084343343
	.long	-1085441644
	.long	-1089687770
	.long	-1089344333
	.long	-1084586041
	.long	-1089435726
	.long	1064614083
	.long	-1111581146
	.long	-1104926030
	.long	-1088155352
	.long	1061974865
	.long	1057015804
	.long	1061414718
	.long	1063834489
	.long	1059944078
	.long	-1109223397
	.long	-1096007027
	.long	-1087430944
	.long	1064720464
	.long	1063395377
	.long	1065048194
	.long	-1088886769
	.long	1046280407
	.long	-1084686330
	.long	1059982628
	.long	1050250423
	.long	-1087544330
	.long	-1095607903
	.long	1059506196
	.long	-1106733411
	.long	1060627263
	.long	1035077452
	.long	1042228421
	.long	-1084326234
	.long	-1089398774
	.long	-1118669157
	.long	-1094945283
	.long	-1082496586
	.long	-1100302606
	.long	1051750537
	.long	-1087779192
	.long	1054858686
	.long	990281706
	.long	-1112033120
	.long	1062577082
	.long	1040648588
	.long	1038587777
	.long	-1093249692
	.long	-1096626180
	.long	-1086487424
	.long	1054395132
	.long	-1097201974
	.long	-1091896101
	.long	1060197081
	.long	-1089513341
	.long	1015685869
	.long	1058116554
	.long	-1094375942
	.long	-1095349018
	.long	-1085579046
	.long	1063824310
	.long	-1097380899
	.long	1062008261
	.long	1045643873
	.long	1060816509
	.long	-1115272194
	.long	-1098514826
	.long	-1085445940
	.long	1034313477
	.long	-1146284227
	.long	-1086731744
	.long	1063995538
	.long	-1083866921
	.long	1063036614
	.long	-1085414171
	.long	1047256574
	.long	1050145663
	.long	-1095556481
	.long	-1098228829
	.long	1024924802
	.long	1058329271
	.long	1064407326
	.long	1060571912
	.long	1057441332
	.long	1060251552
	.long	-1088264951
	.long	-1091063084
	.long	1058061922
	.long	-1090014434
	.long	1052368306
	.long	-1085057108
	.long	1063526125
	.long	-1082286582
	.long	-1092175240
	.long	-1088891515
	.long	-1091714324
	.long	-1083087960
	.long	-1084287987
	.long	1047390585
	.long	1062984052
	.long	-1090039393
	.long	-1096399213
	.long	1058573209
	.long	-1082523445
	.long	-1093075075
	.long	-1084932391
	.long	1045133630
	.long	-1104394157
	.long	1062720314
	.long	1035657524
	.long	1056480445
	.long	-1110027142
	.long	-1088447703
	.long	-1085356463
	.long	1060953940
	.long	1055500439
	.long	-1092844249
	.long	-1103004376
	.long	-1085016377
	.long	1019854354
	.long	1063528284
	.long	1063853347
	.long	1051771593
	.long	-1088829870
	.long	1062554476
	.long	1046143253
	.long	-1112445665
	.long	-1088532868
	.long	1062996472
	.long	1061158556
	.long	-1096063222
	.long	1048048536
	.long	-1102513520
	.long	1058840131
	.long	1059566035
	.long	-1088778243
	.long	1058888191
	.long	1041472206
	.long	1064680955
	.long	1056461620
	.long	-1089441434
	.long	-1093716235
	.long	1026904458
	.long	1064170198
	.long	1053924117
	.long	1057418494
	.long	1063660186
	.long	-1083250147
	.long	1049084668
	.long	-1084507749
	.long	-1084294787
	.long	1052094792
	.long	1008518346
	.long	1054607106
	.long	1059475623
	.long	-1086416459
	.long	-1082675693
	.long	1057915937
	.long	1057554001
	.long	-1088178579
	.long	-1088764370
	.long	1034143347
	.long	-1105210862
	.long	-1095608955
	.long	1046417044
	.long	1057730360
	.long	-1097118603
	.long	-1091417605
	.long	-1099599667
	.long	1036811828
	.long	-1082755650
	.long	1063184660
	.long	1055776062
	.long	1044181114
	.long	1057966708
	.long	1032832963
	.long	1059191194
	.long	1046088324
	.long	-1092042181
	.long	-1088964143
	.long	1049839324
	.long	-1091952026
	.long	-1093086187
	.long	-1115016952
	.long	1048047925
	.long	1056581481
	.long	-1091707949
	.long	-1094293388
	.long	-1083563448
	.long	-1098712926
	.long	1064367844
	.long	1060156958
	.long	1050334162
	.long	-1103708520
	.long	-1082981373
	.long	1042565744
	.long	-1082623981
	.long	-1136410421
	.long	-1101830893
	.long	1046672820
	.long	-1085153662
	.long	1049032823
	.long	1058917077
	.long	-1088894007
	.long	-1108147262
	.long	1055560992
	.long	-1121711919
	.long	1064253722
	.long	-1084597744
	.long	1016921436
	.long	1050204557
	.long	-1084521326
	.long	-1134078235
	.long	-1095047971
	.long	1055319261
	.long	1051977852
	.long	-1094309350
	.long	-1082398952
	.long	1058819020
	.long	-1120489173
	.long	1046342484
	.long	-1087552505
	.long	1025372957
	.long	1044716063
	.long	-1097605412
	.long	1048024000
	.long	-1092376655
	.long	1057557166
	.long	1052762692
	.long	1044305479
	.long	1032829777
	.long	-1092104380
	.long	-1095521392
	.long	-1096123845
	.long	1043831528
	.long	1064583170
	.long	-1087365594
	.long	1058834497
	.long	-1087217459
	.long	-1089653898
	.long	1059589148
	.long	-1088811466
	.long	-1098382309
	.long	-1090035497
	.long	1042106783
	.long	1057211893
	.long	-1118563302
	.long	-1087847322
	.long	-1092094241
	.long	-1118613871
	.long	1064656607
	.long	1018522122
	.long	-1104950087
	.long	1062270631
	.long	1048256842
	.long	-1111727593
	.long	1064466886
	.long	1062782490
	.long	1048381729
	.long	-1085452775
	.long	-1100586885
	.long	1040529642
	.long	1056891326
	.long	1050526846
	.long	-1118050413
	.long	-1090786734
	.long	1044478228
	.long	-1093844484
	.long	1050735902
	.long	1058954063
	.long	1062501949
	.long	-1100337058
	.long	1062196670
	.long	1035813131
	.long	1049369647
	.long	-1115704330
	.long	-1090457015
	.long	1057141526
	.long	1051657073
	.long	-1092616630
	.long	1012640309
	.long	1058874493
	.long	1061007005
	.long	1040879382
	.long	1055784573
	.long	-1082567263
	.long	-1090193759
	.long	1059170296
	.long	-1083188446
	.long	1045802922
	.long	-1111376328
	.long	1057981093
	.long	1047295950
	.long	-1088213708
	.long	-1087512979
	.long	-1093582672
	.long	-1112833212
	.long	-1083622416
	.long	1065115238
	.long	-1101671998
	.long	1061024137
	.long	1042722284
	.long	1060617052
	.long	1056654832
	.long	-1084889187
	.long	-1084168592
	.long	-1082856418
	.long	-1141047583
	.long	1052106862
	.long	1045414447
	.long	-1092831653
	.long	1037762897
	.long	1052082238
	.long	-1088512085
	.long	1044755197
	.long	-1109872822
	.long	1041987811
	.long	-1106216144
	.long	1062795863
	.long	-1087890320
	.long	-1084131039
	.long	-1093145881
	.long	1060014073
	.long	1059207935
	.long	1064465036
	.long	-1082816241
	.long	-1114804732
	.long	-1085400942
	.long	1046999059
	.long	-1093380146
	.long	1048065897
	.long	-1084951708
	.long	1006698907
	.long	-1084467630
	.long	-1094165692
	.long	-1117733525
	.long	-1082249204
	.long	1036505026
	.long	1063585415
	.long	1061459557
	.long	-1098542617
	.long	1053859395
	.long	1041240240
	.long	1060949110
	.long	-1087986200
	.long	1047274978
	.long	-1110827842
	.long	1036791028
	.long	-1087513015
	.long	-1086154041
	.long	-1088609110
	.long	-1087295493
	.long	-1111737470
	.long	1020567365
	.long	1055748723
	.long	-1084490531
	.long	1050206752
	.long	-1088988352
	.long	-1082214572
	.long	-1118131920
	.long	1057719234
	.long	1059522846
	.long	1063634367
	.long	-1095879653
	.long	1057102808
	.long	-1088640215
	.long	-1093876078
	.long	-1086182222
	.long	-1105688277
	.long	1063595492
	.long	-1084303284
	.long	-1104090876
	.long	-1087957110
	.long	1061736889
	.long	-1092918038
	.long	-1095643935
	.long	-1112031539
	.long	1061338208
	.long	-1112481626
	.long	-1092077833
	.long	1060540049
	.long	-1090017160
	.long	-1106658199
	.long	-1088993055
	.long	-1094794430
	.long	1059426340
	.long	-1085326231
	.long	1018813130
	.long	-1101636392
	.long	-1086539987
	.long	1052465519
	.long	1059615734
	.long	1060890181
	.long	-1089178102
	.long	1064913891
	.long	1064243835
	.long	-1082378148
	.long	-1110232323
	.long	-1085514320
	.long	-1108006893
	.long	1045619311
	.long	1038320194
	.long	1054233227
	.long	1050559479
	.long	1035023134
	.long	-1097861619
	.long	-1105053011
	.long	1042312895
	.long	1058788142
	.long	-1107342590
	.long	-1094811966
	.long	1057899952
	.long	-1091132570
	.long	1053978668
	.long	1049100674
	.long	1042835937
	.long	1054524959
	.long	-1093617262
	.long	1027456549
	.long	1009974906
	.long	1036156898
	.long	1046783652
	.long	1060465201
	.long	1062181104
	.long	-1097269793
	.long	1051838003
	.long	1061632452
	.long	-1082444858
	.long	-1088350899
	.long	-1082989658
	.long	-1118220967
	.long	-1087750027
	.long	1061611793
	.long	-1088765953
	.long	-1083701439
	.long	1057696378
	.long	-1090493080
	.long	1058168957
	.long	1063147205
	.long	1061712701
	.long	1058170393
	.long	1027668914
	.long	1053690820
	.long	1059671665
	.long	1020236266
	.long	1060657965
	.long	-1091230213
	.long	1065179388
	.long	1057612453
	.long	-1097806703
	.long	1063480878
	.long	1039324773
	.long	1058047215
	.long	1065156858
	.long	1057126317
	.long	-1085523824
	.long	1024774536
	.long	1064989416
	.long	-1091077117
	.long	1063324029
	.long	1059188257
	.long	1060700521
	.long	1058288654
	.long	-1098883434
	.long	1057542332
	.long	-1121602029
	.long	1006893615
	.long	1062689176
	.long	-1086630559
	.long	1060550887
	.long	1062505296
	.long	1054836038
	.long	1058089090
	.long	1065083793
	.long	-1098788578
	.long	1059432621
	.long	1054783380
	.long	1040579154
	.long	-1085903012
	.long	1047563816
	.long	-1090571726
	.long	-1098116728
	.long	1048406042
	.long	-1082627093
	.long	1064947809
	.long	-1095622786
	.long	-1089632257
	.long	-1084020616
	.long	-1089289756
	.long	1063857744
	.long	-1085364465
	.long	-1090116863
	.long	-1098451658
	.long	1058492279
	.long	-1096553183
	.long	1060769611
	.long	-1086635079
	.long	-1083099727
	.long	1049199210
	.long	1052949757
	.long	-1097748680
	.long	1039177845
	.long	-1085193239
	.long	1033271230
	.long	-1088390334
	.long	-1084260014
	.long	-1090037940
	.long	1056637637
	.long	1053546843
	.long	-1083618234
	.long	-1084305594
	.long	1062913598
	.long	1060929896
	.long	1064484707
	.long	-1163515275
	.long	1063770138
	.long	-1082709236
	.long	1034568104
	.long	-1083930405
	.long	-1097969533
	.long	1050689521
	.long	1056436762
	.long	-1095016658
	.long	1043741250
	.long	1063906630
	.long	-1083849464
	.long	1056061188
	.long	1063896787
	.long	-1140178390
	.long	1064894853
	.long	-1084545368
	.long	1049046004
	.long	-1106393989
	.long	-1094337688
	.long	-1097677613
	.long	-1100169251
	.long	1063966843
	.long	-1098192350
	.long	-1098817330
	.long	1063570516
	.long	1057173703
	.long	1065003497
	.long	-1091449411
	.long	1047822203
	.long	-1087629426
	.long	-1084700984
	.long	1035189051
	.long	1056731593
	.long	-1097598612
	.long	1054161601
	.long	-1113402473
	.long	-1091301122
	.long	-1092852013
	.long	-1087132139
	.long	1060734186
	.long	1065098237
	.long	1061969007
	.long	973450365
	.long	-1112635443
	.long	-1087000453
	.long	-1096131517
	.long	-1086473719
	.long	1060816800
	.long	1056974306
	.long	1057314631
	.long	1058066511
	.long	-1094084482
	.long	-1089363660
	.long	1058166768
	.long	-1085185547
	.long	-1085598812
	.long	1058892552
	.long	1061383984
	.long	1055289375
	.long	-1086535529
	.long	1062688756
	.long	1063579463
	.long	-1098026432
	.long	-1085508969
	.long	-1097867654
	.long	1062353034
	.long	-1091383012
	.long	-1102931509
	.long	1032309251
	.long	1063409778
	.long	-1104811675
	.long	-1082748921
	.long	-1089139729
	.long	-1096272401
	.long	-1083163813
	.long	-1131639615
	.long	-1086706236
	.long	1054277600
	.long	-1095163234
	.long	1056192503
	.long	-1105876120
	.long	1054676794
	.long	-1094829816
	.long	-1083127536
	.long	1042885421
	.long	1061684400
	.long	1030740950
	.long	1058194371
	.long	-1094583491
	.long	1057352826
	.long	1053126169
	.long	-1099854324
	.long	1049777749
	.long	-1107706789
	.long	1059004023
	.long	-1112517606
	.long	-1088386692
	.long	-1096824480
	.long	-1090703898
	.long	-1082345393
	.long	-1113275993
	.long	1056843834
	.long	-1084616628
	.long	-1085630188
	.long	-1084342100
	.long	-1100464931
	.long	-1096044130
	.long	-1098009533
	.long	-1094012861
	.long	-1086483631
	.long	-1104424032
	.long	1058527058
	.long	1051487958
	.long	1048501654
	.long	1064516373
	.long	-1085566127
	.long	-1089265260
	.long	-1085105207
	.long	1064911951
	.long	1040198569
	.long	1058443525
	.long	1040432658
	.long	-1100974083
	.long	-1098201225
	.long	1040062736
	.long	-1088535810
	.long	-1086045902
	.long	-1091245822
	.long	-1092301655
	.long	1064984443
	.long	-1088387645
	.long	1043161905
	.long	-1086927376
	.long	1053142802
	.long	-1095209084
	.long	-1099793638
	.long	-1096839496
	.long	1027983999
	.long	-1091280634
	.long	-1092956800
	.long	1053285447
	.long	1058840142
	.long	-1088031110
	.long	-1095690730
	.long	1057120646
	.long	-1133970397
	.long	-1089340473
	.long	-1115628785
	.long	-1086529317
	.long	1056889113
	.long	-1086129280
	.long	-1085674508
	.long	-1082222752
	.long	-1082342760
	.long	1059601181
	.long	-1086094749
	.long	-1114284179
	.long	1027242780
	.long	-1110394110
	.long	1055548753
	.long	1010883946
	.long	-1098098141
	.long	-1082973675
	.long	1061362053
	.long	1053781995
	.long	-1086604406
	.long	-1086949270
	.long	-1085620972
	.long	1055086362
	.long	1000755576
	.long	-1083796441
	.long	-1089243043
	.long	-1082987823
	.long	-1084937846
	.long	-1082252000
	.long	-1115026030
	.long	1058130526
	.long	-1082763452
	.long	-1090864623
	.long	1064893965
	.long	-1085865033
	.long	1038924221
	.long	1033214374
	.long	1057360290
	.long	1059633113
	.long	1040804675
	.long	-1085522231
	.long	-1104421123
	.long	-1087795295
	.long	-1089889150
	.long	-1088466288
	.long	-1085657176
	.long	1065106593
	.long	1063045507
	.long	1064903486
	.long	1041790171
	.long	1049704084
	.long	1057107268
	.long	-1099164856
	.long	-1098587435
	.long	-1085854485
	.long	1040454393
	.long	-1083456187
	.long	-1108460617
	.long	-1098522698
	.long	1061535544
	.long	-1087218055
	.long	1065030739
	.long	-1100408406
	.long	-1091441996
	.long	-1089369468
	.long	-1105505156
	.long	-1110249370
	.long	1055781886
	.long	-1084829638
	.long	-1123735932
	.long	-1103563736
	.long	1012444978
	.long	-1088066656
	.long	1062366601
	.long	1059606243
	.long	1061768179
	.long	-1092575319
	.long	1060365200
	.long	1063003691
	.long	-1090430433
	.long	-1099798709
	.long	-1087189340
	.long	-1086384816
	.long	-1101041366
	.long	-1085339658
	.long	-1082972418
	.long	1043675399
	.long	1060722050
	.long	-1106339704
	.long	-1094303161
	.long	-1084312385
	.long	-1093975850
	.long	1020380078
	.long	-1089410489
	.long	-1104842450
	.long	-1086556432
	.long	-1101887697
	.long	-1088354839
	.long	-1126545085
	.long	-1095749261
	.long	-1100316679
	.long	-1091532835
	.long	1048852803
	.long	1042565927
	.long	1029216898
	.long	1048977337
	.long	-1089326691
	.long	1053989463
	.long	-1105940298
	.long	1048530670
	.long	1042797229
	.long	1059479776
	.long	1041668979
	.long	-1100444159
	.long	1063128393
	.long	-1114219830
	.long	1028207334
	.long	1024701102
	.long	1043987104
	.long	1030256608
	.long	-1084529960
	.long	-1099410213
	.long	-1088425738
	.long	-1085600611
	.long	-1098867096
	.long	-1084929001
	.long	1052541008
	.long	1064342058
	.long	1050448210
	.long	-1088860940
	.long	-1117017158
	.long	1052647148
	.long	-1100392585
	.long	1060446544
	.long	1061917012
	.long	1056154194
	.long	1062490378
	.long	1053789907
	.long	1046111961
	.long	1061449813
	.long	1057384970
	.long	1048892670
	.long	-1090110639
	.long	-1086634854
	.long	-1100040527
	.long	1047768837
	.long	-1083237975
	.long	1057585590
	.long	1056924996
	.long	-1093615662
	.long	1053032747
	.long	-1093307591
	.long	1033976694
	.long	-1115644953
	.long	-1096555303
	.long	-1084746556
	.long	1041074680
	.long	-1087555086
	.long	-1082784009
	.long	1062539150
	.long	-1083715361
	.long	-1108746972
	.long	-1094656398
	.long	1053284463
	.long	1064567088
	.long	1065075184
	.long	-1112051759
	.long	-1087473252
	.long	1059936382
	.long	-1084349792
	.long	-1085272489
	.long	-1101423563
	.long	-1082298165
	.long	-1114908340
	.long	1040476680
	.long	-1088442922
	.long	-1097713773
	.long	1047611383
	.long	-1088640441
	.long	1057622103
	.long	1064850884
	.long	1063708115
	.long	1043079437
	.long	-1087722089
	.long	1064776294
	.long	1059498547
	.long	1060110368
	.long	1061303436
	.long	-1084824919
	.long	-1089633622
	.long	-1090033478
	.long	1043526807
	.long	1048145544
	.long	1058456323
	.long	-1096998461
	.long	1064036876
	.long	-1128843305
	.long	-1110328425
	.long	1058853351
	.long	1062598549
	.long	-1092628994
	.long	1055465263
	.long	1050637434
	.long	-1088019363
	.long	1051824869
	.long	-1088303102
	.long	-1088846710
	.long	-1087938318
	.long	1056437981
	.long	1061696560
	.long	1064698697
	.long	1059098153
	.long	1064482354
	.long	-1103251713
	.long	1058684104
	.long	-1084045923
	.long	-1159011687
	.long	-1103908839
	.long	1027404019
	.long	-1083841475
	.long	1048787757
	.long	-1086602867
	.long	-1086490970
	.long	1064794946
	.long	1051195158
	.long	-1098308547
	.long	1059825892
	.long	-1095344023
	.long	1033206261
	.long	-1088933078
	.long	1057299571
	.long	1031894476
	.long	-1084169956
	.long	-1090587963
	.long	1014549557
	.long	-1101052658
	.long	1057765237
	.long	-1111785639
	.long	-1097923023
	.long	-1100340095
	.long	1036889952
	.long	1062031740
	.long	1043598693
	.long	1029818563
	.long	1064317178
	.long	1059301650
	.long	-1097516427
	.long	-1084588242
	.long	-1088760297
	.long	1022286585
	.long	-1083261630
	.long	-1088485053
	.long	1053711181
	.long	-1085323210
	.long	1064792956
	.long	-1102313128
	.long	-1089834392
	.long	-1134009259
	.long	1038788730
	.long	1055853598
	.long	-1105926214
	.long	-1084702255
	.long	-1084122941
	.long	-1093512138
	.long	-1088208853
	.long	-1102506962
	.long	1044768748
	.long	-1098619375
	.long	-1104074781
	.long	1056230483
	.long	1064578443
	.long	1064848490
	.long	1040624664
	.long	-1090524756
	.long	1050956780
	.long	-1100452448
	.long	1061442214
	.long	1059436067
	.long	-1085945660
	.long	1061538848
	.long	-1083198174
	.long	-1087635994
	.long	-1088923073
	.long	1051432575
	.long	1059463816
	.long	-1085596994
	.long	-1082740062
	.long	1063915557
	.long	-1093952896
	.long	1062052132
	.long	-1097530604
	.long	-1095890473
	.long	-1101684546
	.long	1049521471
	.long	-1084929581
	.long	1048930157
	.long	-1089167841
	.long	1063986898
	.long	1059336377
	.long	1062457117
	.long	-1093464069
	.long	-1090211757
	.long	1054392885
	.long	1033842619
	.long	1053412113
	.long	1058805159
	.long	1049068211
	.long	-1091842571
	.long	-1112545402
	.long	-1097841236
	.long	-1103620185
	.long	-1147964435
	.long	1062059905
	.long	-1105278022
	.long	-1157162891
	.long	1032291778
	.long	-1086534297
	.long	1058980930
	.long	1038811755
	.long	1057730707
	.long	1059675835
	.long	-1088970832
	.long	1058797351
	.long	-1082654200
	.long	-1087699321
	.long	1045684652
	.long	1036180365
	.long	1049199445
	.long	-1120381080
	.long	-1083244610
	.long	1047674761
	.long	1032654210
	.long	1064181549
	.long	1054815563
	.long	1057530997
	.long	1052544887
	.long	-1088802513
	.long	1060479714
	.long	-1104390179
	.long	1040567958
	.long	-1087872667
	.long	1038849053
	.long	1043457474
	.long	-1087471100
	.long	-1089868318
	.long	1056342431
	.long	1012932633
	.long	-1089343539
	.long	1044427803
	.long	-1095455927
	.long	-1082479812
	.long	1046811230
	.long	1065256252
	.long	-1105766498
	.long	1046457208
	.long	-1107960523
	.long	-1135824046
	.long	-1088084081
	.long	-1090466650
	.long	1057537097
	.long	1058973025
	.long	-1099964730
	.long	1065137536
	.long	1048954652
	.long	1062867287
	.long	1061159242
	.long	-1083369352
	.long	1055265281
	.long	1061712750
	.long	-1091887116
	.long	-1100325134
	.long	1049284298
	.long	-1087564814
	.long	1061714480
	.long	1059247883
	.long	-1086255776
	.long	-1089740810
	.long	1025378107
	.long	-1086006789
	.long	-1088092639
	.long	1007802340
	.long	-1113435749
	.long	-1082298528
	.long	1058693626
	.long	1049610675
	.long	-1088258869
	.long	-1086951039
	.long	-1093064818
	.long	-1092635528
	.long	1055869593
	.long	1063805358
	.long	1061806799
	.long	-1105468365
	.long	-1082750444
	.long	1063799534
	.long	1062112993
	.long	1060307809
	.long	1037887921
	.long	1040345819
	.long	-1090474651
	.long	-1090322006
	.long	-1107742836
	.long	-1088899583
	.long	1053950755
	.long	-1084598531
	.long	1049548146
	.long	1020599998
	.long	1065312254
	.long	-1090544345
	.long	-1092157527
	.long	-1084116125
	.long	1065134394
	.long	-1106986999
	.long	1064276606
	.long	-1088018875
	.long	1057810795
	.long	1049545345
	.long	1013037223
	.long	-1087823511
	.long	-1093313818
	.long	-1097132516
	.long	1043922500
	.long	-1083670648
	.long	1049584530
	.long	-1087834253
	.long	-1085515949
	.long	1063701922
	.long	-1088695307
	.long	1050886565
	.long	1063239383
	.long	-1113120533
	.long	1065045712
	.long	-1095913428
	.long	1057966509
	.long	1053285818
	.long	-1096915036
	.long	1064624467
	.long	-1088443122
	.long	-1102489424
	.long	-1087128767
	.long	1050022155
	.long	-1088553552
	.long	1062989600
	.long	1059666004
	.long	1033443678
	.long	-1097819914
	.long	-1087709502
	.long	-1092162202
	.long	-1091709596
	.long	1058497868
	.long	1057847909
	.long	-1099417252
	.long	1041722626
	.long	-1144619950
	.long	-1084636137
	.long	-1087835404
	.long	-1104580000
	.long	1045499080
	.long	-1087737926
	.long	-1086892566
	.long	1054195946
	.long	1055225985
	.long	1060887856
	.long	-1104261038
	.long	-1095659245
	.long	1064616002
	.long	1023494034
	.long	1057116058
	.long	-1105764417
	.long	1060612374
	.long	-1105399888
	.long	-1089072999
	.long	1039815345
	.long	-1084059828
	.long	-1095057958
	.long	1035086798
	.long	-1085594387
	.long	1057530810
	.long	-1084600804
	.long	1050077630
	.long	1040976879
	.long	1062636562
	.long	1061917655
	.long	-1085854881
	.long	-1098541074
	.long	-1097103790
	.long	1049372113
	.long	1057475924
	.long	1035044185
	.long	1032506143
	.long	1060728634
	.long	-1082554723
	.long	1061860840
	.long	1048426230
	.long	1065008126
	.long	-1094310941
	.long	1032000624
	.long	-1147798295
	.long	1052651372
	.long	1059441764
	.long	1049190212
	.long	-1096544456
	.long	1035859026
	.long	1048777663
	.long	1060997787
	.long	-1087887144
	.long	1062392613
	.long	-1085143949
	.long	-1092086022
	.long	1061733336
	.long	1063890106
	.long	1036824943
	.long	-1101416116
	.long	1015775368
	.long	-1089024821
	.long	-1104153305
	.long	-1090100983
	.long	1064707768
	.long	1037001441
	.long	1064370996
	.long	-1082680285
	.long	1058923877
	.long	-1083576240
	.long	1049398380
	.long	1064089109
	.long	-1084373497
	.long	1047068863
	.long	1035591433
	.long	-1107128544
	.long	-1083102313
	.long	-1108045303
	.long	1059888610
	.long	1063362239
	.long	1048327040
	.long	1029721288
	.long	-1091764483
	.long	1063490437
	.long	1059759416
	.long	1047798692
	.long	-1097906308
	.long	1062924887
	.long	1050733780
	.long	-1103024449
	.long	-1088685208
	.long	1043170642
	.long	1049100049
	.long	-1083079628
	.long	1056733709
	.long	-1094339288
	.long	1009402694
	.long	1061220616
	.long	1052379496
	.long	-1097678881
	.long	-1088449856
	.long	1044144581
	.long	-1107393035
	.long	-1087366780
	.long	-1090368006
	.long	-1087066796
	.long	1058652163
	.long	1062249251
	.long	1045150698
	.long	1056222955
	.long	1061292422
	.long	1058940225
	.long	-1095431749
	.long	1054269807
	.long	-1084469430
	.long	-1128353426
	.long	-1085654469
	.long	-1083922294
	.long	1058826820
	.long	1062792570
	.long	-1082305698
	.long	-1094959910
	.long	1061017375
	.long	-1083412289
	.long	-1089173940
	.long	1058257997
	.long	-1083625736
	.long	-1083682340
	.long	1060192079
	.long	1062177191
	.long	-1088697096
	.long	1061347733
	.long	1029684603
	.long	-1094077272
	.long	-1108487058
	.long	-1123012760
	.long	1052761653
	.long	-1083349396
	.long	1064334861
	.long	-1082636572
	.long	-1119326636
	.long	-1089064130
	.long	1019278491
	.long	1053236140
	.long	-1114295935
	.long	1054222555
	.long	-1089272672
	.long	-1085822056
	.long	-1084895473
	.long	1063989519
	.long	-1086058146
	.long	-1083215739
	.long	-1113994980
	.long	-1098698049
	.long	1060217139
	.long	1058521538
	.long	1062614224
	.long	-1085453101
	.long	1031007548
	.long	1042427254
	.long	-1092889165
	.long	-1092178938
	.long	-1104322180
	.long	1054291815
	.long	-1083760538
	.long	-1087923992
	.long	1064376819
	.long	-1093504223
	.long	-1092016193
	.long	1058346568
	.long	-1098030183
	.long	1042823187
	.long	-1082797514
	.long	1058475485
	.long	-1082211203
	.long	-1097706072
	.long	-1085618983
	.long	-1091991298
	.long	-1084409295
	.long	1061976722
	.long	-1090222528
	.long	1057351936
	.long	1053568383
	.long	1063821073
	.long	-1092705213
	.long	-1098000855
	.long	1058236321
	.long	-1121081701
	.long	-1096306148
	.long	-1093833516
	.long	-1100076850
	.long	1058267028
	.long	-1086605080
	.long	-1097313821
	.long	1042975221
	.long	-1088055665
	.long	1023414542
	.long	1061228454
	.long	-1083665550
	.long	1050769762
	.long	1052476456
	.long	1063137010
	.long	-1088616639
	.long	1006179781
	.long	1064571803
	.long	-1085275302
	.long	1060907236
	.long	1061691100
	.long	-1087935778
	.long	1058853519
	.long	-1097318513
	.long	-1093553731
	.long	-1106023722
	.long	-1085236094
	.long	1052237856
	.long	1052163793
	.long	-1084270937
	.long	1060602745
	.long	-1094716131
	.long	-1114647838
	.long	1051255101
	.long	1036242700
	.long	-1083178536
	.long	-1096481881
	.long	1061686471
	.long	-1085315725
	.long	-1105598732
	.long	1062784778
	.long	-1107086589
	.long	-1086280919
	.long	1062668808
	.long	-1114601916
	.long	968892864
	.long	1033986761
	.long	-1099172513
	.long	-1105172589
	.long	-1091835973
	.long	1059011787
	.long	1060703779
	.long	-1098643462
	.long	-1096900751
	.long	1061414742
	.long	-1089624545
	.long	-1088627530
	.long	1052066243
	.long	1064066292
	.long	1059157322
	.long	-1105702412
	.long	-1085120104
	.long	1052543743
	.long	1053790897
	.long	-1085431643
	.long	-1092875281
	.long	-1086763671
	.long	-1082735668
	.long	1044608717
	.long	1056193127
	.long	-1087813170
	.long	1049302233
	.long	-1083539817
	.long	1044990008
	.long	1052883015
	.long	1058374175
	.long	-1122318862
	.long	-1096311334
	.long	1062849119
	.long	1061990587
	.long	-1109158271
	.long	1057393891
	.long	-1093723952
	.long	-1106658928
	.long	1035357273
	.long	-1085224811
	.long	-1083469824
	.long	-1095213990
	.long	-1089575508
	.long	-1100855275
	.long	-1089318961
	.long	1058194918
	.long	-1106701520
	.long	-1082430235
	.long	-1095467028
	.long	1050880651
	.long	-1085638088
	.long	1060171884
	.long	1062098676
	.long	-1082438471
	.long	1053850760
	.long	1063981677
	.long	1061609886
	.long	-1092607029
	.long	-1094373856
	.long	1010608748
	.long	1060105715
	.long	1065227804
	.long	1055991641
	.long	-1084252049
	.long	-1089496920
	.long	-1086724842
	.long	-1089865702
	.long	1061528976
	.long	1062979084
	.long	-1104353577
	.text
	.globl	wrap
	.type	wrap, @function
wrap:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	QWORD PTR -40[rbp], rdx
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, eax
	mov	rax, QWORD PTR -32[rbp]
	mov	ecx, eax
	mov	eax, edx
	sub	eax, ecx
	add	eax, 1
	mov	DWORD PTR -4[rbp], eax
	mov	rax, QWORD PTR -24[rbp]
	cmp	rax, QWORD PTR -32[rbp]
	jge	.L9
	mov	eax, DWORD PTR -4[rbp]
	movsx	rcx, eax
	mov	rax, QWORD PTR -32[rbp]
	sub	rax, QWORD PTR -24[rbp]
	mov	edx, DWORD PTR -4[rbp]
	movsx	rsi, edx
	cqo
	idiv	rsi
	add	rax, 1
	imul	rax, rcx
	add	QWORD PTR -24[rbp], rax
.L9:
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR -4[rbp]
	movsx	rcx, edx
	cqo
	idiv	rcx
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	wrap, .-wrap
	.globl	fxp_get_int_part
	.type	fxp_get_int_part, @function
fxp_get_int_part:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	cmp	QWORD PTR -8[rbp], 0
	jns	.L12
	mov	rax, QWORD PTR -8[rbp]
	neg	rax
	mov	rdx, rax
	mov	rax, QWORD PTR _fxp_imask[rip]
	and	rax, rdx
	neg	rax
	jmp	.L14
.L12:
	mov	rax, QWORD PTR _fxp_imask[rip]
	and	rax, QWORD PTR -8[rbp]
.L14:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	fxp_get_int_part, .-fxp_get_int_part
	.globl	fxp_get_frac_part
	.type	fxp_get_frac_part, @function
fxp_get_frac_part:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	cmp	QWORD PTR -8[rbp], 0
	jns	.L16
	mov	rax, QWORD PTR -8[rbp]
	neg	rax
	mov	rdx, rax
	mov	rax, QWORD PTR _fxp_fmask[rip]
	and	rax, rdx
	neg	rax
	jmp	.L18
.L16:
	mov	rax, QWORD PTR _fxp_fmask[rip]
	and	rax, QWORD PTR -8[rbp]
.L18:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	fxp_get_frac_part, .-fxp_get_frac_part
	.globl	fxp_quantize
	.type	fxp_quantize, @function
fxp_quantize:
.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, 8
	mov	QWORD PTR -8[rbp], rdi
	mov	eax, DWORD PTR overflow_mode[rip]
	cmp	eax, 2
	jne	.L20
	mov	rax, QWORD PTR _fxp_min[rip]
	cmp	QWORD PTR -8[rbp], rax
	jge	.L21
	mov	rax, QWORD PTR _fxp_min[rip]
	jmp	.L22
.L21:
	mov	rax, QWORD PTR _fxp_max[rip]
	cmp	QWORD PTR -8[rbp], rax
	jle	.L23
	mov	rax, QWORD PTR _fxp_max[rip]
	jmp	.L22
.L20:
	mov	eax, DWORD PTR overflow_mode[rip]
	cmp	eax, 3
	jne	.L23
	mov	rax, QWORD PTR _fxp_min[rip]
	cmp	QWORD PTR -8[rbp], rax
	jl	.L24
	mov	rax, QWORD PTR _fxp_max[rip]
	cmp	QWORD PTR -8[rbp], rax
	jle	.L23
.L24:
	mov	rdx, QWORD PTR _fxp_max[rip]
	mov	rcx, QWORD PTR _fxp_min[rip]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	wrap
	jmp	.L22
.L23:
	mov	rax, QWORD PTR -8[rbp]
.L22:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	fxp_quantize, .-fxp_quantize
	.section	.rodata
	.align 8
.LC3:
	.string	"An Overflow Occurred in system's output"
	.text
	.globl	fxp_verify_overflow
	.type	fxp_verify_overflow, @function
fxp_verify_overflow:
.LFB13:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fxp_quantize
	lea	rdi, .LC3[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR _fxp_max[rip]
	cmp	QWORD PTR -8[rbp], rax
	jg	.L26
	mov	rax, QWORD PTR _fxp_min[rip]
	cmp	QWORD PTR -8[rbp], rax
	jl	.L26
	mov	eax, 1
	jmp	.L27
.L26:
	mov	eax, 0
.L27:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	fxp_verify_overflow, .-fxp_verify_overflow
	.globl	fxp_verify_overflow_node
	.type	fxp_verify_overflow_node, @function
fxp_verify_overflow_node:
.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, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rax, QWORD PTR -16[rbp]
	mov	rsi, rax
	lea	rdi, .LC2[rip]
	mov	eax, 0
	call	printf@PLT
	mov	rax, QWORD PTR _fxp_max[rip]
	cmp	QWORD PTR -8[rbp], rax
	jg	.L29
	mov	rax, QWORD PTR _fxp_min[rip]
	cmp	QWORD PTR -8[rbp], rax
	jl	.L29
	mov	eax, 1
	jmp	.L30
.L29:
	mov	eax, 0
.L30:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	fxp_verify_overflow_node, .-fxp_verify_overflow_node
	.globl	fxp_verify_overflow_array
	.type	fxp_verify_overflow_array, @function
fxp_verify_overflow_array:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	DWORD PTR -4[rbp], 0
	mov	DWORD PTR -4[rbp], 0
	jmp	.L32
.L33:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	fxp_verify_overflow
	add	DWORD PTR -4[rbp], 1
.L32:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L33
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	fxp_verify_overflow_array, .-fxp_verify_overflow_array
	.globl	fxp_int_to_fxp
	.type	fxp_int_to_fxp, @function
fxp_int_to_fxp:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -20[rbp], edi
	mov	eax, DWORD PTR -20[rbp]
	movsx	rdx, eax
	mov	rax, QWORD PTR _fxp_one[rip]
	imul	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	fxp_int_to_fxp, .-fxp_int_to_fxp
	.globl	fxp_to_int
	.type	fxp_to_int, @function
fxp_to_int:
.LFB17:
	.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
	cmp	QWORD PTR -8[rbp], 0
	js	.L37
	mov	rax, QWORD PTR _fxp_half[rip]
	add	QWORD PTR -8[rbp], rax
	jmp	.L38
.L37:
	mov	rax, QWORD PTR _fxp_half[rip]
	sub	QWORD PTR -8[rbp], rax
.L38:
	mov	eax, DWORD PTR impl[rip+4]
	mov	ecx, eax
	sar	QWORD PTR -8[rbp], cl
	mov	rax, QWORD PTR -8[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	fxp_to_int, .-fxp_to_int
	.globl	fxp_float_to_fxp
	.type	fxp_float_to_fxp, @function
fxp_float_to_fxp:
.LFB18:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -20[rbp], xmm0
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, DWORD PTR -20[rbp]
	mov	eax, DWORD PTR impl[rip+4]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, scale_factor[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movss	xmm0, DWORD PTR -20[rbp]
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	jb	.L46
	movsd	xmm1, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR .LC5[rip]
	addsd	xmm0, xmm1
	cvttsd2si	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	jmp	.L43
.L46:
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC5[rip]
	subsd	xmm0, xmm1
	cvttsd2si	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
.L43:
	mov	rax, QWORD PTR -16[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE18:
	.size	fxp_float_to_fxp, .-fxp_float_to_fxp
	.globl	fxp_double_to_fxp
	.type	fxp_double_to_fxp, @function
fxp_double_to_fxp:
.LFB19:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -40[rbp], xmm0
	mov	eax, DWORD PTR impl[rip+4]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, scale_factor[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR -40[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	mov	eax, DWORD PTR rounding_mode[rip]
	test	eax, eax
	jne	.L48
	movsd	xmm0, QWORD PTR -40[rbp]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jb	.L59
	movsd	xmm1, QWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR .LC5[rip]
	addsd	xmm0, xmm1
	cvttsd2si	rax, xmm0
	mov	QWORD PTR -24[rbp], rax
	jmp	.L51
.L59:
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR .LC5[rip]
	subsd	xmm0, xmm1
	cvttsd2si	rax, xmm0
	mov	QWORD PTR -24[rbp], rax
	jmp	.L51
.L48:
	mov	eax, DWORD PTR rounding_mode[rip]
	cmp	eax, 1
	jne	.L52
	movsd	xmm0, QWORD PTR -16[rbp]
	cvttsd2si	rax, xmm0
	mov	QWORD PTR -24[rbp], rax
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR -16[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -40[rbp]
	jbe	.L51
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -8[rbp]
	jp	.L58
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -8[rbp]
	je	.L51
.L58:
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR .LC7[rip]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	cvttsd2si	rax, xmm0
	mov	QWORD PTR -24[rbp], rax
	jmp	.L51
.L52:
	mov	eax, DWORD PTR rounding_mode[rip]
	test	eax, eax
	jne	.L51
	movsd	xmm0, QWORD PTR -16[rbp]
	cvttsd2si	rax, xmm0
	mov	QWORD PTR -24[rbp], rax
.L51:
	mov	rax, QWORD PTR -24[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE19:
	.size	fxp_double_to_fxp, .-fxp_double_to_fxp
	.globl	fxp_float_to_fxp_array
	.type	fxp_float_to_fxp_array, @function
fxp_float_to_fxp_array:
.LFB20:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -32[rbp], rdi
	mov	QWORD PTR -40[rbp], rsi
	mov	DWORD PTR -44[rbp], edx
	mov	DWORD PTR -12[rbp], 0
	jmp	.L61
.L62:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	mov	edx, DWORD PTR -12[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -40[rbp]
	lea	rbx, [rcx+rdx]
	movd	xmm0, eax
	call	fxp_float_to_fxp
	mov	QWORD PTR [rbx], rax
	add	DWORD PTR -12[rbp], 1
.L61:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jl	.L62
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE20:
	.size	fxp_float_to_fxp_array, .-fxp_float_to_fxp_array
	.globl	fxp_double_to_fxp_array
	.type	fxp_double_to_fxp_array, @function
fxp_double_to_fxp_array:
.LFB21:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -32[rbp], rdi
	mov	QWORD PTR -40[rbp], rsi
	mov	DWORD PTR -44[rbp], edx
	mov	DWORD PTR -12[rbp], 0
	jmp	.L64
.L65:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	edx, DWORD PTR -12[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -40[rbp]
	lea	rbx, [rcx+rdx]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR [rbx], rax
	add	DWORD PTR -12[rbp], 1
.L64:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jl	.L65
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE21:
	.size	fxp_double_to_fxp_array, .-fxp_double_to_fxp_array
	.globl	fxp_to_float
	.type	fxp_to_float, @function
fxp_to_float:
.LFB22:
	.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	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR -8[rbp], eax
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -8[rbp]
	mov	eax, DWORD PTR impl[rip+4]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, scale_factor_inv[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR -4[rbp], xmm0
	movss	xmm0, DWORD PTR -4[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE22:
	.size	fxp_to_float, .-fxp_to_float
	.globl	fxp_to_double
	.type	fxp_to_double, @function
fxp_to_double:
.LFB23:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR -12[rbp], eax
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -12[rbp]
	mov	eax, DWORD PTR impl[rip+4]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, scale_factor_inv[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE23:
	.size	fxp_to_double, .-fxp_to_double
	.globl	fxp_to_float_array
	.type	fxp_to_float_array, @function
fxp_to_float_array:
.LFB24:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -32[rbp], rdi
	mov	QWORD PTR -40[rbp], rsi
	mov	DWORD PTR -44[rbp], edx
	mov	DWORD PTR -12[rbp], 0
	jmp	.L71
.L72:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	edx, DWORD PTR -12[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*4]
	mov	rdx, QWORD PTR -32[rbp]
	lea	rbx, [rcx+rdx]
	mov	rdi, rax
	call	fxp_to_float
	movd	eax, xmm0
	mov	DWORD PTR [rbx], eax
	add	DWORD PTR -12[rbp], 1
.L71:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jl	.L72
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE24:
	.size	fxp_to_float_array, .-fxp_to_float_array
	.globl	fxp_to_double_array
	.type	fxp_to_double_array, @function
fxp_to_double_array:
.LFB25:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	QWORD PTR -32[rbp], rdi
	mov	QWORD PTR -40[rbp], rsi
	mov	DWORD PTR -44[rbp], edx
	mov	DWORD PTR -12[rbp], 0
	jmp	.L74
.L75:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	edx, DWORD PTR -12[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -32[rbp]
	lea	rbx, [rcx+rdx]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	QWORD PTR [rbx], rax
	add	DWORD PTR -12[rbp], 1
.L74:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jl	.L75
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE25:
	.size	fxp_to_double_array, .-fxp_to_double_array
	.globl	fxp_abs
	.type	fxp_abs, @function
fxp_abs:
.LFB26:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	cqo
	mov	rax, rdx
	xor	rax, QWORD PTR -24[rbp]
	sub	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fxp_quantize
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE26:
	.size	fxp_abs, .-fxp_abs
	.globl	fxp_add
	.type	fxp_add, @function
fxp_add:
.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	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fxp_quantize
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE27:
	.size	fxp_add, .-fxp_add
	.globl	fxp_sub
	.type	fxp_sub, @function
fxp_sub:
.LFB28:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fxp_quantize
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE28:
	.size	fxp_sub, .-fxp_sub
	.globl	fxp_mult
	.type	fxp_mult, @function
fxp_mult:
.LFB29:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rax, QWORD PTR -24[rbp]
	imul	rax, QWORD PTR -32[rbp]
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	js	.L83
	mov	eax, DWORD PTR impl[rip+4]
	sub	eax, 1
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	cdqe
	and	rax, QWORD PTR -8[rbp]
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -8[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR impl[rip+4]
	mov	ecx, eax
	sar	rdx, cl
	mov	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	jmp	.L84
.L83:
	mov	rax, QWORD PTR -8[rbp]
	neg	rax
	mov	rdx, rax
	mov	eax, DWORD PTR impl[rip+4]
	sub	eax, 1
	mov	esi, 1
	mov	ecx, eax
	sal	esi, cl
	mov	eax, esi
	cdqe
	and	rax, rdx
	add	rax, rax
	sub	rax, QWORD PTR -8[rbp]
	mov	rdx, rax
	mov	eax, DWORD PTR impl[rip+4]
	mov	ecx, eax
	sar	rdx, cl
	mov	rax, rdx
	neg	rax
	mov	QWORD PTR -16[rbp], rax
.L84:
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	fxp_quantize
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE29:
	.size	fxp_mult, .-fxp_mult
	.globl	fxp_div
	.type	fxp_div, @function
fxp_div:
.LFB30:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	cmp	QWORD PTR -32[rbp], 0
	setne	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	eax, DWORD PTR impl[rip+4]
	mov	rdx, QWORD PTR -24[rbp]
	mov	ecx, eax
	sal	rdx, cl
	mov	rax, rdx
	cqo
	idiv	QWORD PTR -32[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fxp_quantize
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE30:
	.size	fxp_div, .-fxp_div
	.globl	fxp_neg
	.type	fxp_neg, @function
fxp_neg:
.LFB31:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	mov	QWORD PTR -24[rbp], rdi
	mov	rax, QWORD PTR -24[rbp]
	neg	rax
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fxp_quantize
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE31:
	.size	fxp_neg, .-fxp_neg
	.globl	fxp_sign
	.type	fxp_sign, @function
fxp_sign:
.LFB32:
	.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
	cmp	QWORD PTR -8[rbp], 0
	je	.L91
	cmp	QWORD PTR -8[rbp], 0
	jns	.L92
	mov	rax, QWORD PTR _fxp_minus_one[rip]
	jmp	.L95
.L92:
	mov	rax, QWORD PTR _fxp_one[rip]
	jmp	.L95
.L91:
	mov	eax, 0
.L95:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE32:
	.size	fxp_sign, .-fxp_sign
	.globl	fxp_shrl
	.type	fxp_shrl, @function
fxp_shrl:
.LFB33:
	.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	rax, QWORD PTR -8[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	mov	ecx, eax
	shr	edx, cl
	mov	eax, edx
	mov	eax, eax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE33:
	.size	fxp_shrl, .-fxp_shrl
	.globl	fxp_square
	.type	fxp_square, @function
fxp_square:
.LFB34:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	QWORD PTR -8[rbp], rdi
	mov	rdx, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE34:
	.size	fxp_square, .-fxp_square
	.section	.rodata
.LC8:
	.string	"\n%i"
	.text
	.globl	fxp_print_int
	.type	fxp_print_int, @function
fxp_print_int:
.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, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	esi, eax
	lea	rdi, .LC8[rip]
	mov	eax, 0
	call	printf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE35:
	.size	fxp_print_int, .-fxp_print_int
	.section	.rodata
.LC9:
	.string	"\n%f"
	.text
	.globl	fxp_print_float
	.type	fxp_print_float, @function
fxp_print_float:
.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, 16
	mov	QWORD PTR -8[rbp], rdi
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fxp_to_float
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movq	rax, xmm1
	movq	xmm0, rax
	lea	rdi, .LC9[rip]
	mov	eax, 1
	call	printf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE36:
	.size	fxp_print_float, .-fxp_print_float
	.globl	fxp_print_float_array
	.type	fxp_print_float_array, @function
fxp_print_float_array:
.LFB37:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	DWORD PTR -4[rbp], 0
	jmp	.L103
.L104:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	fxp_to_float
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movq	rax, xmm1
	movq	xmm0, rax
	lea	rdi, .LC9[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -4[rbp], 1
.L103:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L104
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE37:
	.size	fxp_print_float_array, .-fxp_print_float_array
	.section	.rodata
.LC10:
	.string	"%s = {"
.LC11:
	.string	" %jd "
.LC12:
	.string	"}"
	.text
	.globl	print_fxp_array_elements
	.type	print_fxp_array_elements, @function
print_fxp_array_elements:
.LFB38:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	DWORD PTR -36[rbp], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -4[rbp], 0
	jmp	.L106
.L107:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rax
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	add	DWORD PTR -4[rbp], 1
.L106:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jl	.L107
	lea	rdi, .LC12[rip]
	call	puts@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE38:
	.size	print_fxp_array_elements, .-print_fxp_array_elements
	.globl	initialize_array
	.type	initialize_array, @function
initialize_array:
.LFB39:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	DWORD PTR -4[rbp], 0
	jmp	.L109
.L110:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -4[rbp], 1
.L109:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L110
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE39:
	.size	initialize_array, .-initialize_array
	.globl	revert_array
	.type	revert_array, @function
revert_array:
.LFB40:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 40
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	DWORD PTR -36[rbp], edx
	mov	edx, DWORD PTR -36[rbp]
	mov	rax, QWORD PTR -32[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	initialize_array
	mov	DWORD PTR -4[rbp], 0
	jmp	.L112
.L113:
	mov	eax, DWORD PTR -36[rbp]
	sub	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -4[rbp], 1
.L112:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jl	.L113
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE40:
	.size	revert_array, .-revert_array
	.globl	internal_pow
	.type	internal_pow, @function
internal_pow:
.LFB41:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -24[rbp], xmm0
	movsd	QWORD PTR -32[rbp], xmm1
	movsd	xmm0, QWORD PTR .LC7[rip]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -12[rbp], 0
	jmp	.L115
.L116:
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -12[rbp], 1
.L115:
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -12[rbp]
	movsd	xmm0, QWORD PTR -32[rbp]
	comisd	xmm0, xmm1
	ja	.L116
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE41:
	.size	internal_pow, .-internal_pow
	.globl	internal_abs
	.type	internal_abs, @function
internal_abs:
.LFB42:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -8[rbp]
	jbe	.L124
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	xmm1, QWORD PTR .LC13[rip]
	xorpd	xmm0, xmm1
	jmp	.L122
.L124:
	movsd	xmm0, QWORD PTR -8[rbp]
.L122:
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE42:
	.size	internal_abs, .-internal_abs
	.globl	fatorial
	.type	fatorial, @function
fatorial:
.LFB43:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	cmp	DWORD PTR -4[rbp], 0
	je	.L126
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	mov	edi, eax
	call	fatorial
	imul	eax, DWORD PTR -4[rbp]
	jmp	.L128
.L126:
	mov	eax, 1
.L128:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE43:
	.size	fatorial, .-fatorial
	.section	.rodata
	.align 8
.LC14:
	.string	"[DEBUG] the first constraint of Jury criteria failed: (F(1) > 0)"
	.align 8
.LC16:
	.string	"[DEBUG] the second constraint of Jury criteria failed: (F(-1)*(-1)^n > 0)"
	.align 8
.LC17:
	.string	"[DEBUG] the third constraint of Jury criteria failed: (abs(a0) < a_{n}*z^{n})"
	.text
	.globl	check_stability
	.type	check_stability, @function
check_stability:
.LFB44:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 168
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	QWORD PTR -152[rbp], rdi
	mov	DWORD PTR -156[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	QWORD PTR -200[rbp], rax
	mov	eax, DWORD PTR -156[rbp]
	add	eax, eax
	sub	eax, 1
	mov	DWORD PTR -116[rbp], eax
	mov	eax, DWORD PTR -156[rbp]
	mov	DWORD PTR -124[rbp], eax
	mov	esi, DWORD PTR -156[rbp]
	mov	edi, DWORD PTR -116[rbp]
	movsx	rax, esi
	sub	rax, 1
	mov	QWORD PTR -96[rbp], rax
	movsx	rax, esi
	mov	rcx, rax
	mov	ebx, 0
	movsx	rax, esi
	lea	rbx, 0[0+rax*8]
	movsx	rax, edi
	sub	rax, 1
	mov	QWORD PTR -88[rbp], rax
	movsx	rax, esi
	mov	r14, rax
	mov	r15d, 0
	movsx	rax, edi
	mov	r12, rax
	mov	r13d, 0
	mov	rdx, r15
	imul	rdx, r12
	mov	rax, r13
	imul	rax, r14
	lea	rcx, [rdx+rax]
	mov	rax, r14
	mul	r12
	add	rcx, rdx
	mov	rdx, rcx
	movsx	rax, esi
	mov	r10, rax
	mov	r11d, 0
	movsx	rax, edi
	mov	r8, rax
	mov	r9d, 0
	mov	rdx, r11
	imul	rdx, r8
	mov	rax, r9
	imul	rax, r10
	lea	rcx, [rdx+rax]
	mov	rax, r10
	mul	r8
	add	rcx, rdx
	mov	rdx, rcx
	movsx	rdx, esi
	movsx	rax, edi
	imul	rax, rdx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L130:
	cmp	rsp, rdx
	je	.L131
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L130
.L131:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L132
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L132:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	eax, DWORD PTR -156[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -176[rbp], rdx
	mov	QWORD PTR -168[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -192[rbp], rdx
	mov	QWORD PTR -184[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L133:
	cmp	rsp, rdx
	je	.L134
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L133
.L134:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L135
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L135:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	DWORD PTR -128[rbp], 0
	jmp	.L136
.L137:
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -152[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -64[rbp]
	mov	edx, DWORD PTR -128[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -128[rbp], 1
.L136:
	mov	eax, DWORD PTR -128[rbp]
	cmp	eax, DWORD PTR -156[rbp]
	jl	.L137
	pxor	xmm0, xmm0
	movsd	QWORD PTR -104[rbp], xmm0
	mov	DWORD PTR -128[rbp], 0
	jmp	.L138
.L139:
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -152[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR -104[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -104[rbp], xmm0
	add	DWORD PTR -128[rbp], 1
.L138:
	mov	eax, DWORD PTR -128[rbp]
	cmp	eax, DWORD PTR -156[rbp]
	jl	.L139
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -104[rbp]
	jb	.L171
	lea	rdi, .LC14[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 0
	jmp	.L142
.L171:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -104[rbp], xmm0
	mov	DWORD PTR -128[rbp], 0
	jmp	.L143
.L144:
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -152[rbp]
	add	rax, rdx
	movsd	xmm4, QWORD PTR [rax]
	movsd	QWORD PTR -176[rbp], xmm4
	mov	eax, DWORD PTR -156[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -128[rbp]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mov	rax, QWORD PTR .LC15[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	internal_pow
	mulsd	xmm0, QWORD PTR -176[rbp]
	movsd	xmm1, QWORD PTR -104[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -104[rbp], xmm0
	add	DWORD PTR -128[rbp], 1
.L143:
	mov	eax, DWORD PTR -128[rbp]
	cmp	eax, DWORD PTR -156[rbp]
	jl	.L144
	mov	eax, DWORD PTR -156[rbp]
	sub	eax, 1
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mov	rax, QWORD PTR .LC15[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	internal_pow
	movsd	xmm1, QWORD PTR -104[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -104[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -104[rbp]
	jb	.L172
	lea	rdi, .LC16[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 0
	jmp	.L142
.L172:
	mov	eax, DWORD PTR -156[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -152[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	movq	xmm0, rax
	call	internal_abs
	movq	rax, xmm0
	mov	rdx, QWORD PTR -152[rbp]
	movsd	xmm0, QWORD PTR [rdx]
	movq	xmm5, rax
	comisd	xmm5, xmm0
	jbe	.L173
	lea	rdi, .LC17[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 0
	jmp	.L142
.L173:
	mov	DWORD PTR -128[rbp], 0
	jmp	.L149
.L152:
	mov	DWORD PTR -132[rbp], 0
	jmp	.L150
.L151:
	mov	rcx, rbx
	shr	rcx, 3
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -132[rbp]
	movsx	rsi, edx
	mov	edx, DWORD PTR -128[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	add	rdx, rsi
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -132[rbp], 1
.L150:
	mov	eax, DWORD PTR -132[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L151
	add	DWORD PTR -128[rbp], 1
.L149:
	mov	eax, DWORD PTR -128[rbp]
	cmp	eax, DWORD PTR -116[rbp]
	jl	.L152
	mov	DWORD PTR -128[rbp], 0
	jmp	.L153
.L161:
	mov	DWORD PTR -132[rbp], 0
	jmp	.L154
.L160:
	cmp	DWORD PTR -128[rbp], 0
	jne	.L155
	mov	eax, DWORD PTR -132[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -152[rbp]
	add	rax, rdx
	mov	rcx, rbx
	shr	rcx, 3
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -132[rbp]
	movsx	rsi, edx
	mov	edx, DWORD PTR -128[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	add	rdx, rsi
	movsd	QWORD PTR [rax+rdx*8], xmm0
	jmp	.L156
.L155:
	mov	eax, DWORD PTR -128[rbp]
	and	eax, 1
	test	eax, eax
	je	.L157
	mov	DWORD PTR -120[rbp], 0
	jmp	.L158
.L159:
	mov	rsi, rbx
	shr	rsi, 3
	mov	eax, DWORD PTR -128[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -124[rbp]
	sub	eax, DWORD PTR -120[rbp]
	lea	edi, -1[rax]
	mov	rcx, rbx
	shr	rcx, 3
	mov	rax, QWORD PTR -80[rbp]
	movsx	rdi, edi
	movsx	rdx, edx
	imul	rdx, rsi
	add	rdx, rdi
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -120[rbp]
	movsx	rsi, edx
	mov	edx, DWORD PTR -128[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	add	rdx, rsi
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -120[rbp], 1
.L158:
	mov	eax, DWORD PTR -120[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L159
	sub	DWORD PTR -124[rbp], 1
	mov	eax, DWORD PTR -124[rbp]
	mov	DWORD PTR -132[rbp], eax
	jmp	.L156
.L157:
	mov	rcx, rbx
	shr	rcx, 3
	mov	eax, DWORD PTR -128[rbp]
	lea	esi, -2[rax]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -132[rbp]
	movsx	rdi, edx
	movsx	rdx, esi
	imul	rdx, rcx
	add	rdx, rdi
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mov	rcx, rbx
	shr	rcx, 3
	mov	eax, DWORD PTR -128[rbp]
	lea	esi, -2[rax]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -124[rbp]
	movsx	rdi, edx
	movsx	rdx, esi
	imul	rdx, rcx
	add	rdx, rdi
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mov	rcx, rbx
	shr	rcx, 3
	mov	eax, DWORD PTR -128[rbp]
	lea	edx, -2[rax]
	mov	rax, QWORD PTR -80[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	movsd	xmm3, QWORD PTR [rax+rdx*8]
	movapd	xmm2, xmm1
	divsd	xmm2, xmm3
	mov	rcx, rbx
	shr	rcx, 3
	mov	eax, DWORD PTR -128[rbp]
	lea	esi, -1[rax]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -132[rbp]
	movsx	rdi, edx
	movsx	rdx, esi
	imul	rdx, rcx
	add	rdx, rdi
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mulsd	xmm1, xmm2
	mov	rcx, rbx
	shr	rcx, 3
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -132[rbp]
	movsx	rsi, edx
	mov	edx, DWORD PTR -128[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	add	rdx, rsi
	movsd	QWORD PTR [rax+rdx*8], xmm0
.L156:
	add	DWORD PTR -132[rbp], 1
.L154:
	mov	eax, DWORD PTR -132[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L160
	add	DWORD PTR -128[rbp], 1
.L153:
	mov	eax, DWORD PTR -128[rbp]
	cmp	eax, DWORD PTR -116[rbp]
	jl	.L161
	mov	rax, QWORD PTR -80[rbp]
	movsd	xmm0, QWORD PTR [rax]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	setnb	al
	movzx	eax, al
	mov	DWORD PTR -112[rbp], eax
	mov	DWORD PTR -128[rbp], 0
	jmp	.L162
.L165:
	mov	eax, DWORD PTR -128[rbp]
	and	eax, 1
	test	eax, eax
	jne	.L163
	mov	rcx, rbx
	shr	rcx, 3
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -128[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	setnb	al
	movzx	eax, al
	mov	DWORD PTR -108[rbp], eax
	mov	eax, DWORD PTR -112[rbp]
	cmp	eax, DWORD PTR -108[rbp]
	je	.L174
	mov	eax, 0
	jmp	.L142
.L174:
	nop
.L163:
	add	DWORD PTR -128[rbp], 1
.L162:
	mov	eax, DWORD PTR -128[rbp]
	cmp	eax, DWORD PTR -116[rbp]
	jl	.L165
	mov	eax, 1
.L142:
	mov	rsp, QWORD PTR -200[rbp]
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L167
	call	__stack_chk_fail@PLT
.L167:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE44:
	.size	check_stability, .-check_stability
	.globl	poly_sum
	.type	poly_sum, @function
poly_sum:
.LFB45:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	QWORD PTR -40[rbp], rdx
	mov	DWORD PTR -32[rbp], ecx
	mov	QWORD PTR -48[rbp], r8
	mov	DWORD PTR -52[rbp], r9d
	mov	eax, DWORD PTR -28[rbp]
	cmp	DWORD PTR -32[rbp], eax
	cmovge	eax, DWORD PTR -32[rbp]
	mov	DWORD PTR -52[rbp], eax
	mov	DWORD PTR -4[rbp], 0
	jmp	.L176
.L179:
	mov	eax, DWORD PTR -28[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jle	.L177
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, DWORD PTR -32[rbp]
	cmp	DWORD PTR -4[rbp], eax
	jl	.L178
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, DWORD PTR -28[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -32[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	jmp	.L178
.L177:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -32[rbp]
	sub	eax, DWORD PTR -28[rbp]
	cmp	DWORD PTR -4[rbp], eax
	jl	.L178
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, DWORD PTR -32[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -28[rbp]
	add	eax, edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
.L178:
	add	DWORD PTR -4[rbp], 1
.L176:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L179
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE45:
	.size	poly_sum, .-poly_sum
	.globl	poly_mult
	.type	poly_mult, @function
poly_mult:
.LFB46:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	QWORD PTR -40[rbp], rdx
	mov	DWORD PTR -32[rbp], ecx
	mov	QWORD PTR -48[rbp], r8
	mov	DWORD PTR -52[rbp], r9d
	mov	edx, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -32[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -52[rbp], eax
	mov	DWORD PTR -12[rbp], 0
	jmp	.L181
.L184:
	mov	DWORD PTR -8[rbp], 0
	jmp	.L182
.L183:
	mov	edx, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -32[rbp]
	add	eax, edx
	sub	eax, DWORD PTR -12[rbp]
	sub	eax, DWORD PTR -8[rbp]
	sub	eax, 2
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -8[rbp], 1
.L182:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jl	.L183
	add	DWORD PTR -12[rbp], 1
.L181:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L184
	mov	DWORD PTR -12[rbp], 0
	jmp	.L185
.L188:
	mov	DWORD PTR -8[rbp], 0
	jmp	.L186
.L187:
	mov	edx, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -32[rbp]
	add	eax, edx
	sub	eax, DWORD PTR -12[rbp]
	sub	eax, DWORD PTR -8[rbp]
	sub	eax, 2
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	sub	eax, DWORD PTR -8[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -8[rbp], 1
.L186:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jl	.L187
	add	DWORD PTR -12[rbp], 1
.L185:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jl	.L188
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE46:
	.size	poly_mult, .-poly_mult
	.section	.rodata
	.align 8
.LC18:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/core/util.h"
	.align 8
.LC19:
	.string	"!(window_count == window_size)"
	.text
	.globl	double_check_oscillations
	.type	double_check_oscillations, @function
double_check_oscillations:
.LFB47:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	DWORD PTR -44[rbp], esi
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	ucomisd	xmm0, xmm1
	setp	al
	mov	edx, 1
	ucomisd	xmm0, xmm1
	cmovne	eax, edx
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	DWORD PTR -24[rbp], 0
	mov	DWORD PTR -20[rbp], 0
	mov	DWORD PTR -16[rbp], 2
	jmp	.L190
.L198:
	mov	eax, DWORD PTR -16[rbp]
	mov	DWORD PTR -8[rbp], eax
	mov	DWORD PTR -12[rbp], 0
	jmp	.L191
.L197:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -8[rbp]
	jle	.L192
	mov	DWORD PTR -24[rbp], 0
	mov	DWORD PTR -20[rbp], 0
.L192:
	mov	edx, DWORD PTR -12[rbp]
	mov	eax, DWORD PTR -8[rbp]
	add	eax, edx
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jge	.L200
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	ucomisd	xmm0, xmm1
	jp	.L194
	ucomisd	xmm0, xmm1
	jne	.L194
	add	DWORD PTR -20[rbp], 1
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -8[rbp]
	jne	.L194
	lea	rcx, __PRETTY_FUNCTION__.19[rip]
	mov	edx, 209
	lea	rsi, .LC18[rip]
	lea	rdi, .LC19[rip]
	call	__assert_fail@PLT
.L194:
	add	DWORD PTR -24[rbp], 1
	add	DWORD PTR -12[rbp], 1
.L191:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jl	.L197
	jmp	.L196
.L200:
	nop
.L196:
	add	DWORD PTR -16[rbp], 1
.L190:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jl	.L198
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE47:
	.size	double_check_oscillations, .-double_check_oscillations
	.section	.rodata
.LC20:
	.string	"window_size %d\n"
.LC21:
	.string	"%.0f == %.0f\n"
.LC22:
	.string	"desired_elements %d\n"
.LC23:
	.string	"found_elements %d\n"
	.text
	.globl	double_check_limit_cycle
	.type	double_check_limit_cycle, @function
double_check_limit_cycle:
.LFB48:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	DWORD PTR -44[rbp], esi
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -28[rbp], 0
	mov	DWORD PTR -24[rbp], 1
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, 2
	mov	DWORD PTR -28[rbp], eax
	jmp	.L202
.L207:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	ucomisd	xmm0, QWORD PTR -8[rbp]
	jp	.L215
	comisd	xmm0, QWORD PTR -8[rbp]
	jne	.L215
	jmp	.L206
.L215:
	add	DWORD PTR -24[rbp], 1
	sub	DWORD PTR -28[rbp], 1
.L202:
	cmp	DWORD PTR -28[rbp], 0
	jns	.L207
.L206:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	je	.L208
	cmp	DWORD PTR -24[rbp], 1
	je	.L208
	mov	eax, 1
	jmp	.L209
.L208:
	mov	eax, 0
.L209:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	eax, DWORD PTR -24[rbp]
	mov	esi, eax
	lea	rdi, .LC20[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -24[rbp]
	add	eax, eax
	mov	DWORD PTR -16[rbp], eax
	mov	DWORD PTR -20[rbp], 0
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, 1
	mov	DWORD PTR -28[rbp], eax
	jmp	.L210
.L214:
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, DWORD PTR -24[rbp]
	cmp	DWORD PTR -28[rbp], eax
	jl	.L211
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, DWORD PTR -24[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	lea	rdi, .LC21[rip]
	mov	eax, 2
	call	printf@PLT
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, DWORD PTR -24[rbp]
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	jle	.L212
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, DWORD PTR -24[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	ucomisd	xmm0, xmm1
	jp	.L212
	ucomisd	xmm0, xmm1
	jne	.L212
	add	DWORD PTR -20[rbp], 2
.L211:
	sub	DWORD PTR -28[rbp], 1
.L210:
	cmp	DWORD PTR -28[rbp], 0
	jns	.L214
.L212:
	mov	eax, DWORD PTR -16[rbp]
	mov	esi, eax
	lea	rdi, .LC22[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, eax
	lea	rdi, .LC23[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	setne	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE48:
	.size	double_check_limit_cycle, .-double_check_limit_cycle
	.globl	double_check_persistent_limit_cycle
	.type	double_check_persistent_limit_cycle, @function
double_check_persistent_limit_cycle:
.LFB49:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 88
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	QWORD PTR -120[rbp], rdi
	mov	DWORD PTR -124[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -92[rbp], 0
	mov	DWORD PTR -96[rbp], 0
	mov	DWORD PTR -88[rbp], 0
	mov	rax, QWORD PTR -120[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -80[rbp], xmm0
	mov	DWORD PTR -92[rbp], 0
	jmp	.L218
.L224:
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	ucomisd	xmm0, QWORD PTR -80[rbp]
	jp	.L240
	comisd	xmm0, QWORD PTR -80[rbp]
	je	.L242
.L240:
	add	DWORD PTR -88[rbp], 1
	jmp	.L221
.L242:
	cmp	DWORD PTR -88[rbp], 0
	jne	.L244
	add	DWORD PTR -96[rbp], 1
.L221:
	add	DWORD PTR -92[rbp], 1
.L218:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L224
	jmp	.L223
.L244:
	nop
.L223:
	mov	eax, DWORD PTR -96[rbp]
	add	DWORD PTR -88[rbp], eax
	cmp	DWORD PTR -88[rbp], 1
	jle	.L225
	mov	eax, DWORD PTR -124[rbp]
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	cmp	DWORD PTR -88[rbp], eax
	jg	.L225
	mov	eax, 1
	jmp	.L226
.L225:
	mov	eax, 0
.L226:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	eax, DWORD PTR -88[rbp]
	mov	rdx, rsp
	mov	rbx, rdx
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	movsx	rdx, eax
	mov	r12, rdx
	mov	r13d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L227:
	cmp	rsp, rdx
	je	.L228
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L227
.L228:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L229
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L229:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	DWORD PTR -92[rbp], 0
	jmp	.L230
.L232:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jge	.L231
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -64[rbp]
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
.L231:
	add	DWORD PTR -92[rbp], 1
.L230:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L232
	mov	DWORD PTR -92[rbp], 0
	mov	DWORD PTR -84[rbp], 0
	mov	BYTE PTR -97[rbp], 0
	jmp	.L233
.L238:
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -92[rbp], edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -84[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -84[rbp], edx
	mov	rdx, QWORD PTR -64[rbp]
	cdqe
	movsd	xmm1, QWORD PTR [rdx+rax*8]
	ucomisd	xmm0, xmm1
	jp	.L234
	ucomisd	xmm0, xmm1
	jne	.L234
	mov	BYTE PTR -97[rbp], 1
	mov	eax, DWORD PTR -84[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jne	.L233
	jmp	.L243
.L234:
	mov	BYTE PTR -97[rbp], 0
	jmp	.L237
.L243:
	mov	DWORD PTR -84[rbp], 0
.L233:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L238
.L237:
	movzx	eax, BYTE PTR -97[rbp]
	test	eax, eax
	setne	al
	xor	eax, 1
	movzx	eax, al
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	mov	rsp, rbx
	nop
	mov	rax, QWORD PTR -56[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L239
	call	__stack_chk_fail@PLT
.L239:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE49:
	.size	double_check_persistent_limit_cycle, .-double_check_persistent_limit_cycle
	.section	.rodata
.LC24:
	.string	" %.32f "
	.text
	.globl	print_array_elements
	.type	print_array_elements, @function
print_array_elements:
.LFB50:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	DWORD PTR -36[rbp], edx
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rax
	lea	rdi, .LC10[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -4[rbp], 0
	jmp	.L246
.L247:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	movq	xmm0, rax
	lea	rdi, .LC24[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -4[rbp], 1
.L246:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jl	.L247
	lea	rdi, .LC12[rip]
	call	puts@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE50:
	.size	print_array_elements, .-print_array_elements
	.globl	double_add_matrix
	.type	double_add_matrix, @function
double_add_matrix:
.LFB51:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -20[rbp], edi
	mov	DWORD PTR -24[rbp], esi
	mov	QWORD PTR -32[rbp], rdx
	mov	QWORD PTR -40[rbp], rcx
	mov	QWORD PTR -48[rbp], r8
	mov	DWORD PTR -8[rbp], 0
	jmp	.L249
.L252:
	mov	DWORD PTR -4[rbp], 0
	jmp	.L250
.L251:
	mov	eax, DWORD PTR -8[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	movsd	xmm1, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -8[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -8[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -4[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -4[rbp], 1
.L250:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -24[rbp]
	jb	.L251
	add	DWORD PTR -8[rbp], 1
.L249:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	jb	.L252
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE51:
	.size	double_add_matrix, .-double_add_matrix
	.globl	double_sub_matrix
	.type	double_sub_matrix, @function
double_sub_matrix:
.LFB52:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -20[rbp], edi
	mov	DWORD PTR -24[rbp], esi
	mov	QWORD PTR -32[rbp], rdx
	mov	QWORD PTR -40[rbp], rcx
	mov	QWORD PTR -48[rbp], r8
	mov	DWORD PTR -8[rbp], 0
	jmp	.L254
.L257:
	mov	DWORD PTR -4[rbp], 0
	jmp	.L255
.L256:
	mov	eax, DWORD PTR -8[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -8[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	movsd	xmm1, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -8[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	subsd	xmm0, xmm1
	mov	eax, DWORD PTR -4[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -4[rbp], 1
.L255:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -24[rbp]
	jb	.L256
	add	DWORD PTR -8[rbp], 1
.L254:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	jb	.L257
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE52:
	.size	double_sub_matrix, .-double_sub_matrix
	.section	.rodata
	.align 8
.LC25:
	.string	"\nError! Operation invalid, please enter with valid matrices."
	.text
	.globl	double_matrix_multiplication
	.type	double_matrix_multiplication, @function
double_matrix_multiplication:
.LFB53:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	DWORD PTR -36[rbp], edi
	mov	DWORD PTR -40[rbp], esi
	mov	DWORD PTR -44[rbp], edx
	mov	DWORD PTR -48[rbp], ecx
	mov	QWORD PTR -56[rbp], r8
	mov	QWORD PTR -64[rbp], r9
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jne	.L259
	mov	DWORD PTR -20[rbp], 0
	jmp	.L260
.L263:
	mov	DWORD PTR -16[rbp], 0
	jmp	.L261
.L262:
	mov	eax, DWORD PTR -20[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR 16[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -16[rbp], 1
.L261:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -48[rbp]
	jb	.L262
	add	DWORD PTR -20[rbp], 1
.L260:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jb	.L263
	mov	DWORD PTR -20[rbp], 0
	jmp	.L264
.L269:
	mov	DWORD PTR -16[rbp], 0
	jmp	.L265
.L268:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L266
.L267:
	mov	eax, DWORD PTR -20[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	movsd	xmm1, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -12[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -64[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	eax, DWORD PTR -20[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR 16[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	movsd	xmm1, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -20[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	movsd	xmm2, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -12[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -64[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mulsd	xmm0, xmm2
	mov	eax, DWORD PTR -20[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR 16[rbp]
	add	rdx, rax
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -16[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -12[rbp], 1
.L266:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -40[rbp]
	jb	.L267
	add	DWORD PTR -16[rbp], 1
.L265:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -48[rbp]
	jb	.L268
	add	DWORD PTR -20[rbp], 1
.L264:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jb	.L269
	jmp	.L271
.L259:
	lea	rdi, .LC25[rip]
	call	puts@PLT
.L271:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE53:
	.size	double_matrix_multiplication, .-double_matrix_multiplication
	.globl	fxp_matrix_multiplication
	.type	fxp_matrix_multiplication, @function
fxp_matrix_multiplication:
.LFB54:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 56
	.cfi_offset 3, -24
	mov	DWORD PTR -36[rbp], edi
	mov	DWORD PTR -40[rbp], esi
	mov	DWORD PTR -44[rbp], edx
	mov	DWORD PTR -48[rbp], ecx
	mov	QWORD PTR -56[rbp], r8
	mov	QWORD PTR -64[rbp], r9
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jne	.L273
	mov	DWORD PTR -28[rbp], 0
	jmp	.L274
.L277:
	mov	DWORD PTR -24[rbp], 0
	jmp	.L275
.L276:
	mov	eax, DWORD PTR -28[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR 16[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -24[rbp]
	mov	QWORD PTR [rdx+rax*8], 0
	add	DWORD PTR -24[rbp], 1
.L275:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -48[rbp]
	jb	.L276
	add	DWORD PTR -28[rbp], 1
.L274:
	mov	eax, DWORD PTR -28[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jb	.L277
	mov	DWORD PTR -28[rbp], 0
	jmp	.L278
.L283:
	mov	DWORD PTR -24[rbp], 0
	jmp	.L279
.L282:
	mov	DWORD PTR -20[rbp], 0
	jmp	.L280
.L281:
	mov	eax, DWORD PTR -20[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -64[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -24[rbp]
	mov	rdx, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -28[rbp]
	sal	rax, 5
	mov	rcx, rax
	mov	rax, QWORD PTR -56[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -20[rbp]
	mov	rax, QWORD PTR [rcx+rax*8]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	eax, DWORD PTR -28[rbp]
	sal	rax, 5
	mov	rcx, rax
	mov	rax, QWORD PTR 16[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -24[rbp]
	mov	rax, QWORD PTR [rcx+rax*8]
	mov	ecx, DWORD PTR -28[rbp]
	mov	rsi, rcx
	sal	rsi, 5
	mov	rcx, QWORD PTR 16[rbp]
	lea	rbx, [rsi+rcx]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	edx, DWORD PTR -24[rbp]
	mov	QWORD PTR [rbx+rdx*8], rax
	add	DWORD PTR -20[rbp], 1
.L280:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -40[rbp]
	jb	.L281
	add	DWORD PTR -24[rbp], 1
.L279:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -48[rbp]
	jb	.L282
	add	DWORD PTR -28[rbp], 1
.L278:
	mov	eax, DWORD PTR -28[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jb	.L283
	jmp	.L285
.L273:
	lea	rdi, .LC25[rip]
	call	puts@PLT
.L285:
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE54:
	.size	fxp_matrix_multiplication, .-fxp_matrix_multiplication
	.globl	fxp_exp_matrix
	.type	fxp_exp_matrix, @function
fxp_exp_matrix:
.LFB55:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 200
	.cfi_offset 3, -24
	mov	DWORD PTR -180[rbp], edi
	mov	DWORD PTR -184[rbp], esi
	mov	QWORD PTR -192[rbp], rdx
	mov	DWORD PTR -196[rbp], ecx
	mov	QWORD PTR -208[rbp], r8
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	cmp	DWORD PTR -196[rbp], 0
	jne	.L287
	mov	DWORD PTR -176[rbp], 0
	jmp	.L288
.L293:
	mov	DWORD PTR -172[rbp], 0
	jmp	.L289
.L292:
	mov	eax, DWORD PTR -176[rbp]
	cmp	eax, DWORD PTR -172[rbp]
	jne	.L290
	mov	eax, DWORD PTR -176[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -208[rbp]
	lea	rbx, [rdx+rax]
	mov	rax, QWORD PTR .LC7[rip]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -172[rbp]
	mov	QWORD PTR [rbx+rdx*8], rax
	jmp	.L291
.L290:
	mov	eax, DWORD PTR -176[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -208[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -172[rbp]
	mov	QWORD PTR [rdx+rax*8], 0
.L291:
	add	DWORD PTR -172[rbp], 1
.L289:
	mov	eax, DWORD PTR -172[rbp]
	cmp	eax, DWORD PTR -184[rbp]
	jb	.L292
	add	DWORD PTR -176[rbp], 1
.L288:
	mov	eax, DWORD PTR -176[rbp]
	cmp	eax, DWORD PTR -180[rbp]
	jb	.L293
	jmp	.L286
.L287:
	mov	DWORD PTR -176[rbp], 0
	jmp	.L295
.L298:
	mov	DWORD PTR -172[rbp], 0
	jmp	.L296
.L297:
	mov	eax, DWORD PTR -176[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -192[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -176[rbp]
	sal	rax, 5
	mov	rcx, rax
	mov	rax, QWORD PTR -208[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -172[rbp]
	mov	rdx, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -172[rbp]
	mov	QWORD PTR [rcx+rax*8], rdx
	add	DWORD PTR -172[rbp], 1
.L296:
	mov	eax, DWORD PTR -172[rbp]
	cmp	eax, DWORD PTR -184[rbp]
	jb	.L297
	add	DWORD PTR -176[rbp], 1
.L295:
	mov	eax, DWORD PTR -176[rbp]
	cmp	eax, DWORD PTR -180[rbp]
	jb	.L298
	cmp	DWORD PTR -196[rbp], 1
	je	.L318
	mov	DWORD PTR -168[rbp], 1
	jmp	.L300
.L315:
	mov	DWORD PTR -176[rbp], 0
	jmp	.L301
.L304:
	mov	DWORD PTR -172[rbp], 0
	jmp	.L302
.L303:
	mov	eax, DWORD PTR -176[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -208[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -172[rbp]
	mov	rax, QWORD PTR [rdx+rax*8]
	mov	ecx, DWORD PTR -172[rbp]
	mov	edx, DWORD PTR -176[rbp]
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -160[rbp+rdx*8], rax
	add	DWORD PTR -172[rbp], 1
.L302:
	mov	eax, DWORD PTR -172[rbp]
	cmp	eax, DWORD PTR -184[rbp]
	jb	.L303
	add	DWORD PTR -176[rbp], 1
.L301:
	mov	eax, DWORD PTR -176[rbp]
	cmp	eax, DWORD PTR -180[rbp]
	jb	.L304
	mov	DWORD PTR -176[rbp], 0
	jmp	.L305
.L308:
	mov	DWORD PTR -172[rbp], 0
	jmp	.L306
.L307:
	mov	eax, DWORD PTR -176[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -208[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -172[rbp]
	mov	QWORD PTR [rdx+rax*8], 0
	add	DWORD PTR -172[rbp], 1
.L306:
	mov	eax, DWORD PTR -172[rbp]
	cmp	eax, DWORD PTR -184[rbp]
	jb	.L307
	add	DWORD PTR -176[rbp], 1
.L305:
	mov	eax, DWORD PTR -176[rbp]
	cmp	eax, DWORD PTR -180[rbp]
	jb	.L308
	mov	DWORD PTR -176[rbp], 0
	jmp	.L309
.L314:
	mov	DWORD PTR -172[rbp], 0
	jmp	.L310
.L313:
	mov	DWORD PTR -164[rbp], 0
	jmp	.L311
.L312:
	mov	eax, DWORD PTR -164[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -192[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -172[rbp]
	mov	rdx, QWORD PTR [rdx+rax*8]
	mov	ecx, DWORD PTR -164[rbp]
	mov	eax, DWORD PTR -176[rbp]
	sal	rax, 2
	add	rax, rcx
	mov	rax, QWORD PTR -160[rbp+rax*8]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	eax, DWORD PTR -176[rbp]
	sal	rax, 5
	mov	rcx, rax
	mov	rax, QWORD PTR -208[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -172[rbp]
	mov	rax, QWORD PTR [rcx+rax*8]
	mov	ecx, DWORD PTR -176[rbp]
	mov	rsi, rcx
	sal	rsi, 5
	mov	rcx, QWORD PTR -208[rbp]
	lea	rbx, [rsi+rcx]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	edx, DWORD PTR -172[rbp]
	mov	QWORD PTR [rbx+rdx*8], rax
	add	DWORD PTR -164[rbp], 1
.L311:
	mov	eax, DWORD PTR -164[rbp]
	cmp	eax, DWORD PTR -184[rbp]
	jb	.L312
	add	DWORD PTR -172[rbp], 1
.L310:
	mov	eax, DWORD PTR -172[rbp]
	cmp	eax, DWORD PTR -184[rbp]
	jb	.L313
	add	DWORD PTR -176[rbp], 1
.L309:
	mov	eax, DWORD PTR -176[rbp]
	cmp	eax, DWORD PTR -180[rbp]
	jb	.L314
	add	DWORD PTR -168[rbp], 1
.L300:
	mov	eax, DWORD PTR -168[rbp]
	cmp	eax, DWORD PTR -196[rbp]
	jb	.L315
	jmp	.L286
.L318:
	nop
.L286:
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L317
	call	__stack_chk_fail@PLT
.L317:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE55:
	.size	fxp_exp_matrix, .-fxp_exp_matrix
	.globl	double_exp_matrix
	.type	double_exp_matrix, @function
double_exp_matrix:
.LFB56:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 192
	mov	DWORD PTR -164[rbp], edi
	mov	DWORD PTR -168[rbp], esi
	mov	QWORD PTR -176[rbp], rdx
	mov	DWORD PTR -180[rbp], ecx
	mov	QWORD PTR -192[rbp], r8
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	cmp	DWORD PTR -180[rbp], 0
	jne	.L320
	mov	DWORD PTR -160[rbp], 0
	jmp	.L321
.L326:
	mov	DWORD PTR -156[rbp], 0
	jmp	.L322
.L325:
	mov	eax, DWORD PTR -160[rbp]
	cmp	eax, DWORD PTR -156[rbp]
	jne	.L323
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -192[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -156[rbp]
	movsd	xmm0, QWORD PTR .LC7[rip]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	jmp	.L324
.L323:
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -192[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -156[rbp]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
.L324:
	add	DWORD PTR -156[rbp], 1
.L322:
	mov	eax, DWORD PTR -156[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	jb	.L325
	add	DWORD PTR -160[rbp], 1
.L321:
	mov	eax, DWORD PTR -160[rbp]
	cmp	eax, DWORD PTR -164[rbp]
	jb	.L326
	jmp	.L319
.L320:
	mov	DWORD PTR -160[rbp], 0
	jmp	.L328
.L331:
	mov	DWORD PTR -156[rbp], 0
	jmp	.L329
.L330:
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -176[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -192[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -156[rbp]
	movsd	xmm0, QWORD PTR [rcx+rax*8]
	mov	eax, DWORD PTR -156[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -156[rbp], 1
.L329:
	mov	eax, DWORD PTR -156[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	jb	.L330
	add	DWORD PTR -160[rbp], 1
.L328:
	mov	eax, DWORD PTR -160[rbp]
	cmp	eax, DWORD PTR -164[rbp]
	jb	.L331
	cmp	DWORD PTR -180[rbp], 1
	je	.L351
	mov	DWORD PTR -148[rbp], 1
	jmp	.L333
.L348:
	mov	DWORD PTR -160[rbp], 0
	jmp	.L334
.L337:
	mov	DWORD PTR -156[rbp], 0
	jmp	.L335
.L336:
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -192[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -156[rbp]
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mov	edx, DWORD PTR -156[rbp]
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -144[rbp+rax*8], xmm0
	add	DWORD PTR -156[rbp], 1
.L335:
	mov	eax, DWORD PTR -156[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	jb	.L336
	add	DWORD PTR -160[rbp], 1
.L334:
	mov	eax, DWORD PTR -160[rbp]
	cmp	eax, DWORD PTR -164[rbp]
	jb	.L337
	mov	DWORD PTR -160[rbp], 0
	jmp	.L338
.L341:
	mov	DWORD PTR -156[rbp], 0
	jmp	.L339
.L340:
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -192[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -156[rbp]
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -156[rbp], 1
.L339:
	mov	eax, DWORD PTR -156[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	jb	.L340
	add	DWORD PTR -160[rbp], 1
.L338:
	mov	eax, DWORD PTR -160[rbp]
	cmp	eax, DWORD PTR -164[rbp]
	jb	.L341
	mov	DWORD PTR -160[rbp], 0
	jmp	.L342
.L347:
	mov	DWORD PTR -156[rbp], 0
	jmp	.L343
.L346:
	mov	DWORD PTR -152[rbp], 0
	jmp	.L344
.L345:
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -192[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -156[rbp]
	movsd	xmm1, QWORD PTR [rdx+rax*8]
	mov	edx, DWORD PTR -152[rbp]
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 2
	add	rax, rdx
	movsd	xmm2, QWORD PTR -144[rbp+rax*8]
	mov	eax, DWORD PTR -152[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -176[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -156[rbp]
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mulsd	xmm0, xmm2
	mov	eax, DWORD PTR -160[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -192[rbp]
	add	rdx, rax
	addsd	xmm0, xmm1
	mov	eax, DWORD PTR -156[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -152[rbp], 1
.L344:
	mov	eax, DWORD PTR -152[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	jb	.L345
	add	DWORD PTR -156[rbp], 1
.L343:
	mov	eax, DWORD PTR -156[rbp]
	cmp	eax, DWORD PTR -168[rbp]
	jb	.L346
	add	DWORD PTR -160[rbp], 1
.L342:
	mov	eax, DWORD PTR -160[rbp]
	cmp	eax, DWORD PTR -164[rbp]
	jb	.L347
	add	DWORD PTR -148[rbp], 1
.L333:
	mov	eax, DWORD PTR -148[rbp]
	cmp	eax, DWORD PTR -180[rbp]
	jb	.L348
	jmp	.L319
.L351:
	nop
.L319:
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L350
	call	__stack_chk_fail@PLT
.L350:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE56:
	.size	double_exp_matrix, .-double_exp_matrix
	.globl	fxp_add_matrix
	.type	fxp_add_matrix, @function
fxp_add_matrix:
.LFB57:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 48
	.cfi_offset 3, -24
	mov	DWORD PTR -28[rbp], edi
	mov	DWORD PTR -32[rbp], esi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	mov	QWORD PTR -56[rbp], r8
	mov	DWORD PTR -16[rbp], 0
	jmp	.L353
.L356:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L354
.L355:
	mov	eax, DWORD PTR -16[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	mov	rdx, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -16[rbp]
	sal	rax, 5
	mov	rcx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR [rcx+rax*8]
	mov	ecx, DWORD PTR -16[rbp]
	mov	rsi, rcx
	sal	rsi, 5
	mov	rcx, QWORD PTR -56[rbp]
	lea	rbx, [rsi+rcx]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	edx, DWORD PTR -12[rbp]
	mov	QWORD PTR [rbx+rdx*8], rax
	add	DWORD PTR -12[rbp], 1
.L354:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jb	.L355
	add	DWORD PTR -16[rbp], 1
.L353:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jb	.L356
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE57:
	.size	fxp_add_matrix, .-fxp_add_matrix
	.globl	fxp_sub_matrix
	.type	fxp_sub_matrix, @function
fxp_sub_matrix:
.LFB58:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 48
	.cfi_offset 3, -24
	mov	DWORD PTR -28[rbp], edi
	mov	DWORD PTR -32[rbp], esi
	mov	QWORD PTR -40[rbp], rdx
	mov	QWORD PTR -48[rbp], rcx
	mov	QWORD PTR -56[rbp], r8
	mov	DWORD PTR -16[rbp], 0
	jmp	.L358
.L361:
	mov	DWORD PTR -12[rbp], 0
	jmp	.L359
.L360:
	mov	eax, DWORD PTR -16[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	mov	rdx, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -16[rbp]
	sal	rax, 5
	mov	rcx, rax
	mov	rax, QWORD PTR -40[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -12[rbp]
	mov	rax, QWORD PTR [rcx+rax*8]
	mov	ecx, DWORD PTR -16[rbp]
	mov	rsi, rcx
	sal	rsi, 5
	mov	rcx, QWORD PTR -56[rbp]
	lea	rbx, [rsi+rcx]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	edx, DWORD PTR -12[rbp]
	mov	QWORD PTR [rbx+rdx*8], rax
	add	DWORD PTR -12[rbp], 1
.L359:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jb	.L360
	add	DWORD PTR -16[rbp], 1
.L358:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jb	.L361
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE58:
	.size	fxp_sub_matrix, .-fxp_sub_matrix
	.section	.rodata
	.align 8
.LC26:
	.string	"\nMatrix\n=====================\n"
.LC27:
	.string	"#matrix[%d][%d]: %2.2f "
	.text
	.globl	print_matrix
	.type	print_matrix, @function
print_matrix:
.LFB59:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	DWORD PTR -28[rbp], esi
	mov	DWORD PTR -32[rbp], edx
	lea	rdi, .LC26[rip]
	call	puts@PLT
	mov	DWORD PTR -8[rbp], 0
	jmp	.L363
.L366:
	mov	DWORD PTR -4[rbp], 0
	jmp	.L364
.L365:
	mov	eax, DWORD PTR -8[rbp]
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	mov	rcx, QWORD PTR [rdx+rax*8]
	mov	edx, DWORD PTR -4[rbp]
	mov	eax, DWORD PTR -8[rbp]
	movq	xmm0, rcx
	mov	esi, eax
	lea	rdi, .LC27[rip]
	mov	eax, 1
	call	printf@PLT
	add	DWORD PTR -4[rbp], 1
.L364:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -32[rbp]
	jb	.L365
	mov	edi, 10
	call	putchar@PLT
	add	DWORD PTR -8[rbp], 1
.L363:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -28[rbp]
	jb	.L366
	mov	edi, 10
	call	putchar@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE59:
	.size	print_matrix, .-print_matrix
	.globl	determinant
	.type	determinant, @function
determinant:
.LFB60:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 208
	mov	QWORD PTR -184[rbp], rdi
	mov	DWORD PTR -188[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	pxor	xmm0, xmm0
	movsd	QWORD PTR -152[rbp], xmm0
	cmp	DWORD PTR -188[rbp], 0
	jle	.L368
	cmp	DWORD PTR -188[rbp], 1
	jne	.L369
	mov	rax, QWORD PTR -184[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -152[rbp], xmm0
	jmp	.L368
.L369:
	cmp	DWORD PTR -188[rbp], 2
	jne	.L370
	mov	rax, QWORD PTR -184[rbp]
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -184[rbp]
	add	rax, 32
	movsd	xmm0, QWORD PTR 8[rax]
	mulsd	xmm0, xmm1
	mov	rax, QWORD PTR -184[rbp]
	add	rax, 32
	movsd	xmm2, QWORD PTR [rax]
	mov	rax, QWORD PTR -184[rbp]
	movsd	xmm1, QWORD PTR 8[rax]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	QWORD PTR -152[rbp], xmm0
	jmp	.L368
.L370:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -152[rbp], xmm0
	mov	DWORD PTR -160[rbp], 0
	jmp	.L371
.L380:
	mov	DWORD PTR -168[rbp], 0
	jmp	.L372
.L379:
	mov	DWORD PTR -168[rbp], 1
	jmp	.L373
.L378:
	mov	DWORD PTR -156[rbp], 0
	mov	DWORD PTR -164[rbp], 0
	jmp	.L374
.L377:
	mov	eax, DWORD PTR -164[rbp]
	cmp	eax, DWORD PTR -160[rbp]
	je	.L383
	mov	eax, DWORD PTR -168[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -184[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -168[rbp]
	lea	ecx, -1[rax]
	mov	eax, DWORD PTR -164[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -156[rbp]
	movsx	rdx, eax
	movsx	rax, ecx
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -144[rbp+rax*8], xmm0
	add	DWORD PTR -156[rbp], 1
	jmp	.L376
.L383:
	nop
.L376:
	add	DWORD PTR -164[rbp], 1
.L374:
	mov	eax, DWORD PTR -164[rbp]
	cmp	eax, DWORD PTR -188[rbp]
	jl	.L377
	add	DWORD PTR -168[rbp], 1
.L373:
	mov	eax, DWORD PTR -168[rbp]
	cmp	eax, DWORD PTR -188[rbp]
	jl	.L378
	add	DWORD PTR -168[rbp], 1
.L372:
	mov	eax, DWORD PTR -188[rbp]
	sub	eax, 1
	cmp	DWORD PTR -168[rbp], eax
	jl	.L379
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -160[rbp]
	movsd	xmm0, QWORD PTR .LC7[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC7[rip]
	addsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC15[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	internal_pow
	mov	rax, QWORD PTR -184[rbp]
	mov	edx, DWORD PTR -160[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -200[rbp], xmm0
	mov	eax, DWORD PTR -188[rbp]
	lea	edx, -1[rax]
	lea	rax, -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	determinant
	mulsd	xmm0, QWORD PTR -200[rbp]
	movsd	xmm1, QWORD PTR -152[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -152[rbp], xmm0
	add	DWORD PTR -160[rbp], 1
.L371:
	mov	eax, DWORD PTR -160[rbp]
	cmp	eax, DWORD PTR -188[rbp]
	jl	.L380
.L368:
	movsd	xmm0, QWORD PTR -152[rbp]
	movq	rax, xmm0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L382
	call	__stack_chk_fail@PLT
.L382:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE60:
	.size	determinant, .-determinant
	.globl	fxp_determinant
	.type	fxp_determinant, @function
fxp_determinant:
.LFB61:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 336
	mov	QWORD PTR -312[rbp], rdi
	mov	DWORD PTR -316[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -296[rbp], 0
	jmp	.L385
.L388:
	mov	DWORD PTR -292[rbp], 0
	jmp	.L386
.L387:
	mov	eax, DWORD PTR -296[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -312[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -292[rbp]
	cdqe
	mov	rax, QWORD PTR [rdx+rax*8]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	edx, DWORD PTR -292[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -296[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -272[rbp+rdx*8], rax
	add	DWORD PTR -292[rbp], 1
.L386:
	mov	eax, DWORD PTR -292[rbp]
	cmp	eax, DWORD PTR -316[rbp]
	jl	.L387
	add	DWORD PTR -296[rbp], 1
.L385:
	mov	eax, DWORD PTR -296[rbp]
	cmp	eax, DWORD PTR -316[rbp]
	jl	.L388
	pxor	xmm0, xmm0
	movsd	QWORD PTR -280[rbp], xmm0
	cmp	DWORD PTR -316[rbp], 0
	jle	.L389
	cmp	DWORD PTR -316[rbp], 1
	jne	.L390
	movsd	xmm0, QWORD PTR -272[rbp]
	movsd	QWORD PTR -280[rbp], xmm0
	jmp	.L389
.L390:
	cmp	DWORD PTR -316[rbp], 2
	jne	.L391
	movsd	xmm1, QWORD PTR -272[rbp]
	movsd	xmm0, QWORD PTR -232[rbp]
	mulsd	xmm0, xmm1
	movsd	xmm2, QWORD PTR -240[rbp]
	movsd	xmm1, QWORD PTR -264[rbp]
	mulsd	xmm1, xmm2
	subsd	xmm0, xmm1
	movsd	QWORD PTR -280[rbp], xmm0
	jmp	.L389
.L391:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -280[rbp], xmm0
	mov	DWORD PTR -288[rbp], 0
	jmp	.L392
.L401:
	mov	DWORD PTR -296[rbp], 0
	jmp	.L393
.L400:
	mov	DWORD PTR -296[rbp], 1
	jmp	.L394
.L399:
	mov	DWORD PTR -284[rbp], 0
	mov	DWORD PTR -292[rbp], 0
	jmp	.L395
.L398:
	mov	eax, DWORD PTR -292[rbp]
	cmp	eax, DWORD PTR -288[rbp]
	je	.L404
	mov	eax, DWORD PTR -296[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -292[rbp]
	movsx	rcx, eax
	mov	eax, DWORD PTR -296[rbp]
	cdqe
	sal	rax, 2
	add	rax, rcx
	movsd	xmm0, QWORD PTR -272[rbp+rax*8]
	mov	eax, DWORD PTR -284[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	sal	rax, 2
	add	rax, rcx
	movsd	QWORD PTR -144[rbp+rax*8], xmm0
	add	DWORD PTR -284[rbp], 1
	jmp	.L397
.L404:
	nop
.L397:
	add	DWORD PTR -292[rbp], 1
.L395:
	mov	eax, DWORD PTR -292[rbp]
	cmp	eax, DWORD PTR -316[rbp]
	jl	.L398
	add	DWORD PTR -296[rbp], 1
.L394:
	mov	eax, DWORD PTR -296[rbp]
	cmp	eax, DWORD PTR -316[rbp]
	jl	.L399
	add	DWORD PTR -296[rbp], 1
.L393:
	mov	eax, DWORD PTR -316[rbp]
	sub	eax, 1
	cmp	DWORD PTR -296[rbp], eax
	jl	.L400
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -288[rbp]
	movsd	xmm0, QWORD PTR .LC7[rip]
	addsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC7[rip]
	addsd	xmm0, xmm1
	mov	rax, QWORD PTR .LC15[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	internal_pow
	mov	eax, DWORD PTR -288[rbp]
	cdqe
	movsd	xmm1, QWORD PTR -272[rbp+rax*8]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -328[rbp], xmm0
	mov	eax, DWORD PTR -316[rbp]
	lea	edx, -1[rax]
	lea	rax, -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	determinant
	mulsd	xmm0, QWORD PTR -328[rbp]
	movsd	xmm1, QWORD PTR -280[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -280[rbp], xmm0
	add	DWORD PTR -288[rbp], 1
.L392:
	mov	eax, DWORD PTR -288[rbp]
	cmp	eax, DWORD PTR -316[rbp]
	jl	.L401
.L389:
	movsd	xmm0, QWORD PTR -280[rbp]
	movq	rax, xmm0
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L403
	call	__stack_chk_fail@PLT
.L403:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE61:
	.size	fxp_determinant, .-fxp_determinant
	.globl	transpose
	.type	transpose, @function
transpose:
.LFB62:
	.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 -8[rbp], 0
	jmp	.L406
.L409:
	mov	DWORD PTR -4[rbp], 0
	jmp	.L407
.L408:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, [rdx+rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rcx+rax*8]
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -4[rbp], 1
.L407:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -40[rbp]
	jl	.L408
	add	DWORD PTR -8[rbp], 1
.L406:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jl	.L409
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE62:
	.size	transpose, .-transpose
	.globl	fxp_transpose
	.type	fxp_transpose, @function
fxp_transpose:
.LFB63:
	.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 -8[rbp], 0
	jmp	.L411
.L414:
	mov	DWORD PTR -4[rbp], 0
	jmp	.L412
.L413:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	sal	rax, 5
	mov	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 5
	mov	rcx, rax
	mov	rax, QWORD PTR -32[rbp]
	add	rcx, rax
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	mov	rdx, QWORD PTR [rdx+rax*8]
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	mov	QWORD PTR [rcx+rax*8], rdx
	add	DWORD PTR -4[rbp], 1
.L412:
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -40[rbp]
	jl	.L413
	add	DWORD PTR -8[rbp], 1
.L411:
	mov	eax, DWORD PTR -8[rbp]
	cmp	eax, DWORD PTR -36[rbp]
	jl	.L414
	nop
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE63:
	.size	fxp_transpose, .-fxp_transpose
	.globl	generic_timing_shift_l_double
	.type	generic_timing_shift_l_double, @function
generic_timing_shift_l_double:
.LFB64:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -24[rbp], xmm0
	mov	QWORD PTR -32[rbp], rdi
	mov	DWORD PTR -36[rbp], esi
	mov	eax, DWORD PTR hw[rip+24]
	lea	ecx, [rax+rax]
	mov	edx, DWORD PTR hw[rip+28]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+32]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+44]
	sal	eax, 3
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, edx
	sal	eax, 2
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+84]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+44]
	sal	eax, 2
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+92]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	eax, DWORD PTR hw[rip+44]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	DWORD PTR -12[rbp], 0
	jmp	.L416
.L417:
	mov	eax, DWORD PTR hw[rip+48]
	mov	edx, eax
	sal	edx, 4
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+60]
	sal	eax, 2
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+64]
	sal	eax, 2
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+68]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+72]
	add	eax, eax
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+84]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	eax, eax
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+76]
	add	eax, eax
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+92]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+124]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+52]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+88]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+100]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+104]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+128]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -12[rbp], 1
.L416:
	mov	eax, DWORD PTR -36[rbp]
	sub	eax, 1
	cmp	DWORD PTR -12[rbp], eax
	jl	.L417
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 2
	mov	ecx, eax
	mov	edx, DWORD PTR hw[rip+84]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	eax, eax
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+60]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+64]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+72]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+68]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+52]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+56]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+124]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+28]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+116]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+120]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE64:
	.size	generic_timing_shift_l_double, .-generic_timing_shift_l_double
	.globl	generic_timing_shift_r_double
	.type	generic_timing_shift_r_double, @function
generic_timing_shift_r_double:
.LFB65:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -24[rbp], xmm0
	mov	QWORD PTR -32[rbp], rdi
	mov	DWORD PTR -36[rbp], esi
	mov	eax, DWORD PTR hw[rip+24]
	lea	ecx, [rax+rax]
	mov	edx, DWORD PTR hw[rip+28]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+32]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+44]
	sal	eax, 3
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, edx
	sal	eax, 3
	sub	eax, edx
	mov	ecx, eax
	mov	eax, DWORD PTR hw[rip+64]
	add	eax, eax
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+60]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+84]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+44]
	sal	eax, 2
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+68]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+72]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+92]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+52]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+56]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, DWORD PTR hw[rip+44]
	add	eax, edx
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+32]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	eax, DWORD PTR -36[rbp]
	sub	eax, 1
	mov	DWORD PTR -12[rbp], eax
	jmp	.L420
.L421:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, edx
	sal	eax, 4
	sub	eax, edx
	mov	ecx, eax
	mov	eax, DWORD PTR hw[rip+60]
	sal	eax, 2
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+64]
	sal	eax, 2
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+68]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+72]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+84]
	sal	eax, 2
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+52]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+56]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+92]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+124]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+32]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+100]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+104]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+128]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	sub	DWORD PTR -12[rbp], 1
.L420:
	cmp	DWORD PTR -12[rbp], 0
	jg	.L421
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	mov	ecx, eax
	mov	edx, DWORD PTR hw[rip+84]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+116]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+120]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+120]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+28]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+124]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE65:
	.size	generic_timing_shift_r_double, .-generic_timing_shift_r_double
	.globl	shiftL
	.type	shiftL, @function
shiftL:
.LFB66:
	.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	rax, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -12[rbp], 0
	jmp	.L424
.L425:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -12[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -32[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	add	DWORD PTR -12[rbp], 1
.L424:
	mov	eax, DWORD PTR -36[rbp]
	sub	eax, 1
	cmp	DWORD PTR -12[rbp], eax
	jl	.L425
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE66:
	.size	shiftL, .-shiftL
	.globl	shiftR
	.type	shiftR, @function
shiftR:
.LFB67:
	.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	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -36[rbp]
	sub	eax, 1
	mov	DWORD PTR -12[rbp], eax
	jmp	.L428
.L429:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -12[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -32[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	sub	DWORD PTR -12[rbp], 1
.L428:
	cmp	DWORD PTR -12[rbp], 0
	jg	.L429
	mov	rax, QWORD PTR -32[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -8[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE67:
	.size	shiftR, .-shiftR
	.globl	shiftLfloat
	.type	shiftLfloat, @function
shiftLfloat:
.LFB68:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -20[rbp], xmm0
	mov	QWORD PTR -32[rbp], rdi
	mov	DWORD PTR -24[rbp], esi
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -4[rbp], xmm0
	mov	DWORD PTR -8[rbp], 0
	jmp	.L432
.L433:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -8[rbp], 1
.L432:
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	cmp	DWORD PTR -8[rbp], eax
	jl	.L433
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR -4[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE68:
	.size	shiftLfloat, .-shiftLfloat
	.globl	shiftRfloat
	.type	shiftRfloat, @function
shiftRfloat:
.LFB69:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -20[rbp], xmm0
	mov	QWORD PTR -32[rbp], rdi
	mov	DWORD PTR -24[rbp], esi
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -4[rbp], xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	mov	DWORD PTR -8[rbp], eax
	jmp	.L436
.L437:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	sub	DWORD PTR -8[rbp], 1
.L436:
	cmp	DWORD PTR -8[rbp], 0
	jg	.L437
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR -4[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE69:
	.size	shiftRfloat, .-shiftRfloat
	.globl	shiftRDdouble
	.type	shiftRDdouble, @function
shiftRDdouble:
.LFB70:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -24[rbp], xmm0
	mov	QWORD PTR -32[rbp], rdi
	mov	DWORD PTR -36[rbp], esi
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -12[rbp], 0
	jmp	.L440
.L441:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -12[rbp], 1
.L440:
	mov	eax, DWORD PTR -36[rbp]
	sub	eax, 1
	cmp	DWORD PTR -12[rbp], eax
	jl	.L441
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR [rax], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE70:
	.size	shiftRDdouble, .-shiftRDdouble
	.globl	shiftRdouble
	.type	shiftRdouble, @function
shiftRdouble:
.LFB71:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -24[rbp], xmm0
	mov	QWORD PTR -32[rbp], rdi
	mov	DWORD PTR -36[rbp], esi
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	eax, DWORD PTR -36[rbp]
	sub	eax, 1
	mov	DWORD PTR -12[rbp], eax
	jmp	.L444
.L445:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	sub	DWORD PTR -12[rbp], 1
.L444:
	cmp	DWORD PTR -12[rbp], 0
	jg	.L445
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR [rax], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE71:
	.size	shiftRdouble, .-shiftRdouble
	.globl	shiftLDouble
	.type	shiftLDouble, @function
shiftLDouble:
.LFB72:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movsd	QWORD PTR -24[rbp], xmm0
	mov	QWORD PTR -32[rbp], rdi
	mov	DWORD PTR -36[rbp], esi
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -12[rbp], 0
	jmp	.L448
.L449:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -12[rbp], 1
.L448:
	mov	eax, DWORD PTR -36[rbp]
	sub	eax, 1
	cmp	DWORD PTR -12[rbp], eax
	jl	.L449
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR [rax], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE72:
	.size	shiftLDouble, .-shiftLDouble
	.globl	shiftLboth
	.type	shiftLboth, @function
shiftLboth:
.LFB73:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -20[rbp], xmm0
	mov	QWORD PTR -32[rbp], rdi
	mov	QWORD PTR -40[rbp], rsi
	mov	QWORD PTR -48[rbp], rdx
	mov	DWORD PTR -24[rbp], ecx
	mov	rax, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -12[rbp], xmm0
	mov	DWORD PTR -16[rbp], 0
	jmp	.L452
.L453:
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -16[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -48[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -16[rbp], 1
.L452:
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	cmp	DWORD PTR -16[rbp], eax
	jl	.L453
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -48[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR [rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE73:
	.size	shiftLboth, .-shiftLboth
	.globl	shiftRboth
	.type	shiftRboth, @function
shiftRboth:
.LFB74:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -20[rbp], xmm0
	mov	QWORD PTR -32[rbp], rdi
	mov	QWORD PTR -40[rbp], rsi
	mov	QWORD PTR -48[rbp], rdx
	mov	DWORD PTR -24[rbp], ecx
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	movss	DWORD PTR -12[rbp], xmm0
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, 1
	mov	DWORD PTR -16[rbp], eax
	jmp	.L455
.L456:
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -16[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -48[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -32[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -32[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	sub	DWORD PTR -16[rbp], 1
.L455:
	cmp	DWORD PTR -16[rbp], 0
	jg	.L456
	mov	rax, QWORD PTR -48[rbp]
	mov	rdx, QWORD PTR -40[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -32[rbp]
	movss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR [rax], xmm0
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE74:
	.size	shiftRboth, .-shiftRboth
	.globl	order
	.type	order, @function
order:
.LFB75:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	DWORD PTR -8[rbp], esi
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -8[rbp]
	jle	.L458
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	jmp	.L460
.L458:
	mov	eax, DWORD PTR -8[rbp]
	sub	eax, 1
.L460:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE75:
	.size	order, .-order
	.globl	fxp_check_limit_cycle
	.type	fxp_check_limit_cycle, @function
fxp_check_limit_cycle:
.LFB76:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	DWORD PTR -44[rbp], esi
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -28[rbp], 0
	mov	DWORD PTR -24[rbp], 1
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, 2
	mov	DWORD PTR -28[rbp], eax
	jmp	.L462
.L466:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	cmp	QWORD PTR -8[rbp], rax
	je	.L473
	add	DWORD PTR -24[rbp], 1
	sub	DWORD PTR -28[rbp], 1
.L462:
	cmp	DWORD PTR -28[rbp], 0
	jns	.L466
	jmp	.L465
.L473:
	nop
.L465:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	je	.L467
	cmp	DWORD PTR -24[rbp], 1
	je	.L467
	mov	eax, 1
	jmp	.L468
.L467:
	mov	eax, 0
.L468:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	eax, DWORD PTR -24[rbp]
	mov	esi, eax
	lea	rdi, .LC20[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -24[rbp]
	add	eax, eax
	mov	DWORD PTR -16[rbp], eax
	mov	DWORD PTR -20[rbp], 0
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, 1
	mov	DWORD PTR -28[rbp], eax
	jmp	.L469
.L472:
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, DWORD PTR -24[rbp]
	cmp	DWORD PTR -28[rbp], eax
	jl	.L470
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, DWORD PTR -24[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rax
	lea	rdi, .LC21[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, DWORD PTR -24[rbp]
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	jle	.L471
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, DWORD PTR -24[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	cmp	rdx, rax
	jne	.L471
	add	DWORD PTR -20[rbp], 2
.L470:
	sub	DWORD PTR -28[rbp], 1
.L469:
	cmp	DWORD PTR -28[rbp], 0
	jns	.L472
.L471:
	cmp	DWORD PTR -20[rbp], 0
	setg	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	eax, DWORD PTR -16[rbp]
	mov	esi, eax
	lea	rdi, .LC22[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -20[rbp]
	mov	esi, eax
	lea	rdi, .LC23[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -16[rbp]
	sete	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	edi, 0
	call	__DSVERIFIER_assert
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE76:
	.size	fxp_check_limit_cycle, .-fxp_check_limit_cycle
	.globl	fxp_check_persistent_limit_cycle
	.type	fxp_check_persistent_limit_cycle, @function
fxp_check_persistent_limit_cycle:
.LFB77:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 88
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	QWORD PTR -120[rbp], rdi
	mov	DWORD PTR -124[rbp], esi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -92[rbp], 0
	mov	DWORD PTR -96[rbp], 0
	mov	DWORD PTR -88[rbp], 0
	mov	rax, QWORD PTR -120[rbp]
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR -80[rbp], rax
	mov	DWORD PTR -92[rbp], 0
	jmp	.L475
.L480:
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	cmp	QWORD PTR -80[rbp], rax
	je	.L476
	add	DWORD PTR -88[rbp], 1
	jmp	.L477
.L476:
	cmp	DWORD PTR -88[rbp], 0
	jne	.L496
	add	DWORD PTR -96[rbp], 1
.L477:
	add	DWORD PTR -92[rbp], 1
.L475:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L480
	jmp	.L479
.L496:
	nop
.L479:
	mov	eax, DWORD PTR -96[rbp]
	add	DWORD PTR -88[rbp], eax
	cmp	DWORD PTR -88[rbp], 1
	jle	.L481
	mov	eax, DWORD PTR -124[rbp]
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	cmp	DWORD PTR -88[rbp], eax
	jg	.L481
	mov	eax, 1
	jmp	.L482
.L481:
	mov	eax, 0
.L482:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	eax, DWORD PTR -88[rbp]
	mov	rdx, rsp
	mov	rbx, rdx
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	movsx	rdx, eax
	mov	r12, rdx
	mov	r13d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L483:
	cmp	rsp, rdx
	je	.L484
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L483
.L484:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L485
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L485:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	DWORD PTR -92[rbp], 0
	jmp	.L486
.L488:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jge	.L487
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	mov	rcx, QWORD PTR [rax]
	mov	rax, QWORD PTR -64[rbp]
	mov	edx, DWORD PTR -92[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], rcx
.L487:
	add	DWORD PTR -92[rbp], 1
.L486:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L488
	mov	DWORD PTR -92[rbp], 0
	mov	DWORD PTR -84[rbp], 0
	mov	BYTE PTR -97[rbp], 0
	jmp	.L489
.L493:
	mov	eax, DWORD PTR -92[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -92[rbp], edx
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	mov	rcx, QWORD PTR [rax]
	mov	eax, DWORD PTR -84[rbp]
	lea	edx, 1[rax]
	mov	DWORD PTR -84[rbp], edx
	mov	rdx, QWORD PTR -64[rbp]
	cdqe
	mov	rax, QWORD PTR [rdx+rax*8]
	cmp	rcx, rax
	jne	.L490
	mov	BYTE PTR -97[rbp], 1
	mov	eax, DWORD PTR -84[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jne	.L489
	jmp	.L495
.L490:
	mov	BYTE PTR -97[rbp], 0
	jmp	.L492
.L495:
	mov	DWORD PTR -84[rbp], 0
.L489:
	mov	eax, DWORD PTR -92[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L493
.L492:
	movzx	eax, BYTE PTR -97[rbp]
	test	eax, eax
	setne	al
	xor	eax, 1
	movzx	eax, al
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	mov	rsp, rbx
	nop
	mov	rax, QWORD PTR -56[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L494
	call	__stack_chk_fail@PLT
.L494:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE77:
	.size	fxp_check_persistent_limit_cycle, .-fxp_check_persistent_limit_cycle
	.globl	fxp_check_oscillations
	.type	fxp_check_oscillations, @function
fxp_check_oscillations:
.LFB78:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	DWORD PTR -44[rbp], esi
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 3
	lea	rcx, -8[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	cmp	rdx, rax
	je	.L498
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	rax, 3
	lea	rcx, -16[rax]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	cmp	rdx, rax
	je	.L498
	mov	eax, 1
	jmp	.L499
.L498:
	mov	eax, 0
.L499:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	DWORD PTR -24[rbp], 0
	mov	DWORD PTR -20[rbp], 0
	mov	DWORD PTR -16[rbp], 2
	jmp	.L500
.L507:
	mov	eax, DWORD PTR -16[rbp]
	mov	DWORD PTR -8[rbp], eax
	mov	DWORD PTR -12[rbp], 0
	jmp	.L501
.L506:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -8[rbp]
	jle	.L502
	mov	DWORD PTR -24[rbp], 0
	mov	DWORD PTR -20[rbp], 0
.L502:
	mov	edx, DWORD PTR -12[rbp]
	mov	eax, DWORD PTR -8[rbp]
	add	eax, edx
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jge	.L508
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	cmp	rdx, rax
	jne	.L504
	add	DWORD PTR -20[rbp], 1
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -8[rbp]
	setne	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
.L504:
	add	DWORD PTR -24[rbp], 1
	add	DWORD PTR -12[rbp], 1
.L501:
	mov	eax, DWORD PTR -12[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jl	.L506
	jmp	.L505
.L508:
	nop
.L505:
	add	DWORD PTR -16[rbp], 1
.L500:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jl	.L507
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE78:
	.size	fxp_check_oscillations, .-fxp_check_oscillations
	.globl	fxp_ln
	.type	fxp_ln, @function
fxp_ln:
.LFB79:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -20[rbp], edi
	mov	DWORD PTR -8[rbp], 681391
	cmp	DWORD PTR -20[rbp], 32767
	jg	.L510
	sal	DWORD PTR -20[rbp], 16
	sub	DWORD PTR -8[rbp], 726817
.L510:
	cmp	DWORD PTR -20[rbp], 8388607
	jg	.L511
	sal	DWORD PTR -20[rbp], 8
	sub	DWORD PTR -8[rbp], 363409
.L511:
	cmp	DWORD PTR -20[rbp], 134217727
	jg	.L512
	sal	DWORD PTR -20[rbp], 4
	sub	DWORD PTR -8[rbp], 181704
.L512:
	cmp	DWORD PTR -20[rbp], 536870911
	jg	.L513
	sal	DWORD PTR -20[rbp], 2
	sub	DWORD PTR -8[rbp], 90852
.L513:
	cmp	DWORD PTR -20[rbp], 1073741823
	jg	.L514
	sal	DWORD PTR -20[rbp]
	sub	DWORD PTR -8[rbp], 45426
.L514:
	mov	eax, DWORD PTR -20[rbp]
	sar	eax
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	add	eax, edx
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	js	.L515
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR -20[rbp], eax
	sub	DWORD PTR -8[rbp], 26573
.L515:
	mov	eax, DWORD PTR -20[rbp]
	sar	eax, 2
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	add	eax, edx
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	js	.L516
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR -20[rbp], eax
	sub	DWORD PTR -8[rbp], 14624
.L516:
	mov	eax, DWORD PTR -20[rbp]
	sar	eax, 3
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	add	eax, edx
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	js	.L517
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR -20[rbp], eax
	sub	DWORD PTR -8[rbp], 7719
.L517:
	mov	eax, DWORD PTR -20[rbp]
	sar	eax, 4
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	add	eax, edx
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	js	.L518
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR -20[rbp], eax
	sub	DWORD PTR -8[rbp], 3973
.L518:
	mov	eax, DWORD PTR -20[rbp]
	sar	eax, 5
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	add	eax, edx
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	js	.L519
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR -20[rbp], eax
	sub	DWORD PTR -8[rbp], 2017
.L519:
	mov	eax, DWORD PTR -20[rbp]
	sar	eax, 6
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	add	eax, edx
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	js	.L520
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR -20[rbp], eax
	sub	DWORD PTR -8[rbp], 1016
.L520:
	mov	eax, DWORD PTR -20[rbp]
	sar	eax, 7
	mov	edx, eax
	mov	eax, DWORD PTR -20[rbp]
	add	eax, edx
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	js	.L521
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR -20[rbp], eax
	sub	DWORD PTR -8[rbp], 510
.L521:
	mov	edx, DWORD PTR -20[rbp]
	mov	eax, -2147483648
	sub	eax, edx
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -20[rbp]
	sar	eax, 15
	sub	DWORD PTR -8[rbp], eax
	mov	eax, DWORD PTR -8[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE79:
	.size	fxp_ln, .-fxp_ln
	.globl	fxp_log10_low
	.type	fxp_log10_low, @function
fxp_log10_low:
.LFB80:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 24
	movsd	QWORD PTR -24[rbp], xmm0
	movsd	xmm1, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR .LC28[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC5[rip]
	addsd	xmm0, xmm1
	cvttsd2si	eax, xmm0
	mov	DWORD PTR -12[rbp], eax
	mov	eax, DWORD PTR -12[rbp]
	mov	edi, eax
	call	fxp_ln
	mov	DWORD PTR -8[rbp], eax
	mov	edi, 655360
	call	fxp_ln
	mov	DWORD PTR -4[rbp], eax
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR -8[rbp]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -4[rbp]
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE80:
	.size	fxp_log10_low, .-fxp_log10_low
	.globl	fxp_log10
	.type	fxp_log10, @function
fxp_log10:
.LFB81:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	comisd	xmm0, QWORD PTR .LC29[rip]
	jbe	.L533
	movsd	xmm0, QWORD PTR -8[rbp]
	comisd	xmm0, QWORD PTR .LC30[rip]
	jbe	.L534
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC30[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rax
	call	fxp_log10_low
	movsd	xmm1, QWORD PTR .LC31[rip]
	addsd	xmm0, xmm1
	movq	rax, xmm0
	jmp	.L530
.L534:
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC29[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rax
	call	fxp_log10_low
	movsd	xmm1, QWORD PTR .LC32[rip]
	addsd	xmm0, xmm1
	movq	rax, xmm0
	jmp	.L530
.L533:
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rax
	call	fxp_log10_low
	movq	rax, xmm0
.L530:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE81:
	.size	fxp_log10, .-fxp_log10
	.section	.rodata
	.align 8
.LC33:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/core/functions.h"
.LC34:
	.string	"sv >= nv"
	.text
	.globl	snrVariance
	.type	snrVariance, @function
snrVariance:
.LFB82:
	.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
	pxor	xmm0, xmm0
	movsd	QWORD PTR -40[rbp], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -32[rbp], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -24[rbp], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
	mov	DWORD PTR -44[rbp], 0
	jmp	.L536
.L537:
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR -40[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -40[rbp], xmm0
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR -32[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	add	DWORD PTR -44[rbp], 1
.L536:
	mov	eax, DWORD PTR -44[rbp]
	cmp	eax, DWORD PTR -68[rbp]
	jl	.L537
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -68[rbp]
	movsd	xmm0, QWORD PTR -40[rbp]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -40[rbp], xmm0
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -68[rbp]
	movsd	xmm0, QWORD PTR -32[rbp]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	mov	DWORD PTR -44[rbp], 0
	jmp	.L538
.L539:
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movapd	xmm1, xmm0
	subsd	xmm1, QWORD PTR -40[rbp]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	subsd	xmm0, QWORD PTR -40[rbp]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	movapd	xmm1, xmm0
	subsd	xmm1, QWORD PTR -32[rbp]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	cvtss2sd	xmm0, xmm0
	subsd	xmm0, QWORD PTR -32[rbp]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -16[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	add	DWORD PTR -44[rbp], 1
.L538:
	mov	eax, DWORD PTR -44[rbp]
	cmp	eax, DWORD PTR -68[rbp]
	jl	.L539
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -16[rbp]
	jp	.L544
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -16[rbp]
	je	.L545
.L544:
	movsd	xmm0, QWORD PTR -24[rbp]
	comisd	xmm0, QWORD PTR -16[rbp]
	jnb	.L542
	lea	rcx, __PRETTY_FUNCTION__.18[rip]
	mov	edx, 373
	lea	rsi, .LC33[rip]
	lea	rdi, .LC34[rip]
	call	__assert_fail@PLT
.L542:
	movsd	xmm0, QWORD PTR -24[rbp]
	divsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	cvtsd2ss	xmm0, QWORD PTR -8[rbp]
	jmp	.L543
.L545:
	movss	xmm0, DWORD PTR .LC35[rip]
.L543:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE82:
	.size	snrVariance, .-snrVariance
	.globl	snrPower
	.type	snrPower, @function
snrPower:
.LFB83:
	.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	DWORD PTR -52[rbp], edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -24[rbp], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
	mov	DWORD PTR -28[rbp], 0
	jmp	.L547
.L548:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	xmm1, QWORD PTR -16[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	add	DWORD PTR -28[rbp], 1
.L547:
	mov	eax, DWORD PTR -28[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L548
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -16[rbp]
	jp	.L553
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -16[rbp]
	je	.L554
.L553:
	movsd	xmm0, QWORD PTR -24[rbp]
	comisd	xmm0, QWORD PTR -16[rbp]
	jnb	.L551
	lea	rcx, __PRETTY_FUNCTION__.17[rip]
	mov	edx, 394
	lea	rsi, .LC33[rip]
	lea	rdi, .LC34[rip]
	call	__assert_fail@PLT
.L551:
	movsd	xmm0, QWORD PTR -24[rbp]
	divsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	cvtsd2ss	xmm0, QWORD PTR -8[rbp]
	jmp	.L552
.L554:
	movss	xmm0, DWORD PTR .LC35[rip]
.L552:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE83:
	.size	snrPower, .-snrPower
	.section	.rodata
.LC38:
	.string	"power >= 1.0f"
	.text
	.globl	snrPoint
	.type	snrPoint, @function
snrPoint:
.LFB84:
	.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	DWORD PTR -52[rbp], edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -20[rbp], 0
	jmp	.L556
.L563:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L557
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	je	.L565
.L557:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -48[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	divss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	comisd	xmm0, QWORD PTR .LC36[rip]
	ja	.L566
	movsd	xmm0, QWORD PTR .LC37[rip]
	comisd	xmm0, QWORD PTR -16[rbp]
	ja	.L566
	movsd	xmm0, QWORD PTR -16[rbp]
	mulsd	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC7[rip]
	comisd	xmm0, xmm1
	jnb	.L559
	lea	rcx, __PRETTY_FUNCTION__.16[rip]
	mov	edx, 412
	lea	rsi, .LC33[rip]
	lea	rdi, .LC38[rip]
	call	__assert_fail@PLT
.L565:
	nop
	jmp	.L559
.L566:
	nop
.L559:
	add	DWORD PTR -20[rbp], 1
.L556:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -52[rbp]
	jl	.L563
	movss	xmm0, DWORD PTR .LC35[rip]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE84:
	.size	snrPoint, .-snrPoint
	.globl	next
	.data
	.align 8
	.type	next, @object
	.size	next, 8
next:
	.quad	1
	.text
	.globl	rand
	.type	rand, @function
rand:
.LFB85:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	rax, QWORD PTR next[rip]
	imul	rax, rax, 1103515245
	add	rax, 12345
	mov	QWORD PTR next[rip], rax
	mov	rax, QWORD PTR next[rip]
	shr	rax, 16
	and	eax, 32767
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE85:
	.size	rand, .-rand
	.globl	srand
	.type	srand, @function
srand:
.LFB86:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	QWORD PTR next[rip], rax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE86:
	.size	srand, .-srand
	.section	.rodata
	.align 8
.LC41:
	.string	"(double)timer1*CYCLE <= (double)DEADLINE"
	.text
	.globl	iirIIOutTime
	.type	iirIIOutTime, @function
iirIIOutTime:
.LFB87:
	.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
	movss	DWORD PTR -60[rbp], xmm0
	mov	QWORD PTR -72[rbp], rsi
	mov	QWORD PTR -80[rbp], rdx
	mov	DWORD PTR -64[rbp], ecx
	mov	DWORD PTR -84[rbp], r8d
	mov	DWORD PTR -40[rbp], 0
	pxor	xmm0, xmm0
	movss	DWORD PTR -36[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 4
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	mov	QWORD PTR -8[rbp], rax
	add	DWORD PTR -40[rbp], 71
	mov	DWORD PTR -28[rbp], 1
	jmp	.L571
.L572:
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -24[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	subss	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -40[rbp], 54
	add	DWORD PTR -28[rbp], 1
.L571:
	mov	eax, DWORD PTR -28[rbp]
	cmp	eax, DWORD PTR -64[rbp]
	jl	.L572
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	addss	xmm0, DWORD PTR -60[rbp]
	mov	rax, QWORD PTR -56[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -32[rbp], 0
	jmp	.L573
.L574:
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -36[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -36[rbp], xmm0
	add	DWORD PTR -40[rbp], 46
	add	DWORD PTR -32[rbp], 1
.L573:
	mov	eax, DWORD PTR -32[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L574
	add	DWORD PTR -40[rbp], 38
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR -40[rbp]
	movsd	xmm2, QWORD PTR .LC39[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR .LC40[rip]
	comisd	xmm0, xmm1
	jnb	.L575
	lea	rcx, __PRETTY_FUNCTION__.15[rip]
	mov	edx, 450
	lea	rsi, .LC33[rip]
	lea	rdi, .LC41[rip]
	call	__assert_fail@PLT
.L575:
	movss	xmm0, DWORD PTR -36[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE87:
	.size	iirIIOutTime, .-iirIIOutTime
	.globl	iirIItOutTime
	.type	iirIItOutTime, @function
iirIItOutTime:
.LFB88:
	.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 -40[rbp], rdi
	movss	DWORD PTR -44[rbp], xmm0
	mov	QWORD PTR -56[rbp], rsi
	mov	QWORD PTR -64[rbp], rdx
	mov	DWORD PTR -48[rbp], ecx
	mov	DWORD PTR -68[rbp], r8d
	mov	DWORD PTR -32[rbp], 0
	pxor	xmm0, xmm0
	movss	DWORD PTR -24[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -64[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -48[rbp]
	cmp	DWORD PTR -68[rbp], eax
	cmovge	eax, DWORD PTR -68[rbp]
	mov	DWORD PTR -20[rbp], eax
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -44[rbp]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR [rax]
	addss	xmm0, xmm1
	movss	DWORD PTR -24[rbp], xmm0
	add	DWORD PTR -32[rbp], 105
	mov	DWORD PTR -28[rbp], 0
	jmp	.L578
.L581:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -48[rbp]
	sub	eax, 1
	cmp	DWORD PTR -28[rbp], eax
	jge	.L579
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -24[rbp]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	subss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -32[rbp], 41
.L579:
	mov	eax, DWORD PTR -68[rbp]
	sub	eax, 1
	cmp	DWORD PTR -28[rbp], eax
	jge	.L580
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -44[rbp]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	addss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -32[rbp], 38
.L580:
	add	DWORD PTR -32[rbp], 54
	add	DWORD PTR -28[rbp], 1
.L578:
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	cmp	DWORD PTR -28[rbp], eax
	jl	.L581
	add	DWORD PTR -32[rbp], 7
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR -32[rbp]
	movsd	xmm2, QWORD PTR .LC39[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR .LC40[rip]
	comisd	xmm0, xmm1
	jnb	.L582
	lea	rcx, __PRETTY_FUNCTION__.14[rip]
	mov	edx, 477
	lea	rsi, .LC33[rip]
	lea	rdi, .LC41[rip]
	call	__assert_fail@PLT
.L582:
	movss	xmm0, DWORD PTR -24[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE88:
	.size	iirIItOutTime, .-iirIItOutTime
	.globl	iirIItOutTime_double
	.type	iirIItOutTime_double, @function
iirIItOutTime_double:
.LFB89:
	.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
	movsd	QWORD PTR -64[rbp], xmm0
	mov	QWORD PTR -72[rbp], rsi
	mov	QWORD PTR -80[rbp], rdx
	mov	DWORD PTR -84[rbp], ecx
	mov	DWORD PTR -88[rbp], r8d
	mov	DWORD PTR -36[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	eax, DWORD PTR -84[rbp]
	cmp	DWORD PTR -88[rbp], eax
	cmovge	eax, DWORD PTR -88[rbp]
	mov	DWORD PTR -28[rbp], eax
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -36[rbp], 105
	mov	DWORD PTR -32[rbp], 0
	jmp	.L585
.L588:
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -84[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jge	.L586
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -36[rbp], 41
.L586:
	mov	eax, DWORD PTR -88[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jge	.L587
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -64[rbp]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -36[rbp], 38
.L587:
	add	DWORD PTR -36[rbp], 54
	add	DWORD PTR -32[rbp], 1
.L585:
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jl	.L588
	add	DWORD PTR -36[rbp], 7
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, DWORD PTR -36[rbp]
	movsd	xmm2, QWORD PTR .LC39[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR .LC40[rip]
	comisd	xmm0, xmm1
	jnb	.L589
	lea	rcx, __PRETTY_FUNCTION__.13[rip]
	mov	edx, 504
	lea	rsi, .LC33[rip]
	lea	rdi, .LC41[rip]
	call	__assert_fail@PLT
.L589:
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE89:
	.size	iirIItOutTime_double, .-iirIItOutTime_double
	.globl	iirOutBoth
	.type	iirOutBoth, @function
iirOutBoth:
.LFB90:
	.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	QWORD PTR -136[rbp], r8
	mov	QWORD PTR -144[rbp], r9
	mov	QWORD PTR -8[rbp], 0
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	rax, QWORD PTR 24[rbp]
	add	rax, 8
	mov	QWORD PTR -72[rbp], rax
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -144[rbp]
	add	rax, rdx
	mov	QWORD PTR -64[rbp], rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR -56[rbp], rax
	mov	eax, DWORD PTR 56[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR 16[rbp]
	add	rax, rdx
	mov	QWORD PTR -48[rbp], rax
	mov	rax, QWORD PTR -120[rbp]
	add	rax, 4
	mov	QWORD PTR -40[rbp], rax
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -128[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR 56[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -80[rbp], 0
	jmp	.L592
.L593:
	mov	rax, QWORD PTR -48[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -48[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -56[rbp]
	lea	rcx, 8[rax]
	mov	QWORD PTR -56[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -24[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -84[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	add	DWORD PTR -80[rbp], 1
.L592:
	mov	eax, DWORD PTR -80[rbp]
	cmp	eax, DWORD PTR 56[rbp]
	jl	.L593
	mov	DWORD PTR -76[rbp], 1
	jmp	.L594
.L595:
	mov	rax, QWORD PTR -64[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -64[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -72[rbp]
	lea	rcx, 8[rax]
	mov	QWORD PTR -72[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -40[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -40[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -32[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	add	DWORD PTR -76[rbp], 1
.L594:
	mov	eax, DWORD PTR -76[rbp]
	cmp	eax, DWORD PTR 48[rbp]
	jl	.L595
	mov	rax, QWORD PTR 40[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR -136[rbp]
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR [rax], xmm0
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE90:
	.size	iirOutBoth, .-iirOutBoth
	.globl	iirOutFixedL
	.type	iirOutFixedL, @function
iirOutFixedL:
.LFB91:
	.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	QWORD PTR -80[rbp], rcx
	mov	QWORD PTR -88[rbp], r8
	mov	DWORD PTR -92[rbp], r9d
	mov	QWORD PTR -8[rbp], 0
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 8
	mov	QWORD PTR -32[rbp], rax
	mov	eax, DWORD PTR 16[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -88[rbp]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -64[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -48[rbp], 0
	jmp	.L597
.L598:
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -48[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -64[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, -8[rax]
	mov	QWORD PTR -24[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -8[rbp], rax
	add	DWORD PTR -48[rbp], 1
.L597:
	mov	eax, DWORD PTR 16[rbp]
	sub	eax, 1
	cmp	DWORD PTR -48[rbp], eax
	jl	.L598
	mov	eax, DWORD PTR 16[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -72[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, -8[rax]
	mov	QWORD PTR -24[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -44[rbp], 1
	jmp	.L599
.L600:
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -32[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	lea	rcx, -8[rax]
	mov	QWORD PTR -40[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -44[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -56[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	add	DWORD PTR -44[rbp], 1
.L599:
	mov	eax, DWORD PTR -92[rbp]
	sub	eax, 1
	cmp	DWORD PTR -44[rbp], eax
	jl	.L600
	cmp	DWORD PTR -92[rbp], 1
	jle	.L601
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -32[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	lea	rcx, -8[rax]
	mov	QWORD PTR -40[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	QWORD PTR -8[rbp], rax
.L601:
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -56[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE91:
	.size	iirOutFixedL, .-iirOutFixedL
	.globl	iirOutFloatL
	.type	iirOutFloatL, @function
iirOutFloatL:
.LFB92:
	.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 -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	movss	DWORD PTR -68[rbp], xmm0
	mov	QWORD PTR -80[rbp], rdx
	mov	QWORD PTR -88[rbp], rcx
	mov	DWORD PTR -72[rbp], r8d
	mov	DWORD PTR -92[rbp], r9d
	pxor	xmm0, xmm0
	movss	DWORD PTR -44[rbp], xmm0
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -88[rbp]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -64[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -40[rbp], 0
	jmp	.L604
.L605:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -64[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -44[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -44[rbp], xmm0
	add	DWORD PTR -40[rbp], 1
.L604:
	mov	eax, DWORD PTR -92[rbp]
	sub	eax, 1
	cmp	DWORD PTR -40[rbp], eax
	jl	.L605
	mov	eax, DWORD PTR -92[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -68[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -44[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -44[rbp], xmm0
	mov	DWORD PTR -36[rbp], 1
	jmp	.L606
.L607:
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -32[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -24[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -44[rbp], xmm0
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -56[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -36[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -36[rbp], 1
.L606:
	mov	eax, DWORD PTR -72[rbp]
	sub	eax, 1
	cmp	DWORD PTR -36[rbp], eax
	jl	.L607
	cmp	DWORD PTR -72[rbp], 1
	jle	.L608
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -32[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -24[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -44[rbp], xmm0
.L608:
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -44[rbp]
	movss	DWORD PTR [rax], xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE92:
	.size	iirOutFloatL, .-iirOutFloatL
	.globl	iirOutBothL
	.type	iirOutBothL, @function
iirOutBothL:
.LFB93:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 152
	mov	QWORD PTR -104[rbp], rdi
	mov	QWORD PTR -112[rbp], rsi
	mov	QWORD PTR -120[rbp], rdx
	mov	QWORD PTR -128[rbp], rcx
	movss	DWORD PTR -132[rbp], xmm0
	mov	QWORD PTR -144[rbp], r8
	mov	QWORD PTR -152[rbp], r9
	mov	QWORD PTR -40[rbp], 0
	mov	eax, DWORD PTR 40[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR 16[rbp]
	add	rax, rdx
	mov	QWORD PTR -72[rbp], rax
	mov	rax, QWORD PTR -144[rbp]
	add	rax, 8
	mov	QWORD PTR -64[rbp], rax
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR 24[rbp]
	add	rax, rdx
	mov	QWORD PTR -56[rbp], rax
	mov	rax, QWORD PTR -152[rbp]
	mov	QWORD PTR -48[rbp], rax
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR 40[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 4
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -128[rbp]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -112[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -80[rbp], 0
	jmp	.L611
.L612:
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -152[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -80[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -152[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -48[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -48[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -56[rbp]
	lea	rcx, -8[rax]
	mov	QWORD PTR -56[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -40[rbp], rax
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -112[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -84[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	add	DWORD PTR -80[rbp], 1
.L611:
	mov	eax, DWORD PTR 48[rbp]
	sub	eax, 1
	cmp	DWORD PTR -80[rbp], eax
	jl	.L612
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -152[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -48[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -48[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -56[rbp]
	lea	rcx, -8[rax]
	mov	QWORD PTR -56[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -40[rbp], rax
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -132[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -84[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	mov	DWORD PTR -76[rbp], 1
	jmp	.L613
.L614:
	mov	rax, QWORD PTR -64[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -64[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -72[rbp]
	lea	rcx, -8[rax]
	mov	QWORD PTR -72[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	QWORD PTR -40[rbp], rax
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -144[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -76[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -144[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -32[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -24[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -104[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -76[rbp], 1
.L613:
	mov	eax, DWORD PTR 40[rbp]
	sub	eax, 1
	cmp	DWORD PTR -76[rbp], eax
	jl	.L614
	cmp	DWORD PTR 40[rbp], 1
	jle	.L615
	mov	rax, QWORD PTR -64[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -64[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -72[rbp]
	lea	rcx, -8[rax]
	mov	QWORD PTR -72[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	QWORD PTR -40[rbp], rax
.L615:
	mov	eax, DWORD PTR 40[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -144[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR [rdx], rax
	cmp	DWORD PTR 40[rbp], 1
	jle	.L616
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -32[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -24[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
.L616:
	mov	eax, DWORD PTR 40[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	fxp_to_float
	movd	eax, xmm0
	movd	xmm0, eax
	subss	xmm0, DWORD PTR -84[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE93:
	.size	iirOutBothL, .-iirOutBothL
	.globl	iirOutBothL2
	.type	iirOutBothL2, @function
iirOutBothL2:
.LFB94:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 152
	mov	QWORD PTR -104[rbp], rdi
	mov	QWORD PTR -112[rbp], rsi
	mov	QWORD PTR -120[rbp], rdx
	mov	QWORD PTR -128[rbp], rcx
	movss	DWORD PTR -132[rbp], xmm0
	mov	QWORD PTR -144[rbp], r8
	mov	QWORD PTR -152[rbp], r9
	mov	QWORD PTR -72[rbp], 0
	mov	eax, DWORD PTR 40[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR 16[rbp]
	add	rax, rdx
	mov	QWORD PTR -64[rbp], rax
	mov	rax, QWORD PTR -144[rbp]
	add	rax, 8
	mov	QWORD PTR -56[rbp], rax
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR 24[rbp]
	add	rax, rdx
	mov	QWORD PTR -48[rbp], rax
	mov	rax, QWORD PTR -152[rbp]
	mov	QWORD PTR -40[rbp], rax
	pxor	xmm0, xmm0
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR 40[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -104[rbp]
	add	rax, 4
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -128[rbp]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -112[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -80[rbp], 0
	mov	DWORD PTR -76[rbp], 1
	mov	DWORD PTR -80[rbp], 0
	jmp	.L619
.L620:
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -152[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -80[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -152[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -152[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR 48[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR 24[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -72[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -72[rbp], rax
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -112[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR 48[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -128[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -84[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	add	DWORD PTR -80[rbp], 1
.L619:
	mov	eax, DWORD PTR 48[rbp]
	sub	eax, 1
	cmp	DWORD PTR -80[rbp], eax
	jl	.L620
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -152[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -152[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR 48[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR 24[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -72[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -72[rbp], rax
	mov	eax, DWORD PTR 48[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -132[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR 48[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -128[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	mov	eax, DWORD PTR -80[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -84[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	mov	DWORD PTR -76[rbp], 1
	jmp	.L621
.L622:
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -144[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR 40[rbp]
	sub	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR 16[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -72[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	QWORD PTR -72[rbp], rax
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -144[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -76[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -144[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR 40[rbp]
	sub	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -104[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -76[rbp], 1
.L621:
	mov	eax, DWORD PTR 40[rbp]
	sub	eax, 1
	cmp	DWORD PTR -76[rbp], eax
	jl	.L622
	cmp	DWORD PTR 40[rbp], 1
	jle	.L623
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -144[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR 40[rbp]
	sub	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR 16[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -72[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	QWORD PTR -72[rbp], rax
.L623:
	mov	eax, DWORD PTR 40[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -144[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -72[rbp]
	mov	QWORD PTR [rdx], rax
	cmp	DWORD PTR 40[rbp], 1
	jle	.L624
	mov	eax, DWORD PTR 40[rbp]
	sub	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -120[rbp]
	add	rax, rdx
	movss	xmm1, DWORD PTR [rax]
	mov	eax, DWORD PTR -76[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -84[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -84[rbp], xmm0
.L624:
	mov	eax, DWORD PTR 40[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -104[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR -84[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -72[rbp]
	mov	rdi, rax
	call	fxp_to_float
	movd	eax, xmm0
	movd	xmm0, eax
	subss	xmm0, DWORD PTR -84[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE94:
	.size	iirOutBothL2, .-iirOutBothL2
	.section	.rodata
	.align 8
.LC42:
	.string	"An Overflow Occurred in the node a0"
	.text
	.globl	fxp_direct_form_1
	.type	fxp_direct_form_1, @function
fxp_direct_form_1:
.LFB95:
	.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	QWORD PTR -80[rbp], rcx
	mov	DWORD PTR -84[rbp], r8d
	mov	DWORD PTR -88[rbp], r9d
	mov	QWORD PTR -8[rbp], 0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -40[rbp], rax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -48[rbp], 0
	jmp	.L627
.L628:
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -16[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, 8[rax]
	mov	QWORD PTR -24[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -8[rbp], rax
	add	DWORD PTR -48[rbp], 1
.L627:
	mov	eax, DWORD PTR -48[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jl	.L628
	mov	DWORD PTR -44[rbp], 1
	jmp	.L629
.L630:
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -32[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -40[rbp]
	lea	rcx, 8[rax]
	mov	QWORD PTR -40[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	QWORD PTR -8[rbp], rax
	add	DWORD PTR -44[rbp], 1
.L629:
	mov	eax, DWORD PTR -44[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L630
	mov	rax, QWORD PTR -8[rbp]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	fxp_verify_overflow_node
	mov	rax, QWORD PTR -72[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_div
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fxp_quantize
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE95:
	.size	fxp_direct_form_1, .-fxp_direct_form_1
	.section	.rodata
	.align 8
.LC43:
	.string	"An Overflow Occurred in the node b0"
	.text
	.globl	fxp_direct_form_2
	.type	fxp_direct_form_2, @function
fxp_direct_form_2:
.LFB96:
	.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	QWORD PTR -80[rbp], rcx
	mov	DWORD PTR -84[rbp], r8d
	mov	DWORD PTR -88[rbp], r9d
	mov	QWORD PTR -8[rbp], 0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 8
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -36[rbp], 1
	jmp	.L633
.L634:
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	lea	rcx, 8[rax]
	mov	QWORD PTR -32[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	rdx, QWORD PTR -56[rbp]
	mov	QWORD PTR [rdx], rax
	add	DWORD PTR -36[rbp], 1
.L633:
	mov	eax, DWORD PTR -36[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L634
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rdx, QWORD PTR -64[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	rdx, QWORD PTR -56[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -72[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_div
	mov	rdx, QWORD PTR -56[rbp]
	mov	QWORD PTR [rdx], rax
	mov	rax, QWORD PTR -56[rbp]
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC43[rip]
	mov	rdi, rax
	call	fxp_verify_overflow_node
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -40[rbp], 0
	jmp	.L635
.L636:
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	lea	rcx, 8[rax]
	mov	QWORD PTR -24[rbp], rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	rax, QWORD PTR -8[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -8[rbp], rax
	add	DWORD PTR -40[rbp], 1
.L635:
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jl	.L636
	mov	rax, QWORD PTR -8[rbp]
	mov	rdi, rax
	call	fxp_quantize
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE96:
	.size	fxp_direct_form_2, .-fxp_direct_form_2
	.globl	fxp_transposed_direct_form_2
	.type	fxp_transposed_direct_form_2, @function
fxp_transposed_direct_form_2:
.LFB97:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 88
	.cfi_offset 3, -24
	mov	QWORD PTR -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	QWORD PTR -72[rbp], rdx
	mov	QWORD PTR -80[rbp], rcx
	mov	DWORD PTR -84[rbp], r8d
	mov	DWORD PTR -88[rbp], r9d
	mov	QWORD PTR -24[rbp], 0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -40[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -32[rbp], rax
	mov	eax, DWORD PTR -84[rbp]
	cmp	DWORD PTR -88[rbp], eax
	cmovge	eax, DWORD PTR -88[rbp]
	mov	DWORD PTR -44[rbp], eax
	mov	rax, QWORD PTR -56[rbp]
	mov	rbx, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -32[rbp], rdx
	mov	rax, QWORD PTR [rax]
	mov	rdx, QWORD PTR -64[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rsi, rbx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -72[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_div
	mov	QWORD PTR -24[rbp], rax
	mov	DWORD PTR -48[rbp], 0
	jmp	.L639
.L642:
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	mov	edx, DWORD PTR -48[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -56[rbp]
	add	rdx, rcx
	mov	rax, QWORD PTR [rax]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR -84[rbp]
	sub	eax, 1
	cmp	DWORD PTR -48[rbp], eax
	jge	.L640
	mov	rax, QWORD PTR -40[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -40[rbp], rdx
	mov	rax, QWORD PTR [rax]
	mov	rdx, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	ecx, DWORD PTR -48[rbp]
	movsx	rcx, ecx
	lea	rsi, 0[0+rcx*8]
	mov	rcx, QWORD PTR -56[rbp]
	lea	rbx, [rsi+rcx]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_sub
	mov	QWORD PTR [rbx], rax
.L640:
	mov	eax, DWORD PTR -88[rbp]
	sub	eax, 1
	cmp	DWORD PTR -48[rbp], eax
	jge	.L641
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -32[rbp], rdx
	mov	rax, QWORD PTR [rax]
	mov	rdx, QWORD PTR -64[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	ecx, DWORD PTR -48[rbp]
	movsx	rcx, ecx
	lea	rsi, 0[0+rcx*8]
	mov	rcx, QWORD PTR -56[rbp]
	lea	rbx, [rsi+rcx]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR [rbx], rax
.L641:
	add	DWORD PTR -48[rbp], 1
.L639:
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, 1
	cmp	DWORD PTR -48[rbp], eax
	jl	.L642
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	lea	rsi, .LC42[rip]
	mov	rdi, rax
	call	fxp_verify_overflow_node
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	fxp_quantize
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE97:
	.size	fxp_transposed_direct_form_2, .-fxp_transposed_direct_form_2
	.globl	double_direct_form_1
	.type	double_direct_form_1, @function
double_direct_form_1:
.LFB98:
	.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 -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	QWORD PTR -72[rbp], rdx
	mov	QWORD PTR -80[rbp], rcx
	mov	DWORD PTR -84[rbp], r8d
	mov	DWORD PTR -88[rbp], r9d
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -40[rbp], rax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -48[rbp], 0
	jmp	.L645
.L646:
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -48[rbp], 1
.L645:
	mov	eax, DWORD PTR -48[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jl	.L646
	mov	DWORD PTR -44[rbp], 1
	jmp	.L647
.L648:
	mov	rax, QWORD PTR -40[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -40[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -32[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -44[rbp], 1
.L647:
	mov	eax, DWORD PTR -44[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L648
	mov	rax, QWORD PTR -72[rbp]
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR -8[rbp]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE98:
	.size	double_direct_form_1, .-double_direct_form_1
	.globl	double_direct_form_2
	.type	double_direct_form_2, @function
double_direct_form_2:
.LFB99:
	.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 -56[rbp], rdi
	movsd	QWORD PTR -64[rbp], xmm0
	mov	QWORD PTR -72[rbp], rsi
	mov	QWORD PTR -80[rbp], rdx
	mov	DWORD PTR -84[rbp], ecx
	mov	DWORD PTR -88[rbp], r8d
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 8
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -36[rbp], 1
	jmp	.L651
.L652:
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -32[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -36[rbp], 1
.L651:
	mov	eax, DWORD PTR -36[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L652
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -56[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -72[rbp]
	movsd	xmm1, QWORD PTR [rax]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -40[rbp], 0
	jmp	.L653
.L654:
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -40[rbp], 1
.L653:
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jl	.L654
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE99:
	.size	double_direct_form_2, .-double_direct_form_2
	.globl	double_transposed_direct_form_2
	.type	double_transposed_direct_form_2, @function
double_transposed_direct_form_2:
.LFB100:
	.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
	movsd	QWORD PTR -48[rbp], xmm0
	mov	QWORD PTR -56[rbp], rsi
	mov	QWORD PTR -64[rbp], rdx
	mov	DWORD PTR -68[rbp], ecx
	mov	DWORD PTR -72[rbp], r8d
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 8
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -64[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	eax, DWORD PTR -68[rbp]
	cmp	DWORD PTR -72[rbp], eax
	cmovge	eax, DWORD PTR -72[rbp]
	mov	DWORD PTR -28[rbp], eax
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm1, QWORD PTR [rax]
	movsd	xmm0, QWORD PTR -8[rbp]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -32[rbp], 0
	jmp	.L657
.L660:
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -68[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jge	.L658
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
.L658:
	mov	eax, DWORD PTR -72[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jge	.L659
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
.L659:
	add	DWORD PTR -32[rbp], 1
.L657:
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jl	.L660
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE100:
	.size	double_transposed_direct_form_2, .-double_transposed_direct_form_2
	.globl	float_direct_form_1
	.type	float_direct_form_1, @function
float_direct_form_1:
.LFB101:
	.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 -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	QWORD PTR -72[rbp], rdx
	mov	QWORD PTR -80[rbp], rcx
	mov	DWORD PTR -84[rbp], r8d
	mov	DWORD PTR -88[rbp], r9d
	pxor	xmm0, xmm0
	movss	DWORD PTR -44[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 4
	mov	QWORD PTR -32[rbp], rax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	sal	rax, 2
	lea	rdx, -4[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -40[rbp], 0
	jmp	.L663
.L664:
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -44[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -44[rbp], xmm0
	add	DWORD PTR -40[rbp], 1
.L663:
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jl	.L664
	mov	DWORD PTR -36[rbp], 1
	jmp	.L665
.L666:
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -32[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, -4[rax]
	mov	QWORD PTR -24[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	subss	xmm0, xmm1
	movss	DWORD PTR -44[rbp], xmm0
	add	DWORD PTR -36[rbp], 1
.L665:
	mov	eax, DWORD PTR -36[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L666
	mov	rax, QWORD PTR -72[rbp]
	movss	xmm1, DWORD PTR [rax]
	movss	xmm0, DWORD PTR -44[rbp]
	divss	xmm0, xmm1
	movss	DWORD PTR -44[rbp], xmm0
	movss	xmm0, DWORD PTR -44[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE101:
	.size	float_direct_form_1, .-float_direct_form_1
	.globl	float_direct_form_2
	.type	float_direct_form_2, @function
float_direct_form_2:
.LFB102:
	.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 -56[rbp], rdi
	movss	DWORD PTR -60[rbp], xmm0
	mov	QWORD PTR -72[rbp], rsi
	mov	QWORD PTR -80[rbp], rdx
	mov	DWORD PTR -64[rbp], ecx
	mov	DWORD PTR -84[rbp], r8d
	pxor	xmm0, xmm0
	movss	DWORD PTR -36[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 4
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -28[rbp], 1
	jmp	.L669
.L670:
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -24[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm1, xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	subss	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movss	DWORD PTR [rax], xmm0
	add	DWORD PTR -28[rbp], 1
.L669:
	mov	eax, DWORD PTR -28[rbp]
	cmp	eax, DWORD PTR -64[rbp]
	jl	.L670
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	addss	xmm0, DWORD PTR -60[rbp]
	mov	rax, QWORD PTR -56[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm0, DWORD PTR [rax]
	mov	rax, QWORD PTR -72[rbp]
	movss	xmm1, DWORD PTR [rax]
	divss	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movss	DWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -32[rbp], 0
	jmp	.L671
.L672:
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm1, DWORD PTR [rax]
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	mulss	xmm0, xmm1
	movss	xmm1, DWORD PTR -36[rbp]
	addss	xmm0, xmm1
	movss	DWORD PTR -36[rbp], xmm0
	add	DWORD PTR -32[rbp], 1
.L671:
	mov	eax, DWORD PTR -32[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L672
	movss	xmm0, DWORD PTR -36[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE102:
	.size	float_direct_form_2, .-float_direct_form_2
	.globl	float_transposed_direct_form_2
	.type	float_transposed_direct_form_2, @function
float_transposed_direct_form_2:
.LFB103:
	.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
	movss	DWORD PTR -44[rbp], xmm0
	mov	QWORD PTR -56[rbp], rsi
	mov	QWORD PTR -64[rbp], rdx
	mov	DWORD PTR -48[rbp], ecx
	mov	DWORD PTR -68[rbp], r8d
	pxor	xmm0, xmm0
	movss	DWORD PTR -24[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 4
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -64[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	eax, DWORD PTR -48[rbp]
	cmp	DWORD PTR -68[rbp], eax
	cmovge	eax, DWORD PTR -68[rbp]
	mov	DWORD PTR -20[rbp], eax
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -44[rbp]
	mov	rax, QWORD PTR -40[rbp]
	movss	xmm0, DWORD PTR [rax]
	addss	xmm0, xmm1
	movss	DWORD PTR -24[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movss	xmm1, DWORD PTR [rax]
	movss	xmm0, DWORD PTR -24[rbp]
	divss	xmm0, xmm1
	movss	DWORD PTR -24[rbp], xmm0
	mov	DWORD PTR -28[rbp], 0
	jmp	.L675
.L678:
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	movss	xmm0, DWORD PTR [rdx]
	movss	DWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -48[rbp]
	sub	eax, 1
	cmp	DWORD PTR -28[rbp], eax
	jge	.L676
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -16[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -24[rbp]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	subss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
.L676:
	mov	eax, DWORD PTR -68[rbp]
	sub	eax, 1
	cmp	DWORD PTR -28[rbp], eax
	jge	.L677
	mov	rax, QWORD PTR -8[rbp]
	lea	rdx, 4[rax]
	mov	QWORD PTR -8[rbp], rdx
	movss	xmm0, DWORD PTR [rax]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -44[rbp]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movss	xmm0, DWORD PTR [rax]
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	addss	xmm0, xmm1
	movss	DWORD PTR [rax], xmm0
.L677:
	add	DWORD PTR -28[rbp], 1
.L675:
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	cmp	DWORD PTR -28[rbp], eax
	jl	.L678
	movss	xmm0, DWORD PTR -24[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE103:
	.size	float_transposed_direct_form_2, .-float_transposed_direct_form_2
	.section	.rodata
	.align 8
.LC44:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/core/realizations.h"
	.align 8
.LC45:
	.string	"(double) timer1 * hw.cycle <= ds.sample_time"
	.text
	.globl	double_direct_form_1_MSP430
	.type	double_direct_form_1_MSP430, @function
double_direct_form_1_MSP430:
.LFB104:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 112
	mov	QWORD PTR -72[rbp], rdi
	mov	QWORD PTR -80[rbp], rsi
	mov	QWORD PTR -88[rbp], rdx
	mov	QWORD PTR -96[rbp], rcx
	mov	DWORD PTR -100[rbp], r8d
	mov	DWORD PTR -104[rbp], r9d
	mov	DWORD PTR -52[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -88[rbp]
	add	rax, 8
	mov	QWORD PTR -40[rbp], rax
	mov	eax, DWORD PTR -100[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -72[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -96[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR -104[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	add	DWORD PTR -52[rbp], 91
	mov	DWORD PTR -48[rbp], 0
	jmp	.L681
.L682:
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -52[rbp], 47
	add	DWORD PTR -48[rbp], 1
.L681:
	mov	eax, DWORD PTR -48[rbp]
	cmp	eax, DWORD PTR -104[rbp]
	jl	.L682
	mov	DWORD PTR -44[rbp], 1
	jmp	.L683
.L684:
	mov	rax, QWORD PTR -40[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -40[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -32[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -52[rbp], 57
	add	DWORD PTR -44[rbp], 1
.L683:
	mov	eax, DWORD PTR -44[rbp]
	cmp	eax, DWORD PTR -100[rbp]
	jl	.L684
	add	DWORD PTR -52[rbp], 3
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -52[rbp]
	movsd	xmm0, QWORD PTR hw[rip+16]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR ds[rip+1616]
	comisd	xmm0, xmm1
	jnb	.L685
	lea	rcx, __PRETTY_FUNCTION__.12[rip]
	mov	edx, 235
	lea	rsi, .LC44[rip]
	lea	rdi, .LC45[rip]
	call	__assert_fail@PLT
.L685:
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE104:
	.size	double_direct_form_1_MSP430, .-double_direct_form_1_MSP430
	.globl	double_direct_form_2_MSP430
	.type	double_direct_form_2_MSP430, @function
double_direct_form_2_MSP430:
.LFB105:
	.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
	movsd	QWORD PTR -64[rbp], xmm0
	mov	QWORD PTR -72[rbp], rsi
	mov	QWORD PTR -80[rbp], rdx
	mov	DWORD PTR -84[rbp], ecx
	mov	DWORD PTR -88[rbp], r8d
	mov	DWORD PTR -44[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 8
	mov	QWORD PTR -16[rbp], rax
	add	DWORD PTR -44[rbp], 71
	mov	DWORD PTR -36[rbp], 1
	jmp	.L688
.L689:
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -32[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -44[rbp], 54
	add	DWORD PTR -36[rbp], 1
.L688:
	mov	eax, DWORD PTR -36[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L689
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -56[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -72[rbp]
	movsd	xmm1, QWORD PTR [rax]
	divsd	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	DWORD PTR -40[rbp], 0
	jmp	.L690
.L691:
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -44[rbp], 46
	add	DWORD PTR -40[rbp], 1
.L690:
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jl	.L691
	add	DWORD PTR -44[rbp], 38
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -44[rbp]
	movsd	xmm0, QWORD PTR hw[rip+16]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR ds[rip+1616]
	comisd	xmm0, xmm1
	jnb	.L692
	lea	rcx, __PRETTY_FUNCTION__.11[rip]
	mov	edx, 262
	lea	rsi, .LC44[rip]
	lea	rdi, .LC45[rip]
	call	__assert_fail@PLT
.L692:
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE105:
	.size	double_direct_form_2_MSP430, .-double_direct_form_2_MSP430
	.globl	double_transposed_direct_form_2_MSP430
	.type	double_transposed_direct_form_2_MSP430, @function
double_transposed_direct_form_2_MSP430:
.LFB106:
	.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
	movsd	QWORD PTR -64[rbp], xmm0
	mov	QWORD PTR -72[rbp], rsi
	mov	QWORD PTR -80[rbp], rdx
	mov	DWORD PTR -84[rbp], ecx
	mov	DWORD PTR -88[rbp], r8d
	mov	DWORD PTR -36[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	eax, DWORD PTR -84[rbp]
	cmp	DWORD PTR -88[rbp], eax
	cmovge	eax, DWORD PTR -88[rbp]
	mov	DWORD PTR -28[rbp], eax
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -36[rbp], 105
	mov	DWORD PTR -32[rbp], 0
	jmp	.L695
.L698:
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -84[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jge	.L696
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -36[rbp], 41
.L696:
	mov	eax, DWORD PTR -88[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jge	.L697
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -64[rbp]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -36[rbp], 38
.L697:
	add	DWORD PTR -36[rbp], 54
	add	DWORD PTR -32[rbp], 1
.L695:
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jl	.L698
	add	DWORD PTR -36[rbp], 7
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -36[rbp]
	movsd	xmm0, QWORD PTR hw[rip+16]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR ds[rip+1616]
	comisd	xmm0, xmm1
	jnb	.L699
	lea	rcx, __PRETTY_FUNCTION__.10[rip]
	mov	edx, 291
	lea	rsi, .LC44[rip]
	lea	rdi, .LC45[rip]
	call	__assert_fail@PLT
.L699:
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE106:
	.size	double_transposed_direct_form_2_MSP430, .-double_transposed_direct_form_2_MSP430
	.globl	generic_timing_double_direct_form_1
	.type	generic_timing_double_direct_form_1, @function
generic_timing_double_direct_form_1:
.LFB107:
	.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 -56[rbp], rdi
	mov	QWORD PTR -64[rbp], rsi
	mov	QWORD PTR -72[rbp], rdx
	mov	QWORD PTR -80[rbp], rcx
	mov	DWORD PTR -84[rbp], r8d
	mov	DWORD PTR -88[rbp], r9d
	mov	edx, DWORD PTR hw[rip+24]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	eax, eax
	mov	ecx, eax
	mov	edx, DWORD PTR hw[rip+28]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+32]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 2
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -40[rbp], rax
	mov	eax, DWORD PTR -84[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR -88[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	mov	QWORD PTR -16[rbp], rax
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, DWORD PTR hw[rip+48]
	add	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	eax, eax
	mov	edx, eax
	mov	eax, DWORD PTR hw[rip+52]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+56]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+60]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+64]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+68]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+72]
	add	eax, edx
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	eax, DWORD PTR hw[rip+44]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	DWORD PTR -48[rbp], 0
	jmp	.L702
.L703:
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	mov	ecx, eax
	mov	edx, DWORD PTR hw[rip+84]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 3
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+52]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+56]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+88]
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+92]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+96]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+100]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+104]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+112]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -48[rbp], 1
.L702:
	mov	eax, DWORD PTR -48[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jl	.L703
	mov	edx, DWORD PTR hw[rip+108]
	mov	eax, DWORD PTR hw[rip+44]
	add	eax, edx
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	DWORD PTR -44[rbp], 1
	jmp	.L704
.L705:
	mov	eax, DWORD PTR hw[rip+48]
	imul	ecx, eax, 22
	mov	edx, DWORD PTR hw[rip+84]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 3
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+52]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+44]
	sal	eax, 3
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+56]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+92]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+96]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+88]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+100]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+104]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+112]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	rax, QWORD PTR -40[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -40[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, -8[rax]
	mov	QWORD PTR -32[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -44[rbp], 1
.L704:
	mov	eax, DWORD PTR -44[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L705
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, DWORD PTR hw[rip+84]
	add	eax, edx
	lea	edx, 0[0+rax*4]
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+28]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+116]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	eax, eax
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+120]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE107:
	.size	generic_timing_double_direct_form_1, .-generic_timing_double_direct_form_1
	.globl	generic_timing_double_direct_form_2
	.type	generic_timing_double_direct_form_2, @function
generic_timing_double_direct_form_2:
.LFB108:
	.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 -56[rbp], rdi
	movsd	QWORD PTR -64[rbp], xmm0
	mov	QWORD PTR -72[rbp], rsi
	mov	QWORD PTR -80[rbp], rdx
	mov	DWORD PTR -84[rbp], ecx
	mov	DWORD PTR -88[rbp], r8d
	mov	eax, DWORD PTR hw[rip+24]
	lea	edx, 0[0+rax*8]
	mov	eax, DWORD PTR hw[rip+44]
	imul	eax, eax, 14
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+28]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+32]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -72[rbp]
	add	rax, 8
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -80[rbp]
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 8
	mov	QWORD PTR -16[rbp], rax
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	mov	ecx, eax
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	eax, eax
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+76]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	edx, DWORD PTR hw[rip+108]
	mov	eax, DWORD PTR hw[rip+44]
	add	eax, edx
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	DWORD PTR -36[rbp], 1
	jmp	.L708
.L709:
	mov	rax, QWORD PTR -32[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -32[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm1, xmm0
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -56[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR hw[rip+48]
	imul	edx, eax, 23
	mov	eax, DWORD PTR hw[rip+84]
	sal	eax, 5
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	sal	eax, 3
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+52]
	add	eax, eax
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+92]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+96]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+56]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+124]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+100]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+104]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+112]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	add	DWORD PTR -36[rbp], 1
.L708:
	mov	eax, DWORD PTR -36[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L709
	mov	rax, QWORD PTR -56[rbp]
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -56[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -56[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 2
	lea	ecx, [rax+rdx]
	mov	edx, DWORD PTR hw[rip+84]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 2
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+124]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+92]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+96]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	eax, DWORD PTR hw[rip+44]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	DWORD PTR -40[rbp], 0
	jmp	.L710
.L711:
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	sal	eax, 2
	mov	ecx, eax
	mov	edx, DWORD PTR hw[rip+84]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 3
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	eax, eax
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+96]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+92]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+52]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+56]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+100]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+104]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+112]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	add	DWORD PTR -40[rbp], 1
.L710:
	mov	eax, DWORD PTR -40[rbp]
	cmp	eax, DWORD PTR -88[rbp]
	jl	.L711
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, DWORD PTR hw[rip+84]
	add	eax, edx
	lea	edx, 0[0+rax*4]
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+28]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+116]
	sal	eax, 3
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+120]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE108:
	.size	generic_timing_double_direct_form_2, .-generic_timing_double_direct_form_2
	.globl	generic_timing_double_transposed_direct_form_2
	.type	generic_timing_double_transposed_direct_form_2, @function
generic_timing_double_transposed_direct_form_2:
.LFB109:
	.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
	movsd	QWORD PTR -48[rbp], xmm0
	mov	QWORD PTR -56[rbp], rsi
	mov	QWORD PTR -64[rbp], rdx
	mov	DWORD PTR -68[rbp], ecx
	mov	DWORD PTR -72[rbp], r8d
	mov	eax, DWORD PTR hw[rip+24]
	lea	edx, 0[0+rax*8]
	mov	eax, DWORD PTR hw[rip+44]
	imul	eax, eax, 14
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+28]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+32]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -56[rbp]
	add	rax, 8
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -64[rbp]
	mov	QWORD PTR -16[rbp], rax
	mov	eax, DWORD PTR -68[rbp]
	cmp	DWORD PTR -72[rbp], eax
	cmovge	eax, DWORD PTR -72[rbp]
	mov	DWORD PTR -28[rbp], eax
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -40[rbp]
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	sal	eax, 4
	sub	eax, edx
	mov	ecx, eax
	mov	eax, DWORD PTR hw[rip+48]
	imul	eax, eax, 22
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+84]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 3
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+96]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+92]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+100]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+104]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+52]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+56]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+112]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	eax, DWORD PTR hw[rip+44]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	DWORD PTR -32[rbp], 0
	jmp	.L714
.L717:
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	add	rax, 1
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rdx, rax
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rcx
	movsd	xmm0, QWORD PTR [rdx]
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -68[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jge	.L715
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -24[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	subsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
.L715:
	mov	eax, DWORD PTR -72[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jge	.L716
	mov	rax, QWORD PTR -16[rbp]
	lea	rdx, 8[rax]
	mov	QWORD PTR -16[rbp], rdx
	movsd	xmm0, QWORD PTR [rax]
	movapd	xmm1, xmm0
	mulsd	xmm1, QWORD PTR -48[rbp]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
.L716:
	mov	eax, DWORD PTR hw[rip+84]
	imul	ecx, eax, 70
	mov	eax, DWORD PTR hw[rip+48]
	mov	edx, eax
	sal	edx, 6
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+60]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 2
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+64]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	sal	eax, 2
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+44]
	mov	eax, edx
	sal	eax, 4
	sub	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+68]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	eax, eax
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+72]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	eax, eax
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+76]
	add	eax, eax
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+104]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+100]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+92]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+96]
	sal	eax, 2
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+52]
	mov	eax, edx
	sal	eax, 2
	add	eax, edx
	add	ecx, eax
	mov	edx, DWORD PTR hw[rip+80]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+128]
	add	eax, eax
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+124]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+56]
	add	eax, eax
	lea	ecx, [rdx+rax]
	mov	edx, DWORD PTR hw[rip+88]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+112]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	add	DWORD PTR -32[rbp], 1
.L714:
	mov	eax, DWORD PTR -28[rbp]
	sub	eax, 1
	cmp	DWORD PTR -32[rbp], eax
	jl	.L717
	mov	edx, DWORD PTR hw[rip+48]
	mov	eax, DWORD PTR hw[rip+84]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+116]
	add	eax, eax
	add	eax, edx
	lea	ecx, 0[0+rax*4]
	mov	edx, DWORD PTR hw[rip+40]
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, [rcx+rax]
	mov	eax, DWORD PTR hw[rip+28]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+36]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+120]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	movsd	xmm0, QWORD PTR -8[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE109:
	.size	generic_timing_double_transposed_direct_form_2, .-generic_timing_double_transposed_direct_form_2
	.globl	double_direct_form_1_impl2
	.type	double_direct_form_1_impl2, @function
double_direct_form_1_impl2:
.LFB110:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r13
	push	r12
	sub	rsp, 80
	.cfi_offset 13, -24
	.cfi_offset 12, -32
	mov	QWORD PTR -56[rbp], rdi
	mov	DWORD PTR -60[rbp], esi
	mov	QWORD PTR -72[rbp], rdx
	mov	DWORD PTR -64[rbp], ecx
	mov	QWORD PTR -80[rbp], r8
	mov	DWORD PTR -84[rbp], r9d
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -96[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	rsi, rax
	mov	DWORD PTR -44[rbp], 0
	mov	DWORD PTR -48[rbp], 0
	mov	eax, DWORD PTR -60[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -40[rbp], rdx
	movsx	rdx, eax
	mov	r12, rdx
	mov	r13d, 0
	movsx	rdx, eax
	mov	r10, rdx
	mov	r11d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L720:
	cmp	rsp, rdx
	je	.L721
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L720
.L721:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L722
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L722:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -32[rbp], rax
	mov	DWORD PTR -44[rbp], 0
	jmp	.L723
.L728:
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR -44[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	DWORD PTR -48[rbp], 0
	jmp	.L724
.L727:
	mov	eax, DWORD PTR -48[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jg	.L736
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR -44[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -72[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR -44[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -48[rbp], 1
.L724:
	mov	eax, DWORD PTR -48[rbp]
	cmp	eax, DWORD PTR -64[rbp]
	jl	.L727
	jmp	.L726
.L736:
	nop
.L726:
	add	DWORD PTR -44[rbp], 1
.L723:
	mov	eax, DWORD PTR -44[rbp]
	cmp	eax, DWORD PTR -60[rbp]
	jl	.L728
	mov	rax, QWORD PTR -32[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -96[rbp]
	movsd	QWORD PTR [rax], xmm0
	mov	DWORD PTR -44[rbp], 1
	jmp	.L729
.L734:
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -96[rbp]
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax], xmm0
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -96[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR -44[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -96[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	mov	DWORD PTR -48[rbp], 1
	jmp	.L730
.L733:
	mov	eax, DWORD PTR -48[rbp]
	cmp	eax, DWORD PTR -44[rbp]
	jg	.L737
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -96[rbp]
	add	rax, rdx
	movsd	xmm1, QWORD PTR [rax]
	mov	eax, DWORD PTR -44[rbp]
	sub	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -96[rbp]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	mov	eax, DWORD PTR -48[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -80[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movq	xmm3, QWORD PTR .LC13[rip]
	xorpd	xmm0, xmm3
	mulsd	xmm0, xmm2
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -96[rbp]
	add	rax, rdx
	addsd	xmm0, xmm1
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -48[rbp], 1
.L730:
	mov	eax, DWORD PTR -48[rbp]
	cmp	eax, DWORD PTR -84[rbp]
	jl	.L733
	jmp	.L732
.L737:
	nop
.L732:
	add	DWORD PTR -44[rbp], 1
.L729:
	mov	eax, DWORD PTR -44[rbp]
	cmp	eax, DWORD PTR -60[rbp]
	jl	.L734
	mov	rsp, rsi
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L735
	call	__stack_chk_fail@PLT
.L735:
	lea	rsp, -16[rbp]
	pop	r12
	pop	r13
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE110:
	.size	double_direct_form_1_impl2, .-double_direct_form_1_impl2
	.globl	fxp_direct_form_1_impl2
	.type	fxp_direct_form_1_impl2, @function
fxp_direct_form_1_impl2:
.LFB111:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r12
	push	rbx
	sub	rsp, 80
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 12, -40
	.cfi_offset 3, -48
	mov	QWORD PTR -72[rbp], rdi
	mov	DWORD PTR -76[rbp], esi
	mov	QWORD PTR -88[rbp], rdx
	mov	DWORD PTR -80[rbp], ecx
	mov	QWORD PTR -96[rbp], r8
	mov	DWORD PTR -100[rbp], r9d
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -112[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -40[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	r12, rax
	mov	DWORD PTR -60[rbp], 0
	mov	DWORD PTR -64[rbp], 0
	mov	eax, DWORD PTR -76[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -56[rbp], rdx
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	movsx	rdx, eax
	mov	r10, rdx
	mov	r11d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L739:
	cmp	rsp, rdx
	je	.L740
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L739
.L740:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L741
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L741:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -48[rbp], rax
	mov	DWORD PTR -60[rbp], 0
	jmp	.L742
.L747:
	mov	rax, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -60[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], 0
	mov	DWORD PTR -64[rbp], 0
	jmp	.L743
.L746:
	mov	eax, DWORD PTR -64[rbp]
	cmp	eax, DWORD PTR -60[rbp]
	jg	.L755
	mov	eax, DWORD PTR -64[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -88[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -60[rbp]
	sub	eax, DWORD PTR -64[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -72[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rcx, rax
	mov	rax, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -60[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_add
	mov	rdx, QWORD PTR -48[rbp]
	mov	ecx, DWORD PTR -60[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	add	DWORD PTR -64[rbp], 1
.L743:
	mov	eax, DWORD PTR -64[rbp]
	cmp	eax, DWORD PTR -80[rbp]
	jl	.L746
	jmp	.L745
.L755:
	nop
.L745:
	add	DWORD PTR -60[rbp], 1
.L742:
	mov	eax, DWORD PTR -60[rbp]
	cmp	eax, DWORD PTR -76[rbp]
	jl	.L747
	mov	rax, QWORD PTR -48[rbp]
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR -112[rbp]
	mov	QWORD PTR [rax], rdx
	mov	DWORD PTR -60[rbp], 1
	jmp	.L748
.L753:
	mov	eax, DWORD PTR -60[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rdx
	mov	QWORD PTR [rax], 0
	mov	rax, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -60[rbp]
	movsx	rdx, edx
	mov	rdx, QWORD PTR [rax+rdx*8]
	mov	eax, DWORD PTR -60[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	ecx, DWORD PTR -60[rbp]
	movsx	rcx, ecx
	lea	rsi, 0[0+rcx*8]
	mov	rcx, QWORD PTR -112[rbp]
	lea	rbx, [rsi+rcx]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR [rbx], rax
	mov	DWORD PTR -64[rbp], 1
	jmp	.L749
.L752:
	mov	eax, DWORD PTR -64[rbp]
	cmp	eax, DWORD PTR -60[rbp]
	jg	.L756
	mov	eax, DWORD PTR -64[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -96[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	neg	rax
	mov	rdx, rax
	mov	eax, DWORD PTR -60[rbp]
	sub	eax, DWORD PTR -64[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_mult
	mov	rdx, rax
	mov	eax, DWORD PTR -60[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -112[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	mov	ecx, DWORD PTR -60[rbp]
	movsx	rcx, ecx
	lea	rsi, 0[0+rcx*8]
	mov	rcx, QWORD PTR -112[rbp]
	lea	rbx, [rsi+rcx]
	mov	rsi, rdx
	mov	rdi, rax
	call	fxp_add
	mov	QWORD PTR [rbx], rax
	add	DWORD PTR -64[rbp], 1
.L749:
	mov	eax, DWORD PTR -64[rbp]
	cmp	eax, DWORD PTR -100[rbp]
	jl	.L752
	jmp	.L751
.L756:
	nop
.L751:
	add	DWORD PTR -60[rbp], 1
.L748:
	mov	eax, DWORD PTR -60[rbp]
	cmp	eax, DWORD PTR -76[rbp]
	jl	.L753
	mov	rsp, r12
	nop
	mov	rax, QWORD PTR -40[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L754
	call	__stack_chk_fail@PLT
.L754:
	lea	rsp, -32[rbp]
	pop	rbx
	pop	r12
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE111:
	.size	fxp_direct_form_1_impl2, .-fxp_direct_form_1_impl2
	.globl	nchoosek
	.type	nchoosek, @function
nchoosek:
.LFB112:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	mov	DWORD PTR -8[rbp], esi
	cmp	DWORD PTR -8[rbp], 0
	jne	.L758
	mov	eax, 1
	jmp	.L759
.L758:
	mov	eax, DWORD PTR -8[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 1
	mov	esi, edx
	mov	edi, eax
	call	nchoosek
	imul	eax, DWORD PTR -4[rbp]
	cdq
	idiv	DWORD PTR -8[rbp]
.L759:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE112:
	.size	nchoosek, .-nchoosek
	.globl	generate_delta_coefficients
	.type	generate_delta_coefficients, @function
generate_delta_coefficients:
.LFB113:
	.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 -40[rbp], rdi
	mov	QWORD PTR -48[rbp], rsi
	mov	DWORD PTR -52[rbp], edx
	movsd	QWORD PTR -64[rbp], xmm0
	mov	eax, DWORD PTR -52[rbp]
	sub	eax, 1
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -20[rbp], 0
	jmp	.L761
.L764:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -16[rbp], 0
	jmp	.L762
.L763:
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	QWORD PTR -72[rbp], xmm2
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, DWORD PTR -16[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	sub	eax, DWORD PTR -16[rbp]
	mov	esi, edx
	mov	edi, eax
	call	nchoosek
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mulsd	xmm0, QWORD PTR -72[rbp]
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -16[rbp], 1
.L762:
	mov	eax, DWORD PTR -16[rbp]
	cmp	eax, DWORD PTR -20[rbp]
	jle	.L763
	mov	eax, DWORD PTR -12[rbp]
	sub	eax, DWORD PTR -20[rbp]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mov	rax, QWORD PTR -64[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	internal_pow
	movq	rax, xmm0
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -48[rbp]
	add	rdx, rcx
	movq	xmm0, rax
	mulsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR [rdx], xmm0
	add	DWORD PTR -20[rbp], 1
.L761:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -12[rbp]
	jle	.L764
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE113:
	.size	generate_delta_coefficients, .-generate_delta_coefficients
	.globl	get_delta_transfer_function
	.type	get_delta_transfer_function, @function
get_delta_transfer_function:
.LFB114:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	DWORD PTR -20[rbp], edx
	mov	QWORD PTR -32[rbp], rcx
	mov	QWORD PTR -40[rbp], r8
	mov	DWORD PTR -24[rbp], r9d
	movsd	QWORD PTR -48[rbp], xmm0
	mov	rsi, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -20[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	generate_delta_coefficients
	mov	rsi, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -24[rbp]
	mov	rcx, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR -32[rbp]
	movq	xmm0, rsi
	mov	rsi, rcx
	mov	rdi, rax
	call	generate_delta_coefficients
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE114:
	.size	get_delta_transfer_function, .-get_delta_transfer_function
	.globl	get_delta_transfer_function_with_base
	.type	get_delta_transfer_function_with_base, @function
get_delta_transfer_function_with_base:
.LFB115:
	.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 -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
	mov	DWORD PTR -56[rbp], r9d
	movsd	QWORD PTR -80[rbp], xmm0
	mov	eax, DWORD PTR -56[rbp]
	sub	eax, 1
	mov	DWORD PTR -16[rbp], eax
	mov	eax, DWORD PTR -52[rbp]
	sub	eax, 1
	mov	DWORD PTR -12[rbp], eax
	mov	DWORD PTR -24[rbp], 0
	jmp	.L767
.L770:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -20[rbp], 0
	jmp	.L768
.L769:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -64[rbp]
	add	rax, rdx
	movsd	xmm2, QWORD PTR [rax]
	movsd	QWORD PTR -88[rbp], xmm2
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, DWORD PTR -20[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, DWORD PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	nchoosek
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mulsd	xmm0, QWORD PTR -88[rbp]
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -20[rbp], 1
.L768:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -24[rbp]
	jle	.L769
	mov	eax, DWORD PTR -16[rbp]
	sub	eax, DWORD PTR -24[rbp]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mov	rax, QWORD PTR -80[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	internal_pow
	movq	rax, xmm0
	mov	edx, DWORD PTR -24[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -72[rbp]
	add	rdx, rcx
	movq	xmm0, rax
	mulsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR [rdx], xmm0
	add	DWORD PTR -24[rbp], 1
.L767:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -16[rbp]
	jle	.L770
	mov	DWORD PTR -24[rbp], 0
	jmp	.L771
.L774:
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	mov	DWORD PTR -20[rbp], 0
	jmp	.L772
.L773:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movsd	xmm3, QWORD PTR [rax]
	movsd	QWORD PTR -88[rbp], xmm3
	mov	eax, DWORD PTR -24[rbp]
	sub	eax, DWORD PTR -20[rbp]
	mov	edx, eax
	mov	eax, DWORD PTR -12[rbp]
	sub	eax, DWORD PTR -20[rbp]
	mov	esi, edx
	mov	edi, eax
	call	nchoosek
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mulsd	xmm0, QWORD PTR -88[rbp]
	movsd	xmm1, QWORD PTR -8[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	add	DWORD PTR -20[rbp], 1
.L772:
	mov	eax, DWORD PTR -20[rbp]
	cmp	eax, DWORD PTR -24[rbp]
	jle	.L773
	mov	eax, DWORD PTR -12[rbp]
	sub	eax, DWORD PTR -24[rbp]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mov	rax, QWORD PTR -80[rbp]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	internal_pow
	movq	rax, xmm0
	mov	edx, DWORD PTR -24[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	mov	rdx, QWORD PTR -48[rbp]
	add	rdx, rcx
	movq	xmm0, rax
	mulsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR [rdx], xmm0
	add	DWORD PTR -24[rbp], 1
.L771:
	mov	eax, DWORD PTR -24[rbp]
	cmp	eax, DWORD PTR -12[rbp]
	jle	.L774
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE115:
	.size	get_delta_transfer_function_with_base, .-get_delta_transfer_function_with_base
	.globl	ft_closedloop_series
	.type	ft_closedloop_series, @function
ft_closedloop_series:
.LFB116:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r13
	push	r12
	push	rbx
	sub	rsp, 104
	.cfi_offset 13, -24
	.cfi_offset 12, -32
	.cfi_offset 3, -40
	mov	QWORD PTR -72[rbp], rdi
	mov	DWORD PTR -76[rbp], esi
	mov	QWORD PTR -88[rbp], rdx
	mov	DWORD PTR -80[rbp], ecx
	mov	QWORD PTR -96[rbp], r8
	mov	DWORD PTR -100[rbp], r9d
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -112[rbp], rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR -120[rbp], rax
	mov	rax, QWORD PTR 48[rbp]
	mov	QWORD PTR -128[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -40[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	rbx, rax
	mov	edx, DWORD PTR -76[rbp]
	mov	eax, DWORD PTR -100[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR 40[rbp], eax
	mov	edx, DWORD PTR -80[rbp]
	mov	eax, DWORD PTR 24[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR 56[rbp], eax
	mov	eax, DWORD PTR 56[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -56[rbp], rdx
	movsx	rdx, eax
	mov	r12, rdx
	mov	r13d, 0
	movsx	rdx, eax
	mov	r10, rdx
	mov	r11d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L776:
	cmp	rsp, rdx
	je	.L777
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L776
.L777:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L778
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L778:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -48[rbp], rax
	mov	r8d, DWORD PTR 40[rbp]
	mov	rdi, QWORD PTR -120[rbp]
	mov	ecx, DWORD PTR -100[rbp]
	mov	rdx, QWORD PTR -96[rbp]
	mov	esi, DWORD PTR -76[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_mult
	mov	r8d, DWORD PTR 56[rbp]
	mov	rdi, QWORD PTR -48[rbp]
	mov	ecx, DWORD PTR 24[rbp]
	mov	rdx, QWORD PTR -112[rbp]
	mov	esi, DWORD PTR -80[rbp]
	mov	rax, QWORD PTR -88[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_mult
	mov	r8d, DWORD PTR 56[rbp]
	mov	rdi, QWORD PTR -128[rbp]
	mov	ecx, DWORD PTR 56[rbp]
	mov	rdx, QWORD PTR -48[rbp]
	mov	esi, DWORD PTR 40[rbp]
	mov	rax, QWORD PTR -120[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_sum
	mov	rsp, rbx
	nop
	mov	rax, QWORD PTR -40[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L779
	call	__stack_chk_fail@PLT
.L779:
	lea	rsp, -24[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE116:
	.size	ft_closedloop_series, .-ft_closedloop_series
	.globl	ft_closedloop_sensitivity
	.type	ft_closedloop_sensitivity, @function
ft_closedloop_sensitivity:
.LFB117:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r13
	push	r12
	push	rbx
	sub	rsp, 104
	.cfi_offset 13, -24
	.cfi_offset 12, -32
	.cfi_offset 3, -40
	mov	QWORD PTR -72[rbp], rdi
	mov	DWORD PTR -76[rbp], esi
	mov	QWORD PTR -88[rbp], rdx
	mov	DWORD PTR -80[rbp], ecx
	mov	QWORD PTR -96[rbp], r8
	mov	DWORD PTR -100[rbp], r9d
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -112[rbp], rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR -120[rbp], rax
	mov	rax, QWORD PTR 48[rbp]
	mov	QWORD PTR -128[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -40[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	rbx, rax
	mov	edx, DWORD PTR -76[rbp]
	mov	eax, DWORD PTR -100[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -60[rbp], eax
	mov	edx, DWORD PTR -80[rbp]
	mov	eax, DWORD PTR 24[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR 56[rbp], eax
	mov	edx, DWORD PTR -80[rbp]
	mov	eax, DWORD PTR 24[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR 40[rbp], eax
	mov	eax, DWORD PTR -60[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -56[rbp], rdx
	movsx	rdx, eax
	mov	r12, rdx
	mov	r13d, 0
	movsx	rdx, eax
	mov	r10, rdx
	mov	r11d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L781:
	cmp	rsp, rdx
	je	.L782
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L781
.L782:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L783
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L783:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -48[rbp], rax
	mov	r8d, DWORD PTR 40[rbp]
	mov	rdi, QWORD PTR -120[rbp]
	mov	ecx, DWORD PTR 24[rbp]
	mov	rdx, QWORD PTR -112[rbp]
	mov	esi, DWORD PTR -80[rbp]
	mov	rax, QWORD PTR -88[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_mult
	mov	r8d, DWORD PTR -60[rbp]
	mov	rdi, QWORD PTR -48[rbp]
	mov	ecx, DWORD PTR -100[rbp]
	mov	rdx, QWORD PTR -96[rbp]
	mov	esi, DWORD PTR -76[rbp]
	mov	rax, QWORD PTR -72[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_mult
	mov	r8d, DWORD PTR 56[rbp]
	mov	rdi, QWORD PTR -128[rbp]
	mov	ecx, DWORD PTR -60[rbp]
	mov	rdx, QWORD PTR -48[rbp]
	mov	esi, DWORD PTR 40[rbp]
	mov	rax, QWORD PTR -120[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_sum
	mov	rsp, rbx
	nop
	mov	rax, QWORD PTR -40[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L784
	call	__stack_chk_fail@PLT
.L784:
	lea	rsp, -24[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE117:
	.size	ft_closedloop_sensitivity, .-ft_closedloop_sensitivity
	.globl	ft_closedloop_feedback
	.type	ft_closedloop_feedback, @function
ft_closedloop_feedback:
.LFB118:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 136
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	QWORD PTR -104[rbp], rdi
	mov	DWORD PTR -108[rbp], esi
	mov	QWORD PTR -120[rbp], rdx
	mov	DWORD PTR -112[rbp], ecx
	mov	QWORD PTR -128[rbp], r8
	mov	DWORD PTR -132[rbp], r9d
	mov	rax, QWORD PTR 16[rbp]
	mov	QWORD PTR -144[rbp], rax
	mov	rax, QWORD PTR 32[rbp]
	mov	QWORD PTR -152[rbp], rax
	mov	rax, QWORD PTR 48[rbp]
	mov	QWORD PTR -160[rbp], rax
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	rbx, rax
	mov	edx, DWORD PTR -112[rbp]
	mov	eax, DWORD PTR -132[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR 40[rbp], eax
	mov	edx, DWORD PTR -112[rbp]
	mov	eax, DWORD PTR 24[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR 56[rbp], eax
	mov	edx, DWORD PTR -108[rbp]
	mov	eax, DWORD PTR -132[rbp]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -92[rbp], eax
	mov	eax, DWORD PTR 56[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -88[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -176[rbp], rdx
	mov	QWORD PTR -168[rbp], 0
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L786:
	cmp	rsp, rdx
	je	.L787
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L786
.L787:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L788
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L788:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	eax, DWORD PTR -92[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	r12, rdx
	mov	r13d, 0
	movsx	rdx, eax
	mov	r10, rdx
	mov	r11d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L789:
	cmp	rsp, rdx
	je	.L790
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L789
.L790:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L791
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L791:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	r8d, DWORD PTR -92[rbp]
	mov	rdi, QWORD PTR -64[rbp]
	mov	ecx, DWORD PTR -132[rbp]
	mov	rdx, QWORD PTR -128[rbp]
	mov	esi, DWORD PTR -108[rbp]
	mov	rax, QWORD PTR -104[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_mult
	mov	r8d, DWORD PTR 56[rbp]
	mov	rdi, QWORD PTR -80[rbp]
	mov	ecx, DWORD PTR 24[rbp]
	mov	rdx, QWORD PTR -144[rbp]
	mov	esi, DWORD PTR -112[rbp]
	mov	rax, QWORD PTR -120[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_mult
	mov	r8d, DWORD PTR 56[rbp]
	mov	rdi, QWORD PTR -160[rbp]
	mov	ecx, DWORD PTR 56[rbp]
	mov	rdx, QWORD PTR -80[rbp]
	mov	esi, DWORD PTR -92[rbp]
	mov	rax, QWORD PTR -64[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_sum
	mov	r8d, DWORD PTR 40[rbp]
	mov	rdi, QWORD PTR -152[rbp]
	mov	ecx, DWORD PTR -132[rbp]
	mov	rdx, QWORD PTR -128[rbp]
	mov	esi, DWORD PTR -112[rbp]
	mov	rax, QWORD PTR -120[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	poly_mult
	mov	rsp, rbx
	nop
	mov	rax, QWORD PTR -56[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L792
	call	__stack_chk_fail@PLT
.L792:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE118:
	.size	ft_closedloop_feedback, .-ft_closedloop_feedback
	.globl	check_stability_closedloop
	.type	check_stability_closedloop, @function
check_stability_closedloop:
.LFB119:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 168
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	QWORD PTR -136[rbp], rdi
	mov	DWORD PTR -140[rbp], esi
	mov	QWORD PTR -152[rbp], rdx
	mov	DWORD PTR -144[rbp], ecx
	mov	QWORD PTR -160[rbp], r8
	mov	DWORD PTR -164[rbp], r9d
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	QWORD PTR -176[rbp], rax
	mov	eax, DWORD PTR -140[rbp]
	mov	DWORD PTR -116[rbp], eax
	mov	ecx, DWORD PTR -140[rbp]
	mov	eax, DWORD PTR -140[rbp]
	add	eax, eax
	lea	esi, -1[rax]
	movsx	rax, ecx
	sub	rax, 1
	mov	QWORD PTR -96[rbp], rax
	movsx	rax, ecx
	mov	QWORD PTR -208[rbp], rax
	mov	QWORD PTR -200[rbp], 0
	movsx	rax, ecx
	lea	rbx, 0[0+rax*8]
	movsx	rax, esi
	sub	rax, 1
	mov	QWORD PTR -88[rbp], rax
	movsx	rax, ecx
	mov	QWORD PTR -192[rbp], rax
	mov	QWORD PTR -184[rbp], 0
	movsx	rax, esi
	mov	r14, rax
	mov	r15d, 0
	mov	r8, QWORD PTR -192[rbp]
	mov	r9, QWORD PTR -184[rbp]
	mov	rdx, r9
	imul	rdx, r14
	mov	rax, r8
	imul	rax, r15
	lea	rdi, [rdx+rax]
	mov	rax, r8
	mul	r14
	add	rdi, rdx
	mov	rdx, rdi
	movsx	rax, ecx
	mov	r12, rax
	mov	r13d, 0
	movsx	rax, esi
	mov	r10, rax
	mov	r11d, 0
	mov	rdx, r13
	imul	rdx, r10
	mov	rax, r11
	imul	rax, r12
	lea	rdi, [rdx+rax]
	mov	rax, r12
	mul	r10
	add	rdi, rdx
	mov	rdx, rdi
	movsx	rdx, ecx
	movsx	rax, esi
	imul	rax, rdx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L794:
	cmp	rsp, rdx
	je	.L795
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L794
.L795:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L796
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L796:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	DWORD PTR -108[rbp], 0
	mov	rax, QWORD PTR -152[rbp]
	mov	QWORD PTR -72[rbp], rax
	mov	rax, QWORD PTR -160[rbp]
	mov	QWORD PTR -64[rbp], rax
	pxor	xmm0, xmm0
	movsd	QWORD PTR -104[rbp], xmm0
	mov	DWORD PTR -120[rbp], 0
	jmp	.L797
.L798:
	mov	eax, DWORD PTR -120[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	movsd	xmm1, QWORD PTR -104[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -104[rbp], xmm0
	add	DWORD PTR -120[rbp], 1
.L797:
	mov	eax, DWORD PTR -120[rbp]
	cmp	eax, DWORD PTR -140[rbp]
	jl	.L798
	movsd	xmm0, QWORD PTR -104[rbp]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	seta	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	pxor	xmm0, xmm0
	movsd	QWORD PTR -104[rbp], xmm0
	mov	DWORD PTR -120[rbp], 0
	jmp	.L799
.L800:
	mov	eax, DWORD PTR -120[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	movsd	xmm4, QWORD PTR [rax]
	movsd	QWORD PTR -192[rbp], xmm4
	mov	eax, DWORD PTR -140[rbp]
	sub	eax, 1
	sub	eax, DWORD PTR -120[rbp]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mov	rax, QWORD PTR .LC15[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	internal_pow
	mulsd	xmm0, QWORD PTR -192[rbp]
	movsd	xmm1, QWORD PTR -104[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -104[rbp], xmm0
	add	DWORD PTR -120[rbp], 1
.L799:
	mov	eax, DWORD PTR -120[rbp]
	cmp	eax, DWORD PTR -140[rbp]
	jl	.L800
	mov	eax, DWORD PTR -140[rbp]
	sub	eax, 1
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mov	rax, QWORD PTR .LC15[rip]
	movapd	xmm1, xmm0
	movq	xmm0, rax
	call	internal_pow
	movsd	xmm1, QWORD PTR -104[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -104[rbp], xmm0
	movsd	xmm0, QWORD PTR -104[rbp]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	seta	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	mov	eax, DWORD PTR -140[rbp]
	cdqe
	sal	rax, 3
	lea	rdx, -8[rax]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	mov	rax, QWORD PTR [rax]
	movq	xmm0, rax
	call	internal_abs
	mov	rax, QWORD PTR -136[rbp]
	movsd	xmm1, QWORD PTR [rax]
	comisd	xmm1, xmm0
	seta	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	mov	DWORD PTR -120[rbp], 0
	jmp	.L801
.L813:
	mov	DWORD PTR -124[rbp], 0
	jmp	.L802
.L812:
	mov	rcx, rbx
	shr	rcx, 3
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -124[rbp]
	movsx	rsi, edx
	mov	edx, DWORD PTR -120[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	add	rdx, rsi
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	cmp	DWORD PTR -120[rbp], 0
	jne	.L803
	mov	eax, DWORD PTR -124[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -136[rbp]
	add	rax, rdx
	mov	rcx, rbx
	shr	rcx, 3
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -124[rbp]
	movsx	rsi, edx
	mov	edx, DWORD PTR -120[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	add	rdx, rsi
	movsd	QWORD PTR [rax+rdx*8], xmm0
	jmp	.L804
.L803:
	mov	eax, DWORD PTR -120[rbp]
	and	eax, 1
	test	eax, eax
	je	.L805
	mov	DWORD PTR -112[rbp], 0
	jmp	.L806
.L807:
	mov	rsi, rbx
	shr	rsi, 3
	mov	eax, DWORD PTR -120[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -116[rbp]
	sub	eax, DWORD PTR -112[rbp]
	lea	edi, -1[rax]
	mov	rcx, rbx
	shr	rcx, 3
	mov	rax, QWORD PTR -80[rbp]
	movsx	rdi, edi
	movsx	rdx, edx
	imul	rdx, rsi
	add	rdx, rdi
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -112[rbp]
	movsx	rsi, edx
	mov	edx, DWORD PTR -120[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	add	rdx, rsi
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -112[rbp], 1
.L806:
	mov	eax, DWORD PTR -112[rbp]
	cmp	eax, DWORD PTR -116[rbp]
	jl	.L807
	sub	DWORD PTR -116[rbp], 1
	mov	eax, DWORD PTR -116[rbp]
	mov	DWORD PTR -124[rbp], eax
	jmp	.L804
.L805:
	mov	rcx, rbx
	shr	rcx, 3
	mov	eax, DWORD PTR -120[rbp]
	lea	edx, -2[rax]
	mov	rax, QWORD PTR -80[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	seta	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	mov	rcx, rbx
	shr	rcx, 3
	mov	eax, DWORD PTR -120[rbp]
	lea	esi, -2[rax]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -124[rbp]
	movsx	rdi, edx
	movsx	rdx, esi
	imul	rdx, rcx
	add	rdx, rdi
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mov	rcx, rbx
	shr	rcx, 3
	mov	eax, DWORD PTR -120[rbp]
	lea	esi, -2[rax]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -116[rbp]
	movsx	rdi, edx
	movsx	rdx, esi
	imul	rdx, rcx
	add	rdx, rdi
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mov	rcx, rbx
	shr	rcx, 3
	mov	eax, DWORD PTR -120[rbp]
	lea	edx, -2[rax]
	mov	rax, QWORD PTR -80[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	movsd	xmm3, QWORD PTR [rax+rdx*8]
	movapd	xmm2, xmm1
	divsd	xmm2, xmm3
	mov	rcx, rbx
	shr	rcx, 3
	mov	eax, DWORD PTR -120[rbp]
	lea	esi, -1[rax]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -124[rbp]
	movsx	rdi, edx
	movsx	rdx, esi
	imul	rdx, rcx
	add	rdx, rdi
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mulsd	xmm1, xmm2
	mov	rcx, rbx
	shr	rcx, 3
	subsd	xmm0, xmm1
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -124[rbp]
	movsx	rsi, edx
	mov	edx, DWORD PTR -120[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	add	rdx, rsi
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	rax, QWORD PTR -80[rbp]
	movsd	xmm0, QWORD PTR [rax]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jb	.L808
	mov	rcx, rbx
	shr	rcx, 3
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -120[rbp]
	movsx	rdx, edx
	imul	rdx, rcx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jb	.L808
	mov	eax, 1
	jmp	.L811
.L808:
	mov	eax, 0
.L811:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
.L804:
	add	DWORD PTR -124[rbp], 1
.L802:
	mov	eax, DWORD PTR -124[rbp]
	cmp	eax, DWORD PTR -116[rbp]
	jl	.L812
	add	DWORD PTR -120[rbp], 1
.L801:
	mov	eax, DWORD PTR -140[rbp]
	add	eax, eax
	sub	eax, 1
	cmp	DWORD PTR -120[rbp], eax
	jl	.L813
	mov	eax, 1
	mov	rsp, QWORD PTR -176[rbp]
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L815
	call	__stack_chk_fail@PLT
.L815:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE119:
	.size	check_stability_closedloop, .-check_stability_closedloop
	.section	.rodata
	.align 8
.LC46:
	.string	"impl.frac_bits must be less than word width!"
	.align 8
.LC47:
	.string	"impl.int_bits must be less than word width subtracted by precision!"
	.align 8
.LC48:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/core/initialization.h"
.LC49:
	.string	"0"
	.text
	.globl	initialization
	.type	initialization, @function
initialization:
.LFB120:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR impl[rip+4]
	cmp	eax, 31
	jle	.L819
	lea	rdi, .LC46[rip]
	call	puts@PLT
.L819:
	mov	eax, DWORD PTR impl[rip]
	mov	ecx, DWORD PTR impl[rip+4]
	mov	edx, 32
	sub	edx, ecx
	cmp	eax, edx
	jl	.L820
	lea	rdi, .LC47[rip]
	call	puts@PLT
	lea	rcx, __PRETTY_FUNCTION__.9[rip]
	mov	edx, 33
	lea	rsi, .LC48[rip]
	lea	rdi, .LC49[rip]
	call	__assert_fail@PLT
.L820:
	mov	eax, DWORD PTR impl[rip+4]
	cmp	eax, 30
	jle	.L821
	mov	QWORD PTR _fxp_one[rip], 2147483647
	jmp	.L822
.L821:
	mov	eax, DWORD PTR impl[rip+4]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	cdqe
	mov	QWORD PTR _fxp_one[rip], rax
.L822:
	mov	eax, DWORD PTR impl[rip+4]
	sub	eax, 1
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	cdqe
	mov	QWORD PTR _fxp_half[rip], rax
	mov	eax, DWORD PTR impl[rip+4]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	neg	eax
	cdqe
	mov	QWORD PTR _fxp_minus_one[rip], rax
	mov	edx, DWORD PTR impl[rip+4]
	mov	eax, DWORD PTR impl[rip]
	add	eax, edx
	sub	eax, 1
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	neg	eax
	cdqe
	mov	QWORD PTR _fxp_min[rip], rax
	mov	edx, DWORD PTR impl[rip+4]
	mov	eax, DWORD PTR impl[rip]
	add	eax, edx
	sub	eax, 1
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	sub	eax, 1
	cdqe
	mov	QWORD PTR _fxp_max[rip], rax
	mov	eax, DWORD PTR impl[rip+4]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	sub	eax, 1
	cdqe
	mov	QWORD PTR _fxp_fmask[rip], rax
	mov	edx, DWORD PTR impl[rip+4]
	mov	eax, 31
	sub	eax, edx
	mov	edx, -2147483648
	mov	ecx, eax
	shr	edx, cl
	mov	eax, edx
	mov	eax, eax
	mov	QWORD PTR _fxp_imask[rip], rax
	mov	rax, QWORD PTR _fxp_min[rip]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	movsd	QWORD PTR _dbl_min[rip], xmm0
	movsd	xmm0, QWORD PTR _dbl_min[rip]
	mov	eax, DWORD PTR impl[rip+4]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	movsd	QWORD PTR _dbl_min[rip], xmm0
	mov	rax, QWORD PTR _fxp_max[rip]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	movsd	QWORD PTR _dbl_max[rip], xmm0
	movsd	xmm0, QWORD PTR _dbl_max[rip]
	mov	eax, DWORD PTR impl[rip+4]
	mov	edx, 1
	mov	ecx, eax
	sal	edx, cl
	mov	eax, edx
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	movsd	QWORD PTR _dbl_max[rip], xmm0
	mov	eax, DWORD PTR impl[rip+40]
	test	eax, eax
	je	.L823
	mov	eax, DWORD PTR impl[rip+40]
	cmp	eax, 1
	jne	.L824
.L823:
	mov	DWORD PTR impl[rip+40], 1
	jmp	.L818
.L824:
	movsd	xmm0, QWORD PTR impl[rip+16]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L829
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	je	.L826
.L829:
	movsd	xmm0, QWORD PTR impl[rip+16]
	mov	eax, DWORD PTR impl[rip+40]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	movsd	QWORD PTR impl[rip+16], xmm0
.L826:
	movsd	xmm0, QWORD PTR impl[rip+8]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L830
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	je	.L818
.L830:
	movsd	xmm0, QWORD PTR impl[rip+8]
	mov	eax, DWORD PTR impl[rip+40]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	divsd	xmm0, xmm1
	movsd	QWORD PTR impl[rip+8], xmm0
.L818:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE120:
	.size	initialization, .-initialization
	.globl	double_state_space_representation
	.type	double_state_space_representation, @function
double_state_space_representation:
.LFB121:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 288
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -280[rbp], 0
	jmp	.L832
.L835:
	mov	DWORD PTR -276[rbp], 0
	jmp	.L833
.L834:
	mov	eax, DWORD PTR -276[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -280[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -272[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -276[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -280[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -144[rbp+rax*8], xmm0
	add	DWORD PTR -276[rbp], 1
.L833:
	cmp	DWORD PTR -276[rbp], 3
	jle	.L834
	add	DWORD PTR -280[rbp], 1
.L832:
	cmp	DWORD PTR -280[rbp], 3
	jle	.L835
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller[rip+512]
	lea	r8, _controller[rip+256]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	lea	r9, _controller[rip+768]
	lea	r8, _controller[rip+384]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rdx, -144[rbp]
	lea	rax, -272[rbp]
	lea	r8, _controller[rip+640]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_add_matrix
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller[rip+512]
	lea	r8, _controller[rip]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	lea	r9, _controller[rip+768]
	lea	r8, _controller[rip+128]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rdx, -144[rbp]
	lea	rax, -272[rbp]
	lea	r8, _controller[rip+512]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_add_matrix
	movsd	xmm0, QWORD PTR _controller[rip+640]
	movq	rax, xmm0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L837
	call	__stack_chk_fail@PLT
.L837:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE121:
	.size	double_state_space_representation, .-double_state_space_representation
	.globl	fxp_state_space_representation
	.type	fxp_state_space_representation, @function
fxp_state_space_representation:
.LFB122:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1184
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L839
.L842:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L840
.L841:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -1168[rbp+rax*8], 0
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -1040[rbp+rax*8], 0
	add	DWORD PTR -1172[rbp], 1
.L840:
	cmp	DWORD PTR -1172[rbp], 3
	jle	.L841
	add	DWORD PTR -1176[rbp], 1
.L839:
	cmp	DWORD PTR -1176[rbp], 3
	jle	.L842
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L843
.L846:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L844
.L845:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -912[rbp+rax*8], 0
	add	DWORD PTR -1172[rbp], 1
.L844:
	cmp	DWORD PTR -1172[rbp], 3
	jle	.L845
	add	DWORD PTR -1176[rbp], 1
.L843:
	cmp	DWORD PTR -1176[rbp], 3
	jle	.L846
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L847
.L850:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L848
.L849:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -784[rbp+rax*8], 0
	add	DWORD PTR -1172[rbp], 1
.L848:
	cmp	DWORD PTR -1172[rbp], 3
	jle	.L849
	add	DWORD PTR -1176[rbp], 1
.L847:
	cmp	DWORD PTR -1176[rbp], 3
	jle	.L850
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L851
.L854:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L852
.L853:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -656[rbp+rax*8], 0
	add	DWORD PTR -1172[rbp], 1
.L852:
	cmp	DWORD PTR -1172[rbp], 3
	jle	.L853
	add	DWORD PTR -1176[rbp], 1
.L851:
	cmp	DWORD PTR -1176[rbp], 3
	jle	.L854
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L855
.L858:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L856
.L857:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -528[rbp+rax*8], 0
	add	DWORD PTR -1172[rbp], 1
.L856:
	cmp	DWORD PTR -1172[rbp], 3
	jle	.L857
	add	DWORD PTR -1176[rbp], 1
.L855:
	cmp	DWORD PTR -1176[rbp], 3
	jle	.L858
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L859
.L862:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L860
.L861:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -400[rbp+rax*8], 0
	add	DWORD PTR -1172[rbp], 1
.L860:
	cmp	DWORD PTR -1172[rbp], 3
	jle	.L861
	add	DWORD PTR -1176[rbp], 1
.L859:
	cmp	DWORD PTR -1176[rbp], 3
	jle	.L862
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L863
.L866:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L864
.L865:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -272[rbp+rax*8], 0
	add	DWORD PTR -1172[rbp], 1
.L864:
	cmp	DWORD PTR -1172[rbp], 3
	jle	.L865
	add	DWORD PTR -1176[rbp], 1
.L863:
	cmp	DWORD PTR -1176[rbp], 3
	jle	.L866
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L867
.L870:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L868
.L869:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -144[rbp+rax*8], 0
	add	DWORD PTR -1172[rbp], 1
.L868:
	cmp	DWORD PTR -1172[rbp], 3
	jle	.L869
	add	DWORD PTR -1176[rbp], 1
.L867:
	cmp	DWORD PTR -1176[rbp], 3
	jle	.L870
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L871
.L874:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L872
.L873:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1172[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -1176[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -912[rbp+rdx*8], rax
	add	DWORD PTR -1172[rbp], 1
.L872:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1172[rbp], eax
	jl	.L873
	add	DWORD PTR -1176[rbp], 1
.L871:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1176[rbp], eax
	jl	.L874
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L875
.L878:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L876
.L877:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 16
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1172[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -1176[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -784[rbp+rdx*8], rax
	add	DWORD PTR -1172[rbp], 1
.L876:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1172[rbp], eax
	jl	.L877
	add	DWORD PTR -1176[rbp], 1
.L875:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1176[rbp], eax
	jl	.L878
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L879
.L882:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L880
.L881:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 32
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1172[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -1176[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -656[rbp+rdx*8], rax
	add	DWORD PTR -1172[rbp], 1
.L880:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1172[rbp], eax
	jl	.L881
	add	DWORD PTR -1176[rbp], 1
.L879:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1176[rbp], eax
	jl	.L882
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L883
.L886:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L884
.L885:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 48
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1172[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -1176[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -528[rbp+rdx*8], rax
	add	DWORD PTR -1172[rbp], 1
.L884:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1172[rbp], eax
	jl	.L885
	add	DWORD PTR -1176[rbp], 1
.L883:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1176[rbp], eax
	jl	.L886
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L887
.L890:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L888
.L889:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1172[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -1176[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -400[rbp+rdx*8], rax
	add	DWORD PTR -1172[rbp], 1
.L888:
	cmp	DWORD PTR -1172[rbp], 0
	jle	.L889
	add	DWORD PTR -1176[rbp], 1
.L887:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1176[rbp], eax
	jl	.L890
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L891
.L894:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L892
.L893:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 96
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1172[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -1176[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -272[rbp+rdx*8], rax
	add	DWORD PTR -1172[rbp], 1
.L892:
	cmp	DWORD PTR -1172[rbp], 0
	jle	.L893
	add	DWORD PTR -1176[rbp], 1
.L891:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1176[rbp], eax
	jl	.L894
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L895
.L898:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L896
.L897:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 80
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1172[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -1176[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -144[rbp+rdx*8], rax
	add	DWORD PTR -1172[rbp], 1
.L896:
	cmp	DWORD PTR -1172[rbp], 0
	jle	.L897
	add	DWORD PTR -1176[rbp], 1
.L895:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1176[rbp], eax
	jl	.L898
	mov	eax, DWORD PTR nStates[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rcx, -400[rbp]
	lea	rdx, -656[rbp]
	sub	rsp, 8
	lea	rax, -1168[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, 1
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rcx, -272[rbp]
	lea	rdx, -528[rbp]
	sub	rsp, 8
	lea	rax, -1040[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, 1
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rcx, -144[rbp]
	lea	rdx, -1040[rbp]
	lea	rax, -1168[rbp]
	mov	r8, rcx
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	fxp_add_matrix
	mov	eax, DWORD PTR nStates[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -400[rbp]
	lea	rdx, -912[rbp]
	sub	rsp, 8
	lea	rax, -1168[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, 1
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -272[rbp]
	lea	rdx, -784[rbp]
	sub	rsp, 8
	lea	rax, -1040[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, 1
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -400[rbp]
	lea	rdx, -1040[rbp]
	lea	rax, -1168[rbp]
	mov	r8, rcx
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	fxp_add_matrix
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L899
.L902:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L900
.L901:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	rax, QWORD PTR -400[rbp+rax*8]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	edx, DWORD PTR -1172[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -1176[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	add	rdx, 64
	lea	rcx, 0[0+rdx*8]
	lea	rdx, _controller[rip]
	mov	QWORD PTR [rcx+rdx], rax
	add	DWORD PTR -1172[rbp], 1
.L900:
	cmp	DWORD PTR -1172[rbp], 0
	jle	.L901
	add	DWORD PTR -1176[rbp], 1
.L899:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1176[rbp], eax
	jl	.L902
	mov	DWORD PTR -1176[rbp], 0
	jmp	.L903
.L906:
	mov	DWORD PTR -1172[rbp], 0
	jmp	.L904
.L905:
	mov	eax, DWORD PTR -1172[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1176[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	rax, QWORD PTR -144[rbp+rax*8]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	edx, DWORD PTR -1172[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -1176[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	add	rdx, 80
	lea	rcx, 0[0+rdx*8]
	lea	rdx, _controller[rip]
	mov	QWORD PTR [rcx+rdx], rax
	add	DWORD PTR -1172[rbp], 1
.L904:
	cmp	DWORD PTR -1172[rbp], 0
	jle	.L905
	add	DWORD PTR -1176[rbp], 1
.L903:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1176[rbp], eax
	jl	.L906
	movsd	xmm0, QWORD PTR _controller[rip+640]
	movq	rax, xmm0
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L908
	call	__stack_chk_fail@PLT
.L908:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE122:
	.size	fxp_state_space_representation, .-fxp_state_space_representation
	.section	.rodata
	.align 8
.LC50:
	.string	"Warning: Function sinTyl from bmc/core/filter_functions.h: Precision must be a positive integer. Assuming 0 precision"
	.align 8
.LC56:
	.string	"Warning: Function sinTyl from bmc/core/filter_functions.h: Precision representation exceeded. Assuming maximum precision of 6"
	.text
	.globl	sinTyl
	.type	sinTyl, @function
sinTyl:
.LFB123:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	movsd	QWORD PTR -40[rbp], xmm0
	mov	DWORD PTR -44[rbp], edi
	movsd	xmm0, QWORD PTR -40[rbp]
	mulsd	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 0
	jns	.L910
	lea	rdi, .LC50[rip]
	call	puts@PLT
	mov	DWORD PTR -44[rbp], 0
.L910:
	cmp	DWORD PTR -44[rbp], 0
	js	.L911
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 0
	jle	.L911
	movsd	xmm0, QWORD PTR -40[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	addsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 1
	jle	.L911
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR .LC51[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 2
	jle	.L911
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC52[rip]
	divsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 3
	jle	.L911
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR .LC53[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 4
	jle	.L911
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC54[rip]
	divsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 5
	jle	.L911
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR .LC55[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 6
	jle	.L911
	lea	rdi, .LC56[rip]
	call	puts@PLT
.L911:
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE123:
	.size	sinTyl, .-sinTyl
	.section	.rodata
	.align 8
.LC57:
	.string	"Warning: Function cosTyl from bmc/core/filter_functions.h: Precision must be a positive integer. Assuming 0 precision"
	.text
	.globl	cosTyl
	.type	cosTyl, @function
cosTyl:
.LFB124:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	movsd	QWORD PTR -40[rbp], xmm0
	mov	DWORD PTR -44[rbp], edi
	movsd	xmm0, QWORD PTR -40[rbp]
	mulsd	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 0
	jns	.L914
	lea	rdi, .LC57[rip]
	call	puts@PLT
	mov	DWORD PTR -44[rbp], 0
.L914:
	cmp	DWORD PTR -44[rbp], 0
	js	.L915
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 0
	jle	.L915
	movsd	xmm0, QWORD PTR .LC7[rip]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC7[rip]
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 1
	jle	.L915
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR .LC58[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 2
	jle	.L915
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC59[rip]
	divsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 3
	jle	.L915
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR .LC60[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 4
	jle	.L915
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC61[rip]
	divsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 5
	jle	.L915
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR .LC62[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 6
	jle	.L915
	lea	rdi, .LC56[rip]
	call	puts@PLT
.L915:
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE124:
	.size	cosTyl, .-cosTyl
	.section	.rodata
	.align 8
.LC66:
	.string	"Warning: Function sinTyl from bmc/core/filter_functions.h: Precision representation exceeded. Assuming maximum precision of 4"
	.text
	.globl	atanTyl
	.type	atanTyl, @function
atanTyl:
.LFB125:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	movsd	QWORD PTR -40[rbp], xmm0
	mov	DWORD PTR -44[rbp], edi
	movsd	xmm0, QWORD PTR -40[rbp]
	mulsd	xmm0, xmm0
	movsd	QWORD PTR -16[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 0
	jns	.L918
	lea	rdi, .LC50[rip]
	call	puts@PLT
	mov	DWORD PTR -44[rbp], 0
.L918:
	cmp	DWORD PTR -44[rbp], 0
	js	.L919
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 0
	jle	.L919
	movsd	xmm0, QWORD PTR -40[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 1
	jle	.L919
	movsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR .LC63[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 2
	jle	.L919
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC64[rip]
	divsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 3
	jle	.L919
	movsd	xmm0, QWORD PTR -8[rbp]
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm2, QWORD PTR .LC65[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, xmm2
	movsd	xmm0, QWORD PTR -24[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	cmp	DWORD PTR -44[rbp], 6
	jle	.L919
	lea	rdi, .LC66[rip]
	call	puts@PLT
.L919:
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE125:
	.size	atanTyl, .-atanTyl
	.globl	sqrt1
	.type	sqrt1, @function
sqrt1:
.LFB126:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -20[rbp], xmm0
	movss	xmm1, DWORD PTR -20[rbp]
	movss	xmm0, DWORD PTR .LC67[rip]
	mulss	xmm0, xmm1
	movss	DWORD PTR -4[rbp], xmm0
	movss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR -8[rbp], xmm0
	mov	eax, DWORD PTR -8[rbp]
	sar	eax
	mov	edx, eax
	mov	eax, 1597463007
	sub	eax, edx
	mov	DWORD PTR -8[rbp], eax
	movss	xmm0, DWORD PTR -8[rbp]
	movaps	xmm1, xmm0
	mulss	xmm1, DWORD PTR -20[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	movaps	xmm2, xmm0
	mulss	xmm2, DWORD PTR -4[rbp]
	movss	xmm0, DWORD PTR -8[rbp]
	mulss	xmm2, xmm0
	movss	xmm0, DWORD PTR .LC68[rip]
	subss	xmm0, xmm2
	mulss	xmm0, xmm1
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE126:
	.size	sqrt1, .-sqrt1
	.globl	sqrt2
	.type	sqrt2, @function
sqrt2:
.LFB127:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -20[rbp], xmm0
	movss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR -4[rbp], xmm0
	mov	eax, DWORD PTR -4[rbp]
	sar	eax
	add	eax, 532676608
	mov	DWORD PTR -4[rbp], eax
	movss	xmm0, DWORD PTR -4[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE127:
	.size	sqrt2, .-sqrt2
	.globl	fabsolut
	.type	fabsolut, @function
fabsolut:
.LFB128:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	movss	DWORD PTR -4[rbp], xmm0
	pxor	xmm0, xmm0
	comiss	xmm0, DWORD PTR -4[rbp]
	jbe	.L926
	movss	xmm0, DWORD PTR -4[rbp]
	movss	xmm1, DWORD PTR .LC69[rip]
	xorps	xmm0, xmm1
	movss	DWORD PTR -4[rbp], xmm0
.L926:
	movss	xmm0, DWORD PTR -4[rbp]
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE128:
	.size	fabsolut, .-fabsolut
	.type	sqrt3, @function
sqrt3:
.LFB129:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 40
	movss	DWORD PTR -36[rbp], xmm0
	movss	xmm0, DWORD PTR -36[rbp]
	movss	xmm1, DWORD PTR .LC70[rip]
	divss	xmm0, xmm1
	movss	DWORD PTR -32[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC71[rip]
	movsd	QWORD PTR -16[rbp], xmm0
	mov	DWORD PTR -24[rbp], 0
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -36[rbp]
	jp	.L931
	pxor	xmm0, xmm0
	ucomiss	xmm0, DWORD PTR -36[rbp]
	jne	.L931
	pxor	xmm0, xmm0
	movss	DWORD PTR -32[rbp], xmm0
	jmp	.L933
.L931:
	mov	DWORD PTR -28[rbp], 1
	jmp	.L934
.L938:
	cmp	DWORD PTR -24[rbp], 0
	jne	.L936
	movss	xmm0, DWORD PTR -32[rbp]
	movaps	xmm1, xmm0
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -36[rbp]
	subss	xmm0, xmm1
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	pxor	xmm0, xmm0
	cvtss2sd	xmm0, DWORD PTR -32[rbp]
	addsd	xmm0, xmm0
	divsd	xmm1, xmm0
	pxor	xmm0, xmm0
	cvtsd2ss	xmm0, xmm1
	movss	DWORD PTR -20[rbp], xmm0
	movss	xmm0, DWORD PTR -32[rbp]
	addss	xmm0, DWORD PTR -20[rbp]
	movss	DWORD PTR -32[rbp], xmm0
	movss	xmm0, DWORD PTR -32[rbp]
	movaps	xmm1, xmm0
	mulss	xmm1, xmm0
	movss	xmm0, DWORD PTR -36[rbp]
	subss	xmm0, xmm1
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm2, xmm2
	cvtsd2ss	xmm2, QWORD PTR -8[rbp]
	movd	eax, xmm2
	movd	xmm0, eax
	call	fabsolut
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	comisd	xmm0, xmm1
	jb	.L936
	mov	DWORD PTR -24[rbp], 1
.L936:
	add	DWORD PTR -28[rbp], 1
.L934:
	cmp	DWORD PTR -28[rbp], 19
	jle	.L938
.L933:
	movss	xmm0, DWORD PTR -32[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE129:
	.size	sqrt3, .-sqrt3
	.globl	verify_overflow
	.type	verify_overflow, @function
verify_overflow:
.LFB130:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 296
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	QWORD PTR -248[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -152[rbp], rax
	movsx	rax, edx
	mov	rcx, rax
	mov	ebx, 0
	movsx	rax, edx
	mov	rsi, rax
	mov	edi, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L943:
	cmp	rsp, rcx
	je	.L944
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L943
.L944:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L945
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L945:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -160[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -168[rbp], rax
	movsx	rax, edx
	mov	r8, rax
	mov	r9d, 0
	movsx	rax, edx
	mov	r10, rax
	mov	r11d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L946:
	cmp	rsp, rcx
	je	.L947
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L946
.L947:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L948
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L948:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -176[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -160[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip]
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -176[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip+808]
	call	fxp_double_to_fxp_array
	mov	rax, QWORD PTR impl[rip+16]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -184[rbp], rax
	mov	rax, QWORD PTR impl[rip+8]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -144[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -136[rbp], rax
	movsx	rax, edx
	mov	r12, rax
	mov	r13d, 0
	movsx	rax, edx
	mov	r14, rax
	mov	r15d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L949:
	cmp	rsp, rcx
	je	.L950
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L949
.L950:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L951
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L951:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -128[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -120[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -208[rbp], rax
	mov	QWORD PTR -200[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -224[rbp], rax
	mov	QWORD PTR -216[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L952:
	cmp	rsp, rcx
	je	.L953
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L952
.L953:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L954
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L954:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -112[rbp], rax
	mov	DWORD PTR -192[rbp], 0
	jmp	.L955
.L958:
	mov	rdx, QWORD PTR -128[rbp]
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	mov	QWORD PTR [rdx+rax*8], 0
	mov	eax, 0
	call	nondet_int@PLT
	movsx	rcx, eax
	mov	rdx, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	mov	QWORD PTR [rdx+rax*8], rcx
	mov	rdx, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	mov	rax, QWORD PTR [rdx+rax*8]
	cmp	QWORD PTR -184[rbp], rax
	jg	.L956
	mov	rdx, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -192[rbp]
	cdqe
	mov	rax, QWORD PTR [rdx+rax*8]
	cmp	QWORD PTR -144[rbp], rax
	jl	.L956
	mov	eax, 1
	jmp	.L957
.L956:
	mov	eax, 0
.L957:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	add	DWORD PTR -192[rbp], 1
.L955:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -192[rbp], eax
	jl	.L958
	mov	DWORD PTR -188[rbp], 0
	mov	edx, DWORD PTR ds[rip+1608]
	mov	eax, DWORD PTR ds[rip+800]
	cmp	edx, eax
	cmovge	eax, edx
	mov	DWORD PTR -188[rbp], eax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, rsp
	mov	rbx, rax
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -104[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -240[rbp], rax
	mov	QWORD PTR -232[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -272[rbp], rax
	mov	QWORD PTR -264[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L959:
	cmp	rsp, rdx
	je	.L960
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L959
.L960:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L961
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L961:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -96[rbp], rax
	mov	eax, DWORD PTR ds[rip+1608]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -88[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -288[rbp], rdx
	mov	QWORD PTR -280[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -304[rbp], rdx
	mov	QWORD PTR -296[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L962:
	cmp	rsp, rdx
	je	.L963
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L962
.L963:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L964
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L964:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	eax, DWORD PTR -188[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -320[rbp], rdx
	mov	QWORD PTR -312[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -336[rbp], rdx
	mov	QWORD PTR -328[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L965:
	cmp	rsp, rdx
	je	.L966
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L965
.L966:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L967
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L967:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	DWORD PTR -192[rbp], 0
	jmp	.L968
.L969:
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, DWORD PTR -192[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], 0
	add	DWORD PTR -192[rbp], 1
.L968:
	mov	eax, DWORD PTR ds[rip+800]
	cmp	DWORD PTR -192[rbp], eax
	jl	.L969
	mov	DWORD PTR -192[rbp], 0
	jmp	.L970
.L971:
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -192[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], 0
	add	DWORD PTR -192[rbp], 1
.L970:
	mov	eax, DWORD PTR ds[rip+1608]
	cmp	DWORD PTR -192[rbp], eax
	jl	.L971
	mov	DWORD PTR -192[rbp], 0
	jmp	.L972
.L973:
	mov	rax, QWORD PTR -64[rbp]
	mov	edx, DWORD PTR -192[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], 0
	add	DWORD PTR -192[rbp], 1
.L972:
	mov	eax, DWORD PTR -192[rbp]
	cmp	eax, DWORD PTR -188[rbp]
	jl	.L973
	mov	DWORD PTR -192[rbp], 0
	jmp	.L974
.L975:
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -112[rbp]
	mov	ecx, DWORD PTR -192[rbp]
	movsx	rcx, ecx
	mov	rax, QWORD PTR [rax+rcx*8]
	mov	rcx, QWORD PTR -80[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	mov	r8d, DWORD PTR ds[rip+1608]
	mov	edi, DWORD PTR ds[rip+800]
	mov	rcx, QWORD PTR -176[rbp]
	mov	rdx, QWORD PTR -160[rbp]
	mov	rsi, QWORD PTR -80[rbp]
	mov	rax, QWORD PTR -96[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	rdi, rax
	call	fxp_direct_form_1
	mov	rdx, QWORD PTR -128[rbp]
	mov	ecx, DWORD PTR -192[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -128[rbp]
	mov	ecx, DWORD PTR -192[rbp]
	movsx	rcx, ecx
	mov	rax, QWORD PTR [rax+rcx*8]
	mov	rcx, QWORD PTR -96[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	add	DWORD PTR -192[rbp], 1
.L974:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -192[rbp], eax
	jl	.L975
	mov	DWORD PTR overflow_mode[rip], 1
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	mov	rax, QWORD PTR -128[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	fxp_verify_overflow_array
	mov	eax, 0
	mov	rsp, rbx
	mov	rsp, QWORD PTR -248[rbp]
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L977
	call	__stack_chk_fail@PLT
.L977:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE130:
	.size	verify_overflow, .-verify_overflow
	.section	.rodata
	.align 8
.LC72:
	.string	"#matrix STATES -------------------------------"
	.align 8
.LC73:
	.string	"#matrix OUTPUTS -------------------------------"
	.align 8
.LC74:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/engine/verify_limit_cycle.h"
	.text
	.globl	verify_limit_cycle_state_space
	.type	verify_limit_cycle_state_space, @function
verify_limit_cycle_state_space:
.LFB131:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 544
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -536[rbp], 0
	jmp	.L979
.L982:
	mov	DWORD PTR -540[rbp], 0
	jmp	.L980
.L981:
	mov	eax, DWORD PTR -540[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -536[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -272[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -540[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -536[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -144[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -540[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -536[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -528[rbp+rax*8], xmm0
	mov	eax, DWORD PTR -540[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -536[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -400[rbp+rax*8], xmm0
	add	DWORD PTR -540[rbp], 1
.L980:
	cmp	DWORD PTR -540[rbp], 3
	jle	.L981
	add	DWORD PTR -536[rbp], 1
.L979:
	cmp	DWORD PTR -536[rbp], 3
	jle	.L982
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller[rip+512]
	lea	r8, _controller[rip+256]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	lea	r9, _controller[rip+768]
	lea	r8, _controller[rip+384]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rdx, -144[rbp]
	lea	rax, -272[rbp]
	lea	r8, _controller[rip+640]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_add_matrix
	mov	DWORD PTR -544[rbp], 0
	mov	DWORD PTR -536[rbp], 1
	jmp	.L983
.L988:
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller[rip+512]
	lea	r8, _controller[rip]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	lea	r9, _controller[rip+768]
	lea	r8, _controller[rip+128]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rdx, -144[rbp]
	lea	rax, -272[rbp]
	lea	r8, _controller[rip+512]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_add_matrix
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller[rip+512]
	lea	r8, _controller[rip+256]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	lea	r9, _controller[rip+768]
	lea	r8, _controller[rip+384]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rdx, -144[rbp]
	lea	rax, -272[rbp]
	lea	r8, _controller[rip+640]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_add_matrix
	mov	DWORD PTR -532[rbp], 0
	jmp	.L984
.L985:
	mov	eax, DWORD PTR -532[rbp]
	cdqe
	add	rax, 16
	sal	rax, 5
	mov	rdx, rax
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -544[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -532[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -528[rbp+rax*8], xmm0
	add	DWORD PTR -532[rbp], 1
.L984:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -532[rbp], eax
	jl	.L985
	mov	DWORD PTR -532[rbp], 0
	jmp	.L986
.L987:
	mov	eax, DWORD PTR -532[rbp]
	cdqe
	add	rax, 20
	sal	rax, 5
	mov	rdx, rax
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -544[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -532[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -528[rbp+rax*8], xmm0
	add	DWORD PTR -532[rbp], 1
.L986:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -532[rbp], eax
	jl	.L987
	add	DWORD PTR -544[rbp], 1
	add	DWORD PTR -536[rbp], 1
.L983:
	cmp	DWORD PTR -536[rbp], 0
	js	.L988
	lea	rdi, .LC72[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR nStates[rip]
	mov	ecx, eax
	lea	rax, -528[rbp]
	mov	edx, 0
	mov	esi, ecx
	mov	rdi, rax
	call	print_matrix
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR nOutputs[rip]
	mov	ecx, eax
	lea	rax, -400[rbp]
	mov	edx, 0
	mov	esi, ecx
	mov	rdi, rax
	call	print_matrix
	lea	rcx, __PRETTY_FUNCTION__.8[rip]
	mov	edx, 93
	lea	rsi, .LC74[rip]
	lea	rdi, .LC49[rip]
	call	__assert_fail@PLT
	.cfi_endproc
.LFE131:
	.size	verify_limit_cycle_state_space, .-verify_limit_cycle_state_space
	.section	.rodata
	.align 8
.LC75:
	.string	"X_SIZE must be at least 2 * ds.a_size"
	.text
	.globl	verify_limit_cycle
	.type	verify_limit_cycle, @function
verify_limit_cycle:
.LFB132:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 472
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	QWORD PTR -424[rbp], rax
	mov	DWORD PTR overflow_mode[rip], 3
	mov	eax, DWORD PTR ds[rip+800]
	add	eax, eax
	mov	DWORD PTR -232[rbp], eax
	lea	rdi, .LC75[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -232[rbp], eax
	setle	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	mov	edx, DWORD PTR ds[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -168[rbp], rax
	movsx	rax, edx
	mov	r12, rax
	mov	r13d, 0
	movsx	rax, edx
	mov	r14, rax
	mov	r15d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L991:
	cmp	rsp, rcx
	je	.L992
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L991
.L992:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L993
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L993:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -176[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -184[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -256[rbp], rax
	mov	QWORD PTR -248[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -272[rbp], rax
	mov	QWORD PTR -264[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L994:
	cmp	rsp, rcx
	je	.L995
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L994
.L995:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L996
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L996:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -192[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -176[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip]
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -192[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip+808]
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -200[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -288[rbp], rax
	mov	QWORD PTR -280[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -304[rbp], rax
	mov	QWORD PTR -296[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L997:
	cmp	rsp, rcx
	je	.L998
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L997
.L998:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L999
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L999:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -208[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -216[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -320[rbp], rax
	mov	QWORD PTR -312[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -336[rbp], rax
	mov	QWORD PTR -328[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1000:
	cmp	rsp, rcx
	je	.L1001
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1000
.L1001:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1002
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1002:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -160[rbp], rax
	mov	rax, QWORD PTR impl[rip+16]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -152[rbp], rax
	mov	rax, QWORD PTR impl[rip+8]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -144[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -136[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -352[rbp], rax
	mov	QWORD PTR -344[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -368[rbp], rax
	mov	QWORD PTR -360[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1003:
	cmp	rsp, rcx
	je	.L1004
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1003
.L1004:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1005
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1005:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -128[rbp], rax
	mov	eax, 0
	call	nondet_int@PLT
	mov	DWORD PTR -224[rbp], eax
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	cmp	QWORD PTR -152[rbp], rax
	jg	.L1006
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	cmp	QWORD PTR -144[rbp], rax
	jl	.L1006
	mov	eax, 1
	jmp	.L1007
.L1006:
	mov	eax, 0
.L1007:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	DWORD PTR -228[rbp], 0
	jmp	.L1008
.L1009:
	mov	eax, DWORD PTR -224[rbp]
	movsx	rcx, eax
	mov	rdx, QWORD PTR -160[rbp]
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	mov	QWORD PTR [rdx+rax*8], rcx
	mov	rdx, QWORD PTR -208[rbp]
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	mov	QWORD PTR [rdx+rax*8], 0
	add	DWORD PTR -228[rbp], 1
.L1008:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -228[rbp], eax
	jl	.L1009
	mov	DWORD PTR -228[rbp], 0
	jmp	.L1010
.L1011:
	mov	eax, DWORD PTR -224[rbp]
	movsx	rcx, eax
	mov	rdx, QWORD PTR -128[rbp]
	mov	eax, DWORD PTR -228[rbp]
	cdqe
	mov	QWORD PTR [rdx+rax*8], rcx
	add	DWORD PTR -228[rbp], 1
.L1010:
	mov	eax, DWORD PTR ds[rip+1608]
	cmp	DWORD PTR -228[rbp], eax
	jl	.L1011
	mov	DWORD PTR -220[rbp], 0
	mov	edx, DWORD PTR ds[rip+1608]
	mov	eax, DWORD PTR ds[rip+800]
	cmp	edx, eax
	cmovge	eax, edx
	mov	DWORD PTR -220[rbp], eax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, rsp
	mov	rbx, rax
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -120[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -384[rbp], rax
	mov	QWORD PTR -376[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -400[rbp], rax
	mov	QWORD PTR -392[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1012:
	cmp	rsp, rcx
	je	.L1013
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1012
.L1013:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1014
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1014:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -112[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -104[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -416[rbp], rax
	mov	QWORD PTR -408[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -448[rbp], rax
	mov	QWORD PTR -440[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1015:
	cmp	rsp, rdx
	je	.L1016
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1015
.L1016:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1017
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1017:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -96[rbp], rax
	mov	eax, DWORD PTR -220[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -88[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -464[rbp], rdx
	mov	QWORD PTR -456[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -480[rbp], rdx
	mov	QWORD PTR -472[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1018:
	cmp	rsp, rdx
	je	.L1019
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1018
.L1019:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1020
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1020:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	eax, DWORD PTR -220[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -496[rbp], rdx
	mov	QWORD PTR -488[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -512[rbp], rdx
	mov	QWORD PTR -504[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1021:
	cmp	rsp, rdx
	je	.L1022
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1021
.L1022:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1023
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1023:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	DWORD PTR -228[rbp], 0
	jmp	.L1024
.L1027:
	mov	eax, 0
	call	nondet_int@PLT
	movsx	rcx, eax
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -228[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], rcx
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -228[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	cmp	QWORD PTR -152[rbp], rax
	jg	.L1025
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -228[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	cmp	QWORD PTR -144[rbp], rax
	jl	.L1025
	mov	eax, 1
	jmp	.L1026
.L1025:
	mov	eax, 0
.L1026:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -228[rbp]
	movsx	rdx, edx
	mov	rcx, QWORD PTR [rax+rdx*8]
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, DWORD PTR -228[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], rcx
	add	DWORD PTR -228[rbp], 1
.L1024:
	mov	eax, DWORD PTR ds[rip+800]
	cmp	DWORD PTR -228[rbp], eax
	jl	.L1027
	mov	DWORD PTR -228[rbp], 0
	jmp	.L1028
.L1029:
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -160[rbp]
	mov	ecx, DWORD PTR -228[rbp]
	movsx	rcx, ecx
	mov	rax, QWORD PTR [rax+rcx*8]
	mov	rcx, QWORD PTR -128[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	mov	r8d, DWORD PTR ds[rip+1608]
	mov	edi, DWORD PTR ds[rip+800]
	mov	rcx, QWORD PTR -192[rbp]
	mov	rdx, QWORD PTR -176[rbp]
	mov	rsi, QWORD PTR -128[rbp]
	mov	rax, QWORD PTR -112[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	rdi, rax
	call	fxp_direct_form_1
	mov	rdx, QWORD PTR -208[rbp]
	mov	ecx, DWORD PTR -228[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -208[rbp]
	mov	ecx, DWORD PTR -228[rbp]
	movsx	rcx, ecx
	mov	rax, QWORD PTR [rax+rcx*8]
	mov	rcx, QWORD PTR -112[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	add	DWORD PTR -228[rbp], 1
.L1028:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -228[rbp], eax
	jl	.L1029
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	mov	rax, QWORD PTR -208[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	fxp_check_persistent_limit_cycle
	mov	eax, 0
	mov	rsp, rbx
	mov	rsp, QWORD PTR -424[rbp]
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1031
	call	__stack_chk_fail@PLT
.L1031:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE132:
	.size	verify_limit_cycle, .-verify_limit_cycle
	.globl	verify_error
	.type	verify_error, @function
verify_error:
.LFB133:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 1352
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	QWORD PTR -1288[rbp], rax
	mov	DWORD PTR overflow_mode[rip], 2
	mov	edx, DWORD PTR ds[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1000[rbp], rax
	movsx	rax, edx
	mov	rcx, rax
	mov	ebx, 0
	movsx	rax, edx
	mov	rsi, rax
	mov	edi, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1033:
	cmp	rsp, rcx
	je	.L1034
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1033
.L1034:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1035
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1035:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1008[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1016[rbp], rax
	movsx	rax, edx
	mov	r8, rax
	mov	r9d, 0
	movsx	rax, edx
	mov	r10, rax
	mov	r11d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1036:
	cmp	rsp, rcx
	je	.L1037
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1036
.L1037:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1038
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1038:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1024[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -1008[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip]
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -1024[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip+808]
	call	fxp_double_to_fxp_array
	mov	rax, QWORD PTR impl[rip+16]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -1032[rbp], rax
	mov	rax, QWORD PTR impl[rip+8]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -1040[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1048[rbp], rax
	movsx	rax, edx
	mov	r12, rax
	mov	r13d, 0
	movsx	rax, edx
	mov	r14, rax
	mov	r15d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1039:
	cmp	rsp, rcx
	je	.L1040
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1039
.L1040:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1041
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1041:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1056[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1064[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -1104[rbp], rax
	mov	QWORD PTR -1096[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1120[rbp], rax
	mov	QWORD PTR -1112[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1042:
	cmp	rsp, rcx
	je	.L1043
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1042
.L1043:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1044
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1044:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1072[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1080[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -1136[rbp], rax
	mov	QWORD PTR -1128[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1152[rbp], rax
	mov	QWORD PTR -1144[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1045:
	cmp	rsp, rcx
	je	.L1046
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1045
.L1046:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1047
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1047:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -992[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -984[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -1168[rbp], rax
	mov	QWORD PTR -1160[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1184[rbp], rax
	mov	QWORD PTR -1176[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1048:
	cmp	rsp, rcx
	je	.L1049
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1048
.L1049:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1050
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1050:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -976[rbp], rax
	mov	DWORD PTR -1084[rbp], 0
	mov	edx, DWORD PTR ds[rip+1608]
	mov	eax, DWORD PTR ds[rip+800]
	cmp	edx, eax
	cmovge	eax, edx
	mov	DWORD PTR -1084[rbp], eax
	mov	edx, DWORD PTR ds[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -968[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -1200[rbp], rax
	mov	QWORD PTR -1192[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1216[rbp], rax
	mov	QWORD PTR -1208[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1051:
	cmp	rsp, rcx
	je	.L1052
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1051
.L1052:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1053
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1053:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -960[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -952[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -1232[rbp], rax
	mov	QWORD PTR -1224[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1248[rbp], rax
	mov	QWORD PTR -1240[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1054:
	cmp	rsp, rcx
	je	.L1055
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1054
.L1055:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1056
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1056:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -944[rbp], rax
	mov	edx, DWORD PTR -1084[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -936[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -1264[rbp], rax
	mov	QWORD PTR -1256[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1280[rbp], rax
	mov	QWORD PTR -1272[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1057:
	cmp	rsp, rcx
	je	.L1058
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1057
.L1058:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1059
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1059:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -928[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -920[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -1312[rbp], rax
	mov	QWORD PTR -1304[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1328[rbp], rax
	mov	QWORD PTR -1320[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1060:
	cmp	rsp, rdx
	je	.L1061
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1060
.L1061:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1062
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1062:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -912[rbp], rax
	mov	eax, DWORD PTR ds[rip+1608]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -904[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -1344[rbp], rdx
	mov	QWORD PTR -1336[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -1360[rbp], rdx
	mov	QWORD PTR -1352[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1063:
	cmp	rsp, rdx
	je	.L1064
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1063
.L1064:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1065
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1065:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -896[rbp], rax
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -888[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -1376[rbp], rdx
	mov	QWORD PTR -1368[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -1392[rbp], rdx
	mov	QWORD PTR -1384[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1066:
	cmp	rsp, rdx
	je	.L1067
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1066
.L1067:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1068
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1068:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -880[rbp], rax
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1069
.L1070:
	mov	rax, QWORD PTR -960[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], 0
	mov	rax, QWORD PTR -912[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -1088[rbp], 1
.L1069:
	mov	eax, DWORD PTR ds[rip+800]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1070
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1071
.L1072:
	mov	rax, QWORD PTR -944[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], 0
	mov	rax, QWORD PTR -896[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -1088[rbp], 1
.L1071:
	mov	eax, DWORD PTR ds[rip+1608]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1072
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1073
.L1074:
	mov	rax, QWORD PTR -928[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], 0
	mov	rax, QWORD PTR -880[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -1088[rbp], 1
.L1073:
	mov	eax, DWORD PTR -1088[rbp]
	cmp	eax, DWORD PTR -1084[rbp]
	jl	.L1074
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1075
.L1078:
	mov	rax, QWORD PTR -1056[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], 0
	mov	eax, 0
	call	nondet_int@PLT
	movsx	rcx, eax
	mov	rax, QWORD PTR -1072[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], rcx
	mov	rax, QWORD PTR -1072[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	cmp	QWORD PTR -1032[rbp], rax
	jg	.L1076
	mov	rax, QWORD PTR -1072[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	cmp	QWORD PTR -1040[rbp], rax
	jl	.L1076
	mov	eax, 1
	jmp	.L1077
.L1076:
	mov	eax, 0
.L1077:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	rax, QWORD PTR -992[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	rax, QWORD PTR -1072[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	rdx, QWORD PTR -976[rbp]
	mov	ecx, DWORD PTR -1088[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	add	DWORD PTR -1088[rbp], 1
.L1075:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1078
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1079
.L1084:
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -1072[rbp]
	mov	ecx, DWORD PTR -1088[rbp]
	movsx	rcx, ecx
	mov	rax, QWORD PTR [rax+rcx*8]
	mov	rcx, QWORD PTR -944[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	mov	r8d, DWORD PTR ds[rip+1608]
	mov	edi, DWORD PTR ds[rip+800]
	mov	rcx, QWORD PTR -1024[rbp]
	mov	rdx, QWORD PTR -1008[rbp]
	mov	rsi, QWORD PTR -944[rbp]
	mov	rax, QWORD PTR -960[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	rdi, rax
	call	fxp_direct_form_1
	mov	rdx, QWORD PTR -1056[rbp]
	mov	ecx, DWORD PTR -1088[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -1056[rbp]
	mov	ecx, DWORD PTR -1088[rbp]
	movsx	rcx, ecx
	mov	rax, QWORD PTR [rax+rcx*8]
	mov	rcx, QWORD PTR -960[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	mov	ecx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -976[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	rdx, QWORD PTR -896[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	shiftLDouble
	mov	ecx, DWORD PTR ds[rip+1608]
	mov	edx, DWORD PTR ds[rip+800]
	mov	rsi, QWORD PTR -896[rbp]
	mov	rax, QWORD PTR -912[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	lea	rcx, ds[rip+808]
	lea	rdx, ds[rip]
	mov	rdi, rax
	call	double_direct_form_1
	movq	rax, xmm0
	mov	rdx, QWORD PTR -992[rbp]
	mov	ecx, DWORD PTR -1088[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	ecx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -992[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	rdx, QWORD PTR -912[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	shiftLDouble
	mov	rax, QWORD PTR -992[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	movsd	xmm2, QWORD PTR [rax+rdx*8]
	movsd	QWORD PTR -1104[rbp], xmm2
	mov	rax, QWORD PTR -1056[rbp]
	mov	edx, DWORD PTR -1088[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	rdi, rax
	call	fxp_to_double
	movapd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -1104[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -872[rbp], xmm0
	movsd	xmm0, QWORD PTR impl[rip+48]
	comisd	xmm0, QWORD PTR -872[rbp]
	jbe	.L1080
	movsd	xmm0, QWORD PTR impl[rip+48]
	movq	xmm1, QWORD PTR .LC13[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -872[rbp]
	comisd	xmm0, xmm1
	jbe	.L1080
	mov	eax, 1
	jmp	.L1083
.L1080:
	mov	eax, 0
.L1083:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	add	DWORD PTR -1088[rbp], 1
.L1079:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1084
	mov	eax, 0
	mov	rsp, QWORD PTR -1288[rbp]
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1086
	call	__stack_chk_fail@PLT
.L1086:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE133:
	.size	verify_error, .-verify_error
	.section	.rodata
	.align 8
.LC76:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/engine/verify_zero_input_limit_cycle.h"
	.align 8
.LC77:
	.string	"X_SIZE_VALUE >= Set_xsize_at_least_two_times_Na"
	.text
	.globl	verify_zero_input_limit_cycle
	.type	verify_zero_input_limit_cycle, @function
verify_zero_input_limit_cycle:
.LFB134:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 472
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	QWORD PTR -440[rbp], rax
	mov	DWORD PTR overflow_mode[rip], 3
	mov	eax, DWORD PTR ds[rip+800]
	add	eax, eax
	mov	DWORD PTR -228[rbp], eax
	lea	rdi, .LC75[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -228[rbp], eax
	jle	.L1090
	lea	rcx, __PRETTY_FUNCTION__.7[rip]
	mov	edx, 23
	lea	rsi, .LC76[rip]
	lea	rdi, .LC77[rip]
	call	__assert_fail@PLT
.L1090:
	mov	edx, DWORD PTR ds[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -168[rbp], rax
	movsx	rax, edx
	mov	r12, rax
	mov	r13d, 0
	movsx	rax, edx
	mov	r14, rax
	mov	r15d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1091:
	cmp	rsp, rcx
	je	.L1092
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1091
.L1092:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1093
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1093:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -176[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -184[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -256[rbp], rax
	mov	QWORD PTR -248[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -272[rbp], rax
	mov	QWORD PTR -264[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1094:
	cmp	rsp, rcx
	je	.L1095
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1094
.L1095:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1096
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1096:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -192[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -176[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip]
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -192[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip+808]
	call	fxp_double_to_fxp_array
	mov	rax, QWORD PTR impl[rip+16]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -200[rbp], rax
	mov	rax, QWORD PTR impl[rip+8]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -208[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -216[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -288[rbp], rax
	mov	QWORD PTR -280[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -304[rbp], rax
	mov	QWORD PTR -296[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1097:
	cmp	rsp, rcx
	je	.L1098
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1097
.L1098:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1099
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1099:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -160[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -152[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -320[rbp], rax
	mov	QWORD PTR -312[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -336[rbp], rax
	mov	QWORD PTR -328[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1100:
	cmp	rsp, rcx
	je	.L1101
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1100
.L1101:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1102
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1102:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -144[rbp], rax
	mov	DWORD PTR -224[rbp], 0
	jmp	.L1103
.L1104:
	mov	rdx, QWORD PTR -160[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	mov	QWORD PTR [rdx+rax*8], 0
	mov	rdx, QWORD PTR -144[rbp]
	mov	eax, DWORD PTR -224[rbp]
	cdqe
	mov	QWORD PTR [rdx+rax*8], 0
	add	DWORD PTR -224[rbp], 1
.L1103:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -224[rbp], eax
	jl	.L1104
	mov	DWORD PTR -220[rbp], 0
	mov	edx, DWORD PTR ds[rip+1608]
	mov	eax, DWORD PTR ds[rip+800]
	cmp	edx, eax
	cmovge	eax, edx
	mov	DWORD PTR -220[rbp], eax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, rsp
	mov	rbx, rax
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -136[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -352[rbp], rax
	mov	QWORD PTR -344[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -368[rbp], rax
	mov	QWORD PTR -360[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1105:
	cmp	rsp, rcx
	je	.L1106
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1105
.L1106:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1107
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1107:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -128[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -120[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -384[rbp], rax
	mov	QWORD PTR -376[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -400[rbp], rax
	mov	QWORD PTR -392[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1108:
	cmp	rsp, rcx
	je	.L1109
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1108
.L1109:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1110
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1110:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -112[rbp], rax
	mov	edx, DWORD PTR -220[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -104[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -416[rbp], rax
	mov	QWORD PTR -408[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -432[rbp], rax
	mov	QWORD PTR -424[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1111:
	cmp	rsp, rdx
	je	.L1112
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1111
.L1112:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1113
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1113:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -96[rbp], rax
	mov	eax, DWORD PTR ds[rip+800]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -88[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -464[rbp], rdx
	mov	QWORD PTR -456[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -480[rbp], rdx
	mov	QWORD PTR -472[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1114:
	cmp	rsp, rdx
	je	.L1115
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1114
.L1115:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1116
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1116:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	eax, DWORD PTR -220[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -496[rbp], rdx
	mov	QWORD PTR -488[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -512[rbp], rdx
	mov	QWORD PTR -504[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1117:
	cmp	rsp, rdx
	je	.L1118
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1117
.L1118:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1119
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1119:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	DWORD PTR -224[rbp], 0
	jmp	.L1120
.L1123:
	mov	eax, 0
	call	nondet_int@PLT
	movsx	rcx, eax
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -224[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], rcx
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -224[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	cmp	QWORD PTR -200[rbp], rax
	jg	.L1121
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -224[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	cmp	QWORD PTR -208[rbp], rax
	jl	.L1121
	mov	eax, 1
	jmp	.L1122
.L1121:
	mov	eax, 0
.L1122:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -224[rbp]
	movsx	rdx, edx
	mov	rcx, QWORD PTR [rax+rdx*8]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -224[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], rcx
	add	DWORD PTR -224[rbp], 1
.L1120:
	mov	eax, DWORD PTR ds[rip+800]
	cmp	DWORD PTR -224[rbp], eax
	jl	.L1123
	mov	DWORD PTR -224[rbp], 0
	jmp	.L1124
.L1125:
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -224[rbp]
	movsx	rdx, edx
	mov	QWORD PTR [rax+rdx*8], 0
	add	DWORD PTR -224[rbp], 1
.L1124:
	mov	eax, DWORD PTR ds[rip+1608]
	cmp	DWORD PTR -224[rbp], eax
	jl	.L1125
	mov	DWORD PTR -224[rbp], 0
	jmp	.L1126
.L1127:
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -144[rbp]
	mov	ecx, DWORD PTR -224[rbp]
	movsx	rcx, ecx
	mov	rax, QWORD PTR [rax+rcx*8]
	mov	rcx, QWORD PTR -112[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	mov	r8d, DWORD PTR ds[rip+1608]
	mov	edi, DWORD PTR ds[rip+800]
	mov	rcx, QWORD PTR -192[rbp]
	mov	rdx, QWORD PTR -176[rbp]
	mov	rsi, QWORD PTR -112[rbp]
	mov	rax, QWORD PTR -128[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	rdi, rax
	call	fxp_direct_form_1
	mov	rdx, QWORD PTR -160[rbp]
	mov	ecx, DWORD PTR -224[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -160[rbp]
	mov	ecx, DWORD PTR -224[rbp]
	movsx	rcx, ecx
	mov	rax, QWORD PTR [rax+rcx*8]
	mov	rcx, QWORD PTR -128[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	add	DWORD PTR -224[rbp], 1
.L1126:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -224[rbp], eax
	jl	.L1127
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	mov	rax, QWORD PTR -160[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	fxp_check_persistent_limit_cycle
	mov	eax, 0
	mov	rsp, rbx
	mov	rsp, QWORD PTR -440[rbp]
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1129
	call	__stack_chk_fail@PLT
.L1129:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE134:
	.size	verify_zero_input_limit_cycle, .-verify_zero_input_limit_cycle
	.globl	generic_timer
	.bss
	.align 4
	.type	generic_timer, @object
	.size	generic_timer, 4
generic_timer:
	.zero	4
	.section	.rodata
	.align 8
.LC78:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/engine/verify_generic_timing.h"
.LC79:
	.string	"spent_time <= ds.sample_time"
	.text
	.globl	verify_generic_timing
	.type	verify_generic_timing, @function
verify_generic_timing:
.LFB135:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r12
	push	rbx
	sub	rsp, 192
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 12, -40
	.cfi_offset 3, -48
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -40[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	r12, rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -120[rbp], rax
	movsx	rax, edx
	mov	rcx, rax
	mov	ebx, 0
	movsx	rax, edx
	mov	rsi, rax
	mov	edi, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1131:
	cmp	rsp, rcx
	je	.L1132
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1131
.L1132:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1133
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1133:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -128[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -136[rbp], rax
	movsx	rax, edx
	mov	r8, rax
	mov	r9d, 0
	movsx	rax, edx
	mov	r10, rax
	mov	r11d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1134:
	cmp	rsp, rcx
	je	.L1135
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1134
.L1135:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1136
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1136:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -112[rbp], rax
	mov	DWORD PTR -144[rbp], 0
	jmp	.L1137
.L1142:
	mov	rdx, QWORD PTR -128[rbp]
	mov	eax, DWORD PTR -144[rbp]
	cdqe
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	eax, 0
	call	nondet_float@PLT
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -144[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	rdx, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -144[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	movsd	xmm1, QWORD PTR impl[rip+16]
	comisd	xmm0, xmm1
	jb	.L1138
	mov	rdx, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -144[rbp]
	cdqe
	movsd	xmm1, QWORD PTR [rdx+rax*8]
	movsd	xmm0, QWORD PTR impl[rip+8]
	comisd	xmm0, xmm1
	jb	.L1138
	mov	eax, 1
	jmp	.L1141
.L1138:
	mov	eax, 0
.L1141:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	add	DWORD PTR -144[rbp], 1
.L1137:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -144[rbp], eax
	jl	.L1142
	mov	DWORD PTR -140[rbp], 0
	mov	edx, DWORD PTR ds[rip+1608]
	mov	eax, DWORD PTR ds[rip+800]
	cmp	edx, eax
	cmovge	eax, edx
	mov	DWORD PTR -140[rbp], eax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, rsp
	mov	rbx, rax
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -104[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -160[rbp], rax
	mov	QWORD PTR -152[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -176[rbp], rax
	mov	QWORD PTR -168[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1143:
	cmp	rsp, rdx
	je	.L1144
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1143
.L1144:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1145
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1145:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -96[rbp], rax
	mov	eax, DWORD PTR ds[rip+1608]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -88[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -192[rbp], rdx
	mov	QWORD PTR -184[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -208[rbp], rdx
	mov	QWORD PTR -200[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1146:
	cmp	rsp, rdx
	je	.L1147
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1146
.L1147:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1148
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1148:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	eax, DWORD PTR -140[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -224[rbp], rdx
	mov	QWORD PTR -216[rbp], 0
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1149:
	cmp	rsp, rdx
	je	.L1150
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1149
.L1150:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1151
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1151:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	DWORD PTR -144[rbp], 0
	jmp	.L1152
.L1153:
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, DWORD PTR -144[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -144[rbp], 1
.L1152:
	mov	eax, DWORD PTR ds[rip+800]
	cmp	DWORD PTR -144[rbp], eax
	jl	.L1153
	mov	DWORD PTR -144[rbp], 0
	jmp	.L1154
.L1155:
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -144[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -144[rbp], 1
.L1154:
	mov	eax, DWORD PTR ds[rip+1608]
	cmp	DWORD PTR -144[rbp], eax
	jl	.L1155
	mov	DWORD PTR -144[rbp], 0
	jmp	.L1156
.L1157:
	mov	rax, QWORD PTR -64[rbp]
	mov	edx, DWORD PTR -144[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -144[rbp], 1
.L1156:
	mov	eax, DWORD PTR -144[rbp]
	cmp	eax, DWORD PTR -140[rbp]
	jl	.L1157
	mov	eax, DWORD PTR hw[rip+44]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+80]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	eax, DWORD PTR generic_timer[rip]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -56[rbp], xmm0
	mov	DWORD PTR -144[rbp], 0
	jmp	.L1158
.L1160:
	mov	eax, DWORD PTR hw[rip+48]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+76]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+44]
	add	eax, eax
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	eax, DWORD PTR hw[rip+48]
	lea	edx, [rax+rax]
	mov	eax, DWORD PTR hw[rip+132]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+104]
	add	edx, eax
	mov	eax, DWORD PTR hw[rip+128]
	add	edx, eax
	mov	eax, DWORD PTR generic_timer[rip]
	add	eax, edx
	mov	DWORD PTR generic_timer[rip], eax
	mov	ecx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -144[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	rdx, QWORD PTR -80[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	generic_timing_shift_l_double
	mov	ecx, DWORD PTR ds[rip+1608]
	mov	edx, DWORD PTR ds[rip+800]
	mov	rsi, QWORD PTR -80[rbp]
	mov	rax, QWORD PTR -96[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	lea	rcx, ds[rip+808]
	lea	rdx, ds[rip]
	mov	rdi, rax
	call	generic_timing_double_direct_form_1
	movq	rax, xmm0
	mov	rdx, QWORD PTR -128[rbp]
	mov	ecx, DWORD PTR -144[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	ecx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -144[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	rdx, QWORD PTR -96[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	generic_timing_shift_l_double
	mov	eax, DWORD PTR generic_timer[rip]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR hw[rip+16]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
	movsd	xmm0, QWORD PTR ds[rip+1616]
	comisd	xmm0, QWORD PTR -48[rbp]
	jnb	.L1159
	lea	rcx, __PRETTY_FUNCTION__.6[rip]
	mov	edx, 89
	lea	rsi, .LC78[rip]
	lea	rdi, .LC79[rip]
	call	__assert_fail@PLT
.L1159:
	movsd	xmm0, QWORD PTR -56[rbp]
	cvttsd2si	eax, xmm0
	mov	DWORD PTR generic_timer[rip], eax
	add	DWORD PTR -144[rbp], 1
.L1158:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -144[rbp], eax
	jl	.L1160
	mov	eax, 0
	mov	rsp, rbx
	mov	rsp, r12
	mov	rbx, QWORD PTR -40[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1162
	call	__stack_chk_fail@PLT
.L1162:
	lea	rsp, -32[rbp]
	pop	rbx
	pop	r12
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE135:
	.size	verify_generic_timing, .-verify_generic_timing
	.globl	verify_timing_msp_430
	.type	verify_timing_msp_430, @function
verify_timing_msp_430:
.LFB136:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r12
	push	rbx
	sub	rsp, 176
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 12, -40
	.cfi_offset 3, -48
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -40[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	r12, rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -104[rbp], rax
	movsx	rax, edx
	mov	rcx, rax
	mov	ebx, 0
	movsx	rax, edx
	mov	rsi, rax
	mov	edi, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1166:
	cmp	rsp, rcx
	je	.L1167
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1166
.L1167:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1168
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1168:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -112[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -120[rbp], rax
	movsx	rax, edx
	mov	r8, rax
	mov	r9d, 0
	movsx	rax, edx
	mov	r10, rax
	mov	r11d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1169:
	cmp	rsp, rcx
	je	.L1170
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1169
.L1170:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1171
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1171:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -96[rbp], rax
	mov	DWORD PTR -128[rbp], 0
	jmp	.L1172
.L1177:
	mov	rdx, QWORD PTR -112[rbp]
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	eax, 0
	call	nondet_float@PLT
	cvtss2sd	xmm0, xmm0
	mov	rdx, QWORD PTR -96[rbp]
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	rdx, QWORD PTR -96[rbp]
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	movsd	xmm0, QWORD PTR [rdx+rax*8]
	movsd	xmm1, QWORD PTR impl[rip+16]
	comisd	xmm0, xmm1
	jb	.L1173
	mov	rdx, QWORD PTR -96[rbp]
	mov	eax, DWORD PTR -128[rbp]
	cdqe
	movsd	xmm1, QWORD PTR [rdx+rax*8]
	movsd	xmm0, QWORD PTR impl[rip+8]
	comisd	xmm0, xmm1
	jb	.L1173
	mov	eax, 1
	jmp	.L1176
.L1173:
	mov	eax, 0
.L1176:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	add	DWORD PTR -128[rbp], 1
.L1172:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -128[rbp], eax
	jl	.L1177
	mov	DWORD PTR -124[rbp], 0
	mov	edx, DWORD PTR ds[rip+1608]
	mov	eax, DWORD PTR ds[rip+800]
	cmp	edx, eax
	cmovge	eax, edx
	mov	DWORD PTR -124[rbp], eax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, rsp
	mov	rbx, rax
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -88[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -144[rbp], rax
	mov	QWORD PTR -136[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -160[rbp], rax
	mov	QWORD PTR -152[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1178:
	cmp	rsp, rdx
	je	.L1179
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1178
.L1179:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1180
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1180:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	eax, DWORD PTR ds[rip+1608]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -176[rbp], rdx
	mov	QWORD PTR -168[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -192[rbp], rdx
	mov	QWORD PTR -184[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1181:
	cmp	rsp, rdx
	je	.L1182
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1181
.L1182:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1183
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1183:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	eax, DWORD PTR -124[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -56[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -208[rbp], rdx
	mov	QWORD PTR -200[rbp], 0
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1184:
	cmp	rsp, rdx
	je	.L1185
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1184
.L1185:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1186
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1186:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -48[rbp], rax
	mov	DWORD PTR -128[rbp], 0
	jmp	.L1187
.L1188:
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -128[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -128[rbp], 1
.L1187:
	mov	eax, DWORD PTR ds[rip+800]
	cmp	DWORD PTR -128[rbp], eax
	jl	.L1188
	mov	DWORD PTR -128[rbp], 0
	jmp	.L1189
.L1190:
	mov	rax, QWORD PTR -64[rbp]
	mov	edx, DWORD PTR -128[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -128[rbp], 1
.L1189:
	mov	eax, DWORD PTR ds[rip+1608]
	cmp	DWORD PTR -128[rbp], eax
	jl	.L1190
	mov	DWORD PTR -128[rbp], 0
	jmp	.L1191
.L1192:
	mov	rax, QWORD PTR -48[rbp]
	mov	edx, DWORD PTR -128[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -128[rbp], 1
.L1191:
	mov	eax, DWORD PTR -128[rbp]
	cmp	eax, DWORD PTR -124[rbp]
	jl	.L1192
	mov	DWORD PTR -128[rbp], 0
	jmp	.L1193
.L1194:
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -96[rbp]
	mov	ecx, DWORD PTR -128[rbp]
	movsx	rcx, ecx
	movsd	xmm0, QWORD PTR [rax+rcx*8]
	cvttsd2si	rax, xmm0
	mov	rcx, QWORD PTR -64[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	mov	ecx, DWORD PTR ds[rip+1608]
	mov	edx, DWORD PTR ds[rip+800]
	mov	rsi, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -80[rbp]
	mov	r9d, ecx
	mov	r8d, edx
	lea	rcx, ds[rip+808]
	lea	rdx, ds[rip]
	mov	rdi, rax
	call	double_direct_form_1_MSP430
	movq	rax, xmm0
	mov	rdx, QWORD PTR -112[rbp]
	mov	ecx, DWORD PTR -128[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -112[rbp]
	mov	ecx, DWORD PTR -128[rbp]
	movsx	rcx, ecx
	movsd	xmm0, QWORD PTR [rax+rcx*8]
	cvttsd2si	rax, xmm0
	mov	rcx, QWORD PTR -80[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	shiftL
	add	DWORD PTR -128[rbp], 1
.L1193:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -128[rbp], eax
	jl	.L1194
	mov	eax, 0
	mov	rsp, rbx
	mov	rsp, r12
	mov	rbx, QWORD PTR -40[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1196
	call	__stack_chk_fail@PLT
.L1196:
	lea	rsp, -32[rbp]
	pop	rbx
	pop	r12
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE136:
	.size	verify_timing_msp_430, .-verify_timing_msp_430
	.section	.rodata
	.align 8
.LC80:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/engine/verify_stability.h"
	.align 8
.LC81:
	.string	"check_stability(_a, ds.a_size)"
	.text
	.globl	verify_stability
	.type	verify_stability, @function
verify_stability:
.LFB137:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 56
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	rbx, rax
	mov	DWORD PTR overflow_mode[rip], 0
	mov	eax, DWORD PTR ds[rip+800]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -88[rbp], rdx
	movsx	rdx, eax
	mov	r8, rdx
	mov	r9d, 0
	movsx	rdx, eax
	mov	rsi, rdx
	mov	edi, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1200:
	cmp	rsp, rdx
	je	.L1201
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1200
.L1201:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1202
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1202:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -80[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip]
	call	fxp_double_to_fxp_array
	mov	eax, DWORD PTR ds[rip+800]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	movsx	rdx, eax
	mov	r12, rdx
	mov	r13d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1203:
	cmp	rsp, rdx
	je	.L1204
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1203
.L1204:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1205
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1205:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rcx, QWORD PTR -80[rbp]
	mov	rax, QWORD PTR -64[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	mov	edx, DWORD PTR ds[rip+800]
	mov	rax, QWORD PTR -64[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_stability
	test	eax, eax
	jne	.L1206
	lea	rcx, __PRETTY_FUNCTION__.5[rip]
	mov	edx, 37
	lea	rsi, .LC80[rip]
	lea	rdi, .LC81[rip]
	call	__assert_fail@PLT
.L1206:
	mov	eax, 0
	mov	rsp, rbx
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1208
	call	__stack_chk_fail@PLT
.L1208:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE137:
	.size	verify_stability, .-verify_stability
	.globl	verify_minimum_phase
	.type	verify_minimum_phase, @function
verify_minimum_phase:
.LFB138:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 56
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	rbx, rax
	mov	DWORD PTR overflow_mode[rip], 0
	mov	eax, DWORD PTR ds[rip+1608]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -88[rbp], rdx
	movsx	rdx, eax
	mov	r8, rdx
	mov	r9d, 0
	movsx	rdx, eax
	mov	rsi, rdx
	mov	edi, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1210:
	cmp	rsp, rdx
	je	.L1211
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1210
.L1211:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1212
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1212:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -80[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip+808]
	call	fxp_double_to_fxp_array
	mov	eax, DWORD PTR ds[rip+1608]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	movsx	rdx, eax
	mov	r12, rdx
	mov	r13d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1213:
	cmp	rsp, rdx
	je	.L1214
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1213
.L1214:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1215
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1215:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rcx, QWORD PTR -80[rbp]
	mov	rax, QWORD PTR -64[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -64[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	check_stability
	test	eax, eax
	setne	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	mov	eax, 0
	mov	rsp, rbx
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1217
	call	__stack_chk_fail@PLT
.L1217:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE138:
	.size	verify_minimum_phase, .-verify_minimum_phase
	.section	.rodata
	.align 8
.LC82:
	.string	"Verifying stability for closedloop function"
	.text
	.globl	verify_stability_closedloop_using_dslib
	.type	verify_stability_closedloop_using_dslib, @function
verify_stability_closedloop_using_dslib:
.LFB139:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r12
	push	rbx
	sub	rsp, 1024
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 12, -40
	.cfi_offset 3, -48
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -40[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	r12, rax
	lea	rax, controller[rip+808]
	mov	QWORD PTR -912[rbp], rax
	mov	eax, DWORD PTR controller[rip+1608]
	mov	DWORD PTR -964[rbp], eax
	lea	rax, controller[rip]
	mov	QWORD PTR -920[rbp], rax
	mov	eax, DWORD PTR controller[rip+800]
	mov	DWORD PTR -968[rbp], eax
	mov	edx, DWORD PTR controller[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -928[rbp], rax
	movsx	rax, edx
	mov	rcx, rax
	mov	ebx, 0
	movsx	rax, edx
	mov	rsi, rax
	mov	edi, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1219:
	cmp	rsp, rcx
	je	.L1220
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1219
.L1220:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1221
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1221:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -936[rbp], rax
	mov	eax, DWORD PTR controller[rip+1608]
	mov	rsi, QWORD PTR -936[rbp]
	mov	rcx, QWORD PTR -912[rbp]
	mov	edx, eax
	mov	rdi, rcx
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR controller[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -944[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -992[rbp], rax
	mov	QWORD PTR -984[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1008[rbp], rax
	mov	QWORD PTR -1000[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1222:
	cmp	rsp, rdx
	je	.L1223
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1222
.L1223:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1224
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1224:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -904[rbp], rax
	mov	edx, DWORD PTR controller[rip+800]
	mov	rcx, QWORD PTR -904[rbp]
	mov	rax, QWORD PTR -920[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_double_to_fxp_array
	mov	eax, DWORD PTR controller[rip+1608]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -896[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -1024[rbp], rdx
	mov	QWORD PTR -1016[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -1040[rbp], rdx
	mov	QWORD PTR -1032[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1225:
	cmp	rsp, rdx
	je	.L1226
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1225
.L1226:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1227
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1227:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -888[rbp], rax
	mov	edx, DWORD PTR controller[rip+1608]
	mov	rcx, QWORD PTR -936[rbp]
	mov	rax, QWORD PTR -888[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	mov	eax, DWORD PTR controller[rip+800]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -880[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -1056[rbp], rdx
	mov	QWORD PTR -1048[rbp], 0
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1228:
	cmp	rsp, rdx
	je	.L1229
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1228
.L1229:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1230
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1230:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -872[rbp], rax
	mov	edx, DWORD PTR controller[rip+800]
	mov	rcx, QWORD PTR -904[rbp]
	mov	rax, QWORD PTR -872[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	lea	rax, plant_cbmc[rip+808]
	mov	QWORD PTR -864[rbp], rax
	mov	eax, DWORD PTR plant[rip+1608]
	mov	DWORD PTR -960[rbp], eax
	lea	rax, plant_cbmc[rip]
	mov	QWORD PTR -856[rbp], rax
	mov	eax, DWORD PTR plant[rip+800]
	mov	DWORD PTR -956[rbp], eax
	mov	edx, DWORD PTR controller[rip+1608]
	mov	eax, DWORD PTR plant[rip+1608]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -952[rbp], eax
	mov	edx, DWORD PTR controller[rip+800]
	mov	eax, DWORD PTR plant[rip+800]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -948[rbp], eax
	lea	rdi, .LC82[rip]
	call	puts@PLT
	mov	r8d, DWORD PTR -956[rbp]
	mov	rdi, QWORD PTR -856[rbp]
	mov	ecx, DWORD PTR -960[rbp]
	mov	rdx, QWORD PTR -864[rbp]
	mov	esi, DWORD PTR -948[rbp]
	lea	rax, -848[rbp]
	mov	r9d, r8d
	mov	r8, rdi
	mov	rdi, rax
	call	check_stability_closedloop
	test	eax, eax
	setne	al
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	mov	eax, 0
	mov	rsp, r12
	mov	rbx, QWORD PTR -40[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1232
	call	__stack_chk_fail@PLT
.L1232:
	lea	rsp, -32[rbp]
	pop	rbx
	pop	r12
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE139:
	.size	verify_stability_closedloop_using_dslib, .-verify_stability_closedloop_using_dslib
	.globl	verify_limit_cycle_closed_loop
	.type	verify_limit_cycle_closed_loop, @function
verify_limit_cycle_closed_loop:
.LFB140:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 2184
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	QWORD PTR -2136[rbp], rax
	mov	DWORD PTR overflow_mode[rip], 3
	lea	rax, controller[rip+808]
	mov	QWORD PTR -1800[rbp], rax
	mov	eax, DWORD PTR controller[rip+1608]
	mov	DWORD PTR -1908[rbp], eax
	lea	rax, controller[rip]
	mov	QWORD PTR -1808[rbp], rax
	mov	eax, DWORD PTR controller[rip+800]
	mov	DWORD PTR -1912[rbp], eax
	mov	edx, DWORD PTR controller[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1816[rbp], rax
	movsx	rax, edx
	mov	rcx, rax
	mov	ebx, 0
	movsx	rax, edx
	mov	rsi, rax
	mov	edi, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1234:
	cmp	rsp, rcx
	je	.L1235
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1234
.L1235:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1236
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1236:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1824[rbp], rax
	mov	edx, DWORD PTR controller[rip+1608]
	mov	rcx, QWORD PTR -1824[rbp]
	mov	rax, QWORD PTR -1800[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR controller[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1832[rbp], rax
	movsx	rax, edx
	mov	r12, rax
	mov	r13d, 0
	movsx	rax, edx
	mov	r14, rax
	mov	r15d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1237:
	cmp	rsp, rcx
	je	.L1238
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1237
.L1238:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1239
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1239:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1840[rbp], rax
	mov	edx, DWORD PTR controller[rip+800]
	mov	rcx, QWORD PTR -1840[rbp]
	mov	rax, QWORD PTR -1808[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR controller[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1848[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -1936[rbp], rax
	mov	QWORD PTR -1928[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1952[rbp], rax
	mov	QWORD PTR -1944[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1240:
	cmp	rsp, rcx
	je	.L1241
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1240
.L1241:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1242
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1242:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1856[rbp], rax
	mov	edx, DWORD PTR controller[rip+1608]
	mov	rcx, QWORD PTR -1824[rbp]
	mov	rax, QWORD PTR -1856[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	mov	edx, DWORD PTR controller[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1864[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -1968[rbp], rax
	mov	QWORD PTR -1960[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -1984[rbp], rax
	mov	QWORD PTR -1976[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1243:
	cmp	rsp, rcx
	je	.L1244
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1243
.L1244:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1245
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1245:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1872[rbp], rax
	mov	edx, DWORD PTR controller[rip+800]
	mov	rcx, QWORD PTR -1840[rbp]
	mov	rax, QWORD PTR -1872[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	lea	rax, plant_cbmc[rip+808]
	mov	QWORD PTR -1880[rbp], rax
	mov	eax, DWORD PTR plant[rip+1608]
	mov	DWORD PTR -1900[rbp], eax
	lea	rax, plant_cbmc[rip]
	mov	QWORD PTR -1792[rbp], rax
	mov	eax, DWORD PTR plant[rip+800]
	mov	DWORD PTR -1896[rbp], eax
	mov	edx, DWORD PTR controller[rip+1608]
	mov	eax, DWORD PTR plant[rip+1608]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -1892[rbp], eax
	mov	edx, DWORD PTR controller[rip+800]
	mov	eax, DWORD PTR plant[rip+800]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -1888[rbp], eax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1784[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -2000[rbp], rax
	mov	QWORD PTR -1992[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -2016[rbp], rax
	mov	QWORD PTR -2008[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1246:
	cmp	rsp, rcx
	je	.L1247
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1246
.L1247:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1248
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1248:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1776[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1768[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -2032[rbp], rax
	mov	QWORD PTR -2024[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -2048[rbp], rax
	mov	QWORD PTR -2040[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1249:
	cmp	rsp, rcx
	je	.L1250
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1249
.L1250:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1251
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1251:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1760[rbp], rax
	mov	edx, DWORD PTR -1892[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1752[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -2064[rbp], rax
	mov	QWORD PTR -2056[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -2080[rbp], rax
	mov	QWORD PTR -2072[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1252:
	cmp	rsp, rcx
	je	.L1253
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1252
.L1253:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1254
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1254:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1744[rbp], rax
	mov	eax, 0
	call	nondet_double@PLT
	movq	rax, xmm0
	mov	QWORD PTR -1736[rbp], rax
	movsd	xmm1, QWORD PTR impl[rip+16]
	movsd	xmm0, QWORD PTR -1736[rbp]
	comisd	xmm0, xmm1
	jb	.L1255
	movsd	xmm0, QWORD PTR impl[rip+8]
	comisd	xmm0, QWORD PTR -1736[rbp]
	jb	.L1255
	mov	eax, 1
	jmp	.L1258
.L1255:
	mov	eax, 0
.L1258:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	DWORD PTR -1904[rbp], 0
	jmp	.L1259
.L1260:
	mov	rdx, QWORD PTR -1760[rbp]
	mov	eax, DWORD PTR -1904[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -1736[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	rdx, QWORD PTR -1776[rbp]
	mov	eax, DWORD PTR -1904[rbp]
	cdqe
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -1904[rbp], 1
.L1259:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -1904[rbp], eax
	jl	.L1260
	mov	DWORD PTR -1904[rbp], 0
	jmp	.L1261
.L1262:
	mov	rdx, QWORD PTR -1744[rbp]
	mov	eax, DWORD PTR -1904[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -1736[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -1904[rbp], 1
.L1261:
	mov	eax, DWORD PTR -1904[rbp]
	cmp	eax, DWORD PTR -1892[rbp]
	jl	.L1262
	mov	edx, DWORD PTR -1888[rbp]
	mov	rax, rsp
	mov	rbx, rax
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1728[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -2096[rbp], rax
	mov	QWORD PTR -2088[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -2112[rbp], rax
	mov	QWORD PTR -2104[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1263:
	cmp	rsp, rcx
	je	.L1264
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1263
.L1264:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1265
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1265:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1720[rbp], rax
	mov	edx, DWORD PTR -1888[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -1712[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -2128[rbp], rax
	mov	QWORD PTR -2120[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -2160[rbp], rax
	mov	QWORD PTR -2152[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1266:
	cmp	rsp, rdx
	je	.L1267
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1266
.L1267:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1268
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1268:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1704[rbp], rax
	mov	eax, DWORD PTR -1888[rbp]
	cmp	DWORD PTR -1892[rbp], eax
	cmovge	eax, DWORD PTR -1892[rbp]
	mov	DWORD PTR -1884[rbp], eax
	mov	eax, DWORD PTR -1884[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -1696[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -2176[rbp], rdx
	mov	QWORD PTR -2168[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -2192[rbp], rdx
	mov	QWORD PTR -2184[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1269:
	cmp	rsp, rdx
	je	.L1270
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1269
.L1270:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1271
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1271:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1688[rbp], rax
	mov	eax, DWORD PTR -1884[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -1680[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -2208[rbp], rdx
	mov	QWORD PTR -2200[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -2224[rbp], rdx
	mov	QWORD PTR -2216[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1272:
	cmp	rsp, rdx
	je	.L1273
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1272
.L1273:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1274
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1274:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -1672[rbp], rax
	mov	DWORD PTR -1904[rbp], 0
	jmp	.L1275
.L1280:
	mov	eax, 0
	call	nondet_int@PLT
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	mov	rax, QWORD PTR -1720[rbp]
	mov	edx, DWORD PTR -1904[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	rax, QWORD PTR -1720[rbp]
	mov	edx, DWORD PTR -1904[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	movsd	xmm1, QWORD PTR impl[rip+16]
	comisd	xmm0, xmm1
	jb	.L1276
	mov	rax, QWORD PTR -1720[rbp]
	mov	edx, DWORD PTR -1904[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	movsd	xmm0, QWORD PTR impl[rip+8]
	comisd	xmm0, xmm1
	jb	.L1276
	mov	eax, 1
	jmp	.L1279
.L1276:
	mov	eax, 0
.L1279:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	rax, QWORD PTR -1720[rbp]
	mov	edx, DWORD PTR -1904[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mov	rax, QWORD PTR -1704[rbp]
	mov	edx, DWORD PTR -1904[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -1904[rbp], 1
.L1275:
	mov	eax, DWORD PTR -1904[rbp]
	cmp	eax, DWORD PTR -1888[rbp]
	jl	.L1280
	mov	DWORD PTR -1904[rbp], 0
	jmp	.L1281
.L1282:
	mov	rax, QWORD PTR -1760[rbp]
	mov	edx, DWORD PTR -1904[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	ecx, DWORD PTR -1892[rbp]
	mov	rdx, QWORD PTR -1744[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	shiftLDouble
	mov	r8d, DWORD PTR -1892[rbp]
	mov	edi, DWORD PTR -1888[rbp]
	lea	rcx, -1664[rbp]
	lea	rdx, -864[rbp]
	mov	rsi, QWORD PTR -1744[rbp]
	mov	rax, QWORD PTR -1720[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	rdi, rax
	call	double_direct_form_1
	movq	rax, xmm0
	mov	rdx, QWORD PTR -1776[rbp]
	mov	ecx, DWORD PTR -1904[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	rax, QWORD PTR -1776[rbp]
	mov	edx, DWORD PTR -1904[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	ecx, DWORD PTR -1888[rbp]
	mov	rdx, QWORD PTR -1720[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	shiftLDouble
	add	DWORD PTR -1904[rbp], 1
.L1281:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -1904[rbp], eax
	jl	.L1282
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	mov	rax, QWORD PTR -1776[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	double_check_persistent_limit_cycle
	mov	eax, 0
	mov	rsp, rbx
	mov	rsp, QWORD PTR -2136[rbp]
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1284
	call	__stack_chk_fail@PLT
.L1284:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE140:
	.size	verify_limit_cycle_closed_loop, .-verify_limit_cycle_closed_loop
	.globl	verify_error_closedloop
	.type	verify_error_closedloop, @function
verify_error_closedloop:
.LFB141:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 4096
	or	QWORD PTR [rsp], 0
	sub	rsp, 72
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	QWORD PTR -4120[rbp], rax
	mov	DWORD PTR overflow_mode[rip], 3
	lea	rax, controller[rip+808]
	mov	QWORD PTR -3456[rbp], rax
	mov	eax, DWORD PTR controller[rip+1608]
	mov	DWORD PTR -3628[rbp], eax
	lea	rax, controller[rip]
	mov	QWORD PTR -3464[rbp], rax
	mov	eax, DWORD PTR controller[rip+800]
	mov	DWORD PTR -3632[rbp], eax
	mov	edx, DWORD PTR controller[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3472[rbp], rax
	movsx	rax, edx
	mov	rcx, rax
	mov	ebx, 0
	movsx	rax, edx
	mov	rsi, rax
	mov	edi, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1290:
	cmp	rsp, rcx
	je	.L1291
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1290
.L1291:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1292
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1292:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3480[rbp], rax
	mov	edx, DWORD PTR controller[rip+1608]
	mov	rcx, QWORD PTR -3480[rbp]
	mov	rax, QWORD PTR -3456[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR controller[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3488[rbp], rax
	movsx	rax, edx
	mov	r12, rax
	mov	r13d, 0
	movsx	rax, edx
	mov	r14, rax
	mov	r15d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1293:
	cmp	rsp, rcx
	je	.L1294
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1293
.L1294:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1295
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1295:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3496[rbp], rax
	mov	edx, DWORD PTR controller[rip+800]
	mov	rcx, QWORD PTR -3496[rbp]
	mov	rax, QWORD PTR -3464[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR controller[rip+1608]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3504[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3664[rbp], rax
	mov	QWORD PTR -3656[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3680[rbp], rax
	mov	QWORD PTR -3672[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1296:
	cmp	rsp, rcx
	je	.L1297
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1296
.L1297:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1298
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1298:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3512[rbp], rax
	mov	edx, DWORD PTR controller[rip+1608]
	mov	rcx, QWORD PTR -3480[rbp]
	mov	rax, QWORD PTR -3512[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	mov	edx, DWORD PTR controller[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3520[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3696[rbp], rax
	mov	QWORD PTR -3688[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3712[rbp], rax
	mov	QWORD PTR -3704[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1299:
	cmp	rsp, rcx
	je	.L1300
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1299
.L1300:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1301
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1301:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3528[rbp], rax
	mov	edx, DWORD PTR controller[rip+800]
	mov	rcx, QWORD PTR -3496[rbp]
	mov	rax, QWORD PTR -3528[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	lea	rax, plant_cbmc[rip+808]
	mov	QWORD PTR -3536[rbp], rax
	mov	eax, DWORD PTR plant[rip+1608]
	mov	DWORD PTR -3636[rbp], eax
	lea	rax, plant_cbmc[rip]
	mov	QWORD PTR -3544[rbp], rax
	mov	eax, DWORD PTR plant[rip+800]
	mov	DWORD PTR -3640[rbp], eax
	mov	edx, DWORD PTR controller[rip+1608]
	mov	eax, DWORD PTR plant[rip+1608]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -3644[rbp], eax
	mov	edx, DWORD PTR controller[rip+800]
	mov	eax, DWORD PTR plant[rip+800]
	add	eax, edx
	sub	eax, 1
	mov	DWORD PTR -3648[rbp], eax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3552[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3728[rbp], rax
	mov	QWORD PTR -3720[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3744[rbp], rax
	mov	QWORD PTR -3736[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1302:
	cmp	rsp, rcx
	je	.L1303
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1302
.L1303:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1304
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1304:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3560[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3568[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3760[rbp], rax
	mov	QWORD PTR -3752[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3776[rbp], rax
	mov	QWORD PTR -3768[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1305:
	cmp	rsp, rcx
	je	.L1306
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1305
.L1306:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1307
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1307:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3576[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3584[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3792[rbp], rax
	mov	QWORD PTR -3784[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3808[rbp], rax
	mov	QWORD PTR -3800[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1308:
	cmp	rsp, rcx
	je	.L1309
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1308
.L1309:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1310
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1310:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3592[rbp], rax
	mov	edx, DWORD PTR X_SIZE_VALUE[rip]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3600[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3824[rbp], rax
	mov	QWORD PTR -3816[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3840[rbp], rax
	mov	QWORD PTR -3832[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1311:
	cmp	rsp, rcx
	je	.L1312
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1311
.L1312:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1313
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1313:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3608[rbp], rax
	mov	edx, DWORD PTR -3644[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3616[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3856[rbp], rax
	mov	QWORD PTR -3848[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3872[rbp], rax
	mov	QWORD PTR -3864[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1314:
	cmp	rsp, rcx
	je	.L1315
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1314
.L1315:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1316
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1316:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3448[rbp], rax
	mov	edx, DWORD PTR -3644[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3440[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3888[rbp], rax
	mov	QWORD PTR -3880[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3904[rbp], rax
	mov	QWORD PTR -3896[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1317:
	cmp	rsp, rcx
	je	.L1318
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1317
.L1318:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1319
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1319:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3432[rbp], rax
	mov	edx, DWORD PTR -3644[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3424[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3920[rbp], rax
	mov	QWORD PTR -3912[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3936[rbp], rax
	mov	QWORD PTR -3928[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1320:
	cmp	rsp, rcx
	je	.L1321
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1320
.L1321:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1322
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1322:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3416[rbp], rax
	mov	eax, 0
	call	nondet_double@PLT
	movq	rax, xmm0
	mov	QWORD PTR -3408[rbp], rax
	movsd	xmm1, QWORD PTR impl[rip+16]
	movsd	xmm0, QWORD PTR -3408[rbp]
	comisd	xmm0, xmm1
	jb	.L1323
	movsd	xmm0, QWORD PTR impl[rip+8]
	comisd	xmm0, QWORD PTR -3408[rbp]
	jb	.L1323
	mov	eax, 1
	jmp	.L1326
.L1323:
	mov	eax, 0
.L1326:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	DWORD PTR -3624[rbp], 0
	jmp	.L1327
.L1328:
	mov	rdx, QWORD PTR -3592[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -3408[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	rdx, QWORD PTR -3608[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -3408[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	rdx, QWORD PTR -3560[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	cdqe
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	rdx, QWORD PTR -3576[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	cdqe
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -3624[rbp], 1
.L1327:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -3624[rbp], eax
	jl	.L1328
	mov	DWORD PTR -3624[rbp], 0
	jmp	.L1329
.L1330:
	mov	rdx, QWORD PTR -3448[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -3408[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	mov	rdx, QWORD PTR -3432[rbp]
	mov	eax, DWORD PTR -3624[rbp]
	cdqe
	movsd	xmm0, QWORD PTR -3408[rbp]
	movsd	QWORD PTR [rdx+rax*8], xmm0
	add	DWORD PTR -3624[rbp], 1
.L1329:
	mov	eax, DWORD PTR -3624[rbp]
	cmp	eax, DWORD PTR -3644[rbp]
	jl	.L1330
	mov	edx, DWORD PTR -3648[rbp]
	mov	rax, rsp
	mov	rbx, rax
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3400[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3952[rbp], rax
	mov	QWORD PTR -3944[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -3968[rbp], rax
	mov	QWORD PTR -3960[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1331:
	cmp	rsp, rcx
	je	.L1332
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1331
.L1332:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1333
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1333:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3392[rbp], rax
	mov	edx, DWORD PTR -3648[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3384[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -3984[rbp], rax
	mov	QWORD PTR -3976[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -4000[rbp], rax
	mov	QWORD PTR -3992[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1334:
	cmp	rsp, rcx
	je	.L1335
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1334
.L1335:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1336
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1336:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3376[rbp], rax
	mov	edx, DWORD PTR -3648[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3368[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -4016[rbp], rax
	mov	QWORD PTR -4008[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -4032[rbp], rax
	mov	QWORD PTR -4024[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1337:
	cmp	rsp, rcx
	je	.L1338
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1337
.L1338:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1339
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1339:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3360[rbp], rax
	mov	edx, DWORD PTR -3648[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3352[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -4048[rbp], rax
	mov	QWORD PTR -4040[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -4064[rbp], rax
	mov	QWORD PTR -4056[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1340:
	cmp	rsp, rcx
	je	.L1341
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1340
.L1341:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1342
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1342:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3344[rbp], rax
	mov	eax, DWORD PTR -3648[rbp]
	cmp	DWORD PTR -3644[rbp], eax
	cmovge	eax, DWORD PTR -3644[rbp]
	mov	DWORD PTR -3620[rbp], eax
	mov	edx, DWORD PTR -3620[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3336[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -4080[rbp], rax
	mov	QWORD PTR -4072[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -4096[rbp], rax
	mov	QWORD PTR -4088[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1343:
	cmp	rsp, rcx
	je	.L1344
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1343
.L1344:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1345
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1345:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3328[rbp], rax
	mov	edx, DWORD PTR -3620[rbp]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -3320[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -4112[rbp], rax
	mov	QWORD PTR -4104[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -4144[rbp], rax
	mov	QWORD PTR -4136[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1346:
	cmp	rsp, rdx
	je	.L1347
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1346
.L1347:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1348
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1348:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3312[rbp], rax
	mov	eax, DWORD PTR -3620[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -3304[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -4160[rbp], rdx
	mov	QWORD PTR -4152[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -4176[rbp], rdx
	mov	QWORD PTR -4168[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	edi, 16
	mov	edx, 0
	div	rdi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1349:
	cmp	rsp, rdx
	je	.L1350
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1349
.L1350:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1351
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1351:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3296[rbp], rax
	mov	eax, DWORD PTR -3620[rbp]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -3288[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -4192[rbp], rdx
	mov	QWORD PTR -4184[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -4208[rbp], rdx
	mov	QWORD PTR -4200[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1352:
	cmp	rsp, rdx
	je	.L1353
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1352
.L1353:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1354
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1354:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -3280[rbp], rax
	mov	DWORD PTR -3624[rbp], 0
	jmp	.L1355
.L1356:
	mov	rax, QWORD PTR -3392[rbp]
	mov	edx, DWORD PTR -3624[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	rax, QWORD PTR -3376[rbp]
	mov	edx, DWORD PTR -3624[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -3624[rbp], 1
.L1355:
	mov	eax, DWORD PTR -3624[rbp]
	cmp	eax, DWORD PTR -3648[rbp]
	jl	.L1356
	mov	DWORD PTR -3624[rbp], 0
	jmp	.L1357
.L1362:
	mov	rax, QWORD PTR -3592[rbp]
	mov	edx, DWORD PTR -3624[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	ecx, DWORD PTR -3644[rbp]
	mov	rdx, QWORD PTR -3448[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	shiftLDouble
	mov	r8d, DWORD PTR -3644[rbp]
	mov	edi, DWORD PTR -3648[rbp]
	lea	rcx, -2464[rbp]
	lea	rdx, -1664[rbp]
	mov	rsi, QWORD PTR -3448[rbp]
	mov	rax, QWORD PTR -3392[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	rdi, rax
	call	double_direct_form_1
	movq	rax, xmm0
	mov	rdx, QWORD PTR -3560[rbp]
	mov	ecx, DWORD PTR -3624[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	rax, QWORD PTR -3560[rbp]
	mov	edx, DWORD PTR -3624[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	ecx, DWORD PTR -3648[rbp]
	mov	rdx, QWORD PTR -3392[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	shiftLDouble
	mov	rax, QWORD PTR -3608[rbp]
	mov	edx, DWORD PTR -3624[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	ecx, DWORD PTR -3644[rbp]
	mov	rdx, QWORD PTR -3432[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	shiftLDouble
	mov	r8d, DWORD PTR -3644[rbp]
	mov	edi, DWORD PTR -3648[rbp]
	lea	rcx, -3264[rbp]
	lea	rdx, -864[rbp]
	mov	rsi, QWORD PTR -3432[rbp]
	mov	rax, QWORD PTR -3376[rbp]
	mov	r9d, r8d
	mov	r8d, edi
	mov	rdi, rax
	call	double_direct_form_1
	movq	rax, xmm0
	mov	rdx, QWORD PTR -3576[rbp]
	mov	ecx, DWORD PTR -3624[rbp]
	movsx	rcx, ecx
	mov	QWORD PTR [rdx+rcx*8], rax
	mov	rax, QWORD PTR -3576[rbp]
	mov	edx, DWORD PTR -3624[rbp]
	movsx	rdx, edx
	mov	rax, QWORD PTR [rax+rdx*8]
	mov	ecx, DWORD PTR -3648[rbp]
	mov	rdx, QWORD PTR -3376[rbp]
	mov	esi, ecx
	mov	rdi, rdx
	movq	xmm0, rax
	call	shiftLDouble
	mov	rax, QWORD PTR -3576[rbp]
	mov	edx, DWORD PTR -3624[rbp]
	movsx	rdx, edx
	movsd	xmm2, QWORD PTR [rax+rdx*8]
	movsd	QWORD PTR -3664[rbp], xmm2
	mov	rax, QWORD PTR -3560[rbp]
	mov	edx, DWORD PTR -3624[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	cvttsd2si	rax, xmm0
	mov	rdi, rax
	call	fxp_to_double
	movapd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -3664[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -3272[rbp], xmm0
	movsd	xmm0, QWORD PTR impl[rip+48]
	comisd	xmm0, QWORD PTR -3272[rbp]
	jbe	.L1358
	movsd	xmm0, QWORD PTR impl[rip+48]
	movq	xmm1, QWORD PTR .LC13[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -3272[rbp]
	comisd	xmm0, xmm1
	jbe	.L1358
	mov	eax, 1
	jmp	.L1361
.L1358:
	mov	eax, 0
.L1361:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assert
	add	DWORD PTR -3624[rbp], 1
.L1357:
	mov	eax, DWORD PTR X_SIZE_VALUE[rip]
	cmp	DWORD PTR -3624[rbp], eax
	jl	.L1362
	mov	eax, 0
	mov	rsp, rbx
	mov	rsp, QWORD PTR -4120[rbp]
	mov	rbx, QWORD PTR -56[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1364
	call	__stack_chk_fail@PLT
.L1364:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE141:
	.size	verify_error_closedloop, .-verify_error_closedloop
	.globl	new_state
	.bss
	.align 32
	.type	new_state, @object
	.size	new_state, 128
new_state:
	.zero	128
	.globl	new_stateFWL
	.align 32
	.type	new_stateFWL, @object
	.size	new_stateFWL, 128
new_stateFWL:
	.zero	128
	.globl	_controller_fxp
	.align 32
	.type	_controller_fxp, @object
	.size	_controller_fxp, 1040
_controller_fxp:
	.zero	1040
	.globl	_controller_double
	.align 32
	.type	_controller_double, @object
	.size	_controller_double, 1040
_controller_double:
	.zero	1040
	.text
	.globl	ss_system_quantization_error
	.type	ss_system_quantization_error, @function
ss_system_quantization_error:
.LFB142:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1104
	mov	QWORD PTR -1096[rbp], rdi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, QWORD PTR -1096[rbp]
	movsd	QWORD PTR _controller[rip+768], xmm0
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1370
.L1373:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1371
.L1372:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -1056[rbp+rax*8], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1371:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1084[rbp], eax
	jl	.L1372
	add	DWORD PTR -1088[rbp], 1
.L1370:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1373
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1374
.L1377:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1375
.L1376:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 16
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 16
	movsd	QWORD PTR -1056[rbp+rax*8], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1375:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1084[rbp], eax
	jl	.L1376
	add	DWORD PTR -1088[rbp], 1
.L1374:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1377
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1378
.L1381:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1379
.L1380:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 32
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 32
	movsd	QWORD PTR -1056[rbp+rax*8], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1379:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1084[rbp], eax
	jl	.L1380
	add	DWORD PTR -1088[rbp], 1
.L1378:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1381
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1382
.L1385:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1383
.L1384:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 48
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 48
	movsd	QWORD PTR -1056[rbp+rax*8], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1383:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1084[rbp], eax
	jl	.L1384
	add	DWORD PTR -1088[rbp], 1
.L1382:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1385
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1386
.L1389:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1387
.L1388:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	movsd	QWORD PTR -1056[rbp+rax*8], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1387:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1388
	add	DWORD PTR -1088[rbp], 1
.L1386:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1389
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1390
.L1393:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1391
.L1392:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 96
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 96
	movsd	QWORD PTR -1056[rbp+rax*8], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1391:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1392
	add	DWORD PTR -1088[rbp], 1
.L1390:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1393
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1394
.L1397:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1395
.L1396:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 80
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 80
	movsd	QWORD PTR -1056[rbp+rax*8], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1395:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1396
	add	DWORD PTR -1088[rbp], 1
.L1394:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1397
	pxor	xmm0, xmm0
	movsd	QWORD PTR -1080[rbp], xmm0
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1398
.L1401:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1399
.L1400:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, new_state[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1399:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1400
	add	DWORD PTR -1088[rbp], 1
.L1398:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1401
	call	double_state_space_representation
	movq	rax, xmm0
	mov	QWORD PTR -1072[rbp], rax
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1402
.L1405:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1403
.L1404:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, new_state[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1403:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1404
	add	DWORD PTR -1088[rbp], 1
.L1402:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1405
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, QWORD PTR -1096[rbp]
	movsd	QWORD PTR -288[rbp], xmm0
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1406
.L1409:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1407
.L1408:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movsd	xmm0, QWORD PTR -1056[rbp+rax*8]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1407:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1084[rbp], eax
	jl	.L1408
	add	DWORD PTR -1088[rbp], 1
.L1406:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1409
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1410
.L1413:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1411
.L1412:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 16
	movsd	xmm0, QWORD PTR -1056[rbp+rax*8]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 16
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1411:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1084[rbp], eax
	jl	.L1412
	add	DWORD PTR -1088[rbp], 1
.L1410:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1413
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1414
.L1417:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1415
.L1416:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 32
	movsd	xmm0, QWORD PTR -1056[rbp+rax*8]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 32
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1415:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1084[rbp], eax
	jl	.L1416
	add	DWORD PTR -1088[rbp], 1
.L1414:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1417
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1418
.L1421:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1419
.L1420:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 48
	movsd	xmm0, QWORD PTR -1056[rbp+rax*8]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 48
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1419:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1084[rbp], eax
	jl	.L1420
	add	DWORD PTR -1088[rbp], 1
.L1418:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1421
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1422
.L1425:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1423
.L1424:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	movsd	xmm0, QWORD PTR -1056[rbp+rax*8]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1423:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1424
	add	DWORD PTR -1088[rbp], 1
.L1422:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1425
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1426
.L1429:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1427
.L1428:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 96
	movsd	xmm0, QWORD PTR -1056[rbp+rax*8]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 96
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1427:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1428
	add	DWORD PTR -1088[rbp], 1
.L1426:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1429
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1430
.L1433:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1431
.L1432:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 80
	movsd	xmm0, QWORD PTR -1056[rbp+rax*8]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 80
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1431:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1432
	add	DWORD PTR -1088[rbp], 1
.L1430:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1433
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1434
.L1437:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1435
.L1436:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, new_stateFWL[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1435:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1436
	add	DWORD PTR -1088[rbp], 1
.L1434:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1437
	call	fxp_state_space_representation
	movq	rax, xmm0
	mov	QWORD PTR -1064[rbp], rax
	mov	DWORD PTR -1088[rbp], 0
	jmp	.L1438
.L1441:
	mov	DWORD PTR -1084[rbp], 0
	jmp	.L1439
.L1440:
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -1084[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -1088[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, new_stateFWL[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -1084[rbp], 1
.L1439:
	cmp	DWORD PTR -1084[rbp], 0
	jle	.L1440
	add	DWORD PTR -1088[rbp], 1
.L1438:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1088[rbp], eax
	jl	.L1441
	movsd	xmm0, QWORD PTR -1072[rbp]
	subsd	xmm0, QWORD PTR -1064[rbp]
	movsd	QWORD PTR -1080[rbp], xmm0
	movsd	xmm0, QWORD PTR -1080[rbp]
	movq	rax, xmm0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L1443
	call	__stack_chk_fail@PLT
.L1443:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE142:
	.size	ss_system_quantization_error, .-ss_system_quantization_error
	.globl	fxp_ss_closed_loop_quantization_error
	.type	fxp_ss_closed_loop_quantization_error, @function
fxp_ss_closed_loop_quantization_error:
.LFB143:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 1072
	movsd	QWORD PTR -1064[rbp], xmm0
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	WORD PTR -1054[rbp], 0
	mov	DWORD PTR -1052[rbp], 0
	jmp	.L1445
.L1450:
	mov	DWORD PTR -1048[rbp], 0
	jmp	.L1446
.L1449:
	mov	edx, DWORD PTR -1048[rbp]
	mov	eax, DWORD PTR -1052[rbp]
	sal	rax, 2
	add	rax, rdx
	add	rax, 48
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller_fxp[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L1474
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	je	.L1447
.L1474:
	mov	WORD PTR -1054[rbp], 1
.L1447:
	add	DWORD PTR -1048[rbp], 1
.L1446:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1048[rbp], eax
	jb	.L1449
	add	DWORD PTR -1052[rbp], 1
.L1445:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -1052[rbp], eax
	jb	.L1450
	mov	DWORD PTR -1052[rbp], 0
	jmp	.L1451
.L1454:
	mov	DWORD PTR -1048[rbp], 0
	jmp	.L1452
.L1453:
	mov	edx, DWORD PTR -1048[rbp]
	mov	eax, DWORD PTR -1052[rbp]
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -1040[rbp+rax*8], xmm0
	mov	edx, DWORD PTR -1048[rbp]
	mov	eax, DWORD PTR -1052[rbp]
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -656[rbp+rax*8], 0
	add	DWORD PTR -1048[rbp], 1
.L1452:
	cmp	DWORD PTR -1048[rbp], 3
	jbe	.L1453
	add	DWORD PTR -1052[rbp], 1
.L1451:
	cmp	DWORD PTR -1052[rbp], 3
	jbe	.L1454
	mov	DWORD PTR -1052[rbp], 0
	jmp	.L1455
.L1456:
	mov	eax, DWORD PTR -1052[rbp]
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1040
	movsd	xmm0, QWORD PTR -1064[rbp]
	movsd	QWORD PTR [rax], xmm0
	add	DWORD PTR -1052[rbp], 1
.L1455:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1052[rbp], eax
	jb	.L1456
	mov	DWORD PTR -1052[rbp], 0
	jmp	.L1457
.L1458:
	mov	eax, DWORD PTR -1052[rbp]
	sal	rax, 5
	add	rax, rbp
	sub	rax, 528
	mov	QWORD PTR [rax], 0
	add	DWORD PTR -1052[rbp], 1
.L1457:
	cmp	DWORD PTR -1052[rbp], 3
	jbe	.L1458
	mov	DWORD PTR -1052[rbp], 0
	jmp	.L1459
.L1460:
	mov	eax, DWORD PTR -1052[rbp]
	add	rax, 112
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller_fxp[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1052[rbp]
	mov	QWORD PTR -656[rbp+rdx*8], rax
	add	DWORD PTR -1052[rbp], 1
.L1459:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1052[rbp], eax
	jb	.L1460
	mov	DWORD PTR -1052[rbp], 0
	jmp	.L1461
.L1464:
	mov	DWORD PTR -1048[rbp], 0
	jmp	.L1462
.L1463:
	mov	edx, DWORD PTR -1048[rbp]
	mov	eax, DWORD PTR -1052[rbp]
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -912[rbp+rax*8], xmm0
	mov	edx, DWORD PTR -1048[rbp]
	mov	eax, DWORD PTR -1052[rbp]
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -784[rbp+rax*8], xmm0
	add	DWORD PTR -1048[rbp], 1
.L1462:
	cmp	DWORD PTR -1048[rbp], 3
	jbe	.L1463
	add	DWORD PTR -1052[rbp], 1
.L1461:
	cmp	DWORD PTR -1052[rbp], 3
	jbe	.L1464
	mov	DWORD PTR -1044[rbp], 0
	jmp	.L1465
.L1466:
	mov	eax, DWORD PTR -1044[rbp]
	add	rax, 16
	sal	rax, 5
	mov	rdx, rax
	lea	rax, _controller_fxp[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1044[rbp]
	sal	rdx, 5
	add	rdx, rbp
	sub	rdx, 528
	mov	QWORD PTR [rdx], rax
	add	DWORD PTR -1044[rbp], 1
.L1465:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -1044[rbp], eax
	jb	.L1466
	mov	eax, DWORD PTR nStates[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rcx, -528[rbp]
	lea	rdx, -656[rbp]
	sub	rsp, 8
	lea	rax, -400[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, 1
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	DWORD PTR -1044[rbp], 0
	jmp	.L1467
.L1468:
	mov	eax, DWORD PTR -1044[rbp]
	sal	rax, 5
	add	rax, rbp
	sub	rax, 1040
	movsd	xmm0, QWORD PTR [rax]
	cvttsd2si	rax, xmm0
	mov	rdi, rax
	call	fxp_quantize
	pxor	xmm2, xmm2
	cvtsi2sd	xmm2, rax
	movq	rax, xmm2
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -1044[rbp]
	sal	rdx, 5
	add	rdx, rbp
	sub	rdx, 272
	mov	QWORD PTR [rdx], rax
	add	DWORD PTR -1044[rbp], 1
.L1467:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1044[rbp], eax
	jb	.L1468
	mov	eax, DWORD PTR nInputs[rip]
	mov	edi, eax
	lea	rcx, -144[rbp]
	lea	rdx, -400[rbp]
	lea	rax, -272[rbp]
	mov	r8, rcx
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	fxp_sub_matrix
	mov	DWORD PTR -1044[rbp], 0
	jmp	.L1469
.L1470:
	mov	eax, DWORD PTR -1044[rbp]
	sal	rax, 5
	add	rax, rbp
	sub	rax, 144
	mov	rax, QWORD PTR [rax]
	mov	rdi, rax
	call	fxp_quantize
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	edx, DWORD PTR -1044[rbp]
	add	rdx, 24
	mov	rcx, rdx
	sal	rcx, 5
	lea	rdx, _controller_fxp[rip]
	mov	QWORD PTR [rcx+rdx], rax
	add	DWORD PTR -1044[rbp], 1
.L1469:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -1044[rbp], eax
	jb	.L1470
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -912[rbp]
	push	rax
	lea	r9, _controller_fxp[rip+512]
	lea	r8, _controller_fxp[rip+256]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	cmp	WORD PTR -1054[rbp], 1
	jne	.L1471
	mov	eax, DWORD PTR nInputs[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -784[rbp]
	push	rax
	lea	r9, _controller_fxp[rip+768]
	lea	r8, _controller_fxp[rip+384]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
.L1471:
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rdx, -784[rbp]
	lea	rax, -912[rbp]
	lea	r8, _controller_fxp[rip+640]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_add_matrix
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -912[rbp]
	push	rax
	lea	r9, _controller_fxp[rip+512]
	lea	r8, _controller_fxp[rip]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -784[rbp]
	push	rax
	lea	r9, _controller_fxp[rip+768]
	lea	r8, _controller_fxp[rip+128]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rdx, -784[rbp]
	lea	rax, -912[rbp]
	lea	r8, _controller_fxp[rip+512]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_add_matrix
	movsd	xmm0, QWORD PTR _controller_fxp[rip+640]
	movq	rax, xmm0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L1473
	call	__stack_chk_fail@PLT
.L1473:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE143:
	.size	fxp_ss_closed_loop_quantization_error, .-fxp_ss_closed_loop_quantization_error
	.globl	ss_closed_loop_quantization_error
	.type	ss_closed_loop_quantization_error, @function
ss_closed_loop_quantization_error:
.LFB144:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 432
	movsd	QWORD PTR -424[rbp], xmm0
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	WORD PTR -410[rbp], 0
	mov	DWORD PTR -408[rbp], 0
	jmp	.L1476
.L1481:
	mov	DWORD PTR -404[rbp], 0
	jmp	.L1477
.L1480:
	mov	edx, DWORD PTR -404[rbp]
	mov	eax, DWORD PTR -408[rbp]
	sal	rax, 2
	add	rax, rdx
	add	rax, 48
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller_double[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L1493
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	je	.L1478
.L1493:
	mov	WORD PTR -410[rbp], 1
.L1478:
	add	DWORD PTR -404[rbp], 1
.L1477:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -404[rbp], eax
	jb	.L1480
	add	DWORD PTR -408[rbp], 1
.L1476:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -408[rbp], eax
	jb	.L1481
	mov	DWORD PTR -408[rbp], 0
	jmp	.L1482
.L1485:
	mov	DWORD PTR -404[rbp], 0
	jmp	.L1483
.L1484:
	mov	edx, DWORD PTR -404[rbp]
	mov	eax, DWORD PTR -408[rbp]
	sal	rax, 2
	add	rax, rdx
	movsd	xmm0, QWORD PTR -424[rbp]
	movsd	QWORD PTR -400[rbp+rax*8], xmm0
	add	DWORD PTR -404[rbp], 1
.L1483:
	cmp	DWORD PTR -404[rbp], 0
	je	.L1484
	add	DWORD PTR -408[rbp], 1
.L1482:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -408[rbp], eax
	jb	.L1485
	mov	DWORD PTR -408[rbp], 0
	jmp	.L1486
.L1489:
	mov	DWORD PTR -404[rbp], 0
	jmp	.L1487
.L1488:
	mov	edx, DWORD PTR -404[rbp]
	mov	eax, DWORD PTR -408[rbp]
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -272[rbp+rax*8], xmm0
	mov	edx, DWORD PTR -404[rbp]
	mov	eax, DWORD PTR -408[rbp]
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -144[rbp+rax*8], xmm0
	add	DWORD PTR -404[rbp], 1
.L1487:
	cmp	DWORD PTR -404[rbp], 3
	jbe	.L1488
	add	DWORD PTR -408[rbp], 1
.L1486:
	cmp	DWORD PTR -408[rbp], 3
	jbe	.L1489
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller_double[rip+512]
	lea	r8, _controller_double[rip+896]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	edi, eax
	lea	rdx, -272[rbp]
	lea	rax, -400[rbp]
	lea	r8, _controller_double[rip+768]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_sub_matrix
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller_double[rip+512]
	lea	r8, _controller_double[rip+256]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	cmp	WORD PTR -410[rbp], 1
	jne	.L1490
	mov	eax, DWORD PTR nInputs[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	lea	r9, _controller_double[rip+768]
	lea	r8, _controller_double[rip+384]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
.L1490:
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rdx, -144[rbp]
	lea	rax, -272[rbp]
	lea	r8, _controller_double[rip+640]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_add_matrix
	mov	eax, DWORD PTR nStates[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller_double[rip+512]
	lea	r8, _controller_double[rip]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nInputs[rip]
	mov	edx, eax
	mov	eax, DWORD PTR nInputs[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	lea	r9, _controller_double[rip+768]
	lea	r8, _controller_double[rip+128]
	mov	ecx, 1
	call	double_matrix_multiplication
	add	rsp, 16
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rdx, -144[rbp]
	lea	rax, -272[rbp]
	lea	r8, _controller_double[rip+512]
	mov	rcx, rdx
	mov	rdx, rax
	mov	esi, 1
	call	double_add_matrix
	movsd	xmm0, QWORD PTR _controller_double[rip+640]
	movq	rax, xmm0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L1492
	call	__stack_chk_fail@PLT
.L1492:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE144:
	.size	ss_closed_loop_quantization_error, .-ss_closed_loop_quantization_error
	.section	.rodata
	.align 8
.LC83:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/engine/verify_error_state_space.h"
	.align 8
.LC84:
	.string	"__quant_error < error_limit && __quant_error > ((-1)*error_limit)"
	.text
	.globl	verify_error_state_space
	.type	verify_error_state_space, @function
verify_error_state_space:
.LFB145:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 72
	.cfi_offset 3, -24
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -72[rbp], 0
	jmp	.L1495
.L1498:
	mov	DWORD PTR -68[rbp], 0
	jmp	.L1496
.L1497:
	mov	eax, DWORD PTR -68[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -68[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, new_state[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -68[rbp], 1
.L1496:
	cmp	DWORD PTR -68[rbp], 0
	jle	.L1497
	add	DWORD PTR -72[rbp], 1
.L1495:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -72[rbp], eax
	jl	.L1498
	mov	DWORD PTR -72[rbp], 0
	jmp	.L1499
.L1502:
	mov	DWORD PTR -68[rbp], 0
	jmp	.L1500
.L1501:
	mov	eax, DWORD PTR -68[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 64
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -68[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, new_stateFWL[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	add	DWORD PTR -68[rbp], 1
.L1500:
	cmp	DWORD PTR -68[rbp], 0
	jle	.L1501
	add	DWORD PTR -72[rbp], 1
.L1499:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -72[rbp], eax
	jl	.L1502
	lea	rax, _controller_fxp[rip]
	lea	rdx, _controller[rip]
	mov	ecx, 130
	mov	rdi, rax
	mov	rsi, rdx
	rep movsq
	lea	rax, _controller_double[rip]
	lea	rdx, _controller[rip]
	mov	ecx, 130
	mov	rdi, rax
	mov	rsi, rdx
	rep movsq
	mov	DWORD PTR overflow_mode[rip], 0
	mov	rax, QWORD PTR impl[rip+16]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -64[rbp], rax
	mov	rax, QWORD PTR impl[rip+8]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	QWORD PTR -56[rbp], rax
	mov	eax, 0
	call	nondet_double@PLT
	movq	rax, xmm0
	mov	QWORD PTR -48[rbp], rax
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, QWORD PTR -64[rbp]
	movsd	xmm0, QWORD PTR -48[rbp]
	comisd	xmm0, xmm1
	jb	.L1503
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, QWORD PTR -56[rbp]
	comisd	xmm0, QWORD PTR -48[rbp]
	jb	.L1503
	mov	eax, 1
	jmp	.L1506
.L1503:
	mov	eax, 0
.L1506:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	DWORD PTR -72[rbp], 0
	jmp	.L1507
.L1508:
	movsd	xmm0, QWORD PTR -48[rbp]
	cvttsd2si	rdx, xmm0
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	mov	QWORD PTR -32[rbp+rax*8], rdx
	add	DWORD PTR -72[rbp], 1
.L1507:
	cmp	DWORD PTR -72[rbp], 0
	js	.L1508
	mov	eax, DWORD PTR closed_loop[rip]
	test	eax, eax
	je	.L1509
	mov	DWORD PTR -72[rbp], 0
	jmp	.L1510
.L1515:
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	mov	rax, QWORD PTR -32[rbp+rax*8]
	pxor	xmm2, xmm2
	cvtsi2sd	xmm2, rax
	movq	rax, xmm2
	movq	xmm0, rax
	call	ss_closed_loop_quantization_error
	movq	rbx, xmm0
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	mov	rax, QWORD PTR -32[rbp+rax*8]
	pxor	xmm3, xmm3
	cvtsi2sd	xmm3, rax
	movq	rax, xmm3
	movq	xmm0, rax
	call	fxp_ss_closed_loop_quantization_error
	movapd	xmm1, xmm0
	movq	xmm0, rbx
	subsd	xmm0, xmm1
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR error_limit[rip]
	comisd	xmm0, QWORD PTR -40[rbp]
	jbe	.L1511
	movsd	xmm0, QWORD PTR error_limit[rip]
	movq	xmm1, QWORD PTR .LC13[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	comisd	xmm0, xmm1
	ja	.L1514
.L1511:
	lea	rcx, __PRETTY_FUNCTION__.4[rip]
	mov	edx, 354
	lea	rsi, .LC83[rip]
	lea	rdi, .LC84[rip]
	call	__assert_fail@PLT
.L1514:
	add	DWORD PTR -72[rbp], 1
.L1510:
	cmp	DWORD PTR -72[rbp], 0
	js	.L1515
	jmp	.L1516
.L1509:
	mov	DWORD PTR -72[rbp], 0
	jmp	.L1517
.L1522:
	mov	eax, DWORD PTR -72[rbp]
	cdqe
	mov	rax, QWORD PTR -32[rbp+rax*8]
	mov	rdi, rax
	call	ss_system_quantization_error
	movq	rax, xmm0
	mov	QWORD PTR -40[rbp], rax
	movsd	xmm0, QWORD PTR error_limit[rip]
	comisd	xmm0, QWORD PTR -40[rbp]
	jbe	.L1518
	movsd	xmm0, QWORD PTR error_limit[rip]
	movq	xmm1, QWORD PTR .LC13[rip]
	xorpd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	comisd	xmm0, xmm1
	ja	.L1521
.L1518:
	lea	rcx, __PRETTY_FUNCTION__.4[rip]
	mov	edx, 361
	lea	rsi, .LC83[rip]
	lea	rdi, .LC84[rip]
	call	__assert_fail@PLT
.L1521:
	add	DWORD PTR -72[rbp], 1
.L1517:
	cmp	DWORD PTR -72[rbp], 0
	js	.L1522
.L1516:
	mov	eax, 0
	mov	rbx, QWORD PTR -24[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1524
	call	__stack_chk_fail@PLT
.L1524:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE145:
	.size	verify_error_state_space, .-verify_error_state_space
	.globl	fxp_ss_closed_loop_safety
	.type	fxp_ss_closed_loop_safety, @function
fxp_ss_closed_loop_safety:
.LFB146:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 800
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	WORD PTR -794[rbp], 0
	mov	DWORD PTR -788[rbp], 0
	jmp	.L1530
.L1535:
	mov	DWORD PTR -792[rbp], 0
	jmp	.L1531
.L1534:
	mov	edx, DWORD PTR -792[rbp]
	mov	eax, DWORD PTR -788[rbp]
	sal	rax, 2
	add	rax, rdx
	add	rax, 48
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	pxor	xmm1, xmm1
	ucomisd	xmm0, xmm1
	jp	.L1562
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	je	.L1532
.L1562:
	mov	WORD PTR -794[rbp], 1
.L1532:
	add	DWORD PTR -792[rbp], 1
.L1531:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -792[rbp], eax
	jb	.L1534
	add	DWORD PTR -788[rbp], 1
.L1530:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -788[rbp], eax
	jb	.L1535
	mov	DWORD PTR -788[rbp], 0
	jmp	.L1536
.L1539:
	mov	DWORD PTR -792[rbp], 0
	jmp	.L1537
.L1538:
	mov	edx, DWORD PTR -792[rbp]
	mov	eax, DWORD PTR -788[rbp]
	sal	rax, 2
	add	rax, rdx
	add	rax, 96
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	edx, DWORD PTR -792[rbp]
	mov	eax, DWORD PTR -788[rbp]
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -784[rbp+rax*8], xmm0
	add	DWORD PTR -792[rbp], 1
.L1537:
	cmp	DWORD PTR -792[rbp], 0
	je	.L1538
	add	DWORD PTR -788[rbp], 1
.L1536:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -788[rbp], eax
	jb	.L1539
	mov	DWORD PTR -788[rbp], 0
	jmp	.L1540
.L1543:
	mov	DWORD PTR -792[rbp], 0
	jmp	.L1541
.L1542:
	mov	edx, DWORD PTR -792[rbp]
	mov	eax, DWORD PTR -788[rbp]
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -400[rbp+rax*8], 0
	add	DWORD PTR -792[rbp], 1
.L1541:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -792[rbp], eax
	jb	.L1542
	add	DWORD PTR -788[rbp], 1
.L1540:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -788[rbp], eax
	jb	.L1543
	mov	DWORD PTR -788[rbp], 0
	jmp	.L1544
.L1547:
	mov	DWORD PTR -792[rbp], 0
	jmp	.L1545
.L1546:
	mov	edx, DWORD PTR -792[rbp]
	mov	eax, DWORD PTR -788[rbp]
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -272[rbp+rax*8], 0
	add	DWORD PTR -792[rbp], 1
.L1545:
	cmp	DWORD PTR -792[rbp], 0
	je	.L1546
	add	DWORD PTR -788[rbp], 1
.L1544:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -788[rbp], eax
	jb	.L1547
	mov	DWORD PTR -788[rbp], 0
	jmp	.L1548
.L1551:
	mov	DWORD PTR -792[rbp], 0
	jmp	.L1549
.L1550:
	mov	edx, DWORD PTR -792[rbp]
	mov	eax, DWORD PTR -788[rbp]
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -144[rbp+rax*8], 0
	add	DWORD PTR -792[rbp], 1
.L1549:
	cmp	DWORD PTR -792[rbp], 3
	jbe	.L1550
	add	DWORD PTR -788[rbp], 1
.L1548:
	cmp	DWORD PTR -788[rbp], 3
	jbe	.L1551
	mov	DWORD PTR -788[rbp], 0
	jmp	.L1552
.L1555:
	mov	DWORD PTR -792[rbp], 0
	jmp	.L1553
.L1554:
	mov	edx, DWORD PTR -792[rbp]
	mov	eax, DWORD PTR -788[rbp]
	sal	rax, 2
	add	rax, rdx
	add	rax, 112
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	ecx, DWORD PTR -792[rbp]
	mov	edx, DWORD PTR -788[rbp]
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -400[rbp+rdx*8], rax
	add	DWORD PTR -792[rbp], 1
.L1553:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -792[rbp], eax
	jb	.L1554
	add	DWORD PTR -788[rbp], 1
.L1552:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -788[rbp], eax
	jb	.L1555
	mov	DWORD PTR -788[rbp], 0
	jmp	.L1556
.L1559:
	mov	DWORD PTR -792[rbp], 0
	jmp	.L1557
.L1558:
	mov	edx, DWORD PTR -792[rbp]
	mov	eax, DWORD PTR -788[rbp]
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -656[rbp+rax*8], xmm0
	mov	edx, DWORD PTR -792[rbp]
	mov	eax, DWORD PTR -788[rbp]
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -528[rbp+rax*8], xmm0
	add	DWORD PTR -792[rbp], 1
.L1557:
	cmp	DWORD PTR -792[rbp], 3
	jbe	.L1558
	add	DWORD PTR -788[rbp], 1
.L1556:
	cmp	DWORD PTR -788[rbp], 3
	jbe	.L1559
	mov	DWORD PTR -788[rbp], 1
	nop
	movsd	xmm0, QWORD PTR _controller[rip+640]
	movq	rax, xmm0
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L1561
	call	__stack_chk_fail@PLT
.L1561:
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE146:
	.size	fxp_ss_closed_loop_safety, .-fxp_ss_closed_loop_safety
	.section	.rodata
	.align 8
.LC85:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/engine/verify_safety_state_space.h"
.LC86:
	.string	"output_double <= error_limit"
	.text
	.globl	verify_safety_state_space
	.type	verify_safety_state_space, @function
verify_safety_state_space:
.LFB147:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	eax, 0
	call	fxp_ss_closed_loop_safety
	cvttsd2si	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	QWORD PTR -8[rbp], rax
	movsd	xmm0, QWORD PTR error_limit[rip]
	comisd	xmm0, QWORD PTR -8[rbp]
	jnb	.L1564
	lea	rcx, __PRETTY_FUNCTION__.3[rip]
	mov	edx, 140
	lea	rsi, .LC85[rip]
	lea	rdi, .LC86[rip]
	call	__assert_fail@PLT
.L1564:
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE147:
	.size	verify_safety_state_space, .-verify_safety_state_space
	.section	.rodata
	.align 8
.LC87:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/engine/verify_controllability.h"
	.align 8
.LC88:
	.string	"determinant(controllabilityMatrix_double,nStates) != 0"
	.text
	.globl	verify_controllability
	.type	verify_controllability, @function
verify_controllability:
.LFB148:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 928
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1567
.L1570:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1568
.L1569:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -912[rbp+rax*8], 0
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -784[rbp+rax*8], 0
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -656[rbp+rax*8], 0
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -528[rbp+rax*8], 0
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -400[rbp+rax*8], 0
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -272[rbp+rax*8], xmm0
	add	DWORD PTR -924[rbp], 1
.L1568:
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	imul	eax, edx
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1569
	add	DWORD PTR -928[rbp], 1
.L1567:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1570
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1571
.L1574:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1572
.L1573:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -912[rbp+rdx*8], rax
	add	DWORD PTR -924[rbp], 1
.L1572:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1573
	add	DWORD PTR -928[rbp], 1
.L1571:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1574
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1575
.L1578:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1576
.L1577:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 16
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -784[rbp+rdx*8], rax
	add	DWORD PTR -924[rbp], 1
.L1576:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1577
	add	DWORD PTR -928[rbp], 1
.L1575:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1578
	mov	eax, DWORD PTR nInputs[rip]
	cmp	eax, 1
	jle	.L1579
	mov	DWORD PTR -920[rbp], 0
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1580
.L1585:
	mov	edx, DWORD PTR -920[rbp]
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -528[rbp]
	lea	rax, -912[rbp]
	mov	r8, rcx
	mov	ecx, edx
	mov	rdx, rax
	call	fxp_exp_matrix
	add	DWORD PTR -920[rbp], 1
	mov	eax, DWORD PTR nInputs[rip]
	mov	r11d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -784[rbp]
	lea	rdx, -528[rbp]
	sub	rsp, 8
	lea	rax, -400[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, r11d
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	DWORD PTR -916[rbp], 0
	jmp	.L1581
.L1584:
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1582
.L1583:
	mov	eax, DWORD PTR -916[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	rax, QWORD PTR -400[rbp+rax*8]
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -656[rbp+rdx*8], rax
	add	DWORD PTR -928[rbp], 1
.L1582:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1583
	add	DWORD PTR -924[rbp], 1
	add	DWORD PTR -916[rbp], 1
.L1581:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -916[rbp], eax
	jl	.L1584
.L1580:
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	imul	eax, edx
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1585
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1586
.L1589:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1587
.L1588:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -528[rbp+rax*8], 0
	add	DWORD PTR -924[rbp], 1
.L1587:
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	imul	eax, edx
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1588
	add	DWORD PTR -928[rbp], 1
.L1586:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1589
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	mov	ecx, edx
	imul	ecx, eax
	mov	edx, DWORD PTR nStates[rip]
	lea	rsi, -528[rbp]
	lea	rax, -656[rbp]
	mov	rdi, rax
	call	fxp_transpose
	mov	eax, DWORD PTR nStates[rip]
	mov	r11d, eax
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	imul	eax, edx
	mov	r10d, eax
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	imul	eax, edx
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -528[rbp]
	lea	rdx, -656[rbp]
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, r11d
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1590
.L1593:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1591
.L1592:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	rax, QWORD PTR -144[rbp+rax*8]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -272[rbp+rdx*8], rax
	add	DWORD PTR -924[rbp], 1
.L1591:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1592
	add	DWORD PTR -928[rbp], 1
.L1590:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1593
	mov	edx, DWORD PTR nStates[rip]
	lea	rax, -272[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	determinant
	movq	rax, xmm0
	pxor	xmm0, xmm0
	movq	xmm1, rax
	ucomisd	xmm1, xmm0
	jp	.L1595
	pxor	xmm0, xmm0
	movq	xmm2, rax
	comisd	xmm2, xmm0
	jne	.L1595
	lea	rcx, __PRETTY_FUNCTION__.2[rip]
	mov	edx, 91
	lea	rsi, .LC87[rip]
	lea	rdi, .LC88[rip]
	call	__assert_fail@PLT
.L1579:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1596
.L1599:
	mov	edx, DWORD PTR -924[rbp]
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -528[rbp]
	lea	rax, -912[rbp]
	mov	r8, rcx
	mov	ecx, edx
	mov	rdx, rax
	call	fxp_exp_matrix
	mov	eax, DWORD PTR nInputs[rip]
	mov	r11d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -784[rbp]
	lea	rdx, -528[rbp]
	sub	rsp, 8
	lea	rax, -400[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, r11d
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1597
.L1598:
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 400
	mov	rax, QWORD PTR [rax]
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -656[rbp+rdx*8], rax
	add	DWORD PTR -928[rbp], 1
.L1597:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1598
	add	DWORD PTR -924[rbp], 1
.L1596:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1599
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1600
.L1603:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1601
.L1602:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	rax, QWORD PTR -656[rbp+rax*8]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -272[rbp+rdx*8], rax
	add	DWORD PTR -924[rbp], 1
.L1601:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1602
	add	DWORD PTR -928[rbp], 1
.L1600:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1603
	mov	edx, DWORD PTR nStates[rip]
	lea	rax, -272[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	determinant
	movq	rax, xmm0
	pxor	xmm0, xmm0
	movq	xmm3, rax
	ucomisd	xmm3, xmm0
	jp	.L1595
	pxor	xmm0, xmm0
	movq	xmm4, rax
	comisd	xmm4, xmm0
	jne	.L1595
	lea	rcx, __PRETTY_FUNCTION__.2[rip]
	mov	edx, 113
	lea	rsi, .LC87[rip]
	lea	rdi, .LC88[rip]
	call	__assert_fail@PLT
.L1595:
	mov	eax, 0
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L1605
	call	__stack_chk_fail@PLT
.L1605:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE148:
	.size	verify_controllability, .-verify_controllability
	.section	.rodata
	.align 8
.LC89:
	.string	"determinant(mimo_controllabilityMatrix_double,nStates) != 0"
	.align 8
.LC90:
	.string	"determinant(controllabilityMatrix,nStates) != 0"
	.text
	.globl	verify_controllability_double
	.type	verify_controllability_double, @function
verify_controllability_double:
.LFB149:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 544
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	eax, DWORD PTR nInputs[rip]
	cmp	eax, 1
	jle	.L1607
	mov	DWORD PTR -536[rbp], 0
	mov	DWORD PTR -540[rbp], 0
	jmp	.L1608
.L1613:
	mov	eax, DWORD PTR -536[rbp]
	mov	edx, DWORD PTR nStates[rip]
	mov	esi, edx
	mov	edx, DWORD PTR nStates[rip]
	mov	edi, edx
	lea	rdx, -400[rbp]
	mov	r8, rdx
	mov	ecx, eax
	lea	rdx, _controller[rip]
	call	double_exp_matrix
	add	DWORD PTR -536[rbp], 1
	mov	eax, DWORD PTR nInputs[rip]
	mov	ecx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rdx, -400[rbp]
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller[rip+128]
	mov	r8, rdx
	mov	edx, r10d
	call	double_matrix_multiplication
	add	rsp, 16
	mov	DWORD PTR -532[rbp], 0
	jmp	.L1609
.L1612:
	mov	DWORD PTR -544[rbp], 0
	jmp	.L1610
.L1611:
	mov	eax, DWORD PTR -532[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -544[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movsd	xmm0, QWORD PTR -272[rbp+rax*8]
	mov	eax, DWORD PTR -540[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -544[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -528[rbp+rax*8], xmm0
	add	DWORD PTR -544[rbp], 1
.L1610:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -544[rbp], eax
	jl	.L1611
	add	DWORD PTR -540[rbp], 1
	add	DWORD PTR -532[rbp], 1
.L1609:
	mov	eax, DWORD PTR nInputs[rip]
	cmp	DWORD PTR -532[rbp], eax
	jl	.L1612
.L1608:
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	imul	eax, edx
	cmp	DWORD PTR -540[rbp], eax
	jl	.L1613
	mov	DWORD PTR -544[rbp], 0
	jmp	.L1614
.L1617:
	mov	DWORD PTR -540[rbp], 0
	jmp	.L1615
.L1616:
	mov	eax, DWORD PTR -540[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -544[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	pxor	xmm0, xmm0
	movsd	QWORD PTR -400[rbp+rax*8], xmm0
	add	DWORD PTR -540[rbp], 1
.L1615:
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	imul	eax, edx
	cmp	DWORD PTR -540[rbp], eax
	jl	.L1616
	add	DWORD PTR -544[rbp], 1
.L1614:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -544[rbp], eax
	jl	.L1617
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	mov	ecx, edx
	imul	ecx, eax
	mov	edx, DWORD PTR nStates[rip]
	lea	rsi, -400[rbp]
	lea	rax, -528[rbp]
	mov	rdi, rax
	call	transpose
	mov	eax, DWORD PTR nStates[rip]
	mov	r11d, eax
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	imul	eax, edx
	mov	r10d, eax
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nInputs[rip]
	imul	eax, edx
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -400[rbp]
	lea	rdx, -528[rbp]
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, r11d
	mov	edx, r10d
	call	double_matrix_multiplication
	add	rsp, 16
	mov	edx, DWORD PTR nStates[rip]
	lea	rax, -144[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	determinant
	movq	rax, xmm0
	pxor	xmm0, xmm0
	movq	xmm1, rax
	ucomisd	xmm1, xmm0
	jp	.L1619
	pxor	xmm0, xmm0
	movq	xmm2, rax
	comisd	xmm2, xmm0
	jne	.L1619
	lea	rcx, __PRETTY_FUNCTION__.1[rip]
	mov	edx, 154
	lea	rsi, .LC87[rip]
	lea	rdi, .LC89[rip]
	call	__assert_fail@PLT
.L1607:
	mov	DWORD PTR -540[rbp], 0
	jmp	.L1620
.L1623:
	mov	eax, DWORD PTR -540[rbp]
	mov	edx, DWORD PTR nStates[rip]
	mov	esi, edx
	mov	edx, DWORD PTR nStates[rip]
	mov	edi, edx
	lea	rdx, -400[rbp]
	mov	r8, rdx
	mov	ecx, eax
	lea	rdx, _controller[rip]
	call	double_exp_matrix
	mov	eax, DWORD PTR nInputs[rip]
	mov	ecx, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rdx, -400[rbp]
	sub	rsp, 8
	lea	rax, -272[rbp]
	push	rax
	lea	r9, _controller[rip+128]
	mov	r8, rdx
	mov	edx, r10d
	call	double_matrix_multiplication
	add	rsp, 16
	mov	DWORD PTR -544[rbp], 0
	jmp	.L1621
.L1622:
	mov	eax, DWORD PTR -544[rbp]
	cdqe
	sal	rax, 5
	add	rax, rbp
	sub	rax, 272
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -540[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -544[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	movsd	QWORD PTR -528[rbp+rax*8], xmm0
	add	DWORD PTR -544[rbp], 1
.L1621:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -544[rbp], eax
	jl	.L1622
	add	DWORD PTR -540[rbp], 1
.L1620:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -540[rbp], eax
	jl	.L1623
	mov	edx, DWORD PTR nStates[rip]
	lea	rax, -528[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	determinant
	movq	rax, xmm0
	pxor	xmm0, xmm0
	movq	xmm3, rax
	ucomisd	xmm3, xmm0
	jp	.L1619
	pxor	xmm0, xmm0
	movq	xmm4, rax
	comisd	xmm4, xmm0
	jne	.L1619
	lea	rcx, __PRETTY_FUNCTION__.1[rip]
	mov	edx, 163
	lea	rsi, .LC87[rip]
	lea	rdi, .LC90[rip]
	call	__assert_fail@PLT
.L1619:
	mov	eax, 0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L1625
	call	__stack_chk_fail@PLT
.L1625:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE149:
	.size	verify_controllability_double, .-verify_controllability_double
	.section	.rodata
	.align 8
.LC91:
	.string	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4.0-cbmc-5.6/bmc/engine/verify_observability.h"
	.align 8
.LC92:
	.string	"determinant(observabilityMatrix_double,nStates) != 0"
	.text
	.globl	verify_observability
	.type	verify_observability, @function
verify_observability:
.LFB150:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 928
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1627
.L1630:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1628
.L1629:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -656[rbp+rax*8], 0
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -912[rbp+rax*8], 0
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -784[rbp+rax*8], 0
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -528[rbp+rax*8], 0
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -400[rbp+rax*8], 0
	add	DWORD PTR -924[rbp], 1
.L1628:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1629
	add	DWORD PTR -928[rbp], 1
.L1627:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1630
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1631
.L1634:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1632
.L1633:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -912[rbp+rdx*8], rax
	add	DWORD PTR -924[rbp], 1
.L1632:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1633
	add	DWORD PTR -928[rbp], 1
.L1631:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1634
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1635
.L1638:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1636
.L1637:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	add	rax, 32
	lea	rdx, 0[0+rax*8]
	lea	rax, _controller[rip]
	mov	rax, QWORD PTR [rdx+rax]
	movq	xmm0, rax
	call	fxp_double_to_fxp
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -784[rbp+rdx*8], rax
	add	DWORD PTR -924[rbp], 1
.L1636:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1637
	add	DWORD PTR -928[rbp], 1
.L1635:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1638
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	eax, 1
	jle	.L1639
	mov	DWORD PTR -924[rbp], 0
	mov	DWORD PTR -920[rbp], 0
	jmp	.L1640
.L1645:
	mov	edx, DWORD PTR -920[rbp]
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -528[rbp]
	lea	rax, -912[rbp]
	mov	r8, rcx
	mov	ecx, edx
	mov	rdx, rax
	call	fxp_exp_matrix
	add	DWORD PTR -920[rbp], 1
	mov	eax, DWORD PTR nStates[rip]
	mov	r11d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rcx, -528[rbp]
	lea	rdx, -784[rbp]
	sub	rsp, 8
	lea	rax, -400[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, r11d
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	DWORD PTR -916[rbp], 0
	jmp	.L1641
.L1644:
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1642
.L1643:
	mov	eax, DWORD PTR -928[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -916[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	rax, QWORD PTR -400[rbp+rax*8]
	mov	edx, DWORD PTR -928[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -924[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -656[rbp+rdx*8], rax
	add	DWORD PTR -928[rbp], 1
.L1642:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1643
	add	DWORD PTR -924[rbp], 1
	add	DWORD PTR -916[rbp], 1
.L1641:
	mov	eax, DWORD PTR nOutputs[rip]
	cmp	DWORD PTR -916[rbp], eax
	jl	.L1644
.L1640:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -920[rbp], eax
	jl	.L1645
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1646
.L1649:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1647
.L1648:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	QWORD PTR -528[rbp+rax*8], 0
	add	DWORD PTR -924[rbp], 1
.L1647:
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nOutputs[rip]
	imul	eax, edx
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1648
	add	DWORD PTR -928[rbp], 1
.L1646:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1649
	mov	ecx, DWORD PTR nStates[rip]
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nOutputs[rip]
	imul	edx, eax
	lea	rsi, -528[rbp]
	lea	rax, -656[rbp]
	mov	rdi, rax
	call	fxp_transpose
	mov	eax, DWORD PTR nStates[rip]
	mov	r11d, eax
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nOutputs[rip]
	imul	eax, edx
	mov	r10d, eax
	mov	edx, DWORD PTR nStates[rip]
	mov	eax, DWORD PTR nOutputs[rip]
	imul	eax, edx
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -656[rbp]
	lea	rdx, -528[rbp]
	sub	rsp, 8
	lea	rax, -144[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, r11d
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1650
.L1653:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1651
.L1652:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	rax, QWORD PTR -144[rbp+rax*8]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -272[rbp+rdx*8], rax
	add	DWORD PTR -924[rbp], 1
.L1651:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1652
	add	DWORD PTR -928[rbp], 1
.L1650:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1653
	mov	edx, DWORD PTR nStates[rip]
	lea	rax, -272[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	determinant
	movq	rax, xmm0
	pxor	xmm0, xmm0
	movq	xmm1, rax
	ucomisd	xmm1, xmm0
	jp	.L1655
	pxor	xmm0, xmm0
	movq	xmm2, rax
	comisd	xmm2, xmm0
	jne	.L1655
	lea	rcx, __PRETTY_FUNCTION__.0[rip]
	mov	edx, 119
	lea	rsi, .LC91[rip]
	lea	rdi, .LC92[rip]
	call	__assert_fail@PLT
.L1639:
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1656
.L1659:
	mov	edx, DWORD PTR -928[rbp]
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	edi, eax
	lea	rcx, -528[rbp]
	lea	rax, -912[rbp]
	mov	r8, rcx
	mov	ecx, edx
	mov	rdx, rax
	call	fxp_exp_matrix
	mov	eax, DWORD PTR nStates[rip]
	mov	r11d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	r10d, eax
	mov	eax, DWORD PTR nStates[rip]
	mov	esi, eax
	mov	eax, DWORD PTR nOutputs[rip]
	mov	edi, eax
	lea	rcx, -528[rbp]
	lea	rdx, -784[rbp]
	sub	rsp, 8
	lea	rax, -400[rbp]
	push	rax
	mov	r9, rcx
	mov	r8, rdx
	mov	ecx, r11d
	mov	edx, r10d
	call	fxp_matrix_multiplication
	add	rsp, 16
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1657
.L1658:
	mov	eax, DWORD PTR -924[rbp]
	cdqe
	mov	rax, QWORD PTR -400[rbp+rax*8]
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -656[rbp+rdx*8], rax
	add	DWORD PTR -924[rbp], 1
.L1657:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1658
	add	DWORD PTR -928[rbp], 1
.L1656:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1659
	mov	DWORD PTR -928[rbp], 0
	jmp	.L1660
.L1663:
	mov	DWORD PTR -924[rbp], 0
	jmp	.L1661
.L1662:
	mov	eax, DWORD PTR -924[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -928[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	rax, QWORD PTR -656[rbp+rax*8]
	mov	rdi, rax
	call	fxp_to_double
	movq	rax, xmm0
	mov	edx, DWORD PTR -924[rbp]
	movsx	rcx, edx
	mov	edx, DWORD PTR -928[rbp]
	movsx	rdx, edx
	sal	rdx, 2
	add	rdx, rcx
	mov	QWORD PTR -272[rbp+rdx*8], rax
	add	DWORD PTR -924[rbp], 1
.L1661:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -924[rbp], eax
	jl	.L1662
	add	DWORD PTR -928[rbp], 1
.L1660:
	mov	eax, DWORD PTR nStates[rip]
	cmp	DWORD PTR -928[rbp], eax
	jl	.L1663
	mov	edx, DWORD PTR nStates[rip]
	lea	rax, -272[rbp]
	mov	esi, edx
	mov	rdi, rax
	call	determinant
	movq	rax, xmm0
	pxor	xmm0, xmm0
	movq	xmm3, rax
	ucomisd	xmm3, xmm0
	jp	.L1655
	pxor	xmm0, xmm0
	movq	xmm4, rax
	comisd	xmm4, xmm0
	jne	.L1655
	lea	rcx, __PRETTY_FUNCTION__.0[rip]
	mov	edx, 134
	lea	rsi, .LC91[rip]
	lea	rdi, .LC92[rip]
	call	__assert_fail@PLT
.L1655:
	mov	eax, 0
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L1665
	call	__stack_chk_fail@PLT
.L1665:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE150:
	.size	verify_observability, .-verify_observability
	.globl	resp_mag
	.type	resp_mag, @function
resp_mag:
.LFB151:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 248
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	QWORD PTR -168[rbp], rdi
	mov	DWORD PTR -172[rbp], esi
	mov	QWORD PTR -184[rbp], rdx
	mov	DWORD PTR -176[rbp], ecx
	mov	QWORD PTR -192[rbp], r8
	mov	DWORD PTR -196[rbp], r9d
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -56[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	rbx, rax
	mov	eax, DWORD PTR -196[rbp]
	lea	edx, 1[rax]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -136[rbp], rax
	movsx	rax, edx
	mov	r10, rax
	mov	r11d, 0
	movsx	rax, edx
	mov	r12, rax
	mov	r13d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1667:
	cmp	rsp, rcx
	je	.L1668
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1667
.L1668:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1669
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1669:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -144[rbp], rax
	mov	eax, DWORD PTR -196[rbp]
	lea	edx, 1[rax]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -120[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -224[rbp], rax
	mov	QWORD PTR -216[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -240[rbp], rax
	mov	QWORD PTR -232[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1670:
	cmp	rsp, rdx
	je	.L1671
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1670
.L1671:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1672
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1672:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -112[rbp], rax
	mov	eax, DWORD PTR -196[rbp]
	add	eax, 1
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -104[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -256[rbp], rdx
	mov	QWORD PTR -248[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -272[rbp], rdx
	mov	QWORD PTR -264[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1673:
	cmp	rsp, rdx
	je	.L1674
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1673
.L1674:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1675
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1675:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -96[rbp], rax
	mov	eax, DWORD PTR -196[rbp]
	add	eax, 1
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -88[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -288[rbp], rdx
	mov	QWORD PTR -280[rbp], 0
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	esi, 16
	mov	edx, 0
	div	rsi
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1676:
	cmp	rsp, rdx
	je	.L1677
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1676
.L1677:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1678
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1678:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	pxor	xmm0, xmm0
	movsd	QWORD PTR -128[rbp], xmm0
	mov	DWORD PTR -152[rbp], 0
	jmp	.L1679
.L1684:
	mov	rax, QWORD PTR -168[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -144[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	DWORD PTR -148[rbp], 1
	jmp	.L1680
.L1681:
	mov	rax, QWORD PTR -144[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	movsd	QWORD PTR -64[rbp], xmm0
	mov	rax, QWORD PTR -128[rbp]
	mov	edi, 6
	movq	xmm0, rax
	call	cosTyl
	mov	rax, QWORD PTR -144[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -224[rbp], xmm0
	mov	rax, QWORD PTR -128[rbp]
	mov	edi, 6
	movq	xmm0, rax
	call	sinTyl
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -224[rbp]
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -148[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -168[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm1
	mov	rax, QWORD PTR -144[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	rax, QWORD PTR -128[rbp]
	mov	edi, 6
	movq	xmm0, rax
	call	sinTyl
	movq	rax, xmm0
	movq	xmm3, rax
	mulsd	xmm3, QWORD PTR -64[rbp]
	movsd	QWORD PTR -224[rbp], xmm3
	mov	rax, QWORD PTR -128[rbp]
	mov	edi, 6
	movq	xmm0, rax
	call	cosTyl
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mulsd	xmm0, xmm1
	addsd	xmm0, QWORD PTR -224[rbp]
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -148[rbp], 1
.L1680:
	mov	eax, DWORD PTR -148[rbp]
	cmp	eax, DWORD PTR -172[rbp]
	jl	.L1681
	mov	rax, QWORD PTR -184[rbp]
	movsd	xmm0, QWORD PTR [rax]
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	pxor	xmm0, xmm0
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	DWORD PTR -148[rbp], 1
	jmp	.L1682
.L1683:
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	movsd	QWORD PTR -64[rbp], xmm0
	mov	rax, QWORD PTR -128[rbp]
	mov	edi, 6
	movq	xmm0, rax
	call	cosTyl
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -224[rbp], xmm0
	mov	rax, QWORD PTR -128[rbp]
	mov	edi, 6
	movq	xmm0, rax
	call	sinTyl
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -224[rbp]
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -148[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -184[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	addsd	xmm0, xmm1
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	mov	rax, QWORD PTR -128[rbp]
	mov	edi, 6
	movq	xmm0, rax
	call	sinTyl
	movq	rax, xmm0
	movq	xmm4, rax
	mulsd	xmm4, QWORD PTR -64[rbp]
	movsd	QWORD PTR -224[rbp], xmm4
	mov	rax, QWORD PTR -128[rbp]
	mov	edi, 6
	movq	xmm0, rax
	call	cosTyl
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mulsd	xmm0, xmm1
	addsd	xmm0, QWORD PTR -224[rbp]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	QWORD PTR [rax+rdx*8], xmm0
	add	DWORD PTR -148[rbp], 1
.L1682:
	mov	eax, DWORD PTR -148[rbp]
	cmp	eax, DWORD PTR -176[rbp]
	jl	.L1683
	mov	rax, QWORD PTR -144[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mov	rax, QWORD PTR -144[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mulsd	xmm1, xmm0
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm2, QWORD PTR [rax+rdx*8]
	mov	rax, QWORD PTR -112[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	pxor	xmm5, xmm5
	cvtsd2ss	xmm5, xmm0
	movd	eax, xmm5
	movd	xmm0, eax
	call	sqrt3
	mov	eax, DWORD PTR -152[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -192[rbp]
	add	rax, rdx
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR [rax], xmm0
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	mov	rax, QWORD PTR -96[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mulsd	xmm1, xmm0
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm2, QWORD PTR [rax+rdx*8]
	mov	rax, QWORD PTR -80[rbp]
	mov	edx, DWORD PTR -152[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	mulsd	xmm0, xmm2
	addsd	xmm0, xmm1
	pxor	xmm6, xmm6
	cvtsd2ss	xmm6, xmm0
	movd	eax, xmm6
	movd	xmm0, eax
	call	sqrt3
	cvtss2sd	xmm0, xmm0
	movsd	QWORD PTR -72[rbp], xmm0
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -72[rbp]
	setp	al
	mov	edx, 1
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -72[rbp]
	cmovne	eax, edx
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	mov	eax, DWORD PTR -152[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -192[rbp]
	add	rax, rdx
	movsd	xmm0, QWORD PTR [rax]
	mov	eax, DWORD PTR -152[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -192[rbp]
	add	rax, rdx
	divsd	xmm0, QWORD PTR -72[rbp]
	movsd	QWORD PTR [rax], xmm0
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -196[rbp]
	movsd	xmm0, QWORD PTR .LC93[rip]
	divsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR -128[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -128[rbp], xmm0
	add	DWORD PTR -152[rbp], 1
.L1679:
	movsd	xmm0, QWORD PTR .LC93[rip]
	comisd	xmm0, QWORD PTR -128[rbp]
	jnb	.L1684
	mov	rsp, rbx
	nop
	mov	rax, QWORD PTR -56[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L1685
	call	__stack_chk_fail@PLT
.L1685:
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE151:
	.size	resp_mag, .-resp_mag
	.section	.rodata
	.align 8
.LC94:
	.string	"|----------------Passband Failure-------------|"
	.align 8
.LC95:
	.string	"|-------------Cutoff Frequency Failure--------|"
	.align 8
.LC96:
	.string	"|----------------Stopband Failure-------------|"
	.text
	.globl	verify_magnitude
	.type	verify_magnitude, @function
verify_magnitude:
.LFB152:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r12
	push	rbx
	sub	rsp, 192
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 12, -40
	.cfi_offset 3, -48
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -40[rbp], rax
	xor	eax, eax
	mov	rax, rsp
	mov	r12, rax
	mov	DWORD PTR -144[rbp], 100
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, DWORD PTR -144[rbp]
	movsd	xmm0, QWORD PTR .LC7[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -112[rbp], xmm0
	mov	eax, DWORD PTR -144[rbp]
	lea	edx, 1[rax]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -120[rbp], rax
	movsx	rax, edx
	mov	rcx, rax
	mov	ebx, 0
	movsx	rax, edx
	mov	rsi, rax
	mov	edi, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1687:
	cmp	rsp, rcx
	je	.L1688
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1687
.L1688:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1689
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1689:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -128[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -136[rbp], rax
	movsx	rax, edx
	mov	r8, rax
	mov	r9d, 0
	movsx	rax, edx
	mov	r10, rax
	mov	r11d, 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rdx, rax, 16
	mov	rax, rdx
	and	rax, -4096
	mov	rcx, rsp
	sub	rcx, rax
.L1690:
	cmp	rsp, rcx
	je	.L1691
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1690
.L1691:
	mov	rax, rdx
	and	eax, 4095
	sub	rsp, rax
	mov	rax, rdx
	and	eax, 4095
	test	rax, rax
	je	.L1692
	mov	rax, rdx
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1692:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -96[rbp], rax
	mov	eax, DWORD PTR ds[rip+800]
	mov	rcx, QWORD PTR -96[rbp]
	mov	edx, eax
	mov	rsi, rcx
	lea	rdi, ds[rip]
	call	fxp_double_to_fxp_array
	mov	edx, DWORD PTR ds[rip+800]
	movsx	rax, edx
	sub	rax, 1
	mov	QWORD PTR -88[rbp], rax
	movsx	rax, edx
	mov	QWORD PTR -160[rbp], rax
	mov	QWORD PTR -152[rbp], 0
	movsx	rax, edx
	mov	QWORD PTR -176[rbp], rax
	mov	QWORD PTR -168[rbp], 0
	movsx	rax, edx
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1693:
	cmp	rsp, rdx
	je	.L1694
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1693
.L1694:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1695
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1695:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -80[rbp], rax
	mov	edx, DWORD PTR ds[rip+800]
	mov	rcx, QWORD PTR -96[rbp]
	mov	rax, QWORD PTR -80[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	mov	eax, DWORD PTR ds[rip+1608]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -72[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -192[rbp], rdx
	mov	QWORD PTR -184[rbp], 0
	movsx	rdx, eax
	mov	QWORD PTR -208[rbp], rdx
	mov	QWORD PTR -200[rbp], 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1696:
	cmp	rsp, rdx
	je	.L1697
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1696
.L1697:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1698
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1698:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -64[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rax, QWORD PTR -64[rbp]
	mov	rsi, rax
	lea	rdi, ds[rip+808]
	call	fxp_double_to_fxp_array
	mov	eax, DWORD PTR ds[rip+1608]
	movsx	rdx, eax
	sub	rdx, 1
	mov	QWORD PTR -56[rbp], rdx
	movsx	rdx, eax
	mov	QWORD PTR -224[rbp], rdx
	mov	QWORD PTR -216[rbp], 0
	movsx	rdx, eax
	mov	r14, rdx
	mov	r15d, 0
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	eax, 16
	sub	rax, 1
	add	rax, rdx
	mov	ebx, 16
	mov	edx, 0
	div	rbx
	imul	rax, rax, 16
	mov	rcx, rax
	and	rcx, -4096
	mov	rdx, rsp
	sub	rdx, rcx
.L1699:
	cmp	rsp, rdx
	je	.L1700
	sub	rsp, 4096
	or	QWORD PTR 4088[rsp], 0
	jmp	.L1699
.L1700:
	mov	rdx, rax
	and	edx, 4095
	sub	rsp, rdx
	mov	rdx, rax
	and	edx, 4095
	test	rdx, rdx
	je	.L1701
	and	eax, 4095
	sub	rax, 8
	add	rax, rsp
	or	QWORD PTR [rax], 0
.L1701:
	mov	rax, rsp
	add	rax, 7
	shr	rax, 3
	sal	rax, 3
	mov	QWORD PTR -48[rbp], rax
	mov	edx, DWORD PTR ds[rip+1608]
	mov	rcx, QWORD PTR -64[rbp]
	mov	rax, QWORD PTR -48[rbp]
	mov	rsi, rcx
	mov	rdi, rax
	call	fxp_to_double_array
	mov	edx, DWORD PTR ds[rip+800]
	mov	eax, DWORD PTR ds[rip+1608]
	mov	esi, DWORD PTR -144[rbp]
	mov	rcx, QWORD PTR -128[rbp]
	mov	r9d, esi
	mov	r8, rcx
	mov	ecx, edx
	lea	rdx, ds[rip]
	mov	esi, eax
	lea	rdi, ds[rip+808]
	call	resp_mag
	mov	eax, DWORD PTR filter[rip+24]
	cmp	eax, 1
	jne	.L1702
	mov	DWORD PTR -140[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -104[rbp], xmm0
	jmp	.L1703
.L1711:
	movss	xmm0, DWORD PTR filter[rip+12]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR -104[rbp]
	jb	.L1733
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -140[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	movss	xmm1, DWORD PTR filter[rip]
	cvtss2sd	xmm1, xmm1
	comisd	xmm0, xmm1
	setnb	al
	movzx	eax, al
	lea	rsi, .LC94[rip]
	mov	edi, eax
	call	__DSVERIFIER_assert_msg
	jmp	.L1706
.L1733:
	movss	xmm0, DWORD PTR filter[rip+16]
	cvtss2sd	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -104[rbp]
	jp	.L1707
	ucomisd	xmm0, QWORD PTR -104[rbp]
	jne	.L1707
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -140[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	movss	xmm0, DWORD PTR filter[rip+8]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, xmm1
	setnb	al
	movzx	eax, al
	lea	rsi, .LC95[rip]
	mov	edi, eax
	call	__DSVERIFIER_assert_msg
	jmp	.L1706
.L1707:
	movss	xmm0, DWORD PTR filter[rip+20]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -104[rbp]
	comisd	xmm0, xmm1
	jb	.L1706
	movsd	xmm0, QWORD PTR .LC7[rip]
	comisd	xmm0, QWORD PTR -104[rbp]
	jb	.L1706
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -140[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	movss	xmm0, DWORD PTR filter[rip+4]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, xmm1
	setnb	al
	movzx	eax, al
	lea	rsi, .LC96[rip]
	mov	edi, eax
	call	__DSVERIFIER_assert_msg
.L1706:
	add	DWORD PTR -140[rbp], 1
	movsd	xmm0, QWORD PTR -104[rbp]
	addsd	xmm0, QWORD PTR -112[rbp]
	movsd	QWORD PTR -104[rbp], xmm0
.L1703:
	movsd	xmm0, QWORD PTR .LC7[rip]
	comisd	xmm0, QWORD PTR -104[rbp]
	jnb	.L1711
	jmp	.L1712
.L1702:
	mov	eax, DWORD PTR filter[rip+24]
	cmp	eax, 2
	jne	.L1713
	mov	DWORD PTR -140[rbp], 0
	pxor	xmm0, xmm0
	movsd	QWORD PTR -104[rbp], xmm0
	jmp	.L1714
.L1722:
	movss	xmm0, DWORD PTR filter[rip+20]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, QWORD PTR -104[rbp]
	jb	.L1734
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -140[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	movss	xmm0, DWORD PTR filter[rip+4]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, xmm1
	setnb	al
	movzx	eax, al
	lea	rsi, .LC96[rip]
	mov	edi, eax
	call	__DSVERIFIER_assert_msg
	jmp	.L1717
.L1734:
	movss	xmm0, DWORD PTR filter[rip+16]
	cvtss2sd	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -104[rbp]
	jp	.L1718
	ucomisd	xmm0, QWORD PTR -104[rbp]
	jne	.L1718
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -140[rbp]
	movsx	rdx, edx
	movsd	xmm1, QWORD PTR [rax+rdx*8]
	movss	xmm0, DWORD PTR filter[rip+8]
	cvtss2sd	xmm0, xmm0
	comisd	xmm0, xmm1
	setnb	al
	movzx	eax, al
	lea	rsi, .LC95[rip]
	mov	edi, eax
	call	__DSVERIFIER_assert_msg
	jmp	.L1717
.L1718:
	movss	xmm0, DWORD PTR filter[rip+12]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -104[rbp]
	comisd	xmm0, xmm1
	jbe	.L1717
	movsd	xmm0, QWORD PTR .LC7[rip]
	comisd	xmm0, QWORD PTR -104[rbp]
	jb	.L1717
	mov	rax, QWORD PTR -128[rbp]
	mov	edx, DWORD PTR -140[rbp]
	movsx	rdx, edx
	movsd	xmm0, QWORD PTR [rax+rdx*8]
	movss	xmm1, DWORD PTR filter[rip]
	cvtss2sd	xmm1, xmm1
	comisd	xmm0, xmm1
	setnb	al
	movzx	eax, al
	lea	rsi, .LC94[rip]
	mov	edi, eax
	call	__DSVERIFIER_assert_msg
.L1717:
	add	DWORD PTR -140[rbp], 1
	movsd	xmm0, QWORD PTR -104[rbp]
	addsd	xmm0, QWORD PTR -112[rbp]
	movsd	QWORD PTR -104[rbp], xmm0
.L1714:
	movsd	xmm0, QWORD PTR .LC7[rip]
	comisd	xmm0, QWORD PTR -104[rbp]
	jnb	.L1722
	jmp	.L1712
.L1713:
	mov	edi, 0
	call	__DSVERIFIER_assert
.L1712:
	mov	eax, 0
	mov	rsp, r12
	mov	rbx, QWORD PTR -40[rbp]
	sub	rbx, QWORD PTR fs:40
	je	.L1724
	call	__stack_chk_fail@PLT
.L1724:
	lea	rsp, -32[rbp]
	pop	rbx
	pop	r12
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE152:
	.size	verify_magnitude, .-verify_magnitude
	.globl	plant_cbmc
	.bss
	.align 32
	.type	plant_cbmc, @object
	.size	plant_cbmc, 3224
plant_cbmc:
	.zero	3224
	.text
	.globl	main
	.type	main, @function
main:
.LFB153:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, 0
	call	initialization
	mov	eax, 0
	call	validation
	mov	DWORD PTR rounding_mode[rip], 1
	lea	rdi, verify_overflow[rip]
	call	call_verification_task
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE153:
	.size	main, .-main
	.section	.rodata
	.align 8
.LC97:
	.string	"\n\n****************************************************************************"
	.align 8
.LC98:
	.string	"* set (ds and impl) parameters to check with DSVerifier *"
	.align 8
.LC99:
	.string	"****************************************************************************"
	.text
	.globl	validation
	.type	validation, @function
validation:
.LFB154:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR ds[rip+800]
	test	eax, eax
	je	.L1738
	mov	eax, DWORD PTR ds[rip+1608]
	test	eax, eax
	jne	.L1739
.L1738:
	lea	rdi, .LC97[rip]
	call	puts@PLT
	lea	rdi, .LC98[rip]
	call	puts@PLT
	lea	rdi, .LC99[rip]
	call	puts@PLT
	mov	edi, 0
	call	__DSVERIFIER_assert
.L1739:
	mov	DWORD PTR X_SIZE_VALUE[rip], 15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE154:
	.size	validation, .-validation
	.globl	call_verification_task
	.type	call_verification_task, @function
call_verification_task:
.LFB155:
	.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 -72[rbp], rdi
	mov	DWORD PTR -52[rbp], 0
	mov	BYTE PTR -57[rbp], 0
	mov	DWORD PTR -56[rbp], 0
	mov	DWORD PTR -56[rbp], 0
	jmp	.L1742
.L1756:
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	add	rax, 302
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jbe	.L1743
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	add	rax, 302
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC100[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -24[rbp]
	jbe	.L1784
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	xmm1, QWORD PTR .LC13[rip]
	xorpd	xmm0, xmm1
	jmp	.L1747
.L1784:
	movsd	xmm0, QWORD PTR -24[rbp]
.L1747:
	movsd	QWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	subsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR -16[rbp], xmm0
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -24[rbp]
	jp	.L1748
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -24[rbp]
	jne	.L1748
	cmp	BYTE PTR -57[rbp], 0
	jne	.L1786
.L1748:
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -24[rbp]
	jp	.L1750
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -24[rbp]
	jne	.L1750
	movzx	eax, BYTE PTR -57[rbp]
	xor	eax, 1
	test	al, al
	je	.L1750
	mov	BYTE PTR -57[rbp], 1
.L1750:
	mov	eax, 0
	call	nondet_double@PLT
	movq	rax, xmm0
	mov	edx, DWORD PTR -56[rbp]
	movsx	rdx, edx
	add	rdx, 100
	lea	rcx, 0[0+rdx*8]
	lea	rdx, ds[rip+8]
	mov	QWORD PTR [rcx+rdx], rax
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	comisd	xmm0, QWORD PTR -16[rbp]
	jb	.L1752
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR -8[rbp]
	comisd	xmm0, xmm1
	jb	.L1752
	mov	eax, 1
	jmp	.L1755
.L1752:
	mov	eax, 0
.L1755:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	jmp	.L1743
.L1786:
	nop
.L1743:
	add	DWORD PTR -56[rbp], 1
.L1742:
	mov	eax, DWORD PTR ds[rip+1608]
	cmp	DWORD PTR -56[rbp], eax
	jl	.L1756
	mov	DWORD PTR -56[rbp], 0
	jmp	.L1757
.L1771:
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	add	rax, 202
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jbe	.L1758
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	add	rax, 202
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC100[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -48[rbp]
	jbe	.L1785
	movsd	xmm0, QWORD PTR -48[rbp]
	movq	xmm1, QWORD PTR .LC13[rip]
	xorpd	xmm0, xmm1
	jmp	.L1762
.L1785:
	movsd	xmm0, QWORD PTR -48[rbp]
.L1762:
	movsd	QWORD PTR -48[rbp], xmm0
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	subsd	xmm0, QWORD PTR -48[rbp]
	movsd	QWORD PTR -40[rbp], xmm0
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR -48[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -48[rbp]
	jp	.L1763
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -48[rbp]
	jne	.L1763
	cmp	BYTE PTR -57[rbp], 0
	jne	.L1787
.L1763:
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -48[rbp]
	jp	.L1765
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -48[rbp]
	jne	.L1765
	movzx	eax, BYTE PTR -57[rbp]
	xor	eax, 1
	test	al, al
	je	.L1765
	mov	BYTE PTR -57[rbp], 1
.L1765:
	mov	eax, 0
	call	nondet_double@PLT
	movq	rax, xmm0
	mov	edx, DWORD PTR -56[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	lea	rdx, ds[rip]
	mov	QWORD PTR [rcx+rdx], rax
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	comisd	xmm0, QWORD PTR -40[rbp]
	jb	.L1767
	mov	eax, DWORD PTR -56[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, ds[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR -32[rbp]
	comisd	xmm0, xmm1
	jb	.L1767
	mov	eax, 1
	jmp	.L1770
.L1767:
	mov	eax, 0
.L1770:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	jmp	.L1758
.L1787:
	nop
.L1758:
	add	DWORD PTR -56[rbp], 1
.L1757:
	mov	eax, DWORD PTR ds[rip+800]
	cmp	DWORD PTR -56[rbp], eax
	jl	.L1771
	mov	rdx, QWORD PTR -72[rbp]
	mov	eax, 0
	call	rdx
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE155:
	.size	call_verification_task, .-call_verification_task
	.globl	call_closedloop_verification_task
	.type	call_closedloop_verification_task, @function
call_closedloop_verification_task:
.LFB156:
	.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 -72[rbp], rdi
	mov	BYTE PTR -53[rbp], 0
	mov	DWORD PTR -52[rbp], 0
	mov	DWORD PTR -52[rbp], 0
	jmp	.L1789
.L1804:
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 302
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jbe	.L1833
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 302
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC100[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -24[rbp]
	jbe	.L1834
	movsd	xmm0, QWORD PTR -24[rbp]
	movq	xmm1, QWORD PTR .LC13[rip]
	xorpd	xmm0, xmm1
	jmp	.L1794
.L1834:
	movsd	xmm0, QWORD PTR -24[rbp]
.L1794:
	movsd	QWORD PTR -24[rbp], xmm0
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	subsd	xmm0, QWORD PTR -24[rbp]
	movsd	QWORD PTR -16[rbp], xmm0
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR -24[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -24[rbp]
	jp	.L1795
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -24[rbp]
	jne	.L1795
	cmp	BYTE PTR -53[rbp], 0
	jne	.L1837
.L1795:
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -24[rbp]
	jp	.L1798
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -24[rbp]
	jne	.L1798
	movzx	eax, BYTE PTR -53[rbp]
	xor	eax, 1
	test	al, al
	je	.L1798
	mov	BYTE PTR -53[rbp], 1
.L1798:
	mov	eax, 0
	call	nondet_double@PLT
	movq	rax, xmm0
	mov	edx, DWORD PTR -52[rbp]
	movsx	rdx, edx
	add	rdx, 100
	lea	rcx, 0[0+rdx*8]
	lea	rdx, plant_cbmc[rip+8]
	mov	QWORD PTR [rcx+rdx], rax
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, plant_cbmc[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	comisd	xmm0, QWORD PTR -16[rbp]
	jb	.L1800
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, plant_cbmc[rip+8]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR -8[rbp]
	comisd	xmm0, xmm1
	jb	.L1800
	mov	eax, 1
	jmp	.L1803
.L1800:
	mov	eax, 0
.L1803:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	jmp	.L1797
.L1833:
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 100
	lea	rdx, 0[0+rax*8]
	lea	rax, plant_cbmc[rip+8]
	movsd	QWORD PTR [rdx+rax], xmm0
	jmp	.L1797
.L1837:
	nop
.L1797:
	add	DWORD PTR -52[rbp], 1
.L1789:
	mov	eax, DWORD PTR plant[rip+1608]
	cmp	DWORD PTR -52[rbp], eax
	jl	.L1804
	mov	DWORD PTR -52[rbp], 0
	jmp	.L1805
.L1820:
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 202
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	pxor	xmm1, xmm1
	comisd	xmm0, xmm1
	jbe	.L1835
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	add	rax, 202
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip+8]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC100[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -48[rbp]
	jbe	.L1836
	movsd	xmm0, QWORD PTR -48[rbp]
	movq	xmm1, QWORD PTR .LC13[rip]
	xorpd	xmm0, xmm1
	jmp	.L1810
.L1836:
	movsd	xmm0, QWORD PTR -48[rbp]
.L1810:
	movsd	QWORD PTR -48[rbp], xmm0
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	subsd	xmm0, QWORD PTR -48[rbp]
	movsd	QWORD PTR -40[rbp], xmm0
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	movsd	xmm1, QWORD PTR -48[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -48[rbp]
	jp	.L1811
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -48[rbp]
	jne	.L1811
	cmp	BYTE PTR -53[rbp], 0
	jne	.L1838
.L1811:
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -48[rbp]
	jp	.L1814
	pxor	xmm0, xmm0
	ucomisd	xmm0, QWORD PTR -48[rbp]
	jne	.L1814
	movzx	eax, BYTE PTR -53[rbp]
	xor	eax, 1
	test	al, al
	je	.L1814
	mov	BYTE PTR -53[rbp], 1
.L1814:
	mov	eax, 0
	call	nondet_double@PLT
	movq	rax, xmm0
	mov	edx, DWORD PTR -52[rbp]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*8]
	lea	rdx, plant_cbmc[rip]
	mov	QWORD PTR [rcx+rdx], rax
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, plant_cbmc[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	comisd	xmm0, QWORD PTR -40[rbp]
	jb	.L1816
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, plant_cbmc[rip]
	movsd	xmm1, QWORD PTR [rdx+rax]
	movsd	xmm0, QWORD PTR -32[rbp]
	comisd	xmm0, xmm1
	jb	.L1816
	mov	eax, 1
	jmp	.L1819
.L1816:
	mov	eax, 0
.L1819:
	and	eax, 1
	movzx	eax, al
	mov	edi, eax
	call	__DSVERIFIER_assume
	jmp	.L1813
.L1835:
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, plant[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR -52[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, plant_cbmc[rip]
	movsd	QWORD PTR [rdx+rax], xmm0
	jmp	.L1813
.L1838:
	nop
.L1813:
	add	DWORD PTR -52[rbp], 1
.L1805:
	mov	eax, DWORD PTR plant[rip+800]
	cmp	DWORD PTR -52[rbp], eax
	jl	.L1820
	mov	rdx, QWORD PTR -72[rbp]
	mov	eax, 0
	call	rdx
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE156:
	.size	call_closedloop_verification_task, .-call_closedloop_verification_task
	.globl	ds
	.data
	.align 32
	.type	ds, @object
	.size	ds, 3224
ds:
	.long	0
	.long	1072693248
	.long	0
	.long	1072693248
	.zero	784
	.long	2
	.zero	4
	.long	1546188227
	.long	1072546447
	.long	1030792151
	.long	-1075063030
	.zero	784
	.long	2
	.zero	4
	.long	1202590843
	.long	1066695393
	.zero	1600
	.globl	impl
	.align 32
	.type	impl, @object
	.size	impl, 56
impl:
	.long	10
	.long	6
	.long	0
	.long	1072693248
	.long	0
	.long	-1074790400
	.zero	32
	.section	.rodata
	.align 16
	.type	__PRETTY_FUNCTION__.21, @object
	.size	__PRETTY_FUNCTION__.21, 20
__PRETTY_FUNCTION__.21:
	.string	"__DSVERIFIER_assert"
	.align 16
	.type	__PRETTY_FUNCTION__.20, @object
	.size	__PRETTY_FUNCTION__.20, 24
__PRETTY_FUNCTION__.20:
	.string	"__DSVERIFIER_assert_msg"
	.align 16
	.type	__PRETTY_FUNCTION__.19, @object
	.size	__PRETTY_FUNCTION__.19, 26
__PRETTY_FUNCTION__.19:
	.string	"double_check_oscillations"
	.align 8
	.type	__PRETTY_FUNCTION__.18, @object
	.size	__PRETTY_FUNCTION__.18, 12
__PRETTY_FUNCTION__.18:
	.string	"snrVariance"
	.align 8
	.type	__PRETTY_FUNCTION__.17, @object
	.size	__PRETTY_FUNCTION__.17, 9
__PRETTY_FUNCTION__.17:
	.string	"snrPower"
	.align 8
	.type	__PRETTY_FUNCTION__.16, @object
	.size	__PRETTY_FUNCTION__.16, 9
__PRETTY_FUNCTION__.16:
	.string	"snrPoint"
	.align 8
	.type	__PRETTY_FUNCTION__.15, @object
	.size	__PRETTY_FUNCTION__.15, 13
__PRETTY_FUNCTION__.15:
	.string	"iirIIOutTime"
	.align 8
	.type	__PRETTY_FUNCTION__.14, @object
	.size	__PRETTY_FUNCTION__.14, 14
__PRETTY_FUNCTION__.14:
	.string	"iirIItOutTime"
	.align 16
	.type	__PRETTY_FUNCTION__.13, @object
	.size	__PRETTY_FUNCTION__.13, 21
__PRETTY_FUNCTION__.13:
	.string	"iirIItOutTime_double"
	.align 16
	.type	__PRETTY_FUNCTION__.12, @object
	.size	__PRETTY_FUNCTION__.12, 28
__PRETTY_FUNCTION__.12:
	.string	"double_direct_form_1_MSP430"
	.align 16
	.type	__PRETTY_FUNCTION__.11, @object
	.size	__PRETTY_FUNCTION__.11, 28
__PRETTY_FUNCTION__.11:
	.string	"double_direct_form_2_MSP430"
	.align 32
	.type	__PRETTY_FUNCTION__.10, @object
	.size	__PRETTY_FUNCTION__.10, 39
__PRETTY_FUNCTION__.10:
	.string	"double_transposed_direct_form_2_MSP430"
	.align 8
	.type	__PRETTY_FUNCTION__.9, @object
	.size	__PRETTY_FUNCTION__.9, 15
__PRETTY_FUNCTION__.9:
	.string	"initialization"
	.align 16
	.type	__PRETTY_FUNCTION__.8, @object
	.size	__PRETTY_FUNCTION__.8, 31
__PRETTY_FUNCTION__.8:
	.string	"verify_limit_cycle_state_space"
	.align 16
	.type	__PRETTY_FUNCTION__.7, @object
	.size	__PRETTY_FUNCTION__.7, 30
__PRETTY_FUNCTION__.7:
	.string	"verify_zero_input_limit_cycle"
	.align 16
	.type	__PRETTY_FUNCTION__.6, @object
	.size	__PRETTY_FUNCTION__.6, 22
__PRETTY_FUNCTION__.6:
	.string	"verify_generic_timing"
	.align 16
	.type	__PRETTY_FUNCTION__.5, @object
	.size	__PRETTY_FUNCTION__.5, 17
__PRETTY_FUNCTION__.5:
	.string	"verify_stability"
	.align 16
	.type	__PRETTY_FUNCTION__.4, @object
	.size	__PRETTY_FUNCTION__.4, 25
__PRETTY_FUNCTION__.4:
	.string	"verify_error_state_space"
	.align 16
	.type	__PRETTY_FUNCTION__.3, @object
	.size	__PRETTY_FUNCTION__.3, 26
__PRETTY_FUNCTION__.3:
	.string	"verify_safety_state_space"
	.align 16
	.type	__PRETTY_FUNCTION__.2, @object
	.size	__PRETTY_FUNCTION__.2, 23
__PRETTY_FUNCTION__.2:
	.string	"verify_controllability"
	.align 16
	.type	__PRETTY_FUNCTION__.1, @object
	.size	__PRETTY_FUNCTION__.1, 30
__PRETTY_FUNCTION__.1:
	.string	"verify_controllability_double"
	.align 16
	.type	__PRETTY_FUNCTION__.0, @object
	.size	__PRETTY_FUNCTION__.0, 21
__PRETTY_FUNCTION__.0:
	.string	"verify_observability"
	.align 8
.LC5:
	.long	0
	.long	1071644672
	.align 8
.LC7:
	.long	0
	.long	1072693248
	.align 16
.LC13:
	.long	0
	.long	-2147483648
	.long	0
	.long	0
	.align 8
.LC15:
	.long	0
	.long	-1074790400
	.align 8
.LC28:
	.long	0
	.long	1089470464
	.align 8
.LC29:
	.long	0
	.long	1088421824
	.align 8
.LC30:
	.long	8388608
	.long	1104150400
	.align 8
.LC31:
	.long	-1574947053
	.long	1075974094
	.align 8
.LC32:
	.long	-1574947053
	.long	1074925518
	.align 4
.LC35:
	.long	1176256410
	.align 8
.LC36:
	.long	0
	.long	1080213504
	.align 8
.LC37:
	.long	0
	.long	-1067270144
	.align 8
.LC39:
	.long	0
	.long	1097761920
	.align 8
.LC40:
	.long	1202590843
	.long	1065646817
	.align 8
.LC51:
	.long	0
	.long	1075314688
	.align 8
.LC52:
	.long	0
	.long	1079902208
	.align 8
.LC53:
	.long	0
	.long	1085517824
	.align 8
.LC54:
	.long	0
	.long	1091970560
	.align 8
.LC55:
	.long	0
	.long	1099106472
	.align 8
.LC58:
	.long	0
	.long	1073741824
	.align 8
.LC59:
	.long	0
	.long	1077411840
	.align 8
.LC60:
	.long	0
	.long	1082556416
	.align 8
.LC61:
	.long	0
	.long	1088663552
	.align 8
.LC62:
	.long	0
	.long	1095479168
	.align 8
.LC63:
	.long	0
	.long	1074266112
	.align 8
.LC64:
	.long	0
	.long	1075052544
	.align 8
.LC65:
	.long	0
	.long	1075576832
	.align 4
.LC67:
	.long	1056964608
	.align 4
.LC68:
	.long	1069547520
	.align 16
.LC69:
	.long	-2147483648
	.long	0
	.long	0
	.long	0
	.align 4
.LC70:
	.long	1092616192
	.align 8
.LC71:
	.long	-1998362383
	.long	1055193269
	.align 8
.LC93:
	.long	1413754136
	.long	1074340347
	.align 8
.LC100:
	.long	0
	.long	1079574528
	.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	"262433.c"
	.text
	.global	X_SIZE_VALUE
	.bss
	.align	2
	.type	X_SIZE_VALUE, %object
	.size	X_SIZE_VALUE, 4
X_SIZE_VALUE:
	.space	4
	.global	overflow_mode
	.data
	.align	2
	.type	overflow_mode, %object
	.size	overflow_mode, 4
overflow_mode:
	.word	1
	.global	rounding_mode
	.bss
	.align	2
	.type	rounding_mode, %object
	.size	rounding_mode, 4
rounding_mode:
	.space	4
	.text
	.align	2
	.global	__DSVERIFIER_assume
	.syntax unified
	.arm
	.fpu softvfp
	.type	__DSVERIFIER_assume, %function
__DSVERIFIER_assume:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	mov	r0, r3
	bl	__CPROVER_assume
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	__DSVERIFIER_assume, .-__DSVERIFIER_assume
	.section	.rodata
	.align	2
.LC0:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/core/compatibility.h\000"
	.align	2
.LC1:
	.ascii	"expression\000"
	.text
	.align	2
	.global	__DSVERIFIER_assert
	.syntax unified
	.arm
	.fpu softvfp
	.type	__DSVERIFIER_assert, %function
__DSVERIFIER_assert:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	strb	r3, [fp, #-5]
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L4
	ldr	r3, .L5
	mov	r2, #36
	ldr	r1, .L5+4
	ldr	r0, .L5+8
	bl	__assert_fail
.L4:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L6:
	.align	2
.L5:
	.word	__PRETTY_FUNCTION__.5216
	.word	.LC0
	.word	.LC1
	.size	__DSVERIFIER_assert, .-__DSVERIFIER_assert
	.section	.rodata
	.align	2
.LC2:
	.ascii	"%s\000"
	.text
	.align	2
	.global	__DSVERIFIER_assert_msg
	.syntax unified
	.arm
	.fpu softvfp
	.type	__DSVERIFIER_assert_msg, %function
__DSVERIFIER_assert_msg:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	mov	r3, r0
	str	r1, [fp, #-12]
	strb	r3, [fp, #-5]
	ldr	r1, [fp, #-12]
	ldr	r0, .L10
	bl	printf
	ldrb	r3, [fp, #-5]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L9
	ldr	r3, .L10+4
	mov	r2, #41
	ldr	r1, .L10+8
	ldr	r0, .L10+12
	bl	__assert_fail
.L9:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L11:
	.align	2
.L10:
	.word	.LC2
	.word	__PRETTY_FUNCTION__.5221
	.word	.LC0
	.word	.LC1
	.size	__DSVERIFIER_assert_msg, .-__DSVERIFIER_assert_msg
	.comm	_fxp_one,4,4
	.comm	_fxp_half,4,4
	.comm	_fxp_minus_one,4,4
	.comm	_fxp_min,4,4
	.comm	_fxp_max,4,4
	.comm	_dbl_max,8,8
	.comm	_dbl_min,8,8
	.comm	_fxp_fmask,4,4
	.comm	_fxp_imask,4,4
	.section	.rodata
	.align	3
	.type	scale_factor, %object
	.size	scale_factor, 248
scale_factor:
	.word	0
	.word	1072693248
	.word	0
	.word	1073741824
	.word	0
	.word	1074790400
	.word	0
	.word	1075838976
	.word	0
	.word	1076887552
	.word	0
	.word	1077936128
	.word	0
	.word	1078984704
	.word	0
	.word	1080033280
	.word	0
	.word	1081081856
	.word	0
	.word	1082130432
	.word	0
	.word	1083179008
	.word	0
	.word	1084227584
	.word	0
	.word	1085276160
	.word	0
	.word	1086324736
	.word	0
	.word	1087373312
	.word	0
	.word	1088421888
	.word	0
	.word	1089470464
	.word	0
	.word	1090519040
	.word	0
	.word	1091567616
	.word	0
	.word	1092616192
	.word	0
	.word	1093664768
	.word	0
	.word	1094713344
	.word	0
	.word	1095761920
	.word	0
	.word	1096810496
	.word	0
	.word	1097859072
	.word	0
	.word	1098907648
	.word	0
	.word	1099956224
	.word	0
	.word	1101004800
	.word	0
	.word	1102053376
	.word	0
	.word	1103101952
	.word	0
	.word	1104150528
	.align	3
	.type	scale_factor_inv, %object
	.size	scale_factor_inv, 248
scale_factor_inv:
	.word	0
	.word	1072693248
	.word	0
	.word	1071644672
	.word	0
	.word	1070596096
	.word	0
	.word	1069547520
	.word	0
	.word	1068498944
	.word	0
	.word	1067450368
	.word	0
	.word	1066401792
	.word	0
	.word	1065353216
	.word	0
	.word	1064304640
	.word	0
	.word	1063256064
	.word	0
	.word	1062207488
	.word	0
	.word	1061158912
	.word	0
	.word	1060110336
	.word	0
	.word	1059061760
	.word	0
	.word	1058013184
	.word	0
	.word	1056964608
	.word	147574
	.word	1055916032
	.word	4294672148
	.word	1054867455
	.word	442722
	.word	1053818880
	.word	442722
	.word	1052770304
	.word	4291130373
	.word	1051721727
	.word	4291130373
	.word	1050673151
	.word	4291130373
	.word	1049624575
	.word	16971005
	.word	1048576000
	.word	16971005
	.word	1047527424
	.word	4177793578
	.word	1046478847
	.word	4177793578
	.word	1045430271
	.word	243644596
	.word	1044381696
	.word	3573330668
	.word	1043333119
	.word	3573330668
	.word	1042284543
	.word	2057033325
	.word	1041235968
	.align	2
	.type	rand_uni, %object
	.size	rand_uni, 40000
rand_uni:
	.word	3203986558
	.word	3182791720
	.word	3188698315
	.word	1050290517
	.word	1036740293
	.word	1064879289
	.word	1065104477
	.word	1057904025
	.word	1058341827
	.word	3189575422
	.word	1053059208
	.word	3198936072
	.word	1064997005
	.word	3196940452
	.word	1053276161
	.word	3191296422
	.word	1060153685
	.word	3210698274
	.word	3212343375
	.word	3205815197
	.word	3204995438
	.word	3195368380
	.word	3207437671
	.word	1051914755
	.word	3193406827
	.word	1062690036
	.word	3203561931
	.word	1059638621
	.word	3206984301
	.word	3212183283
	.word	3181831598
	.word	1058999736
	.word	3209221863
	.word	1019435440
	.word	1053364041
	.word	1061609359
	.word	1035087920
	.word	1063349407
	.word	1063397950
	.word	3196008315
	.word	3207653388
	.word	1058285497
	.word	3212399530
	.word	3186691131
	.word	3208203530
	.word	3203882852
	.word	3209838401
	.word	3203096872
	.word	1041742704
	.word	1055095857
	.word	3198596711
	.word	1057705193
	.word	3190376832
	.word	1040973022
	.word	1057691271
	.word	1055864390
	.word	3199390483
	.word	3207134468
	.word	1063848842
	.word	1064699740
	.word	3209249374
	.word	1050443251
	.word	1057146058
	.word	1036170702
	.word	1043458992
	.word	1041495254
	.word	1016835224
	.word	3197710344
	.word	1050334643
	.word	3208314776
	.word	1060129563
	.word	1040855016
	.word	1057530281
	.word	3138670328
	.word	3205477383
	.word	1055300184
	.word	3205613364
	.word	1064584069
	.word	3196240972
	.word	3208807329
	.word	3210408862
	.word	3189171096
	.word	3197813506
	.word	3206831259
	.word	3199999139
	.word	1056690938
	.word	3205156115
	.word	3211801610
	.word	1060051278
	.word	1050076832
	.word	1004086943
	.word	3211679913
	.word	1042023236
	.word	1059961369
	.word	3205035279
	.word	1064213982
	.word	3172197422
	.word	3210273133
	.word	3212432584
	.word	1059033125
	.word	3207154248
	.word	1060730859
	.word	1050505517
	.word	1005731364
	.word	3200880802
	.word	1023443447
	.word	1033720214
	.word	3206999456
	.word	1063074669
	.word	3205940289
	.word	1056830924
	.word	3210703780
	.word	1064997214
	.word	3204530259
	.word	3203185898
	.word	1013462154
	.word	1061487913
	.word	1064434379
	.word	3209183380
	.word	3210021757
	.word	1061085669
	.word	3207752856
	.word	3179948580
	.word	3187427630
	.word	3199722415
	.word	3200887549
	.word	1054997360
	.word	3209974575
	.word	3197787790
	.word	3212773371
	.word	1064256557
	.word	3197147856
	.word	3211621368
	.word	3202335586
	.word	3199764957
	.word	1064506801
	.word	1057011326
	.word	1062010719
	.word	3204639498
	.word	1050565392
	.word	3193191498
	.word	1064188676
	.word	3209096046
	.word	3204090203
	.word	3188314958
	.word	1049776288
	.word	1044034835
	.word	3205188307
	.word	1049530284
	.word	3205393235
	.word	1058290743
	.word	1040834867
	.word	1058690157
	.word	3189460401
	.word	1043924977
	.word	3206991536
	.word	1049620521
	.word	3205791227
	.word	1060116763
	.word	1049562456
	.word	3210377796
	.word	3204995350
	.word	3209836373
	.word	3191447472
	.word	3212566727
	.word	3183837437
	.word	1063355442
	.word	1037186736
	.word	1063568378
	.word	3196370921
	.word	1060308102
	.word	1053707835
	.word	3185754625
	.word	1034768304
	.word	1062345615
	.word	1061923599
	.word	3204285320
	.word	1049352786
	.word	3196672015
	.word	1047366845
	.word	1060222933
	.word	1063003581
	.word	1064673460
	.word	3201863646
	.word	3185607013
	.word	1054719639
	.word	1060219822
	.word	1052752822
	.word	3197524921
	.word	3200965771
	.word	3179377671
	.word	3169424920
	.word	1062531190
	.word	3205262674
	.word	1061861361
	.word	1051099679
	.word	1042219100
	.word	3185977701
	.word	3207374254
	.word	1059360412
	.word	3206389582
	.word	3198494920
	.word	3201406104
	.word	1057771088
	.word	3200634919
	.word	3180848283
	.word	1058971827
	.word	3209744887
	.word	1064775246
	.word	1059035048
	.word	3209307514
	.word	1060936615
	.word	3168582269
	.word	1001574693
	.word	3198264593
	.word	3210993216
	.word	3210645599
	.word	3200473360
	.word	3185590531
	.word	1040619167
	.word	3194949158
	.word	1059653825
	.word	1057692424
	.word	3200579847
	.word	3211385258
	.word	1061445852
	.word	3186346304
	.word	3208494283
	.word	3178723550
	.word	3209802395
	.word	3201412911
	.word	1058213156
	.word	3174335290
	.word	1064232057
	.word	1048957199
	.word	3210828473
	.word	1051253855
	.word	1057785276
	.word	1059232672
	.word	3206311099
	.word	1055561923
	.word	1053521159
	.word	1060520394
	.word	1061698262
	.word	3141865121
	.word	1053095354
	.word	1062167264
	.word	1055384860
	.word	3191574377
	.word	3208736566
	.word	3206198698
	.word	3209250271
	.word	3202263443
	.word	3207448788
	.word	3200462002
	.word	3205829869
	.word	3174435222
	.word	1039011275
	.word	3199907701
	.word	3209974594
	.word	3196347363
	.word	3211328292
	.word	1056987373
	.word	1022490082
	.word	3203501572
	.word	1057574509
	.word	3198278289
	.word	3190617310
	.word	1064864162
	.word	3209713260
	.word	3182452428
	.word	1063118236
	.word	1057568025
	.word	3209598168
	.word	3206584120
	.word	3207579192
	.word	1019473070
	.word	1057391214
	.word	1062569529
	.word	3204906843
	.word	1040588034
	.word	3209317312
	.word	1053586973
	.word	1040763984
	.word	3191452914
	.word	1054284344
	.word	3206545445
	.word	3197512443
	.word	1010465629
	.word	3210863561
	.word	3210886515
	.word	1055004481
	.word	3202403252
	.word	1063223340
	.word	1059663131
	.word	1009437053
	.word	1058833930
	.word	3195115179
	.word	1045711641
	.word	1063418666
	.word	1040409012
	.word	3197192259
	.word	1047747199
	.word	1058813470
	.word	3206546003
	.word	3212243111
	.word	3198514039
	.word	1064707786
	.word	3209373648
	.word	3210218221
	.word	1050727010
	.word	3193008581
	.word	1061214592
	.word	1042581728
	.word	3206915613
	.word	3192891430
	.word	1059449452
	.word	3196438565
	.word	1042313524
	.word	1053789599
	.word	1047130836
	.word	1064889301
	.word	1049862680
	.word	3181618741
	.word	1063959689
	.word	3197040141
	.word	3192935564
	.word	3205012642
	.word	1057695456
	.word	1063351880
	.word	3205281800
	.word	1012214508
	.word	3205368288
	.word	3200403014
	.word	3148079057
	.word	1053928943
	.word	3205797531
	.word	1062409750
	.word	3196198379
	.word	1059575306
	.word	1059130444
	.word	3207636485
	.word	3207004207
	.word	1043195251
	.word	1064052303
	.word	1051992247
	.word	1063278586
	.word	3204674514
	.word	3206568599
	.word	3208385712
	.word	1048280378
	.word	3210752143
	.word	3200709637
	.word	1011885356
	.word	3171389425
	.word	3201931779
	.word	1021753465
	.word	1048959908
	.word	1064510686
	.word	1064005105
	.word	1057040162
	.word	1034376718
	.word	1050923756
	.word	1047171104
	.word	3176265443
	.word	3180837325
	.word	3183972765
	.word	1057514493
	.word	3204210466
	.word	1056725401
	.word	3197387141
	.word	1047176778
	.word	1060279566
	.word	1063689843
	.word	1064844874
	.word	3206430698
	.word	3205005955
	.word	3211795937
	.word	1063451848
	.word	1056922600
	.word	1064918787
	.word	3192664692
	.word	1060744018
	.word	3169145380
	.word	3210981066
	.word	3202844724
	.word	3204019305
	.word	3205741863
	.word	1061618703
	.word	1053277685
	.word	3206043146
	.word	3210231577
	.word	3211072233
	.word	1029963625
	.word	1045272046
	.word	1056334694
	.word	3182358286
	.word	1057376202
	.word	3210828497
	.word	3187867255
	.word	3211650306
	.word	1047453695
	.word	3209083334
	.word	1064570154
	.word	3210897417
	.word	3204519182
	.word	3205228835
	.word	1062880631
	.word	1064476148
	.word	3207277491
	.word	1061473312
	.word	1062513771
	.word	3208148974
	.word	1061353755
	.word	1051613023
	.word	1051429696
	.word	1056632517
	.word	3205605700
	.word	3197603772
	.word	1065014969
	.word	1059048869
	.word	1057868974
	.word	3199594925
	.word	1049167335
	.word	1065116897
	.word	3208506461
	.word	1057979279
	.word	3206169433
	.word	3210737544
	.word	3170556603
	.word	1064734905
	.word	1057716630
	.word	3188274403
	.word	1032536506
	.word	3189778348
	.word	3181665524
	.word	1062943777
	.word	1041396263
	.word	1053740761
	.word	3191296869
	.word	1061506595
	.word	3191607040
	.word	3199103654
	.word	1046372556
	.word	3190768782
	.word	1040354746
	.word	3206958955
	.word	3184140821
	.word	1050313670
	.word	1064383027
	.word	1023698376
	.word	3205787980
	.word	3212239814
	.word	1063969696
	.word	1055023305
	.word	3207551384
	.word	3201727284
	.word	1058941707
	.word	1063627605
	.word	1047600450
	.word	1015561787
	.word	1064486362
	.word	3212183989
	.word	3172869155
	.word	3211983558
	.word	1060961132
	.word	1058873139
	.word	3206242375
	.word	1062421453
	.word	1064222595
	.word	3190625390
	.word	3201469896
	.word	1057813381
	.word	3177584022
	.word	3205449237
	.word	3208115632
	.word	1063438762
	.word	3199891827
	.word	3210146045
	.word	1049096184
	.word	1053418887
	.word	3196736930
	.word	3210577870
	.word	3204932258
	.word	3191359445
	.word	1058167888
	.word	3209051307
	.word	1048613692
	.word	3193893559
	.word	1035508024
	.word	3198725396
	.word	1052482083
	.word	3209104146
	.word	1059562465
	.word	3210864030
	.word	3206354358
	.word	3211604037
	.word	1038385206
	.word	1033206008
	.word	1061828538
	.word	1061736922
	.word	3211994094
	.word	1050870393
	.word	1060858224
	.word	1061776802
	.word	3188320826
	.word	1060876463
	.word	1064991011
	.word	1065219141
	.word	3198377061
	.word	1064655799
	.word	1057208183
	.word	1037083771
	.word	1059357974
	.word	3190741037
	.word	1048654923
	.word	3208832600
	.word	1060724713
	.word	1063497236
	.word	3209246328
	.word	3206036561
	.word	1062084885
	.word	3212677871
	.word	1056427702
	.word	1061114463
	.word	3209898253
	.word	1057686188
	.word	3193293322
	.word	3198212163
	.word	1064406591
	.word	3184669067
	.word	3211958795
	.word	3205405112
	.word	1054251759
	.word	1048616744
	.word	1058067169
	.word	1040299911
	.word	3165571795
	.word	1051670153
	.word	3197335229
	.word	1039692580
	.word	1055381925
	.word	1057726636
	.word	3206394817
	.word	3171104610
	.word	3201112336
	.word	1032032772
	.word	3207366925
	.word	1064547288
	.word	3195516470
	.word	1023666826
	.word	3202743206
	.word	3207964354
	.word	1021844704
	.word	1047518170
	.word	3197251723
	.word	3209367213
	.word	3202338705
	.word	3212100883
	.word	1058661764
	.word	1047816978
	.word	1043456260
	.word	1054883691
	.word	1053521274
	.word	1054686039
	.word	3171601685
	.word	3212271527
	.word	1063261962
	.word	3178196720
	.word	1050059357
	.word	1045242239
	.word	1062444758
	.word	1049743896
	.word	3151534086
	.word	1060026345
	.word	3189481689
	.word	1027656974
	.word	3195145520
	.word	3210232719
	.word	1040802526
	.word	3205905234
	.word	1032964689
	.word	1050646269
	.word	3199791900
	.word	1061174419
	.word	1033668759
	.word	1063649720
	.word	1053549847
	.word	3204710734
	.word	3191970508
	.word	3205579554
	.word	3206829350
	.word	3183783809
	.word	3209348110
	.word	1062063068
	.word	3194953602
	.word	3211033707
	.word	1060446719
	.word	3209184270
	.word	3189762585
	.word	3205182056
	.word	1058065828
	.word	3208771577
	.word	3206336430
	.word	3208916485
	.word	1058434742
	.word	3197092097
	.word	3203021769
	.word	1034990474
	.word	3206408964
	.word	1039755064
	.word	3202837262
	.word	3206430418
	.word	3197263204
	.word	1038039838
	.word	3206474192
	.word	3196682525
	.word	3208167399
	.word	3189084366
	.word	3207157891
	.word	1063704147
	.word	1046729753
	.word	1059977791
	.word	1064929767
	.word	1057559964
	.word	3205494243
	.word	1052576338
	.word	3169299408
	.word	3180757226
	.word	1060877328
	.word	3204689044
	.word	3210333923
	.word	1059354664
	.word	1039336656
	.word	3211276843
	.word	1061817884
	.word	3208136964
	.word	1049392348
	.word	1062503181
	.word	1060644730
	.word	3209846616
	.word	3210155085
	.word	1059494558
	.word	1052973825
	.word	1051658665
	.word	3135545058
	.word	3193801356
	.word	1059951128
	.word	3208620667
	.word	3209811250
	.word	1058993349
	.word	1056013650
	.word	1054208054
	.word	3212678778
	.word	3204613377
	.word	1060416712
	.word	1060707137
	.word	3206234635
	.word	3210682564
	.word	3207167166
	.word	3193191931
	.word	3196888656
	.word	1050825735
	.word	1051252996
	.word	3212271902
	.word	3207235472
	.word	1039329634
	.word	1047432495
	.word	3188619598
	.word	3211770045
	.word	3205370758
	.word	3206292314
	.word	3200120509
	.word	3203141136
	.word	1021533982
	.word	3195495216
	.word	3212682010
	.word	1038743984
	.word	3211569904
	.word	1047764080
	.word	3206385381
	.word	1045321026
	.word	3206124280
	.word	1065057768
	.word	1040234461
	.word	3211037493
	.word	1057192655
	.word	1047187970
	.word	1054380828
	.word	1041926869
	.word	1055211169
	.word	1052494052
	.word	3206222312
	.word	1049411674
	.word	3210511187
	.word	3208332326
	.word	1043286953
	.word	1048603968
	.word	3206290630
	.word	3206786960
	.word	3208013375
	.word	3205116525
	.word	3212205392
	.word	1061982002
	.word	1058954093
	.word	3206190832
	.word	3208656658
	.word	3202178906
	.word	3205807567
	.word	1040839150
	.word	1051322896
	.word	3190886073
	.word	3202279255
	.word	3207624636
	.word	1054140678
	.word	3198864002
	.word	1049560614
	.word	3173057383
	.word	1007393599
	.word	3210382444
	.word	1057400928
	.word	3203731982
	.word	3205871639
	.word	1059972109
	.word	1024886158
	.word	3206400123
	.word	3211374619
	.word	3194130183
	.word	3203707438
	.word	3187830063
	.word	1063091482
	.word	1062298361
	.word	1055151783
	.word	3206485602
	.word	3205861972
	.word	1060633991
	.word	3199006935
	.word	1002076311
	.word	3205229173
	.word	1037053895
	.word	3209405902
	.word	3195995460
	.word	3186038871
	.word	3199425340
	.word	3211341450
	.word	1051780555
	.word	3205275482
	.word	1060517598
	.word	1049695675
	.word	1025812373
	.word	1049221217
	.word	1053883164
	.word	3197957868
	.word	1064303450
	.word	1065221588
	.word	1059974975
	.word	1059658391
	.word	1063730096
	.word	3211818690
	.word	3193455457
	.word	1053661318
	.word	3172522881
	.word	3193317788
	.word	3203909882
	.word	3210502457
	.word	1062786410
	.word	1049849400
	.word	1053886095
	.word	3208152876
	.word	1059033325
	.word	1057694346
	.word	3199885697
	.word	3211047332
	.word	3208769151
	.word	3204874683
	.word	3212598872
	.word	3205648683
	.word	1064190830
	.word	3196826816
	.word	1065056845
	.word	1050182212
	.word	1064051775
	.word	1063963975
	.word	1062785706
	.word	1032024728
	.word	1049574855
	.word	1058507426
	.word	1052120374
	.word	1062665820
	.word	1046540905
	.word	3190994197
	.word	1060465507
	.word	3194352595
	.word	1059938075
	.word	3211240123
	.word	3206588341
	.word	1049035042
	.word	1039771628
	.word	3207885602
	.word	1048094500
	.word	3198051894
	.word	3203771277
	.word	3208148241
	.word	3203120110
	.word	1061564496
	.word	1055354046
	.word	3198307530
	.word	1042070794
	.word	3193345672
	.word	1060076922
	.word	3204592799
	.word	1058610613
	.word	1053313130
	.word	1064756702
	.word	1051470986
	.word	3172378733
	.word	3207279455
	.word	1043181906
	.word	3202466045
	.word	1052010614
	.word	1050271074
	.word	1055762981
	.word	1051687598
	.word	3209012140
	.word	1057367058
	.word	1064023172
	.word	1051113864
	.word	1065348665
	.word	3185416510
	.word	3207861800
	.word	3208882828
	.word	1042098524
	.word	1053635230
	.word	1024755268
	.word	1058686962
	.word	3145857887
	.word	1050149079
	.word	1058037987
	.word	1062831600
	.word	1060311350
	.word	3204738817
	.word	1056585337
	.word	3210542866
	.word	1024501206
	.word	1051799264
	.word	1064753772
	.word	1052095854
	.word	1062103699
	.word	1059905427
	.word	1035139716
	.word	3206047458
	.word	1061465051
	.word	1054429019
	.word	3198006605
	.word	1062034070
	.word	3199353049
	.word	3210975619
	.word	3206013185
	.word	3207290756
	.word	1061302237
	.word	1057232088
	.word	3199740182
	.word	1058108410
	.word	1061013018
	.word	1048921063
	.word	1064643017
	.word	3207218120
	.word	1061481532
	.word	3182584450
	.word	3199839961
	.word	3201476668
	.word	1060325881
	.word	1058528601
	.word	1060535502
	.word	1054067646
	.word	3210622310
	.word	3207877842
	.word	1056867229
	.word	3139027795
	.word	1060155674
	.word	3210324748
	.word	1050765226
	.word	1060473129
	.word	1054885813
	.word	1061968238
	.word	1051288979
	.word	1058324565
	.word	1055278686
	.word	3203197952
	.word	1058772050
	.word	1035467605
	.word	3208857775
	.word	1063601656
	.word	3208680379
	.word	3183190665
	.word	3211263896
	.word	1047184429
	.word	1053647696
	.word	3207803683
	.word	1064512632
	.word	1055050863
	.word	3210095509
	.word	1064689851
	.word	3205935371
	.word	3209932336
	.word	1052229528
	.word	1064736088
	.word	3211712660
	.word	3209314961
	.word	1053678988
	.word	3181206428
	.word	1060790319
	.word	3196370104
	.word	3195324103
	.word	3171717589
	.word	3204459276
	.word	1046108419
	.word	3209584811
	.word	3199305743
	.word	1058528201
	.word	3210726423
	.word	1053505021
	.word	3211155097
	.word	1059407798
	.word	1060723789
	.word	1057062443
	.word	3206005333
	.word	1044620531
	.word	1051250284
	.word	1059275629
	.word	1047132651
	.word	1051950404
	.word	1056818500
	.word	1025191880
	.word	3205432791
	.word	3174947608
	.word	3207801721
	.word	3208268454
	.word	3191756425
	.word	1064839116
	.word	3173150140
	.word	1065254622
	.word	3184812258
	.word	3187323973
	.word	3212047785
	.word	3198076724
	.word	1053269766
	.word	1060288339
	.word	3205570394
	.word	3209611137
	.word	1050101363
	.word	1052062689
	.word	3172312777
	.word	3202223941
	.word	3185976495
	.word	3207977555
	.word	3208645724
	.word	3201828373
	.word	3183601894
	.word	3193181640
	.word	3208010843
	.word	3208859073
	.word	1059795011
	.word	1063252907
	.word	1060893083
	.word	1033042982
	.word	3206958843
	.word	1060490796
	.word	3209328627
	.word	3206277833
	.word	1042412437
	.word	1049375841
	.word	1037028131
	.word	3199145932
	.word	1052224766
	.word	1054145733
	.word	1061331216
	.word	1042830372
	.word	1057968689
	.word	1045831524
	.word	3196587165
	.word	1042899123
	.word	1058827473
	.word	3206566052
	.word	3186558951
	.word	3207748293
	.word	1029658318
	.word	1054956015
	.word	1045375688
	.word	3200063073
	.word	1063707112
	.word	1048778211
	.word	3207362451
	.word	1037979600
	.word	3212184112
	.word	3196220804
	.word	1057868865
	.word	1038274934
	.word	3205915347
	.word	1061775006
	.word	1044015453
	.word	1053570104
	.word	1054660224
	.word	1058424580
	.word	3206865386
	.word	1044377004
	.word	1057245477
	.word	3196906929
	.word	3211724089
	.word	3208939675
	.word	996319736
	.word	3205889157
	.word	1055741517
	.word	1059758638
	.word	3200878263
	.word	3196400446
	.word	3197697081
	.word	3195817950
	.word	1064862888
	.word	3203968717
	.word	3202991031
	.word	3196536458
	.word	3202521678
	.word	1030740281
	.word	1064611147
	.word	1059511771
	.word	1059776562
	.word	3191265710
	.word	1061066043
	.word	3183815756
	.word	3205096317
	.word	3210230266
	.word	1038060197
	.word	3210525894
	.word	3203742113
	.word	1059413509
	.word	1051782773
	.word	1064188961
	.word	3192403804
	.word	1064144265
	.word	1029246700
	.word	3205073095
	.word	1034354292
	.word	3204932944
	.word	3181684461
	.word	1060692311
	.word	3186352096
	.word	1053326702
	.word	1058795046
	.word	3208246770
	.word	3211562996
	.word	3201910563
	.word	3211702709
	.word	3207466543
	.word	1053561975
	.word	3200956669
	.word	1063860333
	.word	1062512164
	.word	1056484412
	.word	3206711067
	.word	1057943426
	.word	1042089625
	.word	3201723553
	.word	3212206249
	.word	1056942290
	.word	1061540687
	.word	1056525237
	.word	3207475134
	.word	3212561545
	.word	1034183932
	.word	3185414316
	.word	1049321838
	.word	1059500834
	.word	3209560504
	.word	1061629958
	.word	1063156988
	.word	3193627897
	.word	3197384573
	.word	3195950675
	.word	3196861847
	.word	3196822528
	.word	3210350133
	.word	1061627592
	.word	1058818935
	.word	3209916402
	.word	3131115193
	.word	3196090522
	.word	3171467215
	.word	1058019530
	.word	1060074418
	.word	1063838617
	.word	3207582099
	.word	1060320369
	.word	3212427459
	.word	1038344991
	.word	1023428087
	.word	3191749071
	.word	3205923350
	.word	3205612005
	.word	3202223948
	.word	1061070158
	.word	1062203881
	.word	3210084330
	.word	1053917052
	.word	1052426214
	.word	3204892792
	.word	3183631641
	.word	3207986816
	.word	3192639469
	.word	1048569514
	.word	1061984316
	.word	3212402862
	.word	3212214651
	.word	3178183653
	.word	1032511224
	.word	1058977699
	.word	1058653950
	.word	3198587107
	.word	1006150806
	.word	3188220904
	.word	3198153720
	.word	3181000032
	.word	1061406403
	.word	1045709806
	.word	3212261071
	.word	1057406626
	.word	1052464286
	.word	3211154339
	.word	1050280783
	.word	1049651319
	.word	3203254350
	.word	3209374785
	.word	3199038649
	.word	1059096311
	.word	3206529585
	.word	3204510467
	.word	1051569186
	.word	3211509774
	.word	3208698449
	.word	3205474856
	.word	1046323230
	.word	3192140570
	.word	1058863440
	.word	1039701678
	.word	3203681193
	.word	1058748830
	.word	1064890324
	.word	998857678
	.word	1061779276
	.word	1060604996
	.word	3205745082
	.word	1051478739
	.word	3210112866
	.word	3207918800
	.word	1059570971
	.word	3209472328
	.word	1062080849
	.word	1053792745
	.word	1056465502
	.word	1024526952
	.word	1061574129
	.word	1053494455
	.word	1054295848
	.word	3205195375
	.word	3209130580
	.word	3187975352
	.word	1047158816
	.word	1059808429
	.word	3189949694
	.word	3190820294
	.word	1059902432
	.word	3192802869
	.word	3191757613
	.word	1048185070
	.word	1050598937
	.word	3179948200
	.word	1041066776
	.word	1049223361
	.word	1039713578
	.word	1043115335
	.word	1058325452
	.word	1056948117
	.word	3208504524
	.word	3198108484
	.word	3196519255
	.word	1043911087
	.word	3209494616
	.word	3211996392
	.word	1040856838
	.word	1046117446
	.word	3207542666
	.word	3196217263
	.word	3196412676
	.word	3208770160
	.word	3188296822
	.word	3207798257
	.word	1040925633
	.word	1052108360
	.word	3208015441
	.word	3208306932
	.word	1051028830
	.word	3208111804
	.word	1062127119
	.word	1049895899
	.word	3205433717
	.word	3205988602
	.word	3211074467
	.word	3199582760
	.word	3188826192
	.word	3206997557
	.word	1044059210
	.word	3192267464
	.word	3205120679
	.word	3197768489
	.word	1039460608
	.word	1063605162
	.word	3201557332
	.word	3193310958
	.word	1062133581
	.word	1034051347
	.word	1050750561
	.word	1057008092
	.word	3175234140
	.word	3201332091
	.word	1061949406
	.word	1063715680
	.word	3209201695
	.word	3205986879
	.word	1059115299
	.word	3202926558
	.word	3205938399
	.word	1048605854
	.word	3205829132
	.word	3189046488
	.word	3206698707
	.word	1059782087
	.word	1063235201
	.word	1054480568
	.word	3209138225
	.word	3196570018
	.word	1061687909
	.word	1050403428
	.word	1045964650
	.word	1049616939
	.word	1032823049
	.word	1051674329
	.word	3179101615
	.word	1043686943
	.word	1061187319
	.word	3197035185
	.word	1060998846
	.word	3199487688
	.word	3208243911
	.word	3205552528
	.word	3209136081
	.word	3209211735
	.word	1057679523
	.word	3209657752
	.word	3207698122
	.word	1063991963
	.word	3200043131
	.word	1032200361
	.word	3202385136
	.word	3211560707
	.word	1063898913
	.word	3212193400
	.word	1060905381
	.word	3203243743
	.word	3211094629
	.word	1051926630
	.word	1059424330
	.word	3184903296
	.word	1051841487
	.word	3196527659
	.word	1051720795
	.word	1062429745
	.word	1032293585
	.word	1063991995
	.word	3212822776
	.word	3211242244
	.word	1048348704
	.word	1039976262
	.word	3197548264
	.word	3189352585
	.word	1063745614
	.word	1057261921
	.word	1059673682
	.word	3209217632
	.word	3212579020
	.word	1047884476
	.word	3204419755
	.word	986265643
	.word	3209782665
	.word	1046645970
	.word	1038770365
	.word	3208099831
	.word	3208187944
	.word	3212216080
	.word	1046166265
	.word	3194473912
	.word	1057582113
	.word	1038408444
	.word	1059608372
	.word	3195385244
	.word	1036580567
	.word	3190919006
	.word	1054106162
	.word	1041704381
	.word	3206951748
	.word	1063806313
	.word	3204317295
	.word	3183752990
	.word	3207814070
	.word	1047774045
	.word	1064457581
	.word	1041431489
	.word	1032014562
	.word	1052866734
	.word	3201557677
	.word	3210132897
	.word	1017802253
	.word	1056183215
	.word	1062851868
	.word	1032704137
	.word	1062698871
	.word	3196119276
	.word	1057169553
	.word	1062467343
	.word	3201065984
	.word	1065340129
	.word	3147336832
	.word	1049575612
	.word	3207520594
	.word	1065154051
	.word	1004825654
	.word	3201411636
	.word	3192087622
	.word	3189655156
	.word	1050446142
	.word	3211542090
	.word	3179223685
	.word	3204490079
	.word	1052218351
	.word	1059955503
	.word	3211833959
	.word	1058115222
	.word	1064578704
	.word	3203662069
	.word	1013389424
	.word	1060693553
	.word	3187933675
	.word	3205856675
	.word	3196205898
	.word	3200776371
	.word	3175795969
	.word	3203990454
	.word	3186029290
	.word	3206273003
	.word	3189069845
	.word	1061458043
	.word	1061850796
	.word	1017820065
	.word	3204855791
	.word	3192714912
	.word	3210079490
	.word	3194232568
	.word	1031591888
	.word	1047464254
	.word	3205185948
	.word	3206598558
	.word	3208233238
	.word	3196861749
	.word	1050942504
	.word	3205403906
	.word	1048962997
	.word	1060263301
	.word	1045254566
	.word	3200944567
	.word	1017178382
	.word	3177338353
	.word	3206026625
	.word	3209752082
	.word	3211132829
	.word	1063324949
	.word	1064508758
	.word	3195762949
	.word	1057450476
	.word	1045326994
	.word	3206993103
	.word	1058576285
	.word	3207127792
	.word	3193623774
	.word	3206625774
	.word	3177860523
	.word	1059402187
	.word	3202880152
	.word	3205811471
	.word	1059190655
	.word	1065209033
	.word	1060343377
	.word	3210807446
	.word	3197877629
	.word	1036417160
	.word	3203296761
	.word	1062251244
	.word	3204999402
	.word	1064523585
	.word	1050119776
	.word	3192596190
	.word	1042472391
	.word	1037525850
	.word	3203861259
	.word	1056755010
	.word	1049987255
	.word	1049707809
	.word	995375065
	.word	1061424634
	.word	3181002786
	.word	3207465216
	.word	1057772934
	.word	3212770574
	.word	1061708673
	.word	1053492033
	.word	1062814601
	.word	1061159747
	.word	1060826491
	.word	3165965412
	.word	3204032786
	.word	3201212340
	.word	3180196851
	.word	1064464350
	.word	3208339687
	.word	1045098142
	.word	3198724315
	.word	3206819198
	.word	1044299275
	.word	3180825799
	.word	3198879773
	.word	3192145595
	.word	3206672471
	.word	3212822017
	.word	3207434429
	.word	1049912410
	.word	1060254314
	.word	1064778853
	.word	3192949116
	.word	3192394462
	.word	1061108239
	.word	1060347754
	.word	3204393270
	.word	1049888653
	.word	1049263648
	.word	3188162926
	.word	1053124158
	.word	3196575441
	.word	1050460253
	.word	3210484537
	.word	3164749757
	.word	1047473557
	.word	1054493467
	.word	3204631152
	.word	3206126002
	.word	3212372418
	.word	1057496078
	.word	3177105770
	.word	3210493656
	.word	1033039151
	.word	3212714830
	.word	1058427408
	.word	3207973488
	.word	3208012296
	.word	980248248
	.word	1051046913
	.word	3189214701
	.word	1054354660
	.word	3204651638
	.word	3206998938
	.word	3180957829
	.word	1060147674
	.word	1005062988
	.word	1058848394
	.word	3191554557
	.word	3203733682
	.word	1059146959
	.word	3192817894
	.word	1055994226
	.word	1060416757
	.word	1057036693
	.word	3195753820
	.word	3167830074
	.word	1048214063
	.word	3206475828
	.word	1040545337
	.word	3173351787
	.word	1057529975
	.word	1058127683
	.word	3165304233
	.word	3199229008
	.word	1060283033
	.word	1046813774
	.word	1034413820
	.word	3200373576
	.word	1049087053
	.word	3207042920
	.word	3212163183
	.word	3204862757
	.word	3198434404
	.word	1040732706
	.word	1045550714
	.word	1061683975
	.word	1052181329
	.word	3197594473
	.word	3204970900
	.word	3211641663
	.word	3204204584
	.word	1044234010
	.word	1023218683
	.word	1036038301
	.word	3194256713
	.word	3208290153
	.word	1061136185
	.word	1058683012
	.word	1064340351
	.word	3206152436
	.word	3191275734
	.word	1062211194
	.word	3210560139
	.word	1055234526
	.word	1054400044
	.word	1063405757
	.word	3187253506
	.word	3174198380
	.word	3209878053
	.word	3209067789
	.word	3206480809
	.word	1057508113
	.word	3209532509
	.word	1063632882
	.word	1054703552
	.word	3167290703
	.word	3209855916
	.word	3212703989
	.word	3209971657
	.word	1040243883
	.word	1049495815
	.word	1059044802
	.word	3193239556
	.word	3207242753
	.word	1054272135
	.word	3189134631
	.word	1060361924
	.word	1062034892
	.word	1042638819
	.word	1065149080
	.word	3210920515
	.word	3206268886
	.word	3187767044
	.word	1043090550
	.word	3204734483
	.word	3208915971
	.word	3209944883
	.word	3189287812
	.word	3206860523
	.word	1061471548
	.word	1062254100
	.word	3206931911
	.word	3203802093
	.word	1065081581
	.word	3207836555
	.word	1034113073
	.word	1063741661
	.word	1065025836
	.word	1045719631
	.word	3205065344
	.word	3210915426
	.word	3206574683
	.word	1049579881
	.word	3204097029
	.word	1053679124
	.word	3205567936
	.word	3184181614
	.word	1055585244
	.word	1063570370
	.word	1057666267
	.word	3210424478
	.word	3172026062
	.word	3210631189
	.word	1041904656
	.word	1058837808
	.word	1057382551
	.word	1057895286
	.word	3208200091
	.word	3190161223
	.word	1058682682
	.word	1063729155
	.word	1051231847
	.word	3209589945
	.word	3207330366
	.word	3207925550
	.word	1056123556
	.word	3200409534
	.word	1053774702
	.word	1051337656
	.word	1053415679
	.word	3172331768
	.word	1063749409
	.word	3199636473
	.word	3206512426
	.word	1058173244
	.word	1061983691
	.word	3204579407
	.word	3205008292
	.word	3210899228
	.word	3146460520
	.word	1059439870
	.word	1055498599
	.word	3208912709
	.word	3206547452
	.word	1051645824
	.word	3199769079
	.word	3194710767
	.word	3207246032
	.word	1062220620
	.word	1038915367
	.word	3194137671
	.word	1022593793
	.word	1004518978
	.word	1010617693
	.word	1063473999
	.word	1061867115
	.word	1054118279
	.word	3206129370
	.word	1064503553
	.word	3204896220
	.word	1064459202
	.word	3200850252
	.word	1013794608
	.word	3206956753
	.word	1060735725
	.word	1008130677
	.word	3203162141
	.word	1046408645
	.word	1062772061
	.word	3192885598
	.word	1050729442
	.word	3208828835
	.word	1029205688
	.word	3212609340
	.word	3206051286
	.word	3202101701
	.word	1041867664
	.word	1060970930
	.word	3206221726
	.word	3206092024
	.word	1052796897
	.word	3198443453
	.word	1063713142
	.word	1055732710
	.word	3208468805
	.word	1045957448
	.word	3205106096
	.word	1053787609
	.word	3210771013
	.word	3182747065
	.word	1022770257
	.word	3207098302
	.word	1042486652
	.word	1049873196
	.word	1049397699
	.word	1059424402
	.word	1054667204
	.word	3212535632
	.word	3209100332
	.word	3187654264
	.word	1057015022
	.word	1062416991
	.word	3210477282
	.word	3211072529
	.word	1061071215
	.word	1054121324
	.word	1051523191
	.word	3206335676
	.word	1053323136
	.word	1058205831
	.word	3200792319
	.word	1059808236
	.word	3208874210
	.word	3211141091
	.word	3212331831
	.word	3196628308
	.word	1045120330
	.word	3199609821
	.word	1061785969
	.word	1059565412
	.word	3196604820
	.word	3207226187
	.word	1031600619
	.word	3197844994
	.word	1062117214
	.word	3210562397
	.word	1060518172
	.word	1049178963
	.word	3206863156
	.word	3208201074
	.word	1063470104
	.word	3198355446
	.word	3212577808
	.word	3187418510
	.word	1049075034
	.word	1048860470
	.word	3208264452
	.word	3194304468
	.word	1060042593
	.word	3212665929
	.word	1050006905
	.word	3211596811
	.word	3209504534
	.word	3199004305
	.word	1052138388
	.word	1064927400
	.word	1055492384
	.word	1059719294
	.word	3211343578
	.word	3203914656
	.word	3187908242
	.word	3208992857
	.word	1050926603
	.word	1048563818
	.word	1014709704
	.word	1060258856
	.word	3201016302
	.word	1059822332
	.word	3207437827
	.word	1044559127
	.word	1051664212
	.word	3199441634
	.word	1018360939
	.word	1054855166
	.word	1059648306
	.word	1063732181
	.word	1062922026
	.word	1064459093
	.word	1051446279
	.word	1062640977
	.word	3184677125
	.word	3207838971
	.word	1053932103
	.word	3207040059
	.word	1063450288
	.word	3192742707
	.word	3203149185
	.word	1049000859
	.word	1063130326
	.word	3180136702
	.word	3207929327
	.word	3195983924
	.word	3192561254
	.word	3195639923
	.word	3195664162
	.word	1056623967
	.word	3183103730
	.word	3200343843
	.word	1025377367
	.word	3203453768
	.word	1062038097
	.word	3201371985
	.word	1051769409
	.word	3202215406
	.word	1008451205
	.word	3202498346
	.word	3209781304
	.word	1062304932
	.word	1064210944
	.word	1062308064
	.word	1061795468
	.word	1063373709
	.word	1033476317
	.word	1048903909
	.word	3207061927
	.word	1034474060
	.word	1065021221
	.word	3209458252
	.word	1056831049
	.word	3208261935
	.word	3212834173
	.word	1059077512
	.word	3205472656
	.word	1046270845
	.word	1039727267
	.word	1042661259
	.word	3199090377
	.word	1057330223
	.word	1059569244
	.word	3191426923
	.word	1064292862
	.word	1057363061
	.word	1061406277
	.word	1053095834
	.word	3208543442
	.word	1060650930
	.word	1052466017
	.word	3208142647
	.word	1039739380
	.word	3199599706
	.word	1052918631
	.word	3206022268
	.word	3202223281
	.word	3208923806
	.word	3200335996
	.word	3212092604
	.word	1050576602
	.word	3206356961
	.word	1016174226
	.word	1052364884
	.word	3197657285
	.word	1021427073
	.word	3212205124
	.word	1055383073
	.word	3197988530
	.word	1064208648
	.word	1059306577
	.word	1006642562
	.word	3175025243
	.word	3188301367
	.word	1063596887
	.word	3205082188
	.word	1059714836
	.word	3210926386
	.word	3183981790
	.word	3202092457
	.word	3202446326
	.word	3133985458
	.word	1064231040
	.word	3205466707
	.word	3192815481
	.word	1055817703
	.word	1032824862
	.word	1062997656
	.word	3204881979
	.word	3212713955
	.word	3182258862
	.word	3201149412
	.word	3210925431
	.word	3203785704
	.word	1054708343
	.word	1043116801
	.word	3202884523
	.word	1051604297
	.word	3212383418
	.word	1030062897
	.word	3191416572
	.word	3207633393
	.word	3202030503
	.word	1061525347
	.word	1051238033
	.word	1058190747
	.word	1049606520
	.word	3196565459
	.word	3190458619
	.word	3178936908
	.word	1055568500
	.word	1045185387
	.word	1060015028
	.word	1052160887
	.word	1061275828
	.word	1061381856
	.word	3210992757
	.word	3198500815
	.word	1061988477
	.word	3212105436
	.word	1060706866
	.word	1064412031
	.word	3193851247
	.word	3201995208
	.word	1062578211
	.word	1060719236
	.word	1061687250
	.word	1064145933
	.word	3203377716
	.word	1061302941
	.word	1058470076
	.word	1064163337
	.word	1062495101
	.word	1036123985
	.word	1057885424
	.word	3204678779
	.word	3194167057
	.word	1056959747
	.word	3166893433
	.word	1057964843
	.word	3204612876
	.word	3202570793
	.word	1059955556
	.word	3212563499
	.word	3197583022
	.word	3207615285
	.word	1060810950
	.word	1063498979
	.word	1064149912
	.word	3202078929
	.word	3209323190
	.word	1064182517
	.word	3209430596
	.word	3212505346
	.word	1025026591
	.word	3197429610
	.word	3197866693
	.word	1042588148
	.word	3208006392
	.word	1053300029
	.word	1065037845
	.word	3207458743
	.word	1044083273
	.word	1059732895
	.word	3207949808
	.word	1048729510
	.word	1030467269
	.word	3208201546
	.word	3208354273
	.word	1056997886
	.word	1063339929
	.word	1062431826
	.word	1064025819
	.word	1050641779
	.word	3209283891
	.word	3194260983
	.word	1062847754
	.word	3199924485
	.word	1064663806
	.word	3173815146
	.word	3189607828
	.word	3194020945
	.word	3203410651
	.word	3204839986
	.word	3197326742
	.word	3211382832
	.word	1053718691
	.word	1060753726
	.word	1061052379
	.word	3200508306
	.word	3197641355
	.word	3203780257
	.word	1026099835
	.word	3200965434
	.word	3180571972
	.word	1065001542
	.word	3208914147
	.word	3199222587
	.word	1064402819
	.word	3194010161
	.word	1038898041
	.word	3199169323
	.word	1064119427
	.word	3203982972
	.word	1033100958
	.word	3205640596
	.word	3182363650
	.word	1052608670
	.word	3205354351
	.word	1063673581
	.word	3191930856
	.word	3205255778
	.word	1030041720
	.word	3190137353
	.word	3204990866
	.word	1058394111
	.word	3200249797
	.word	3190640872
	.word	3203564619
	.word	1064384626
	.word	3204714469
	.word	3207910444
	.word	3198431031
	.word	3201039462
	.word	1060886697
	.word	1055273440
	.word	1038055937
	.word	3197237090
	.word	1034873928
	.word	1031213308
	.word	3211893663
	.word	1032526062
	.word	1036509474
	.word	3210668048
	.word	3189558335
	.word	3204782787
	.word	3206690031
	.word	3208937021
	.word	3211256489
	.word	3210175160
	.word	3196791316
	.word	1049657176
	.word	3182626079
	.word	1031927512
	.word	1050890101
	.word	3210572739
	.word	3201158608
	.word	1059272435
	.word	3207209418
	.word	3210676856
	.word	3211058020
	.word	1055031740
	.word	3202029016
	.word	3208477915
	.word	1061799054
	.word	3205140788
	.word	1057125443
	.word	3203144989
	.word	1059727345
	.word	1063346077
	.word	3182056514
	.word	1064561785
	.word	1044094903
	.word	3191142538
	.word	1062869284
	.word	3199816944
	.word	1052173337
	.word	1065058992
	.word	3207648640
	.word	1043789907
	.word	3181690241
	.word	1064879891
	.word	1063259707
	.word	1042592844
	.word	3199749017
	.word	1016215888
	.word	1017564235
	.word	1054076690
	.word	3207401694
	.word	3185804484
	.word	3200481861
	.word	3203102836
	.word	1050539701
	.word	1051091283
	.word	1052441513
	.word	1060866035
	.word	3205447475
	.word	1062807551
	.word	3191734233
	.word	1065303760
	.word	3211705322
	.word	3185164158
	.word	3180162399
	.word	1064002466
	.word	1041006854
	.word	3207208397
	.word	3212599581
	.word	3180550038
	.word	3206166253
	.word	3201058571
	.word	3205809174
	.word	3179296945
	.word	3172511518
	.word	3207615939
	.word	1060386841
	.word	3203798895
	.word	1058902554
	.word	3211834025
	.word	3212056442
	.word	3197747848
	.word	3209807221
	.word	1059608037
	.word	3175936019
	.word	1059121987
	.word	1060605479
	.word	3170973035
	.word	3202620418
	.word	1057324914
	.word	3203761702
	.word	1060237438
	.word	3172306216
	.word	1020391051
	.word	3158753173
	.word	3209777015
	.word	1052783982
	.word	1064418717
	.word	3208090924
	.word	3187099373
	.word	1065273112
	.word	3203134467
	.word	1063751865
	.word	1062119757
	.word	3210202219
	.word	3211546833
	.word	3188026384
	.word	1061337154
	.word	1065125379
	.word	3212152661
	.word	3192928725
	.word	3203589935
	.word	3210694915
	.word	1056494650
	.word	3204707578
	.word	3211973528
	.word	1057126666
	.word	1061713069
	.word	3090741362
	.word	3207213067
	.word	1063969260
	.word	3209884839
	.word	3203168415
	.word	3207257339
	.word	3154564619
	.word	1062427376
	.word	3200971281
	.word	1015296982
	.word	3211842842
	.word	3204800527
	.word	3195370241
	.word	3199567631
	.word	1054637682
	.word	3205411546
	.word	3199653907
	.word	3211024513
	.word	3181299753
	.word	1060601498
	.word	3211217091
	.word	1064454880
	.word	3206378658
	.word	1064754074
	.word	1028608292
	.word	1060665689
	.word	3212691302
	.word	1059437622
	.word	3201103047
	.word	3210886212
	.word	3209348218
	.word	1060502378
	.word	3210165361
	.word	1055634583
	.word	3210064787
	.word	3198723841
	.word	3188667822
	.word	3208810927
	.word	3205233361
	.word	3206095318
	.word	1048186679
	.word	1034375509
	.word	3212475665
	.word	3201937503
	.word	3203437223
	.word	1062792948
	.word	1028802734
	.word	3205214338
	.word	3188042436
	.word	3207033627
	.word	1026004980
	.word	1058189364
	.word	1060421491
	.word	1058427720
	.word	1047748554
	.word	1062809043
	.word	3198373953
	.word	3207121600
	.word	1050985779
	.word	3206055165
	.word	3186209380
	.word	1065334719
	.word	3206390934
	.word	3200563742
	.word	1042332435
	.word	1056952711
	.word	3206589090
	.word	1043169774
	.word	1038159227
	.word	3204187587
	.word	3203207231
	.word	1062424521
	.word	3168677789
	.word	1056893740
	.word	1062196891
	.word	3192212217
	.word	1049848751
	.word	1021832429
	.word	1061852809
	.word	1052438144
	.word	3205571030
	.word	1063935718
	.word	1059887394
	.word	1057062724
	.word	1057121456
	.word	3175319368
	.word	1053934765
	.word	3209833245
	.word	3205545111
	.word	1062166433
	.word	3202733760
	.word	3209988951
	.word	3207142509
	.word	3210994659
	.word	1040558270
	.word	1064088217
	.word	1058427834
	.word	1060782298
	.word	3194326362
	.word	3191562282
	.word	1050540485
	.word	1064869831
	.word	1018975751
	.word	1031362006
	.word	3180454391
	.word	1057800662
	.word	3206126241
	.word	3175795549
	.word	3205533229
	.word	1060770909
	.word	3192560051
	.word	3212558740
	.word	3211248304
	.word	1055397248
	.word	1061872026
	.word	3210166373
	.word	1036554650
	.word	3204555915
	.word	3188899854
	.word	3202812542
	.word	3199621669
	.word	3202125522
	.word	3206008571
	.word	3193543410
	.word	3200354794
	.word	1057240774
	.word	3205692651
	.word	3207851851
	.word	1044579987
	.word	1060235528
	.word	1043710507
	.word	3131467508
	.word	3208912851
	.word	3208975794
	.word	3193301818
	.word	1033181577
	.word	3203357069
	.word	3200047253
	.word	3206273734
	.word	3204973884
	.word	1054009152
	.word	3201338394
	.word	1064051411
	.word	3168736177
	.word	1061679864
	.word	1063008966
	.word	3207866391
	.word	3197255875
	.word	3203337750
	.word	3208085838
	.word	1035078762
	.word	3197077417
	.word	1061560662
	.word	3188668039
	.word	1058234310
	.word	3210955930
	.word	1050733099
	.word	1059869066
	.word	1057306850
	.word	1058329398
	.word	1060852023
	.word	1059860079
	.word	3176855528
	.word	3210833210
	.word	1043284501
	.word	3200322446
	.word	3203710166
	.word	1055575551
	.word	1062615586
	.word	3180109518
	.word	3197770945
	.word	3207007838
	.word	1058720029
	.word	1061859713
	.word	1034019974
	.word	1062209954
	.word	1041113095
	.word	1060477954
	.word	1046997926
	.word	1061953952
	.word	3190169234
	.word	3169994525
	.word	1046444768
	.word	1055046819
	.word	3203798045
	.word	1063230301
	.word	3210622566
	.word	3202283652
	.word	1030832457
	.word	1062486569
	.word	1058878276
	.word	3175874283
	.word	3209533811
	.word	3204287459
	.word	3187794291
	.word	3180494037
	.word	3206139663
	.word	1054783353
	.word	3211019319
	.word	1057220620
	.word	1056136658
	.word	3208081338
	.word	3210842008
	.word	1060965346
	.word	3195689624
	.word	3208648750
	.word	1050371042
	.word	3206171300
	.word	3201104428
	.word	3197737462
	.word	3204759514
	.word	1054883045
	.word	3209761429
	.word	3209722890
	.word	3210967347
	.word	1055267321
	.word	3194844257
	.word	1058470786
	.word	1062286759
	.word	1057277436
	.word	3201295706
	.word	3209852213
	.word	1029210310
	.word	1057005051
	.word	3209413715
	.word	1030795227
	.word	3212178375
	.word	1024869701
	.word	1060706243
	.word	1031330771
	.word	1051508011
	.word	1062176996
	.word	3206742437
	.word	1049823264
	.word	3206998360
	.word	3211387419
	.word	1059350098
	.word	3192548162
	.word	3196437246
	.word	1060260496
	.word	3191285465
	.word	3200695783
	.word	3178449366
	.word	3206772192
	.word	1062080917
	.word	1046611497
	.word	1049036121
	.word	3193662871
	.word	3196651558
	.word	3196663942
	.word	3212127627
	.word	1060465593
	.word	1051487333
	.word	3212597671
	.word	3210874826
	.word	1057976294
	.word	3207685718
	.word	1064974371
	.word	1033474235
	.word	1063954312
	.word	1064374446
	.word	1055425993
	.word	1043612384
	.word	1037265462
	.word	1064287993
	.word	3210658495
	.word	3185183346
	.word	1060054618
	.word	1059812965
	.word	3206475904
	.word	1064331063
	.word	3205995533
	.word	1058989729
	.word	1027284543
	.word	1060969799
	.word	3208660862
	.word	1060046066
	.word	1042121847
	.word	3196249959
	.word	3209041401
	.word	3207262700
	.word	1063468161
	.word	3207205728
	.word	1057169233
	.word	3166698855
	.word	1064394875
	.word	3201314859
	.word	3188703147
	.word	3178269194
	.word	1054265855
	.word	1057529575
	.word	1038009984
	.word	3207734587
	.word	1056344709
	.word	1057151928
	.word	1040932649
	.word	3203841543
	.word	1061285528
	.word	1064642670
	.word	3211305836
	.word	3200946534
	.word	1028267234
	.word	1050037954
	.word	1053187062
	.word	1035872060
	.word	1053854202
	.word	3209279746
	.word	3212304510
	.word	3201412159
	.word	1061579621
	.word	3193894593
	.word	3200086263
	.word	3205639032
	.word	1062737154
	.word	1059793590
	.word	985088385
	.word	3183141131
	.word	3172581503
	.word	1060706059
	.word	1052602524
	.word	1063041993
	.word	1061150954
	.word	1061041342
	.word	3204307788
	.word	3184576987
	.word	3189519009
	.word	1031077327
	.word	3202317446
	.word	1057300604
	.word	1047972409
	.word	1064857562
	.word	3200301506
	.word	1058880956
	.word	1051486308
	.word	1052824059
	.word	997529765
	.word	3201610405
	.word	1051279159
	.word	3196974022
	.word	1063021331
	.word	3151425039
	.word	1062171847
	.word	3157929110
	.word	3192147175
	.word	3209631614
	.word	1062218897
	.word	1056058149
	.word	1043888279
	.word	3196481782
	.word	1045969016
	.word	3210865787
	.word	3205716432
	.word	1037761750
	.word	1064759157
	.word	1060960823
	.word	1060112841
	.word	3194659926
	.word	3199563892
	.word	3201781443
	.word	1060062328
	.word	3206261549
	.word	1043386353
	.word	1058160741
	.word	3192855802
	.word	1044082104
	.word	3201951465
	.word	3191493281
	.word	1061967459
	.word	3208135880
	.word	3200301540
	.word	1036881705
	.word	3207378990
	.word	3204933972
	.word	1056308401
	.word	1054699596
	.word	1063464768
	.word	1058612830
	.word	3196061828
	.word	3208526982
	.word	1064282660
	.word	3210611929
	.word	1062879184
	.word	3201977935
	.word	1061894402
	.word	1062941708
	.word	1060893112
	.word	999562574
	.word	3210895047
	.word	3182108996
	.word	3208398572
	.word	3207983670
	.word	1062971696
	.word	3206563368
	.word	3210290115
	.word	1016346775
	.word	3171924210
	.word	3211055733
	.word	3180058054
	.word	3205119231
	.word	3205415637
	.word	1049212522
	.word	1057054601
	.word	3174980967
	.word	3204946370
	.word	3188573344
	.word	1065227908
	.word	1064926831
	.word	1064352449
	.word	1059449067
	.word	3201453067
	.word	1062067092
	.word	3209060264
	.word	1043760696
	.word	3199807665
	.word	3210086969
	.word	1062103628
	.word	3208779837
	.word	1060628920
	.word	3193585780
	.word	3177630628
	.word	1026059442
	.word	3204993471
	.word	3173775197
	.word	1061484928
	.word	1048695327
	.word	3208560875
	.word	3211002095
	.word	3188720867
	.word	1050861965
	.word	3204361539
	.word	3200539461
	.word	3203400803
	.word	3197386091
	.word	3182054776
	.word	1009747177
	.word	3205584989
	.word	1064117855
	.word	3206128573
	.word	3183252049
	.word	1063500715
	.word	3180429150
	.word	3191544880
	.word	1047108669
	.word	1062853671
	.word	1059532123
	.word	3212613331
	.word	3210684598
	.word	3209896390
	.word	3204120741
	.word	1048194707
	.word	3211558351
	.word	1059826237
	.word	1062827213
	.word	3194403328
	.word	1055658522
	.word	1059589175
	.word	3201643219
	.word	1045598408
	.word	3190255342
	.word	3179890431
	.word	3198259527
	.word	3183682827
	.word	3200354404
	.word	1063007306
	.word	3207294057
	.word	1058559431
	.word	3201953882
	.word	3173386492
	.word	1040520836
	.word	3189767803
	.word	1065302828
	.word	3210967385
	.word	3211589421
	.word	3208709637
	.word	1060563175
	.word	3198000769
	.word	1057573190
	.word	3203204887
	.word	1059014824
	.word	3193749896
	.word	3186344298
	.word	1040400000
	.word	3205392203
	.word	1064041460
	.word	3197340541
	.word	3191030107
	.word	1031714569
	.word	3203403468
	.word	1064953659
	.word	1055906605
	.word	1059974351
	.word	3179644058
	.word	1063218163
	.word	3211456437
	.word	1049298625
	.word	1049094143
	.word	1057672447
	.word	3165313078
	.word	1065072575
	.word	3204820117
	.word	1062565240
	.word	1054090256
	.word	1058450673
	.word	1050870093
	.word	1063179603
	.word	3201855244
	.word	3192716620
	.word	3208981216
	.word	3210792293
	.word	3208019676
	.word	1059442712
	.word	1058535764
	.word	1040266027
	.word	3192007763
	.word	1060452216
	.word	1061831183
	.word	1060296170
	.word	1058554231
	.word	1058096047
	.word	3205989071
	.word	3206674760
	.word	1054128293
	.word	1038899342
	.word	3200280727
	.word	1040000964
	.word	3210557001
	.word	1038891723
	.word	3204709678
	.word	1063350119
	.word	1052133164
	.word	3198345135
	.word	1061423433
	.word	3194500888
	.word	1055020712
	.word	1051882708
	.word	1063040550
	.word	3211072963
	.word	1056149737
	.word	1057843359
	.word	3182153018
	.word	3194560081
	.word	1036812119
	.word	1063185805
	.word	3204754444
	.word	3179427274
	.word	3197203917
	.word	3202929974
	.word	1060668572
	.word	1033558618
	.word	3177868256
	.word	3207679293
	.word	1061599317
	.word	1057200370
	.word	1006409406
	.word	1061589564
	.word	1064230081
	.word	1028489343
	.word	3211531497
	.word	1049134811
	.word	3201380863
	.word	1061948562
	.word	3209239340
	.word	1064202360
	.word	1059663390
	.word	3206645465
	.word	3207350726
	.word	1057281651
	.word	3199148062
	.word	1053797533
	.word	3200204174
	.word	3193260698
	.word	1028735158
	.word	1053500629
	.word	1001400828
	.word	1064274728
	.word	3205535437
	.word	3211285369
	.word	1059825987
	.word	3203015804
	.word	1052401256
	.word	1041248083
	.word	3199413257
	.word	3172210037
	.word	3197880598
	.word	1058952422
	.word	3158624769
	.word	1037686158
	.word	3202018486
	.word	1055765005
	.word	3209620622
	.word	1059905270
	.word	3179802695
	.word	3202164923
	.word	1064580654
	.word	3208238809
	.word	3207554788
	.word	1042813538
	.word	1064259323
	.word	3207725578
	.word	3201774552
	.word	3207623303
	.word	3206224867
	.word	3207700230
	.word	1055455904
	.word	1064827166
	.word	3182156670
	.word	1058700437
	.word	1061610450
	.word	3204165066
	.word	1060189780
	.word	1034469953
	.word	1055589714
	.word	3211461980
	.word	3209103314
	.word	3190090019
	.word	1065061352
	.word	1060334897
	.word	1065324770
	.word	3199834144
	.word	1043307548
	.word	1058069743
	.word	3212260071
	.word	3210077565
	.word	1063433879
	.word	1058803462
	.word	1060744519
	.word	1042101608
	.word	3207175243
	.word	1063879257
	.word	1040899447
	.word	3181818263
	.word	1048053159
	.word	3196559144
	.word	3198914135
	.word	1062399738
	.word	3198177297
	.word	3199551592
	.word	3172737708
	.word	1039220318
	.word	3206200514
	.word	1057382880
	.word	3208725769
	.word	3199722170
	.word	3195919440
	.word	1058198925
	.word	1057688840
	.word	3208114973
	.word	1045382650
	.word	3210489588
	.word	3159197676
	.word	1057121455
	.word	1051906653
	.word	1054427756
	.word	1029975900
	.word	1060995784
	.word	1056265267
	.word	3194172112
	.word	3208556719
	.word	1053378113
	.word	3208360755
	.word	3204557833
	.word	3204541069
	.word	3204606649
	.word	1059751618
	.word	1015441260
	.word	3204956214
	.word	1061768573
	.word	3212585341
	.word	1056293145
	.word	3194962585
	.word	1062646063
	.word	3201340435
	.word	3198216069
	.word	3211797242
	.word	3206584347
	.word	3194662047
	.word	1059355462
	.word	3200685310
	.word	1052277866
	.word	3211171997
	.word	1043655329
	.word	1062566422
	.word	3165276714
	.word	3192880378
	.word	1060431524
	.word	3209782114
	.word	3195572576
	.word	1049653411
	.word	1015470065
	.word	3204525866
	.word	1026174957
	.word	3209276366
	.word	1052353851
	.word	3200131719
	.word	3209789707
	.word	1060786122
	.word	3210093837
	.word	1026399720
	.word	3197198307
	.word	1059747348
	.word	3173998610
	.word	1048142116
	.word	3209544995
	.word	1058153556
	.word	1051616554
	.word	3198524439
	.word	1053717961
	.word	3180009340
	.word	3210605254
	.word	3202430750
	.word	3195815195
	.word	1054825005
	.word	1057983232
	.word	3206672317
	.word	3198289376
	.word	3212453048
	.word	1033361157
	.word	3193902920
	.word	1063458952
	.word	3201706250
	.word	3206772797
	.word	3196483507
	.word	3205580704
	.word	1059920399
	.word	1064238399
	.word	3160731945
	.word	3206305822
	.word	1058057203
	.word	1047278975
	.word	1051056862
	.word	1059231918
	.word	1065037546
	.word	1063401502
	.word	3197109287
	.word	1058360544
	.word	1041922471
	.word	3209076926
	.word	1054278633
	.word	3205551656
	.word	3210408068
	.word	1056031412
	.word	3204472805
	.word	1060789151
	.word	1064970492
	.word	1063811620
	.word	3205626032
	.word	1060589107
	.word	1041720027
	.word	1046483569
	.word	3179929274
	.word	1054737014
	.word	1055273523
	.word	1057911828
	.word	1054191186
	.word	3209202003
	.word	1062986004
	.word	1043767920
	.word	3188048126
	.word	1062975596
	.word	1057114196
	.word	1041162882
	.word	1047931762
	.word	3184710560
	.word	1062697088
	.word	3207742479
	.word	3209374792
	.word	3207774736
	.word	3194628677
	.word	3192430257
	.word	3197954907
	.word	3210577314
	.word	1059635305
	.word	3200047505
	.word	1051506769
	.word	1033125153
	.word	1063800909
	.word	1057219090
	.word	1034015620
	.word	3208754924
	.word	1064790803
	.word	3207186132
	.word	1041580696
	.word	1052806517
	.word	1059177239
	.word	3212108198
	.word	3208407526
	.word	3209414305
	.word	1064656281
	.word	1050897310
	.word	3211287734
	.word	1065225395
	.word	3204636297
	.word	3208051968
	.word	3208089279
	.word	1057732599
	.word	3174419154
	.word	1051371483
	.word	1058931529
	.word	3182908899
	.word	1057073509
	.word	3199556219
	.word	1061628559
	.word	3207258988
	.word	3184987506
	.word	3198985323
	.word	3199011244
	.word	1058793573
	.word	3200050039
	.word	1063494038
	.word	3207407627
	.word	1054606297
	.word	1063956531
	.word	3207058990
	.word	1057617718
	.word	1053027814
	.word	1030610767
	.word	3159108043
	.word	3167022359
	.word	3208244881
	.word	3209577073
	.word	1064436245
	.word	3207267936
	.word	1061350778
	.word	3198216381
	.word	3200902610
	.word	1049008436
	.word	1042205007
	.word	3205485578
	.word	3204164468
	.word	1064048760
	.word	1058215784
	.word	1059174541
	.word	3200047733
	.word	1065097878
	.word	1062757546
	.word	3212260259
	.word	3202291055
	.word	3206402612
	.word	1063438359
	.word	1054472623
	.word	1061607227
	.word	3179657306
	.word	3208381370
	.word	1060748171
	.word	3203580748
	.word	1063597611
	.word	3180625264
	.word	3199756872
	.word	1057960340
	.word	1052390975
	.word	1042014851
	.word	1060289790
	.word	1028926554
	.word	3188613054
	.word	1051617294
	.word	1058377988
	.word	3202512311
	.word	3204474668
	.word	1048581204
	.word	1050941386
	.word	3189363390
	.word	3172743097
	.word	1060903241
	.word	3205699404
	.word	1058532277
	.word	1053879273
	.word	3182235533
	.word	3210412687
	.word	3203548940
	.word	1051295029
	.word	1044982009
	.word	3209477143
	.word	3212392562
	.word	1051386141
	.word	3209017645
	.word	3202126056
	.word	1059478717
	.word	1057037722
	.word	1061655318
	.word	1010253905
	.word	3212761817
	.word	3207401172
	.word	1046346242
	.word	3206443550
	.word	3201698241
	.word	3204986199
	.word	3205571977
	.word	1048329033
	.word	1063149552
	.word	3174140038
	.word	1055723251
	.word	3190161613
	.word	1049763147
	.word	1063700878
	.word	3207919734
	.word	1060079770
	.word	3207351008
	.word	1031564517
	.word	1041699541
	.word	3157382375
	.word	1064696240
	.word	3212001191
	.word	1065221874
	.word	1060581392
	.word	1064949021
	.word	3208961571
	.word	3203213870
	.word	3181118711
	.word	3207884747
	.word	3194085287
	.word	1062683848
	.word	3202172661
	.word	3212111928
	.word	1039831015
	.word	3195531742
	.word	1063818344
	.word	1050376313
	.word	1061267978
	.word	3208679601
	.word	1052531888
	.word	3207845208
	.word	1044497592
	.word	1053669704
	.word	1058784826
	.word	3202347014
	.word	3189939407
	.word	3200456218
	.word	3211988004
	.word	1052608897
	.word	3210700374
	.word	3199010254
	.word	3179138091
	.word	1052001721
	.word	1040439697
	.word	1054696771
	.word	3204363505
	.word	1057852678
	.word	1051349809
	.word	3205442499
	.word	3210927429
	.word	1015789229
	.word	1044732665
	.word	3207374745
	.word	3204884711
	.word	1054448335
	.word	3191775732
	.word	1044573764
	.word	3183378813
	.word	1061900267
	.word	3195626771
	.word	1039378084
	.word	3193793397
	.word	1054030952
	.word	1059641525
	.word	3189385029
	.word	3210334681
	.word	3210216730
	.word	1059133871
	.word	1064418793
	.word	3186699939
	.word	1057947228
	.word	1060852651
	.word	3146225953
	.word	3196124525
	.word	3203553908
	.word	1043796749
	.word	1057766045
	.word	3201573652
	.word	3205291335
	.word	3211582829
	.word	1059042178
	.word	3204255354
	.word	1032045222
	.word	1060774846
	.word	1062247164
	.word	1016153057
	.word	1061147582
	.word	3196606620
	.word	1059904019
	.word	3180939513
	.word	3208606548
	.word	3194218425
	.word	3206275034
	.word	3172548343
	.word	1062879904
	.word	3205889887
	.word	1058710543
	.word	1058190568
	.word	1062280166
	.word	1060722289
	.word	1052531632
	.word	1061415479
	.word	1062609985
	.word	1059035489
	.word	1061051014
	.word	1041225864
	.word	3208580952
	.word	1060328380
	.word	1057798332
	.word	1060812848
	.word	1060792926
	.word	3206376110
	.word	3208746740
	.word	3204955304
	.word	3198155228
	.word	3208682233
	.word	3206704381
	.word	3188223979
	.word	1048669622
	.word	1061337188
	.word	3210123354
	.word	3196599641
	.word	1057792381
	.word	3197005165
	.word	1044580251
	.word	1063789819
	.word	3205787547
	.word	3188287869
	.word	1048221732
	.word	1061922311
	.word	1049818180
	.word	3211264468
	.word	3209767840
	.word	1058866780
	.word	1057270089
	.word	3200720452
	.word	3209242823
	.word	1058222504
	.word	3197172584
	.word	3210443131
	.word	1054445744
	.word	1064006956
	.word	1054041908
	.word	3212442784
	.word	1042390284
	.word	3178788293
	.word	1057106186
	.word	3204668289
	.word	1063363303
	.word	3187987041
	.word	1053020715
	.word	3205098399
	.word	1062279138
	.word	1063155624
	.word	3208279865
	.word	3212111020
	.word	3210137529
	.word	1053435388
	.word	1060688873
	.word	3182265172
	.word	1017721762
	.word	1054102674
	.word	1048347283
	.word	3205223155
	.word	3205772951
	.word	1042727113
	.word	1056754258
	.word	3208907902
	.word	1041973366
	.word	3186044777
	.word	1063328540
	.word	1050098541
	.word	3204538353
	.word	3206718535
	.word	3198066823
	.word	1061471422
	.word	3205192736
	.word	1061309472
	.word	3185127745
	.word	1057109169
	.word	3193189014
	.word	1058924896
	.word	1060125121
	.word	1059375973
	.word	3211276292
	.word	1057405213
	.word	3207244083
	.word	1050750539
	.word	3197468937
	.word	3199695401
	.word	1042290889
	.word	1059273269
	.word	3192675516
	.word	3207289801
	.word	1047738038
	.word	3205735770
	.word	1033478079
	.word	3206694348
	.word	1062489095
	.word	1059017220
	.word	3211035286
	.word	3197081377
	.word	1047981909
	.word	3181416713
	.word	1054110663
	.word	1049825511
	.word	3207660393
	.word	1058603006
	.word	1057787062
	.word	3205971235
	.word	1059762048
	.word	3208527052
	.word	1042807077
	.word	3194679050
	.word	1049703529
	.word	3205018571
	.word	1044268021
	.word	3198339785
	.word	1041221708
	.word	1049606352
	.word	1026827543
	.word	1043641587
	.word	3206363278
	.word	1050729996
	.word	1057292986
	.word	3210329460
	.word	3204707648
	.word	1052035059
	.word	3167055955
	.word	1049228744
	.word	3206268841
	.word	3209109272
	.word	3210056501
	.word	3210197928
	.word	3211654869
	.word	3210902315
	.word	1060497752
	.word	1041423791
	.word	1061949731
	.word	1047456031
	.word	3211547870
	.word	1059110614
	.word	3199018719
	.word	1045961734
	.word	3202559130
	.word	1048797243
	.word	3201317248
	.word	1052431434
	.word	1063684396
	.word	3190051806
	.word	1031922493
	.word	1060475100
	.word	3209306301
	.word	1007818060
	.word	1062025871
	.word	3207877150
	.word	1054635149
	.word	1061946393
	.word	3192257854
	.word	3204244410
	.word	3211759458
	.word	1055895642
	.word	1008614981
	.word	1034609287
	.word	1058637514
	.word	3208402242
	.word	1045230791
	.word	3208669467
	.word	1032771707
	.word	1050275003
	.word	3211192190
	.word	3212145915
	.word	3208726045
	.word	1060650599
	.word	3199013735
	.word	3207858744
	.word	3205776151
	.word	1057906074
	.word	3211506614
	.word	3197005148
	.word	3209377323
	.word	1063953118
	.word	1054262376
	.word	1043739610
	.word	1060032049
	.word	3211609607
	.word	1043814306
	.word	3193336033
	.word	3210983852
	.word	1064709968
	.word	3196071111
	.word	1037584396
	.word	3205251219
	.word	1062764560
	.word	1063455589
	.word	1061463158
	.word	3212078162
	.word	3208107474
	.word	3205803507
	.word	3167098172
	.word	1062250496
	.word	3199481242
	.word	1061500652
	.word	1057315019
	.word	3195150734
	.word	1035492099
	.word	3150452174
	.word	1036654621
	.word	1049484761
	.word	1035182213
	.word	1060249824
	.word	1049616903
	.word	3207828331
	.word	3209238093
	.word	3209575766
	.word	3176576713
	.word	1034636390
	.word	1055865795
	.word	1041795829
	.word	1050728221
	.word	3208177786
	.word	1041668390
	.word	3210627423
	.word	1039343518
	.word	1060955850
	.word	1063633996
	.word	1062705897
	.word	1062289839
	.word	1057338997
	.word	3201399399
	.word	1058317770
	.word	3200579472
	.word	3208968014
	.word	3209335747
	.word	1052167005
	.word	3195080558
	.word	3198620942
	.word	3201659610
	.word	3210538889
	.word	1057051367
	.word	3208285366
	.word	1057879753
	.word	1060948022
	.word	3199585836
	.word	1063876608
	.word	1057398234
	.word	1062862635
	.word	3209016754
	.word	1026347992
	.word	3204814614
	.word	1065274022
	.word	3191820513
	.word	1054321649
	.word	3182860459
	.word	1059667420
	.word	1053401451
	.word	1051802768
	.word	1053079131
	.word	3198719908
	.word	1055157145
	.word	3208612374
	.word	3168888834
	.word	1061523004
	.word	3163663783
	.word	1053837778
	.word	1058743356
	.word	1046457719
	.word	1047674852
	.word	3204674678
	.word	1060808040
	.word	3188528411
	.word	1023637454
	.word	3198189945
	.word	1037566458
	.word	1054401274
	.word	3194804822
	.word	1055797546
	.word	1052927059
	.word	3148029147
	.word	1057120472
	.word	1055865369
	.word	1052051835
	.word	1053288896
	.word	1060681370
	.word	3210134429
	.word	1062461294
	.word	1061475064
	.word	3209715683
	.word	3209432000
	.word	3211713451
	.word	3180610614
	.word	3207213546
	.word	1060251514
	.word	3193111667
	.word	1063329706
	.word	1044004053
	.word	3205837933
	.word	1059049164
	.word	1045553399
	.word	1052093565
	.word	1051500357
	.word	1058577437
	.word	3197590384
	.word	3202549144
	.word	1061058166
	.word	1057697885
	.word	1062431399
	.word	3208893922
	.word	3172040680
	.word	3207509545
	.word	3211394652
	.word	3194235863
	.word	1062422627
	.word	1033737682
	.word	1060260559
	.word	1061339873
	.word	3204875573
	.word	1061410252
	.word	1055572945
	.word	3206339108
	.word	1059078808
	.word	1049743672
	.word	3188034159
	.word	3208318082
	.word	1020156551
	.word	1061065319
	.word	1056336432
	.word	3208117201
	.word	3212368957
	.word	3191228199
	.word	3208836115
	.word	1059903600
	.word	3206345232
	.word	3210400100
	.word	1059344013
	.word	1038514502
	.word	1045303448
	.word	3198832033
	.word	1058676358
	.word	1056546159
	.word	3211772139
	.word	1064226835
	.word	3184013086
	.word	3203960025
	.word	3205720092
	.word	3211503532
	.word	3211800179
	.word	1063508628
	.word	3189676824
	.word	3185205436
	.word	1051036991
	.word	1037547079
	.word	3210105491
	.word	1056889752
	.word	3194994436
	.word	1062684338
	.word	3212741189
	.word	1048036849
	.word	3195465323
	.word	3206108414
	.word	1062653971
	.word	3206789816
	.word	3194040214
	.word	3209114625
	.word	3192799821
	.word	3203982038
	.word	1063255175
	.word	3188103043
	.word	3207374662
	.word	3190087443
	.word	1046246378
	.word	3212216906
	.word	3210169636
	.word	1048901555
	.word	3190377211
	.word	1058178939
	.word	3202294154
	.word	3181310800
	.word	3169856708
	.word	3210285805
	.word	3205738288
	.word	1060798951
	.word	1038264972
	.word	1061334386
	.word	1056526284
	.word	1059994624
	.word	1051272381
	.word	1063694841
	.word	3211047130
	.word	1049202796
	.word	1061907440
	.word	1046672616
	.word	3165260940
	.word	3205884973
	.word	1058435066
	.word	3198333991
	.word	1061835395
	.word	1048630045
	.word	3172878777
	.word	1063365834
	.word	3203416756
	.word	3211168284
	.word	3199246588
	.word	3196777865
	.word	1063065331
	.word	1062096628
	.word	3198576377
	.word	3206959675
	.word	1057565492
	.word	1054540902
	.word	1064086838
	.word	1058156796
	.word	1057802181
	.word	3206788145
	.word	1050495752
	.word	3210922466
	.word	3204884508
	.word	1060886166
	.word	1044342720
	.word	1050997539
	.word	3211720911
	.word	1050494698
	.word	3200823029
	.word	3211029926
	.word	1036840768
	.word	3211712165
	.word	3206856407
	.word	1045270699
	.word	1050617161
	.word	3211552012
	.word	1054977139
	.word	3207248888
	.word	3203961289
	.word	3179320173
	.word	3198780318
	.word	1024035951
	.word	3207025417
	.word	3198428135
	.word	1057957200
	.word	3204359788
	.word	3198740194
	.word	3189121411
	.word	3168358330
	.word	3197356976
	.word	3212772077
	.word	1060416454
	.word	1059216371
	.word	1042888422
	.word	3185764041
	.word	3178174106
	.word	1060398299
	.word	1037635517
	.word	3207371428
	.word	3210367139
	.word	1061653145
	.word	3204551670
	.word	1059672984
	.word	1052367201
	.word	1059945473
	.word	1063838310
	.word	3207436775
	.word	3207818042
	.word	3212080309
	.word	1062322063
	.word	3197028245
	.word	1047943356
	.word	3206091978
	.word	1057312020
	.word	3211021511
	.word	3180384543
	.word	1060827902
	.word	3192892773
	.word	1060536532
	.word	1062264834
	.word	3206449524
	.word	1058985127
	.word	1046258255
	.word	1063905451
	.word	3197209458
	.word	1041037609
	.word	3198428589
	.word	3197062427
	.word	1033608893
	.word	1052351540
	.word	1035451982
	.word	1060830198
	.word	3208066512
	.word	3212237821
	.word	1051517663
	.word	1058034675
	.word	1057539598
	.word	1059816793
	.word	1064960340
	.word	3205723679
	.word	1050886684
	.word	1052764889
	.word	1054871777
	.word	1059134430
	.word	1062009069
	.word	3212248838
	.word	3186367531
	.word	1058326579
	.word	1063543008
	.word	3194315477
	.word	3204006970
	.word	1061470999
	.word	3203743511
	.word	1065138737
	.word	3154621334
	.word	1055065028
	.word	3193323349
	.word	1061735921
	.word	3209836377
	.word	1043146105
	.word	1044458801
	.word	1061936062
	.word	1062080243
	.word	3211954986
	.word	3198420819
	.word	3182396870
	.word	3194711708
	.word	3209515208
	.word	1056878855
	.word	1061847461
	.word	1058413656
	.word	1063192922
	.word	1061495998
	.word	3203052279
	.word	1063191470
	.word	1061224267
	.word	1050113882
	.word	1058216465
	.word	1053086011
	.word	3212468118
	.word	1025691419
	.word	1059113689
	.word	3212300991
	.word	3201237322
	.word	1059637236
	.word	3199273028
	.word	3176409016
	.word	3206801916
	.word	1064769415
	.word	1063838286
	.word	3208551041
	.word	3207415080
	.word	1028641800
	.word	1053430426
	.word	1048588305
	.word	3197314975
	.word	3204813337
	.word	1046192775
	.word	3211532612
	.word	3212337196
	.word	3206674687
	.word	3208139517
	.word	3204555522
	.word	1061564464
	.word	1063533665
	.word	1057966317
	.word	3204674446
	.word	1060919457
	.word	3193225015
	.word	1064626296
	.word	3204728385
	.word	3210253433
	.word	3192661989
	.word	1064138225
	.word	1059813159
	.word	3193262316
	.word	3199412811
	.word	1053029426
	.word	3202959620
	.word	3205687298
	.word	1047770089
	.word	3137997201
	.word	1062770128
	.word	1064043457
	.word	1041319775
	.word	1063194276
	.word	3206673038
	.word	3205552220
	.word	3212163787
	.word	3208349961
	.word	3207053376
	.word	1040977276
	.word	1045649568
	.word	1036119683
	.word	3189195943
	.word	1041362121
	.word	3211015596
	.word	3207135325
	.word	3211472595
	.word	1057381539
	.word	3210178218
	.word	3207181800
	.word	1055287517
	.word	1042388161
	.word	3205497260
	.word	1058710302
	.word	1062991335
	.word	1064402307
	.word	1057152320
	.word	3198844348
	.word	1063754499
	.word	3198975907
	.word	3171344844
	.word	1050497448
	.word	3206808062
	.word	1061858133
	.word	1055291492
	.word	1061091807
	.word	3211418120
	.word	1064959193
	.word	1062468766
	.word	1065197104
	.word	1054270656
	.word	3197297719
	.word	1038379102
	.word	3212113992
	.word	1049038026
	.word	1057547436
	.word	3211466416
	.word	1059992928
	.word	3167985615
	.word	3207745348
	.word	1049401123
	.word	3209839355
	.word	1037387560
	.word	3209315409
	.word	1053584530
	.word	1039362513
	.word	1050574250
	.word	3212184243
	.word	3207227323
	.word	3187722522
	.word	1052842591
	.word	3212366878
	.word	3189229692
	.word	3209499410
	.word	1060918548
	.word	1048425253
	.word	1061311481
	.word	3204950678
	.word	1058545610
	.word	3209498464
	.word	1041325707
	.word	1040890269
	.word	3174092519
	.word	3202340240
	.word	1055857581
	.word	1051081688
	.word	1039862358
	.word	3171940171
	.word	3202342256
	.word	3209860952
	.word	1065176412
	.word	3195526797
	.word	1062011824
	.word	3200684539
	.word	1050802745
	.word	1058683267
	.word	1063524365
	.word	1050914276
	.word	1064184295
	.word	3190743272
	.word	3202354533
	.word	1062597795
	.word	1057349188
	.word	1050091212
	.word	3210448565
	.word	3202818248
	.word	1061206830
	.word	3209920881
	.word	3211275931
	.word	1039331283
	.word	3206580634
	.word	1042754733
	.word	3208128553
	.word	3205732786
	.word	3200084157
	.word	3197542097
	.word	1063145848
	.word	1064446502
	.word	3210811182
	.word	1052808631
	.word	3205270669
	.word	3199965514
	.word	3206651249
	.word	3201034766
	.word	1059175522
	.word	3204375147
	.word	3181026432
	.word	1052209887
	.word	3202400472
	.word	3210084777
	.word	1061520375
	.word	1040659268
	.word	1036350710
	.word	3190767766
	.word	1060894534
	.word	1061558684
	.word	1058498760
	.word	1055281528
	.word	3196005737
	.word	1063847877
	.word	3206523394
	.word	3212071797
	.word	1060336415
	.word	3187890399
	.word	1060722231
	.word	3195379991
	.word	1058627258
	.word	1051042418
	.word	1060757538
	.word	1061578571
	.word	3208410315
	.word	1060003454
	.word	3212659980
	.word	3210497436
	.word	3207007571
	.word	1047068315
	.word	1049020409
	.word	3201522311
	.word	3209054397
	.word	1064677920
	.word	1021934772
	.word	1020643394
	.word	3209770824
	.word	3196915625
	.word	3212116636
	.word	1061257465
	.word	1031161179
	.word	1042210636
	.word	1061065940
	.word	1045632812
	.word	1053796239
	.word	1058495916
	.word	3197279643
	.word	1043108139
	.word	3180834842
	.word	1065215592
	.word	994544143
	.word	1036229355
	.word	1058563348
	.word	3206687357
	.word	1064845208
	.word	3209295857
	.word	3207650237
	.word	3208673591
	.word	3202908301
	.word	1057428535
	.word	3196003014
	.word	3200941369
	.word	3205896621
	.word	1061565200
	.word	978368290
	.word	1061223889
	.word	1060183875
	.word	3206122591
	.word	1041242273
	.word	1053609721
	.word	3201526825
	.word	1061707246
	.word	3210109152
	.word	1057020716
	.word	1055059461
	.word	3210640186
	.word	1063533019
	.word	3196354341
	.word	3205993638
	.word	1057683150
	.word	3212156995
	.word	3200198694
	.word	1057954055
	.word	1062813290
	.word	3210516604
	.word	3211790724
	.word	1027280887
	.word	3206855162
	.word	3192361137
	.word	1058255459
	.word	3210981546
	.word	3187053809
	.word	1058339939
	.word	3211403248
	.word	1058972425
	.word	3202648242
	.word	3207577376
	.word	1045154972
	.word	1032524681
	.word	1064334605
	.word	1064008597
	.word	3211518519
	.word	3211727305
	.word	3190921019
	.word	1027955961
	.word	1049663454
	.word	1053981402
	.word	1051352287
	.word	3205103377
	.word	3207879051
	.word	3204484556
	.word	1064602072
	.word	1058978954
	.word	3203449091
	.word	1061236338
	.word	3206399590
	.word	3211403665
	.word	1059046096
	.word	1062617041
	.word	1063904327
	.word	1059535355
	.word	3196728321
	.word	1050690153
	.word	1065096130
	.word	3204180249
	.word	1064629586
	.word	1049974535
	.word	1025539094
	.word	1058187405
	.word	1026403539
	.word	1064606404
	.word	3201170565
	.word	3206234443
	.word	1057758113
	.word	3196483579
	.word	3205377942
	.word	3198703126
	.word	1041582920
	.word	1041278618
	.word	3202826100
	.word	1050440067
	.word	1062479697
	.word	1049043865
	.word	3206280050
	.word	1060171912
	.word	3200176842
	.word	1061162895
	.word	3196016247
	.word	1052933737
	.word	1053131050
	.word	3204701885
	.word	1060604215
	.word	1051721713
	.word	3203205476
	.word	3205162626
	.word	1063091041
	.word	1051876372
	.word	3198059567
	.word	3176057579
	.word	3209864885
	.word	1045176531
	.word	3209324859
	.word	3183116441
	.word	3167191116
	.word	1062543061
	.word	1058725102
	.word	1063659607
	.word	1049269504
	.word	1057362084
	.word	3182189145
	.word	3210226200
	.word	3211343488
	.word	3203463575
	.word	3184829449
	.word	1048703128
	.word	3184741463
	.word	3199076082
	.word	3202678327
	.word	1046374861
	.word	3203604056
	.word	1047091301
	.word	3210342961
	.word	3211194015
	.word	1055134698
	.word	3210194192
	.word	3188785499
	.word	1037398968
	.word	3205369340
	.word	1062309097
	.word	3210030211
	.word	3197226011
	.word	1060285872
	.word	1047578561
	.word	1057607144
	.word	3206100435
	.word	3210051172
	.word	3190325643
	.word	3202565930
	.word	1056437492
	.word	1050903210
	.word	1034611241
	.word	3210138658
	.word	3204696304
	.word	1055838005
	.word	1058602759
	.word	3199237473
	.word	1051829257
	.word	1041902743
	.word	3212230179
	.word	3193402548
	.word	1061003743
	.word	3204782069
	.word	1063378161
	.word	1065063557
	.word	3207660872
	.word	3187087618
	.word	1049013545
	.word	3203513150
	.word	3203413287
	.word	3205500287
	.word	3208432894
	.word	1041990165
	.word	3199993338
	.word	1041837289
	.word	3189548786
	.word	1058186432
	.word	3204405240
	.word	3181555176
	.word	1059644943
	.word	3205703443
	.word	1055331496
	.word	1056060884
	.word	3188352322
	.word	1052923695
	.word	3198029698
	.word	3188465848
	.word	1053463793
	.word	1044968103
	.word	1058443470
	.word	1061502934
	.word	3210575108
	.word	1049127557
	.word	3202036850
	.word	1059681968
	.word	3208683184
	.word	3205394321
	.word	1054446157
	.word	3203795772
	.word	1063946608
	.word	3185945988
	.word	1052383607
	.word	1060300014
	.word	3210528023
	.word	3204093100
	.word	1055389442
	.word	3206229724
	.word	3155066147
	.word	3197359537
	.word	1056561552
	.word	1058086501
	.word	1035416960
	.word	1063471354
	.word	3184064264
	.word	3197064103
	.word	1057080222
	.word	1064563030
	.word	1055555415
	.word	3205612776
	.word	1062828552
	.word	3205874671
	.word	1059918023
	.word	1050222726
	.word	1063866510
	.word	3212081211
	.word	3207489724
	.word	1059168599
	.word	1057338212
	.word	1063687257
	.word	3206926282
	.word	1058104801
	.word	3188607811
	.word	1049147258
	.word	3212430371
	.word	1050746373
	.word	3200381505
	.word	1059749474
	.word	3205684307
	.word	3210495617
	.word	1057242799
	.word	3192089768
	.word	3202836682
	.word	3209617534
	.word	1063011891
	.word	1052863550
	.word	1040318190
	.word	3211028341
	.word	1058181014
	.word	1064937560
	.word	3192859385
	.word	1056975775
	.word	3176206530
	.word	1052039883
	.word	3209574634
	.word	3192688191
	.word	3209976135
	.word	1021797367
	.word	1062241798
	.word	1057931853
	.word	1058876401
	.word	3207448213
	.word	1063616779
	.word	3206589407
	.word	1062040472
	.word	1045984438
	.word	3212490922
	.word	1062447141
	.word	3207311957
	.word	1061811177
	.word	1040997457
	.word	1063707493
	.word	3204888110
	.word	3205203966
	.word	1056788657
	.word	1047680630
	.word	1042308255
	.word	1057239708
	.word	3198604321
	.word	1055645361
	.word	3192437310
	.word	3202501977
	.word	3209631281
	.word	1049984619
	.word	3210044866
	.word	1052454035
	.word	3209433430
	.word	3179608422
	.word	3124139201
	.word	1036848779
	.word	1058609368
	.word	3198158424
	.word	1026151047
	.word	3207399588
	.word	1047652919
	.word	1057811258
	.word	1044775418
	.word	3211220447
	.word	3156392109
	.word	1016344995
	.word	1063351330
	.word	1042975062
	.word	3212576976
	.word	1062170295
	.word	3211584813
	.word	1044786290
	.word	3208619820
	.word	1057543567
	.word	1052415864
	.word	3200655923
	.word	1054547313
	.word	1052359271
	.word	1054310015
	.word	1022755299
	.word	3207052426
	.word	1028564745
	.word	1056046586
	.word	3201688264
	.word	1032671103
	.word	1055663786
	.word	3203895198
	.word	3201477473
	.word	1059023856
	.word	1059643714
	.word	1048166645
	.word	3207541240
	.word	3207614100
	.word	3198275318
	.word	3206869147
	.word	3195129067
	.word	1063344303
	.word	3212113441
	.word	1060953826
	.word	3204935790
	.word	1061899116
	.word	3200277378
	.word	1056744748
	.word	3208684690
	.word	3211849414
	.word	1058811797
	.word	1048703205
	.word	3200085999
	.word	3207759479
	.word	3207490981
	.word	3205655267
	.word	3208637482
	.word	1058843616
	.word	1063553489
	.word	3202442553
	.word	989887333
	.word	1064535363
	.word	1024467417
	.word	3203502241
	.word	3207086163
	.word	3182617493
	.word	3171666596
	.word	1058293102
	.word	3194337274
	.word	3197688972
	.word	3204605987
	.word	1044472528
	.word	3198462788
	.word	3206346765
	.word	1058139719
	.word	1060306851
	.word	1057592734
	.word	1057458542
	.word	3208550742
	.word	1052365941
	.word	1057463876
	.word	3186302653
	.word	1065203722
	.word	3191812761
	.word	3193924860
	.word	3175760045
	.word	3211642534
	.word	3184564648
	.word	1055430114
	.word	1058937468
	.word	3192537743
	.word	1036473287
	.word	3191742703
	.word	1059479893
	.word	3211106511
	.word	1058558437
	.word	3208591876
	.word	1058485344
	.word	1064264541
	.word	3197512913
	.word	1061717288
	.word	3192026331
	.word	1054107751
	.word	3182417418
	.word	1034285313
	.word	3206680036
	.word	1048471502
	.word	1065094622
	.word	1065064843
	.word	1057760789
	.word	1056167343
	.word	3211120721
	.word	3193244128
	.word	3210498743
	.word	3204338887
	.word	3211900450
	.word	1042375878
	.word	1064937378
	.word	1057807927
	.word	3206635339
	.word	1059857341
	.word	3211111147
	.word	3207309718
	.word	1050212251
	.word	3198088530
	.word	3212470343
	.word	1044535050
	.word	1064166932
	.word	1061297692
	.word	1062112356
	.word	3203535154
	.word	3209515519
	.word	1055481825
	.word	1065110294
	.word	1060985053
	.word	1050646480
	.word	3187072315
	.word	1064980522
	.word	3210296036
	.word	3197105850
	.word	1064197303
	.word	3196235588
	.word	3197232451
	.word	3191988902
	.word	1059440475
	.word	3203582653
	.word	3205218592
	.word	1059861973
	.word	3195339871
	.word	1064624161
	.word	3182410028
	.word	3208780526
	.word	3154508670
	.word	3204463246
	.word	3207290098
	.word	3199228885
	.word	3208274323
	.word	1062066914
	.word	1005284054
	.word	1044900942
	.word	3203525013
	.word	1059348151
	.word	3196810764
	.word	3208335794
	.word	3209334898
	.word	1024142560
	.word	1032758626
	.word	3211061323
	.word	991518060
	.word	3173333438
	.word	3211890639
	.word	3209283141
	.word	1062860228
	.word	3184317742
	.word	1041563273
	.word	3204930377
	.word	3170927657
	.word	3207169883
	.word	3210919598
	.word	3208546211
	.word	1057383641
	.word	1044287209
	.word	1043990437
	.word	3206234739
	.word	1062824949
	.word	1046973310
	.word	3207636356
	.word	3196279208
	.word	3193221884
	.word	3202700513
	.word	1052779373
	.word	3210895951
	.word	3182150934
	.word	1064848196
	.word	3208421236
	.word	1059797863
	.word	3206124928
	.word	1055960568
	.word	1063728097
	.word	3211085645
	.word	3206758380
	.word	1058183800
	.word	3207740138
	.word	3209826654
	.word	1064302370
	.word	1054362758
	.word	3206024717
	.word	3205895539
	.word	1021792771
	.word	1050188329
	.word	1058521959
	.word	1060591770
	.word	3207535405
	.word	3190524767
	.word	3200112829
	.word	1061461820
	.word	1065316904
	.word	3199960758
	.word	3204836045
	.word	3203037183
	.word	3204967362
	.word	1050211605
	.word	1053299163
	.word	1035102843
	.word	1061393838
	.word	1047500031
	.word	3186540057
	.word	1054485573
	.word	3196258783
	.word	1050331373
	.word	3196226472
	.word	3198773050
	.word	3182172241
	.word	3208003526
	.word	1059021249
	.word	1052521842
	.word	1054350807
	.word	1049233003
	.word	1060438898
	.word	1059067921
	.word	3208300217
	.word	1060465672
	.word	996747212
	.word	1052909833
	.word	3207615651
	.word	1048966488
	.word	1060387307
	.word	3211454187
	.word	1063448046
	.word	3211554405
	.word	1052279259
	.word	1057754115
	.word	3197061355
	.word	3212775324
	.word	3198533815
	.word	3206441193
	.word	1050743523
	.word	1037688387
	.word	3195055983
	.word	1025944182
	.word	1060107642
	.word	1051758229
	.word	1039947802
	.word	3208395335
	.word	1025658142
	.word	1049267291
	.word	3198277751
	.word	1045341402
	.word	3199381123
	.word	1065257789
	.word	3212603215
	.word	3209272900
	.word	1057106559
	.word	3202557933
	.word	1062002864
	.word	1060524036
	.word	1064654691
	.word	3176258332
	.word	3200794028
	.word	3197465953
	.word	1060685302
	.word	3190257498
	.word	1024863606
	.word	1060334364
	.word	3204583982
	.word	3200256388
	.word	1042642595
	.word	1060090632
	.word	3186085742
	.word	1062993578
	.word	3208192908
	.word	1053571554
	.word	1041150916
	.word	1056453926
	.word	3174249306
	.word	3210635419
	.word	3189205525
	.word	3186527514
	.word	3212616177
	.word	3210478076
	.word	3206652110
	.word	3170763110
	.word	3197347541
	.word	3204464377
	.word	3209575928
	.word	3210112317
	.word	1023752518
	.word	3205101793
	.word	1063907759
	.word	1060017515
	.word	3207078511
	.word	1064052857
	.word	3207627996
	.word	1060123152
	.word	3194412183
	.word	1022054038
	.word	3201352678
	.word	3203687467
	.word	3209152152
	.word	1056971325
	.word	3204995981
	.word	1065347835
	.word	1040925791
	.word	3209670462
	.word	3205874653
	.word	1040218631
	.word	1045432672
	.word	3184493114
	.word	1057699187
	.word	1059147985
	.word	1061583752
	.word	1047184326
	.word	3207079289
	.word	1061929674
	.word	1049021646
	.word	3200329040
	.word	3208043069
	.word	3190148970
	.word	1062069814
	.word	3204456444
	.word	1060599485
	.word	3207964182
	.word	3196420256
	.word	3204343784
	.word	3211094629
	.word	3211014056
	.word	1030837052
	.word	3212039894
	.word	3205174945
	.word	1033127611
	.word	3188146785
	.word	1060235114
	.word	3210899252
	.word	3211907201
	.word	1051829081
	.word	3205922978
	.word	1057488358
	.word	1053751456
	.word	1044064241
	.word	1062078756
	.word	1058665797
	.word	3208943440
	.word	3198733735
	.word	3210834473
	.word	1024976075
	.word	3201269667
	.word	3205320557
	.word	1052177595
	.word	3202532654
	.word	3212473722
	.word	3206778737
	.word	1049141092
	.word	1061640399
	.word	3212286244
	.word	3209027440
	.word	3196687322
	.word	3198612545
	.word	1025404265
	.word	1058244597
	.word	1055182331
	.word	1053498545
	.word	3208116319
	.word	1058408140
	.word	3209331089
	.word	1057914838
	.word	1060801752
	.word	3205732570
	.word	1060156096
	.word	1027139613
	.word	3177797733
	.word	1063300929
	.word	3196683857
	.word	3208990195
	.word	1059150169
	.word	1062026329
	.word	1043681879
	.word	3181159219
	.word	3203674167
	.word	1017200363
	.word	3205558714
	.word	1050585594
	.word	3206842068
	.word	3206895040
	.word	3212585738
	.word	1042068335
	.word	3202660635
	.word	3206399127
	.word	3197952725
	.word	1050691557
	.word	1064425984
	.word	3197479393
	.word	1049032878
	.word	1061608162
	.word	3204937863
	.word	3201730216
	.word	1049816202
	.word	1058446654
	.word	1049187341
	.word	3207748796
	.word	1062099932
	.word	1025656130
	.word	3206353655
	.word	1052199956
	.word	3177971049
	.word	3210482432
	.word	1064192118
	.word	3185517571
	.word	1059319247
	.word	1022836664
	.word	1057106133
	.word	3209060787
	.word	1048728615
	.word	3192204349
	.word	3201155470
	.word	3188424054
	.word	3203789358
	.word	1041636903
	.word	1046949771
	.word	3193184616
	.word	1061385262
	.word	1042616250
	.word	3205706013
	.word	3202906209
	.word	1054519535
	.word	1043250814
	.word	1032679221
	.word	1024689879
	.word	3195685839
	.word	3212384115
	.word	3190868259
	.word	3209459355
	.word	3206505581
	.word	3208531976
	.word	3198276166
	.word	1063819924
	.word	1064486783
	.word	1058203749
	.word	1055523969
	.word	3195804839
	.word	3208651374
	.word	1058859958
	.word	1064540004
	.word	3204947823
	.word	1035313971
	.word	3167760473
	.word	1064999176
	.word	1050048830
	.word	1058981525
	.word	1063043882
	.word	3200389529
	.word	1061832649
	.word	1041673984
	.word	1060123279
	.word	3211123030
	.word	3172043724
	.word	3210324533
	.word	3172018162
	.word	3206558776
	.word	1062865659
	.word	1050078353
	.word	1062573017
	.word	1033593943
	.word	1063887111
	.word	3198633208
	.word	3210232177
	.word	3207556463
	.word	3192504889
	.word	1058498324
	.word	3188068447
	.word	3204855820
	.word	1052140169
	.word	3189354906
	.word	3211750239
	.word	3197807935
	.word	3212812663
	.word	3203676930
	.word	3210862913
	.word	1045945133
	.word	3212225609
	.word	3210414249
	.word	3209317531
	.word	3206549366
	.word	1037691628
	.word	3208819466
	.word	1009317299
	.word	3206296390
	.word	1064822293
	.word	1058683804
	.word	3193808690
	.word	1064265720
	.word	3200061391
	.word	3197379181
	.word	3209018197
	.word	3199264554
	.word	1040894670
	.word	3208599099
	.word	3210315667
	.word	3208464605
	.word	3170296828
	.word	1052730335
	.word	1061334142
	.word	3199943237
	.word	1039765878
	.word	3208126787
	.word	3188470620
	.word	3191259982
	.word	3198968027
	.word	3209398476
	.word	3182609189
	.word	3212006569
	.word	3200933983
	.word	1059259283
	.word	3189393537
	.word	1057541766
	.word	3199394000
	.word	3209225221
	.word	3176219707
	.word	3211808460
	.word	1058926362
	.word	3194622063
	.word	1047844625
	.word	1025514153
	.word	3197559725
	.word	3210285528
	.word	3175401760
	.word	1056540195
	.word	3209829319
	.word	1040435197
	.word	3197909612
	.word	1051760318
	.word	3208882745
	.word	1060614149
	.word	1059579315
	.word	1056288473
	.word	3185338949
	.word	3199274712
	.word	1034448433
	.word	3158706378
	.word	1056154970
	.word	3150115275
	.word	1063159220
	.word	3196491227
	.word	1049328639
	.word	3208378526
	.word	1065027629
	.word	1038229675
	.word	3208348733
	.word	1055983371
	.word	1063627401
	.word	3189479891
	.word	3205979952
	.word	3186082863
	.word	3184721004
	.word	1046588519
	.word	3177806785
	.word	1035800581
	.word	3204834305
	.word	1053107659
	.word	3194310702
	.word	3177712005
	.word	1059252854
	.word	3208703823
	.word	3208901774
	.word	1061836209
	.word	1059027357
	.word	3183612753
	.word	1039835903
	.word	3188581944
	.word	3205191455
	.word	1057558796
	.word	3199116702
	.word	1049121689
	.word	1058979694
	.word	1044577989
	.word	1064993506
	.word	3211591540
	.word	3197738655
	.word	1064738714
	.word	3204468980
	.word	1062473834
	.word	3206054106
	.word	3210979146
	.word	3200752005
	.word	1059639462
	.word	3206687614
	.word	3207948112
	.word	3208436846
	.word	1065105673
	.word	1064964890
	.word	3210539601
	.word	3209243691
	.word	1050570243
	.word	1042993440
	.word	3205336046
	.word	1025359064
	.word	1055148205
	.word	1046734356
	.word	1032946559
	.word	3200037979
	.word	1050837774
	.word	1051156403
	.word	1063143008
	.word	3211122878
	.word	1059722183
	.word	3200198028
	.word	3206122778
	.word	3201469843
	.word	3186756559
	.word	1057718927
	.word	1053472458
	.word	1051506384
	.word	3164613977
	.word	3205796866
	.word	1033873175
	.word	3211203364
	.word	3209843044
	.word	1063172125
	.word	1059416466
	.word	3181962670
	.word	1059369083
	.word	3211224447
	.word	3203025399
	.word	1057643446
	.word	3203358752
	.word	1037838258
	.word	3187316771
	.word	3196964546
	.word	3202314647
	.word	1033067887
	.word	3209396486
	.word	3206819627
	.word	3211741885
	.word	3178892233
	.word	3197825385
	.word	1049620090
	.word	1057928620
	.word	3199416929
	.word	1060015606
	.word	3174693997
	.word	3211112236
	.word	1022166100
	.word	1059721318
	.word	3200046405
	.word	3205739210
	.word	3191891257
	.word	1054427409
	.word	1048844244
	.word	3205583237
	.word	3174675316
	.word	3199848273
	.word	1055290093
	.word	3208036403
	.word	3212108457
	.word	3212331731
	.word	3201688598
	.word	3194767033
	.word	3189573784
	.word	1057625101
	.word	1058493281
	.word	1061647054
	.word	3205765700
	.word	3205920912
	.word	3197772644
	.word	3198396900
	.word	3199196832
	.word	1063812524
	.word	1061397485
	.word	1029420949
	.word	3176725671
	.word	1048513323
	.word	3210155062
	.word	3204951094
	.word	3202752489
	.word	1055862171
	.word	3204449998
	.word	3208783328
	.word	1052593822
	.word	1044492689
	.word	3191917906
	.word	3202017699
	.word	3191816605
	.word	3156356472
	.word	3209207094
	.word	3206569750
	.word	3198677424
	.word	1061333117
	.word	3154366586
	.word	3212548287
	.word	1053365241
	.word	1039220909
	.word	1051967983
	.word	3196386809
	.word	1061603430
	.word	3207855029
	.word	3199846810
	.word	3201809043
	.word	3209799666
	.word	1064294364
	.word	1060543199
	.word	1063954144
	.word	3189202396
	.word	1050826328
	.word	1063436909
	.word	3211120666
	.word	1060075492
	.word	1063806867
	.word	1031954673
	.word	3201865190
	.word	1053997244
	.word	1063861057
	.word	3206425168
	.word	3207963813
	.word	3209777266
	.word	3196141319
	.word	1042566830
	.word	3190071217
	.word	3206495094
	.word	3203450265
	.word	1061840793
	.word	3206934327
	.word	3209962841
	.word	3166684314
	.word	3205502957
	.word	1052579042
	.word	3201893091
	.word	1057311893
	.word	3210784379
	.word	3208472182
	.word	1050271201
	.word	1032211082
	.word	1064864049
	.word	3206700282
	.word	1051088557
	.word	3203746621
	.word	3192464140
	.word	1058118256
	.word	1060306887
	.word	1055144009
	.word	1059982307
	.word	1037853327
	.word	3212517820
	.word	3209287126
	.word	1032755615
	.word	995681081
	.word	1053349642
	.word	1062055982
	.word	1040592053
	.word	3210243248
	.word	3208723054
	.word	3209887565
	.word	1057133601
	.word	3209640666
	.word	3166383636
	.word	1064011290
	.word	1054987122
	.word	1064847330
	.word	3192638755
	.word	1063450081
	.word	1045488830
	.word	1056345443
	.word	3206759191
	.word	1032330851
	.word	1038065015
	.word	3212042912
	.word	1050564001
	.word	1063348920
	.word	3196709363
	.word	1049583059
	.word	1062887496
	.word	3193793849
	.word	1063728851
	.word	1062634462
	.word	1061134817
	.word	1049137552
	.word	3207554994
	.word	1057063489
	.word	1064979453
	.word	3207252592
	.word	3202830063
	.word	3200614858
	.word	1060001909
	.word	1057805656
	.word	1060388507
	.word	1057293853
	.word	1061824152
	.word	1043631812
	.word	1060051808
	.word	3203412288
	.word	3210182945
	.word	3211183861
	.word	3186697676
	.word	3206269138
	.word	1045201071
	.word	3199395979
	.word	3202272678
	.word	3200024105
	.word	1060304683
	.word	3202638630
	.word	1045047466
	.word	1057382253
	.word	1060428696
	.word	1063877170
	.word	3209824888
	.word	3198903128
	.word	3210349222
	.word	3207840016
	.word	3206959041
	.word	1053992876
	.word	3174272568
	.word	1061984879
	.word	1060544394
	.word	1048657775
	.word	3207563083
	.word	1033270470
	.word	3201111249
	.word	3201616347
	.word	1047493173
	.word	1062481737
	.word	1058752682
	.word	3196597057
	.word	3206446536
	.word	3207650242
	.word	3204506972
	.word	3201420365
	.word	1030491330
	.word	1057830011
	.word	1040699530
	.word	3210122787
	.word	3185318974
	.word	3210744860
	.word	3191677471
	.word	3198310281
	.word	3205805745
	.word	1055418291
	.word	1060160181
	.word	1060535390
	.word	1050749881
	.word	1061323927
	.word	3207318677
	.word	3201370563
	.word	3209749662
	.word	1047089869
	.word	3175461170
	.word	1064818714
	.word	1052733272
	.word	1062340629
	.word	1062295515
	.word	3183923938
	.word	1059970584
	.word	3205756653
	.word	3176559716
	.word	3209094373
	.word	3205462549
	.word	1064141024
	.word	1024421583
	.word	1062751708
	.word	1007360898
	.word	1051095574
	.word	3210350903
	.word	1062589198
	.word	3196609871
	.word	1037967952
	.word	3209781211
	.word	1058481267
	.word	1060307881
	.word	1045273051
	.word	3211765737
	.word	1046460190
	.word	3210998128
	.word	1049196638
	.word	1063360619
	.word	1049561170
	.word	3204193255
	.word	3211064799
	.word	1058392837
	.word	1051600437
	.word	1055484190
	.word	3210506207
	.word	3197848808
	.word	3205501560
	.word	3204885164
	.word	1065346202
	.word	1048563527
	.word	3176932967
	.word	3210240409
	.word	3210723340
	.word	1065315497
	.word	3210515193
	.word	1059839517
	.word	3207601942
	.word	3212324522
	.word	3202713658
	.word	1060539236
	.word	3152772673
	.word	3202790956
	.word	3185128853
	.word	3205991111
	.word	1058451624
	.word	3208732172
	.word	3205164902
	.word	1061313250
	.word	1022616187
	.word	3212792290
	.word	1058207410
	.word	3207748669
	.word	3210357653
	.word	1063781737
	.word	3190811819
	.word	3211580773
	.word	3165508721
	.word	3211835540
	.word	1049011043
	.word	1063712381
	.word	3196564879
	.word	1042669285
	.word	1016368870
	.word	1055889982
	.word	1062959976
	.word	3210989400
	.word	1060804381
	.word	1059836662
	.word	3197632766
	.word	3209365645
	.word	1051446982
	.word	1032427923
	.word	3182398194
	.word	3199511422
	.word	3186990172
	.word	1062234786
	.word	3198539666
	.word	3198190189
	.word	1032678271
	.word	1063292228
	.word	1061461588
	.word	1042463096
	.word	3209891032
	.word	1005294455
	.word	3210637661
	.word	3205538230
	.word	1045640753
	.word	3180283353
	.word	3177191209
	.word	1062193645
	.word	3205505119
	.word	1054992010
	.word	1063976664
	.word	1063936749
	.word	1035515978
	.word	1058879193
	.word	1061334629
	.word	3205564033
	.word	1007693592
	.word	1064944292
	.word	1052627300
	.word	3167117634
	.word	1062482428
	.word	3207220537
	.word	983666197
	.word	1044148162
	.word	1062499705
	.word	3202698557
	.word	1057457125
	.word	3212756211
	.word	3210215401
	.word	3201856692
	.word	3200629071
	.word	1045645047
	.word	3200080059
	.word	1049144204
	.word	1063551638
	.word	1060991453
	.word	3203841165
	.word	1048459796
	.word	3200514695
	.word	1064924127
	.word	3210812194
	.word	3169952247
	.word	1059291496
	.word	3208896352
	.word	3190078999
	.word	3208223147
	.word	994124807
	.word	3207836414
	.word	3207953576
	.word	3203236727
	.word	1056181117
	.word	3193109758
	.word	1046764845
	.word	3196349463
	.word	1045645081
	.word	3202177859
	.word	1064044257
	.word	3211903994
	.word	3151954788
	.word	1050900097
	.word	3210091932
	.word	1038379867
	.word	3211799065
	.word	3206751578
	.word	3210055396
	.word	1048642081
	.word	3212348221
	.word	1062528980
	.word	3202655382
	.word	3207117663
	.word	3210787849
	.word	3211002615
	.word	1056213087
	.word	1051083781
	.word	3189181890
	.word	3191804586
	.word	3197162408
	.word	1061076602
	.word	1063935556
	.word	1026338502
	.word	3203888599
	.word	1000673364
	.word	1057900657
	.word	1040483517
	.word	3194673715
	.word	3207469853
	.word	3210589789
	.word	1054876513
	.word	1040788569
	.word	1058461696
	.word	3204382956
	.word	1043936340
	.word	1057400074
	.word	3205811421
	.word	3198674708
	.word	1056373419
	.word	3210617297
	.word	1062563719
	.word	3206256199
	.word	3208785372
	.word	1025243206
	.word	1060653283
	.word	1059502723
	.word	3206364519
	.word	3195372059
	.word	3208373991
	.word	3201849189
	.word	1064534747
	.word	1063383059
	.word	1064297165
	.word	1044182544
	.word	3184865576
	.word	1060207265
	.word	1062001832
	.word	3212807177
	.word	1048906029
	.word	1058017305
	.word	1046592338
	.word	1050714625
	.word	1051291910
	.word	3206174169
	.word	1062697010
	.word	1061153904
	.word	1049137266
	.word	1060259302
	.word	3202123576
	.word	3196957843
	.word	3182605398
	.word	3208173355
	.word	3210107372
	.word	3206624921
	.word	3191744050
	.word	3185740967
	.word	1057231049
	.word	3185104218
	.word	3204678107
	.word	1064703022
	.word	1059573695
	.word	3183264736
	.word	3207718563
	.word	3210692313
	.word	1023122081
	.word	1057486726
	.word	1064770565
	.word	3156190758
	.word	3204358424
	.word	1060212101
	.word	1057751773
	.word	3194720121
	.word	3198275061
	.word	1060055501
	.word	3197950870
	.word	1063027327
	.word	1052901926
	.word	1048892884
	.word	3210129309
	.word	3193063280
	.word	3188662437
	.word	3192228951
	.word	1058682677
	.word	3205075851
	.word	3210773386
	.word	1052318659
	.word	3208341077
	.word	3204072211
	.word	1058853572
	.word	1058091795
	.word	1044921493
	.word	3202064404
	.word	3207243175
	.word	3207845095
	.word	3211064365
	.word	3179159109
	.word	3205842687
	.word	3203849509
	.word	1046036093
	.word	1038523509
	.word	1032590493
	.word	1059299600
	.word	1059357207
	.word	3207948072
	.word	1060984340
	.word	3204206202
	.word	3198012385
	.word	1063990037
	.word	1044330434
	.word	1054898897
	.word	1059292775
	.word	1064160293
	.word	1058305871
	.word	1046469356
	.word	3204885640
	.word	3188698035
	.word	1050399609
	.word	1056566088
	.word	1065138585
	.word	3205058912
	.word	3205342417
	.word	1044166604
	.word	3184517322
	.word	1049818907
	.word	1059618306
	.word	3196735497
	.word	3164640456
	.word	978075218
	.word	3175934895
	.word	3205933127
	.word	1057818846
	.word	1060374936
	.word	1065056857
	.word	1064382378
	.word	1060164727
	.word	1027542024
	.word	3211849999
	.word	1039738437
	.word	1061627418
	.word	1040686033
	.word	3186303646
	.word	3207704614
	.word	3202481888
	.word	3191848773
	.word	3207338100
	.word	3207616954
	.word	3180605575
	.word	1057866879
	.word	1052958549
	.word	3200825454
	.word	3207961465
	.word	3206246509
	.word	1060290315
	.word	3196827573
	.word	1033296777
	.word	1060103731
	.word	3194741827
	.word	1053395787
	.word	3210268368
	.word	1033175838
	.word	3158596709
	.word	1055962091
	.word	3190803784
	.word	3198719469
	.word	3202200574
	.word	3211888943
	.word	3187456922
	.word	3182455818
	.word	3194638079
	.word	1029290248
	.word	1063699756
	.word	1055982748
	.word	1047796433
	.word	1050013535
	.word	3206418298
	.word	3210585129
	.word	1058413022
	.word	1049167170
	.word	1063483815
	.word	3165962633
	.word	3211937361
	.word	1050838780
	.word	3196972163
	.word	3193195878
	.word	1060913758
	.word	1064705384
	.word	3205522636
	.word	1062668983
	.word	3196482231
	.word	3205394135
	.word	3199298652
	.word	1007859287
	.word	3207727045
	.word	3185021802
	.word	3207104796
	.word	3206647642
	.word	1058669843
	.word	1063454550
	.word	3206135898
	.word	3199425024
	.word	1050064075
	.word	1057901221
	.word	1046319173
	.word	3207344910
	.word	3205659611
	.word	1045406880
	.word	3204136501
	.word	1014213401
	.word	3209465167
	.word	3194124548
	.word	1023710129
	.word	3188026092
	.word	1058870376
	.word	1052694991
	.word	3205127782
	.word	3208475155
	.word	1059529653
	.word	3207235923
	.word	1056164544
	.word	3206664212
	.word	3205091528
	.word	3196922574
	.word	1051360460
	.word	3212663378
	.word	1046084168
	.word	3195320488
	.word	3202871398
	.word	3209581674
	.word	3211967681
	.word	3197446451
	.word	1057800309
	.word	1049956697
	.word	1063840004
	.word	1033188392
	.word	1060953687
	.word	1058731779
	.word	1049409054
	.word	1060496507
	.word	1059760868
	.word	1057334698
	.word	3205344139
	.word	3201314618
	.word	3211045603
	.word	1057796552
	.word	1060563289
	.word	1049644151
	.word	1059527966
	.word	1062419950
	.word	1052981675
	.word	3203963363
	.word	3210856510
	.word	1050553625
	.word	3204860017
	.word	1051230639
	.word	1054771207
	.word	3211070765
	.word	3210010379
	.word	1059812718
	.word	3207378408
	.word	3200190866
	.word	1055508432
	.word	1053199962
	.word	3205404287
	.word	978893306
	.word	1060118285
	.word	1027689988
	.word	1033722156
	.word	1050842839
	.word	3209872607
	.word	1053431297
	.word	1058802655
	.word	3173592706
	.word	3195663765
	.word	3211824845
	.word	1053722920
	.word	3211722312
	.word	3198782587
	.word	3168391003
	.word	1046847893
	.word	1063478729
	.word	3186979184
	.word	3199659214
	.word	3206075668
	.word	3204006921
	.word	3191444738
	.word	1038904444
	.word	3206110136
	.word	1046105009
	.word	3193055743
	.word	3200218456
	.word	3206305175
	.word	3204305239
	.word	3196315813
	.word	1058369001
	.word	3200154870
	.word	1064579428
	.word	3206672848
	.word	1055355665
	.word	1042979309
	.word	1061554099
	.word	3196970798
	.word	3205406724
	.word	3212589273
	.word	3202474352
	.word	1057991739
	.word	3199482367
	.word	1064854806
	.word	1062929308
	.word	3204919915
	.word	1060076022
	.word	1050998639
	.word	1064568881
	.word	1062428511
	.word	1043692486
	.word	3208278192
	.word	3203744646
	.word	3152307773
	.word	1062864358
	.word	1062901490
	.word	1057211854
	.word	3211889106
	.word	3176571476
	.word	3181617789
	.word	3199596767
	.word	3199961155
	.word	3205551010
	.word	3211688865
	.word	1051767673
	.word	1059286161
	.word	1060513398
	.word	1051316213
	.word	3212615214
	.word	1057320295
	.word	1059586734
	.word	3202331225
	.word	1050424034
	.word	3210292387
	.word	1052067161
	.word	1060163884
	.word	1063681404
	.word	1056131827
	.word	1046502558
	.word	1063431185
	.word	1054329085
	.word	3210821488
	.word	1063564283
	.word	3205206823
	.word	1062010050
	.word	1048537202
	.word	1033693836
	.word	3208571215
	.word	3206353731
	.word	3207807050
	.word	1032729902
	.word	1061325898
	.word	3183953618
	.word	3197690907
	.word	1016109085
	.word	3196716058
	.word	3201276999
	.word	3147904825
	.word	3171295109
	.word	3207605205
	.word	1060370625
	.word	3183100813
	.word	1060964596
	.word	1045380140
	.word	1051543426
	.word	3201387765
	.word	1058839902
	.word	3207988983
	.word	1062693955
	.word	3174469811
	.word	3187824153
	.word	3209125707
	.word	1045914773
	.word	1049820418
	.word	3207865814
	.word	3189425676
	.word	3209232790
	.word	1054547455
	.word	1063236168
	.word	3199225735
	.word	3208738639
	.word	1062769749
	.word	1040300009
	.word	1042985024
	.word	3189232891
	.word	3208987489
	.word	3212822255
	.word	3194294196
	.word	3207010353
	.word	1055892695
	.word	3211356815
	.word	1057888778
	.word	1037365192
	.word	3201563310
	.word	1064326348
	.word	1057224005
	.word	3187850718
	.word	1057143478
	.word	1063648809
	.word	1057435982
	.word	3202590041
	.word	3196929042
	.word	3204717947
	.word	1038188151
	.word	3197506342
	.word	3206069294
	.word	1042053519
	.word	3206006261
	.word	1064485754
	.word	3205711225
	.word	3198155580
	.word	1059726091
	.word	3191202278
	.word	3211700370
	.word	3197572106
	.word	1060849190
	.word	1063011270
	.word	3183607014
	.word	1037647105
	.word	3195079132
	.word	3204273343
	.word	3205058228
	.word	3207482617
	.word	1058960753
	.word	1058875424
	.word	3198026132
	.word	1060232634
	.word	3202436664
	.word	1063821294
	.word	1047476236
	.word	3192077580
	.word	3199240604
	.word	3191756446
	.word	3205346574
	.word	3210480396
	.word	3212770507
	.word	1025450422
	.word	1059489723
	.word	3201939503
	.word	3205737417
	.word	1052895474
	.word	1057496674
	.word	1057066893
	.word	1062916815
	.word	1060744560
	.word	3201585577
	.word	1059551797
	.word	1058312962
	.word	3116019315
	.word	3211115417
	.word	3210245879
	.word	1058894727
	.word	1026687575
	.word	1051667002
	.word	3207743548
	.word	3208026325
	.word	3205804978
	.word	3197431566
	.word	3203545055
	.word	1057265629
	.word	3210255849
	.word	3208062240
	.word	3204889038
	.word	1038711551
	.word	3193200661
	.word	3211501056
	.word	3196998193
	.word	3206738907
	.word	3212376023
	.word	3207585598
	.word	1063218355
	.word	1058942179
	.word	3210073224
	.word	3200531876
	.word	1053583451
	.word	3192115700
	.word	1058981612
	.word	1037688168
	.word	1065138845
	.word	1046497103
	.word	1043857514
	.word	3212192946
	.word	1058142009
	.word	3209667506
	.word	1064086276
	.word	1061066765
	.word	1049345619
	.word	1032084890
	.word	1050723655
	.word	1057951673
	.word	3198735443
	.word	3205187218
	.word	1063604521
	.word	1061966329
	.word	1063297560
	.word	1058913505
	.word	1054986822
	.word	3206838979
	.word	1065169666
	.word	3200246272
	.word	1056322967
	.word	1063758402
	.word	1054573592
	.word	3202115674
	.word	1034557776
	.word	1060223093
	.word	3206175719
	.word	3204828642
	.word	1060613565
	.word	3211461170
	.word	3202907275
	.word	3200376830
	.word	1046662232
	.word	1061174314
	.word	3206733498
	.word	3196211621
	.word	3211907795
	.word	3208152259
	.word	3207378247
	.word	3193257447
	.word	3212157199
	.word	3206460960
	.word	1058633717
	.word	3183717510
	.word	3203045043
	.word	1060939374
	.word	3191146608
	.word	1059928348
	.word	3212287839
	.word	1050903933
	.word	3201999805
	.word	1032411355
	.word	1061493545
	.word	1061459613
	.word	1065114818
	.word	3193181469
	.word	1046504645
	.word	1057778531
	.word	1064971155
	.word	3192578790
	.word	1063913124
	.word	1043758556
	.word	3195428171
	.word	1052137088
	.word	1055390687
	.word	3173273561
	.word	1062300785
	.word	3210832849
	.word	1059171144
	.word	1059629372
	.word	3191345415
	.word	3195243873
	.word	1060988365
	.word	1060510566
	.word	1061575942
	.word	1050987364
	.word	1055977255
	.word	1048977472
	.word	3206704475
	.word	1055668168
	.word	1035208104
	.word	1060292427
	.word	1031445256
	.word	1063987534
	.word	3189202638
	.word	3193260941
	.word	1061585671
	.word	1025246663
	.word	3212072973
	.word	3206469093
	.word	3208982328
	.word	1061532151
	.word	1051141654
	.word	1054204369
	.word	1036062122
	.word	1056500010
	.word	3208142643
	.word	1015889968
	.word	3203120513
	.word	3205839653
	.word	3202425636
	.word	3207708696
	.word	1056747057
	.word	3212728271
	.word	3205501254
	.word	3179550035
	.word	1061015909
	.word	3207276707
	.word	1058544756
	.word	3206213568
	.word	1038184086
	.word	3206115891
	.word	1060720725
	.word	1059963499
	.word	3206270086
	.word	3210847412
	.word	3188634567
	.word	1063236401
	.word	1050750262
	.word	3203006014
	.word	3204884519
	.word	3201475498
	.word	3209351472
	.word	3197725151
	.word	1009230500
	.word	1042665136
	.word	1065041613
	.word	3206920405
	.word	3191584310
	.word	3199369843
	.word	3192579565
	.word	1058472367
	.word	3192833491
	.word	1024091918
	.word	3168961897
	.word	1047699790
	.word	3203545763
	.word	1064587474
	.word	3205060951
	.word	3206182416
	.word	1061599606
	.word	1061673339
	.word	1049890907
	.word	3202433458
	.word	1026553159
	.word	1055532570
	.word	1047690872
	.word	1043032359
	.word	1059221506
	.word	1042161020
	.word	3208652441
	.word	1063048826
	.word	1062000831
	.word	3199147042
	.word	3184677625
	.word	3209435359
	.word	3208115747
	.word	3208292016
	.word	3189511451
	.word	3207850364
	.word	3165536411
	.word	1064703244
	.word	3206100560
	.word	1044418164
	.word	3204649423
	.word	3202349422
	.word	3199497065
	.word	1036718589
	.word	3207187680
	.word	3210070962
	.word	1058434338
	.word	3211826390
	.word	1058875172
	.word	3204848517
	.word	1055113829
	.word	3197636758
	.word	3211403774
	.word	1057884752
	.word	3209756567
	.word	1062395838
	.word	1060394292
	.word	3209806864
	.word	1065336497
	.word	3212312602
	.word	1023356539
	.word	1048432876
	.word	1062594386
	.word	1043193528
	.word	3197805859
	.word	1049903058
	.word	1059852659
	.word	1064465032
	.word	1051084334
	.word	1061998008
	.word	3209236958
	.word	3203209834
	.word	1059635421
	.word	1039288311
	.word	3205157888
	.word	3198943900
	.word	1061910667
	.word	1059064001
	.word	1047094047
	.word	1057527604
	.word	3211979177
	.word	1044309077
	.word	1062997576
	.word	3163958538
	.word	1064800688
	.word	3188768238
	.word	1064650376
	.word	1049057814
	.word	3206651530
	.word	1060061649
	.word	3204909084
	.word	1050074517
	.word	3202408823
	.word	1053308457
	.word	1014959206
	.word	3207491379
	.word	1041646302
	.word	3208750016
	.word	1052978077
	.word	1055047004
	.word	1064749270
	.word	3176121708
	.word	1058029338
	.word	1044615278
	.word	1056380720
	.word	3196845697
	.word	1065028421
	.word	1045106377
	.word	1059952633
	.word	1057474914
	.word	1044984594
	.word	3148415766
	.word	1021313076
	.word	3196302864
	.word	3205739506
	.word	3198778586
	.word	1053246043
	.word	1032994218
	.word	1063930158
	.word	1057463543
	.word	3182324897
	.word	3207673053
	.word	1033964427
	.word	3187364054
	.word	3189660215
	.word	3204030074
	.word	1026715848
	.word	1062953045
	.word	1051994327
	.word	1060455960
	.word	3207823840
	.word	1034207716
	.word	3181555749
	.word	1057698640
	.word	1051802070
	.word	3207474419
	.word	3205660933
	.word	1047769466
	.word	1032422668
	.word	1062876798
	.word	3197779746
	.word	1057363283
	.word	1035295319
	.word	1063426662
	.word	3198856456
	.word	3211397167
	.word	1059602326
	.word	1045370791
	.word	3207144098
	.word	1059334753
	.word	1061929384
	.word	3198832635
	.word	3197656679
	.word	1054524651
	.word	1058674105
	.word	1052107546
	.word	3201789632
	.word	1052104582
	.word	3209594393
	.word	3207709809
	.word	3208126672
	.word	1058314968
	.word	1064667970
	.word	3211862083
	.word	1064691671
	.word	1039383126
	.word	3212391739
	.word	3206587935
	.word	1051307143
	.word	3201603856
	.word	1046922120
	.word	3193832876
	.word	1060597775
	.word	1041804563
	.word	3193542523
	.word	1060012116
	.word	1059906639
	.word	1030900888
	.word	3194155511
	.word	3195111996
	.word	1043085693
	.word	3207967083
	.word	1062717354
	.word	3198783454
	.word	1047326122
	.word	3208055174
	.word	3204201475
	.word	1057844151
	.word	3202333904
	.word	3198950537
	.word	1041037408
	.word	1060980191
	.word	1056737202
	.word	1049704991
	.word	3206185082
	.word	3203581923
	.word	1048530054
	.word	1051050194
	.word	1064239426
	.word	3206990927
	.word	3208528965
	.word	3206936474
	.word	1038861014
	.word	3180154694
	.word	1025624226
	.word	1060869166
	.word	1056548019
	.word	1062144657
	.word	1062461125
	.word	1057817339
	.word	1063522122
	.word	1042066319
	.word	1053649371
	.word	1044359814
	.word	1058246169
	.word	3203270626
	.word	1060910144
	.word	3173074442
	.word	3204480587
	.word	3210369376
	.word	1053098265
	.word	1060721989
	.word	1063165707
	.word	1060288594
	.word	3179104469
	.word	3196860912
	.word	3180893124
	.word	3208716516
	.word	3210472692
	.word	3207954894
	.word	3210883921
	.word	1051139091
	.word	1061271093
	.word	3206794006
	.word	3205061154
	.word	3206073275
	.word	3191839707
	.word	1061330181
	.word	1044642282
	.word	3209002330
	.word	3200125473
	.word	1060711610
	.word	3198580055
	.word	3207012213
	.word	3211205541
	.word	3185650417
	.word	1063066943
	.word	1061369164
	.word	1056450260
	.word	3200312041
	.word	3212185509
	.word	1052753653
	.word	3196907707
	.word	1064479981
	.word	1063534743
	.word	1047447174
	.word	1063150274
	.word	3192825820
	.word	3207406799
	.word	1064717923
	.word	1036048615
	.word	3182386369
	.word	1052772357
	.word	3196910016
	.word	1031511508
	.word	3191579075
	.word	1041661424
	.word	3197978298
	.word	3188618854
	.word	1040579323
	.word	3179681418
	.word	1065164018
	.word	3209576798
	.word	1061382040
	.word	1041740035
	.word	3202172700
	.word	3205994879
	.word	3206022550
	.word	3199956495
	.word	1062678370
	.word	1058173456
	.word	3209912302
	.word	3212337276
	.word	3205361293
	.word	1051080777
	.word	1027698348
	.word	1043079707
	.word	1003491936
	.word	1062840614
	.word	1049804909
	.word	1044955022
	.word	1049890039
	.word	1051421452
	.word	1063193766
	.word	3208719895
	.word	1059042819
	.word	1034730502
	.word	3208413886
	.word	1053626200
	.word	1062271667
	.word	3204459455
	.word	1055390665
	.word	1049642970
	.word	1059178691
	.word	1056040758
	.word	1057400627
	.word	3187652648
	.word	3210872327
	.word	3204466543
	.word	1059172864
	.word	3166690677
	.word	3204802151
	.word	3173306213
	.word	3208860653
	.word	1064492818
	.word	3205668645
	.word	3196430186
	.word	3204550737
	.word	1058406333
	.word	3199833283
	.word	3210913776
	.word	3210081326
	.word	1051503652
	.word	1050207357
	.word	3208557051
	.word	3212498781
	.word	3204063016
	.word	3113993808
	.word	3188534288
	.word	3206582439
	.word	3212340557
	.word	3206150940
	.word	3212828941
	.word	1039069664
	.word	3209252090
	.word	1060993124
	.word	1062945442
	.word	3205373434
	.word	3163185022
	.word	3209054346
	.word	3209192304
	.word	3206140152
	.word	1063437528
	.word	1058257725
	.word	1059713219
	.word	3199717087
	.word	3200757590
	.word	1045370921
	.word	3164396464
	.word	3205563261
	.word	1049880716
	.word	1064725471
	.word	1061697859
	.word	3198150478
	.word	3208631725
	.word	1045601686
	.word	1062064957
	.word	3208358669
	.word	3201971793
	.word	1060099808
	.word	3201049353
	.word	3196656461
	.word	3200230674
	.word	1059195852
	.word	3212370755
	.word	3190495031
	.word	1058779513
	.word	3211755575
	.word	3201846164
	.word	1056952661
	.word	3204147440
	.word	3167867503
	.word	3189930552
	.word	1052283897
	.word	1047080475
	.word	3188586945
	.word	3180389209
	.word	1031977702
	.word	3190611190
	.word	3205717799
	.word	3190163717
	.word	1057444790
	.word	1058328316
	.word	1055100013
	.word	1062992466
	.word	3190723660
	.word	3202440886
	.word	3191684580
	.word	1059917579
	.word	3158348284
	.word	3194825298
	.word	3193378115
	.word	3204749419
	.word	3209578272
	.word	1042330778
	.word	1063542550
	.word	1053739171
	.word	1058173096
	.word	3206195534
	.word	3198746576
	.word	1023465476
	.word	1060048051
	.word	3209289862
	.word	1062589611
	.word	3179546284
	.word	1064317562
	.word	3199244900
	.word	3212446299
	.word	1063780588
	.word	3206933847
	.word	3209095293
	.word	3197719605
	.word	3201887739
	.word	1061157430
	.word	3207836077
	.word	3207219706
	.word	3205595135
	.word	3212120634
	.word	1063911868
	.word	1061510445
	.word	1035814455
	.word	1062746036
	.word	3206349731
	.word	3207523019
	.word	1052218777
	.word	1064255939
	.word	1047676513
	.word	3211091435
	.word	3207355787
	.word	1055450743
	.word	3203573358
	.word	3205723335
	.word	3206878452
	.word	3212504991
	.word	1050979181
	.word	3209480158
	.word	1031661144
	.word	3206281262
	.word	1042485409
	.word	3199071649
	.word	1052933547
	.word	3211547237
	.word	3170249258
	.word	3191619415
	.word	1039871781
	.word	1063468330
	.word	3206401938
	.word	3211504768
	.word	1052027462
	.word	3211672162
	.word	3200382099
	.word	1061585452
	.word	1062618157
	.word	1027698292
	.word	1056459088
	.word	3211816057
	.word	1048963731
	.word	1041435285
	.word	3198526493
	.word	1056409834
	.word	3201870057
	.word	1052165211
	.word	3210218063
	.word	1064445628
	.word	3204312438
	.word	1064888102
	.word	1042069932
	.word	3208070371
	.word	3206411675
	.word	3198821420
	.word	3190771946
	.word	1062698579
	.word	3170690229
	.word	3206570239
	.word	3208294190
	.word	3208533799
	.word	3208371925
	.word	3202743451
	.word	1052343709
	.word	1051174344
	.word	1058806221
	.word	3189180935
	.word	3203448176
	.word	3194862953
	.word	1046903305
	.word	3181880096
	.word	1061887109
	.word	1049167504
	.word	3200814357
	.word	3210269816
	.word	3209082485
	.word	1039697696
	.word	3192018981
	.word	3211065059
	.word	3206677349
	.word	1064142199
	.word	3208348197
	.word	1048911936
	.word	3208038135
	.word	1055950057
	.word	3206275215
	.word	3207551923
	.word	3208568007
	.word	3205057407
	.word	1058417199
	.word	1041851983
	.word	1053662072
	.word	3208133712
	.word	1058955390
	.word	3196282442
	.word	3210537816
	.word	1063572592
	.word	1063034618
	.word	3207885836
	.word	1042144514
	.word	3181306398
	.word	3196136734
	.word	1063169693
	.word	1054573767
	.word	3209789665
	.word	3208459984
	.word	3207759710
	.word	1044079563
	.word	1060144949
	.word	3176091112
	.word	3207888891
	.word	1055383941
	.word	3199920751
	.word	3210978365
	.word	1017095996
	.word	1062798776
	.word	3179622514
	.word	3185508784
	.word	3190589271
	.word	1063885763
	.word	1054553130
	.word	1060196789
	.word	1040563202
	.word	1053986499
	.word	3192362585
	.word	1058007348
	.word	1057028282
	.word	1062028065
	.word	1061925935
	.word	3198676055
	.word	1061517768
	.word	1047712965
	.word	3209377383
	.word	1057599200
	.word	3181191721
	.word	1055103627
	.word	1059036142
	.word	3204459394
	.word	3210998078
	.word	1053257808
	.word	3211424764
	.word	975905896
	.word	3187175836
	.word	1045667637
	.word	3201412038
	.word	3175826665
	.word	3198184128
	.word	3212750283
	.word	1051747337
	.word	1048603812
	.word	1062760101
	.word	3208286947
	.word	1048553892
	.word	1057696121
	.word	1013145179
	.word	3179854200
	.word	3209538821
	.word	3194229571
	.word	1055686081
	.word	3200372640
	.word	3203247008
	.word	3199857014
	.word	1058911951
	.word	3198287927
	.word	1040638363
	.word	1031722174
	.word	3210852352
	.word	1053636399
	.word	1042789708
	.word	3204930904
	.word	1057855014
	.word	1064202182
	.word	1053946818
	.word	3192093814
	.word	1029345763
	.word	3211356782
	.word	1062395332
	.word	1061271923
	.word	3210315270
	.word	1037646679
	.word	1061123520
	.word	3205451924
	.word	1064953610
	.word	1057074063
	.word	3180761895
	.word	1059239777
	.word	1058771988
	.word	3200537252
	.word	3206811077
	.word	1035452777
	.word	1060696229
	.word	3200047050
	.word	1060064876
	.word	3171547377
	.word	1045208422
	.word	1051992606
	.word	3202213095
	.word	1060477789
	.word	3161750160
	.word	3205272281
	.word	3209046040
	.word	1054963984
	.word	1060994012
	.word	3198485700
	.word	3189232117
	.word	1060731549
	.word	3208544886
	.word	3208525647
	.word	3156441017
	.word	1057804725
	.word	1041719165
	.word	1061614960
	.word	3206552321
	.word	3178992916
	.word	3201096883
	.word	1063080102
	.word	1051181718
	.word	1061424645
	.word	3211262911
	.word	1057697038
	.word	3204906901
	.word	1057718451
	.word	1055419983
	.word	3201861439
	.word	1062055749
	.word	1056852244
	.word	3196223760
	.word	3211845375
	.word	3180174283
	.word	1015520014
	.word	1057135719
	.word	3169488888
	.word	3188776410
	.word	1063205749
	.word	3208692809
	.word	1043052707
	.word	3191474340
	.word	1056838318
	.word	1062904121
	.word	1053217271
	.word	1056941803
	.word	1043443697
	.word	1023992481
	.word	1059168257
	.word	3210031765
	.word	3204847991
	.word	1051010632
	.word	1020786024
	.word	1064497281
	.word	3196193587
	.word	3190420514
	.word	1051317413
	.word	1062144269
	.word	1042526997
	.word	3202373863
	.word	3211893139
	.word	3212296971
	.word	1049025759
	.word	1060504294
	.word	3196884999
	.word	1064172210
	.word	1040250694
	.word	1060174193
	.word	3206259304
	.word	1049728676
	.word	3201819720
	.word	3201410900
	.word	3189500784
	.word	1059160220
	.word	1039938397
	.word	3206882726
	.word	1052272135
	.word	1060049699
	.word	1061202513
	.word	3205815513
	.word	3203411993
	.word	3180178016
	.word	1043521306
	.word	1051974035
	.word	1053435196
	.word	1060492554
	.word	3206437925
	.word	3208165188
	.word	3212402145
	.word	1064339147
	.word	1058632381
	.word	3199153816
	.word	3200661147
	.word	3205656684
	.word	3206507115
	.word	3207416982
	.word	1065251767
	.word	3209222032
	.word	1061809502
	.word	3179653946
	.word	3212647963
	.word	1061141962
	.word	1054043668
	.word	1045667582
	.word	1058191292
	.word	1064321385
	.word	1061044285
	.word	1061254192
	.word	3197572818
	.word	1046372560
	.word	1047244587
	.word	3204526347
	.word	1056038580
	.word	3210618107
	.word	1063156241
	.word	3211247813
	.word	3180273545
	.word	1061366602
	.word	1059215963
	.word	3204397489
	.word	3197209143
	.word	1046847669
	.word	1054043725
	.word	3210018035
	.word	3200276220
	.word	1042113416
	.word	3212065063
	.word	3205209283
	.word	1059274613
	.word	1055805616
	.word	1033731676
	.word	1049150564
	.word	1057733718
	.word	1061643622
	.word	3199865800
	.word	1056286361
	.word	3206141290
	.word	3208455419
	.word	3209078552
	.word	3207896976
	.word	3198090488
	.word	3205724697
	.word	3171682966
	.word	3200704066
	.word	3209325079
	.word	3190653403
	.word	1046550351
	.word	3198524275
	.word	1062595430
	.word	3211703501
	.word	3210009584
	.word	3191700936
	.word	1064448005
	.word	1063083942
	.word	1063959348
	.word	3192975946
	.word	3209601938
	.word	3203929635
	.word	1064920957
	.word	3193242368
	.word	1059437760
	.word	1036313670
	.word	3209485758
	.word	1052031507
	.word	1063965309
	.word	3208373021
	.word	3194678551
	.word	3199700276
	.word	1055929675
	.word	3210477301
	.word	3211792686
	.word	1053266118
	.word	1055569603
	.word	1057685578
	.word	1059901011
	.word	1064414182
	.word	3209045677
	.word	1049011699
	.word	1062713977
	.word	1051906340
	.word	1062265185
	.word	3194468073
	.word	1041486373
	.word	3206303619
	.word	1057630583
	.word	1059577818
	.word	3208236638
	.word	3192367173
	.word	3197942222
	.word	1060747226
	.word	1059955714
	.word	1048595391
	.word	3205650724
	.word	1038460393
	.word	3195147788
	.word	1061463805
	.word	3209468855
	.word	1036929039
	.word	1038691779
	.word	3169236534
	.word	3180663567
	.word	3204704084
	.word	1061926721
	.word	1057057556
	.word	3204318211
	.word	3199851637
	.word	3197806732
	.word	1064368558
	.word	1030181870
	.word	1060874157
	.word	1058352658
	.word	3189953226
	.word	1062461453
	.word	3190225238
	.word	1052010548
	.word	1064017840
	.word	3197089486
	.word	3201159054
	.word	3188097390
	.word	1033070205
	.word	1061927236
	.word	3199354805
	.word	1064450344
	.word	3191925785
	.word	1065006250
	.word	3188153917
	.word	1058404640
	.word	3211070733
	.word	3212804081
	.word	3208103073
	.word	3207910614
	.word	1047738330
	.word	1061448033
	.word	3195796625
	.word	3208942668
	.word	1041160561
	.word	3205214284
	.word	1056318871
	.word	3199608050
	.word	3204230785
	.word	1062534830
	.word	1039857600
	.word	1043835195
	.word	1059159155
	.word	3210967167
	.word	1063027488
	.word	1064740305
	.word	3148049059
	.word	1051659468
	.word	1059561856
	.word	3209932895
	.word	1037026072
	.word	1053659971
	.word	3209994082
	.word	1062537790
	.word	3207086541
	.word	1022964433
	.word	3208113447
	.word	3205997524
	.word	3199627599
	.word	1059886118
	.word	1058751224
	.word	3207926656
	.word	1020153854
	.word	1061377434
	.word	3196335620
	.word	1055501105
	.word	1059086641
	.word	1042694140
	.word	1064753944
	.word	1063159801
	.word	3179745504
	.word	3208019618
	.word	3211947139
	.word	3210367639
	.word	1061855549
	.word	1062409324
	.word	3200065497
	.word	1039297048
	.word	3208026481
	.word	1057789469
	.word	3137588077
	.word	1061141382
	.word	3190938531
	.word	1043553734
	.word	1034412411
	.word	3209562508
	.word	1064899670
	.word	3179010556
	.word	3197518038
	.word	1063439259
	.word	1056915325
	.word	3209630302
	.word	1052412760
	.word	3211924463
	.word	3197263049
	.word	3174267461
	.word	1050387318
	.word	1052356008
	.word	3205172317
	.word	1043512751
	.word	1041201075
	.word	3207873559
	.word	3206922257
	.word	1062521959
	.word	3199916875
	.word	3208311879
	.word	1011097903
	.word	1061936343
	.word	3194573318
	.word	3211617666
	.word	1031188503
	.word	3203951787
	.word	1045107770
	.word	3204946928
	.word	3198458583
	.word	3210145231
	.word	3191886314
	.word	3200963371
	.word	1052522006
	.word	3211539278
	.word	1063566592
	.word	3204522651
	.word	1059702395
	.word	1063471045
	.word	1049149898
	.word	1065090034
	.word	3207258697
	.word	1033052604
	.word	3208363440
	.word	989085288
	.word	3198292070
	.word	3203359405
	.word	1058136757
	.word	3205396205
	.word	3206979882
	.word	1058046114
	.word	1058395312
	.word	3202200298
	.word	1062786510
	.word	3203176144
	.word	3200403894
	.word	3156990782
	.word	1059551515
	.word	3211046380
	.word	3207625026
	.word	3198852072
	.word	3174898973
	.word	3203220550
	.word	3212754405
	.word	1057402083
	.word	3180110605
	.word	3210419403
	.word	3195373419
	.word	3204853296
	.word	1039452768
	.word	3210123426
	.word	3203084829
	.word	3212416112
	.word	3207476840
	.word	1057093713
	.word	1035758340
	.word	3207375207
	.word	1057880397
	.word	1052195563
	.word	1055389295
	.word	3212697742
	.word	1041511147
	.word	1035309058
	.word	1060458584
	.word	1058295900
	.word	1063710702
	.word	1009488067
	.word	1038533514
	.word	1028813057
	.word	3206923928
	.word	1050990539
	.word	3202217230
	.word	3203827292
	.word	1059509103
	.word	1064055488
	.word	3208672747
	.word	3171527475
	.word	1047694997
	.word	3174178503
	.word	1041919518
	.word	3193887304
	.word	1051793548
	.word	3203506775
	.word	1059900638
	.word	3212611803
	.word	3209224390
	.word	1049271497
	.word	1058571733
	.word	3203977459
	.word	1046731022
	.word	3210321461
	.word	3205709642
	.word	3194104134
	.word	3208633316
	.word	1061042136
	.word	1055753051
	.word	1046886838
	.word	1064269583
	.word	1002946718
	.word	1062515817
	.word	1021144573
	.word	3206944099
	.word	1056024489
	.word	3189061735
	.word	1059497082
	.word	3196602052
	.word	3212205678
	.word	1052094362
	.word	3191639000
	.word	3209911286
	.word	1058566751
	.word	1055242580
	.word	3210147006
	.word	1050326161
	.word	3208399032
	.word	3211008832
	.word	1063344960
	.word	3197106532
	.word	1017103716
	.word	3204641454
	.word	1055196397
	.word	1052780959
	.word	1064756664
	.word	1043049153
	.word	1010977561
	.word	1064651711
	.word	1050770307
	.word	1044472486
	.word	1054194712
	.word	3205128843
	.word	3201854801
	.word	1037023288
	.word	3195084241
	.word	3209582831
	.word	3206413771
	.word	1051953534
	.word	3208450303
	.word	1049981698
	.word	1051442740
	.word	1062535461
	.word	3206286029
	.word	3202334067
	.word	3207557342
	.word	3204483618
	.word	3211049431
	.word	3196471149
	.word	1055435097
	.word	1046779338
	.word	1058731054
	.word	3207783576
	.word	1063085660
	.word	1052392891
	.word	3199568484
	.word	3205706693
	.word	1054382982
	.word	3196813269
	.word	3186588295
	.word	1057754368
	.word	3211005169
	.word	3210895112
	.word	3210988065
	.word	1046405742
	.word	1042191503
	.word	3198854210
	.word	3209919093
	.word	3212135550
	.word	1062838560
	.word	3200797226
	.word	1064624717
	.word	1029560031
	.word	1036678280
	.word	1062868573
	.word	1052332739
	.word	3211189645
	.word	3177577268
	.word	1057335230
	.word	1049025090
	.word	3190091077
	.word	3212563521
	.word	3198848989
	.word	3205228987
	.word	1059099708
	.word	1053902149
	.word	1061237780
	.word	1063168367
	.word	1052342246
	.word	1062896825
	.word	3207785424
	.word	3207333019
	.word	1062042332
	.word	1051552312
	.word	3170105628
	.word	3210845594
	.word	3197627218
	.word	3212261405
	.word	3208427215
	.word	1006883189
	.word	1065180695
	.word	3210025652
	.word	1055439660
	.word	3211726241
	.word	3206873611
	.word	1037437055
	.word	3205042609
	.word	3211780601
	.word	1058640841
	.word	3209298707
	.word	1062355015
	.word	1062300305
	.word	3210124097
	.word	3190884480
	.word	3191749646
	.word	3207338232
	.word	3201513084
	.word	1041346505
	.word	1061865849
	.word	3208245183
	.word	3202635695
	.word	3210451502
	.word	3209196325
	.word	1054910283
	.word	1053615646
	.word	1043712324
	.word	3202279990
	.word	1057766823
	.word	1028346566
	.word	3202507951
	.word	3182384780
	.word	3167422464
	.word	3209129370
	.word	3204646267
	.word	1050921030
	.word	1060685906
	.word	1061501560
	.word	1062165035
	.word	3192448653
	.word	3185083184
	.word	3197793557
	.word	1058870873
	.word	3212325449
	.word	1013768115
	.word	3207280744
	.word	1061165253
	.word	1060267345
	.word	3205513366
	.word	1060760052
	.word	3194552433
	.word	1059741046
	.word	3187618938
	.word	1056613974
	.word	3205776765
	.word	1059123623
	.word	3197595462
	.word	1047928961
	.word	3189727402
	.word	3210923353
	.word	1053226385
	.word	3207197407
	.word	1052393805
	.word	3200129327
	.word	1058024252
	.word	1037197748
	.word	3198438965
	.word	1051405605
	.word	3201148661
	.word	1060768481
	.word	3192188142
	.word	3185385757
	.word	1063644923
	.word	1055511107
	.word	1063520176
	.word	3208521277
	.word	1024081100
	.word	1061766093
	.word	1063868491
	.word	1049863959
	.word	3196024711
	.word	3202164870
	.word	3182270915
	.word	3203623387
	.word	3199841923
	.word	1059932678
	.word	1000346858
	.word	3194561645
	.word	3179389105
	.word	3212673472
	.word	3207946067
	.word	3197899994
	.word	3203786891
	.word	3206012815
	.word	3207071138
	.word	1058380158
	.word	3204222381
	.word	3138084807
	.word	3203784603
	.word	1059017553
	.word	3196356439
	.word	1064410763
	.word	3208082911
	.word	3208899541
	.word	1051075397
	.word	1037927014
	.word	3209323433
	.word	3206951729
	.word	1061182563
	.word	1050302550
	.word	1058985966
	.word	1053978827
	.word	3210804200
	.word	3209140397
	.word	1058919297
	.word	1033487843
	.word	1051629834
	.word	3205343768
	.word	1049500797
	.word	1057425980
	.word	3204100789
	.word	1057205428
	.word	1047223255
	.word	1041138521
	.word	1061892969
	.word	1062594292
	.word	1061899134
	.word	3184245072
	.word	1038053192
	.word	1053042882
	.word	1049332619
	.word	1060036023
	.word	1057347518
	.word	1047630017
	.word	3196713624
	.word	3184822369
	.word	3212737610
	.word	1061242523
	.word	1062103610
	.word	3212795648
	.word	3145851321
	.word	3210719049
	.word	3208741675
	.word	1060382348
	.word	3180514189
	.word	1034053221
	.word	3186162543
	.word	1062470691
	.word	3184726644
	.word	1027235838
	.word	1051282447
	.word	3206391240
	.word	1062465690
	.word	3204574957
	.word	3200121237
	.word	1060714136
	.word	1043145046
	.word	1063434120
	.word	3204330007
	.word	1038764743
	.word	1054547410
	.word	3174765039
	.word	1019875464
	.word	1043584182
	.word	3199407637
	.word	3211821422
	.word	3193714975
	.word	1063793760
	.word	3177365808
	.word	3212542661
	.word	1053807804
	.word	1061258777
	.word	3207726902
	.word	1052712609
	.word	1056424684
	.word	1061744376
	.word	1064996233
	.word	3186176679
	.word	3206629578
	.word	1057178394
	.word	3209969706
	.word	3195454489
	.word	1009772154
	.word	3202390785
	.word	1064274945
	.word	3212055849
	.word	3212572102
	.word	3208559967
	.word	3203315221
	.word	1023779746
	.word	1050383832
	.word	3192693721
	.word	1059889171
	.word	1055242558
	.word	3207499414
	.word	1049361091
	.word	1044757637
	.word	3199175462
	.word	3203950970
	.word	3205892221
	.word	1053377632
	.word	3212540318
	.word	3210363121
	.word	1061555086
	.word	3205962501
	.word	1062634509
	.word	3206849709
	.word	3198138535
	.word	3210967691
	.word	1050409074
	.word	3209650853
	.word	3205023574
	.word	1063316491
	.word	1052357801
	.word	3196208887
	.word	1058714627
	.word	3212455458
	.word	1048607134
	.word	1057796767
	.word	3209416926
	.word	1046990439
	.word	1013016710
	.word	1062328427
	.word	1044258393
	.word	3202785851
	.word	1036212529
	.word	1060938662
	.word	3205824396
	.word	3176524567
	.word	1053419527
	.word	3203140436
	.word	1041193770
	.word	3209316482
	.word	1060194962
	.word	3205800562
	.word	3205866615
	.word	3212284261
	.word	3155244147
	.word	3176486173
	.word	3212830404
	.word	3212263431
	.word	1052481401
	.word	1023693910
	.word	1042848360
	.word	1050262446
	.word	3199100849
	.word	3195264893
	.word	3197457054
	.word	3209043231
	.word	3188979264
	.word	1059654493
	.word	3206574399
	.word	3212752392
	.word	1042604520
	.word	3198650438
	.word	1026054031
	.word	1011522663
	.word	1061111536
	.word	3203977878
	.word	1004200102
	.word	1059172922
	.word	3210006455
	.word	1055273682
	.word	1061475080
	.word	1064151205
	.word	1062209971
	.word	1052046137
	.word	3210692480
	.word	3205775847
	.word	3211376040
	.word	3209137226
	.word	1057550415
	.word	1051137989
	.word	1053455873
	.word	3210187807
	.word	1044991723
	.word	3196439411
	.word	1061162109
	.word	3184773275
	.word	3192801675
	.word	3193619141
	.word	1058287023
	.word	3188060886
	.word	3209055427
	.word	3166045971
	.word	1040320988
	.word	1061759211
	.word	1025208273
	.word	1062620893
	.word	3192100758
	.word	1037742170
	.word	1065190446
	.word	1058949985
	.word	1055631004
	.word	1060594859
	.word	3189980995
	.word	3205458454
	.word	3189165086
	.word	3212204391
	.word	3198666895
	.word	3209044534
	.word	1051973040
	.word	3207506432
	.word	1051669344
	.word	3208525777
	.word	1060331968
	.word	1064005190
	.word	1059084296
	.word	3189831246
	.word	1061693813
	.word	1051929885
	.word	1052308438
	.word	1050698057
	.word	1058343447
	.word	1057879039
	.word	1060508257
	.word	1051343347
	.word	1042876996
	.word	3194606676
	.word	1063670977
	.word	1059546529
	.word	3174662777
	.word	1023847891
	.word	1061892098
	.word	3207867893
	.word	3211186806
	.word	3192411071
	.word	3175137542
	.word	1056534631
	.word	1043607370
	.word	1062300245
	.word	3194340930
	.word	1063708616
	.word	3189564347
	.word	3203533824
	.word	3205915787
	.word	1055365410
	.word	1065293554
	.word	3210305622
	.word	3201220331
	.word	1064068549
	.word	3176357505
	.word	3200432976
	.word	3197734507
	.word	1061402050
	.word	1061552561
	.word	1016052607
	.word	3201117722
	.word	1063882775
	.word	1065349300
	.word	3204805976
	.word	3199944228
	.word	1056213405
	.word	3176533082
	.word	3203752312
	.word	1059400012
	.word	3207846415
	.word	1052258143
	.word	1059282060
	.word	1038930231
	.word	3207374376
	.word	3189404123
	.word	3209898410
	.word	3204522246
	.word	1057976569
	.word	3189993790
	.word	1065313748
	.word	1060366657
	.word	3211939187
	.word	3157498311
	.word	3200547771
	.word	1063216974
	.word	3202888898
	.word	3206725246
	.word	1064226662
	.word	3209494096
	.word	3194396243
	.word	1048615042
	.word	3206094900
	.word	3189700499
	.word	1064811924
	.word	3162558937
	.word	1048595157
	.word	1045874845
	.word	3200455818
	.word	3207456418
	.word	1042549467
	.word	3208639257
	.word	1058590606
	.word	3182688042
	.word	1059353720
	.word	1048965734
	.word	3185903825
	.word	1050259454
	.word	1050856587
	.word	1030735123
	.word	3210197966
	.word	1061330169
	.word	3212490686
	.word	1064358387
	.word	1063113258
	.word	1057862141
	.word	1040339075
	.word	1057469705
	.word	1060742357
	.word	1052157692
	.word	3193364669
	.word	3190304380
	.word	3210972213
	.word	1024888231
	.word	1062056428
	.word	3206040868
	.word	3143866432
	.word	1038726961
	.word	3202027789
	.word	1060639178
	.word	1051456507
	.word	1017757797
	.word	3204836597
	.word	3189013290
	.word	1056648082
	.word	1055686341
	.word	3211108980
	.word	3211087636
	.word	1051709900
	.word	3207541599
	.word	3162265437
	.word	3203206326
	.word	1063407814
	.word	1044725104
	.word	1046998760
	.word	3209282633
	.word	3192069256
	.word	3205398082
	.word	3188642789
	.word	1045004822
	.word	1064998279
	.word	3197426188
	.word	3205988639
	.word	3181215620
	.word	3203342467
	.word	1043313662
	.word	1053884832
	.word	3209795256
	.word	3198681759
	.word	1061834620
	.word	3212459228
	.word	3212495939
	.word	3204865591
	.word	3196524680
	.word	1016338928
	.word	3212574982
	.word	1064552517
	.word	3210343781
	.word	1060201930
	.word	3189369700
	.word	1060522494
	.word	3204191102
	.word	3202889985
	.word	3189998360
	.word	1061089029
	.word	3208239293
	.word	3208144978
	.word	1052625159
	.word	3210252752
	.word	3146976641
	.word	3206058418
	.word	1064805813
	.word	1057181865
	.word	1063501335
	.word	1065197494
	.word	3207170305
	.word	1051389415
	.word	3201868404
	.word	1057797386
	.word	3212633458
	.word	3209191426
	.word	1050081553
	.word	1064200362
	.word	1055136643
	.word	3200703587
	.word	3191541426
	.word	3209036639
	.word	1054910693
	.word	1058275018
	.word	3200201913
	.word	3197804362
	.word	3194524517
	.word	1060323007
	.word	3211342835
	.word	1060880618
	.word	1056500016
	.word	3212401640
	.word	1046340829
	.word	1041701657
	.word	3208058583
	.word	3199985410
	.word	1058120711
	.word	3181766392
	.word	3200128252
	.word	1048734945
	.word	3210638485
	.word	1044570441
	.word	1055530284
	.word	1064364089
	.word	3197652502
	.word	1048191501
	.word	3195396784
	.word	3208917449
	.word	1061411332
	.word	3206264402
	.word	3208358229
	.word	3196678157
	.word	1060883734
	.word	3177269321
	.word	1049377723
	.word	3207126598
	.word	1064800117
	.word	1053277869
	.word	1057279026
	.word	3210477779
	.word	1057872545
	.word	1059462818
	.word	3208741226
	.word	1062572084
	.word	3188510733
	.word	1027826674
	.word	3210829714
	.word	1055580944
	.word	1059481801
	.word	1056843339
	.word	3201714815
	.word	3205548203
	.word	3194579340
	.word	3190357535
	.word	1045520197
	.word	3207603943
	.word	3207449278
	.word	1062228709
	.word	3205483802
	.word	3205720065
	.word	3197337971
	.word	1064516353
	.word	1060485807
	.word	1060824495
	.word	1060501464
	.word	3192189737
	.word	3192063067
	.word	1063217129
	.word	1040800979
	.word	3212491989
	.word	3184835302
	.word	3177761181
	.word	3210538723
	.word	3167957233
	.word	3205756254
	.word	3175928514
	.word	1044671433
	.word	3209478968
	.word	3185660381
	.word	1062681508
	.word	1052118956
	.word	1049398126
	.word	1061285384
	.word	1061520416
	.word	1025601784
	.word	1039616171
	.word	1051070365
	.word	3200424634
	.word	3209012091
	.word	1056091751
	.word	1060374536
	.word	1060901675
	.word	3206030183
	.word	1061329346
	.word	1059054273
	.word	3211847902
	.word	3190416717
	.word	3175872573
	.word	3174198497
	.word	3207185717
	.word	3205638977
	.word	1054543489
	.word	1035461628
	.word	3203838405
	.word	3182988547
	.word	1063470316
	.word	1061510990
	.word	1008618403
	.word	3198779548
	.word	3197268736
	.word	3180274917
	.word	1062574780
	.word	1063265080
	.word	3207097700
	.word	1058372065
	.word	3201712935
	.word	3197141523
	.word	1063081195
	.word	3211131747
	.word	1062262927
	.word	1058911795
	.word	1040681692
	.word	3194120185
	.word	3210365954
	.word	3196713946
	.word	1052294775
	.word	3187003004
	.word	3172025337
	.word	3208112229
	.word	1064908453
	.word	3192823326
	.word	1051890155
	.word	3199037616
	.word	3196722999
	.word	1056928065
	.word	3209274202
	.word	1057105672
	.word	3211229875
	.word	3209121969
	.word	3207181089
	.word	3209271757
	.word	3211413600
	.word	3201622463
	.word	1060853681
	.word	3211224945
	.word	1035124847
	.word	3202854983
	.word	1058272267
	.word	3192765229
	.word	1063107887
	.word	1065060496
	.word	3198820417
	.word	1045332894
	.word	1063360751
	.word	3169887392
	.word	1036391317
	.word	3208903832
	.word	3191310041
	.word	3211688141
	.word	3207847258
	.word	1054921347
	.word	3203420288
	.word	1045963009
	.word	3195781726
	.word	1064285784
	.word	1023989658
	.word	1033681402
	.word	1054182667
	.word	1064723518
	.word	3191408870
	.word	3187994266
	.word	3210046720
	.word	3209491187
	.word	1060930344
	.word	1015475448
	.word	1045721344
	.word	1050272354
	.word	1061614484
	.word	3181692084
	.word	3197064272
	.word	1045428716
	.word	1055202898
	.word	1057104754
	.word	1059386128
	.word	1063629513
	.word	3207397455
	.word	1041820638
	.word	1051963430
	.word	1058647307
	.word	3206228288
	.word	3201707266
	.word	1061872803
	.word	3211897775
	.word	3211546804
	.word	1057115432
	.word	1037040525
	.word	3209470845
	.word	3194650484
	.word	1044976817
	.word	3206697719
	.word	1049161415
	.word	1064409762
	.word	1051257819
	.word	3211129536
	.word	1058031521
	.word	3212449886
	.word	3206289469
	.word	1056930706
	.word	3185077961
	.word	3201117333
	.word	1049076602
	.word	3198175816
	.word	3203287272
	.word	3201935832
	.word	3206285597
	.word	1063953339
	.word	1015961475
	.word	1041718440
	.word	1058544225
	.word	3189058925
	.word	3202006577
	.word	1047466045
	.word	1051507358
	.word	1052807430
	.word	1063680146
	.word	1054432847
	.word	3207984733
	.word	1034775211
	.word	3158903600
	.word	1039514936
	.word	3195373419
	.word	3207674530
	.word	3208392733
	.word	1062035963
	.word	1051897286
	.word	1063948998
	.word	3182143481
	.word	3212654579
	.word	1062549904
	.word	3207826574
	.word	3189381509
	.word	3208283428
	.word	3188972484
	.word	3203067718
	.word	1060878656
	.word	3201281009
	.word	1057348330
	.word	1055898362
	.word	3205708888
	.word	3195501590
	.word	3204419419
	.word	3200944720
	.word	1060198341
	.word	3187680585
	.word	3199153778
	.word	1040780714
	.word	3205110594
	.word	3210957379
	.word	3203576978
	.word	3210104093
	.word	1061551370
	.word	1039207287
	.word	3203159598
	.word	3204929252
	.word	3212128858
	.word	3203396473
	.word	3178672788
	.word	1042170708
	.word	3201859674
	.word	3204318620
	.word	3199353183
	.word	1030496291
	.word	1057670744
	.word	3175009265
	.word	3197070583
	.word	3211170811
	.word	1057385895
	.word	3212119909
	.word	1040958518
	.word	3193591506
	.word	1060152952
	.word	1049227250
	.word	3175631571
	.word	3210111013
	.word	3197372534
	.word	1041819834
	.word	3207705883
	.word	3166494037
	.word	3200029583
	.word	1051744688
	.word	1062989900
	.word	1062657732
	.word	3204645959
	.word	3171890411
	.word	1064277091
	.word	1062333855
	.word	3173083703
	.word	3207071423
	.word	3210729367
	.word	3201959736
	.word	1045797703
	.word	3188382162
	.word	1058079131
	.word	1062347425
	.word	1060919780
	.word	3208902320
	.word	3164614459
	.word	1058746620
	.word	1054818059
	.word	3206280891
	.word	3212225300
	.word	3205711102
	.word	1060200486
	.word	1041397477
	.word	1063510358
	.word	1061365260
	.word	1059541895
	.word	3212119783
	.word	1057331949
	.word	3206258890
	.word	3212112017
	.word	1056214119
	.word	1061902176
	.word	1041177464
	.word	1052660459
	.word	3209561817
	.word	1062619874
	.word	3202468277
	.word	1058390437
	.word	1064521772
	.word	1058862264
	.word	1059211899
	.word	3205811352
	.word	1060828236
	.word	1058627552
	.word	1039529202
	.word	3188957476
	.word	1064191837
	.word	3165375485
	.word	1058189272
	.word	1064088605
	.word	3208673310
	.word	1059148948
	.word	1057075911
	.word	1025463634
	.word	3198107851
	.word	3208291062
	.word	3211474814
	.word	3184843801
	.word	3122885974
	.word	1037218526
	.word	3205515909
	.word	3198816087
	.word	1056028914
	.word	1050110012
	.word	1048370955
	.word	3208025017
	.word	1042563738
	.word	1038307396
	.word	1046151862
	.word	1057663564
	.word	3210696187
	.word	1053223795
	.word	3210166127
	.word	3212300137
	.word	1059815861
	.word	3187394983
	.word	1058070715
	.word	3207726674
	.word	1052310506
	.word	1058210861
	.word	1035183494
	.word	3207708339
	.word	1051183061
	.word	1049909688
	.word	3195487634
	.word	1058727637
	.word	1035882658
	.word	3200804237
	.word	3206342877
	.word	1027691380
	.word	1042360961
	.word	1058234560
	.word	1055302103
	.word	1063283295
	.word	3202988644
	.word	1054847357
	.word	1061942986
	.word	1061511374
	.word	3209225411
	.word	1053782732
	.word	1064655178
	.word	1061786046
	.word	3196490018
	.word	1061550276
	.word	1056365395
	.word	3203160019
	.word	3189616773
	.word	3187958275
	.word	1063705905
	.word	3185861892
	.word	3183956088
	.word	3197525836
	.word	3192036142
	.word	3193025825
	.word	1056982835
	.word	1061258793
	.word	3201961432
	.word	3182745643
	.word	1061378213
	.word	3205392636
	.word	1058262669
	.word	1027922566
	.word	3209387866
	.word	1061270413
	.word	1058148052
	.word	1063215386
	.word	3202554866
	.word	3175603192
	.word	1049716400
	.word	3190752063
	.word	3198739540
	.word	3212540290
	.word	1057893130
	.word	3199481014
	.word	1061598017
	.word	3189221421
	.word	1063499881
	.word	3198105778
	.word	1060518692
	.word	3206904199
	.word	1041569338
	.word	1047498875
	.word	3209908763
	.word	3200094527
	.word	3209098809
	.word	3194358980
	.word	1049021646
	.word	1062830961
	.word	1049289417
	.word	3211425656
	.word	3211950096
	.word	1047096951
	.word	1061737119
	.word	1065284134
	.word	3212623353
	.word	1034046304
	.word	3209286864
	.word	3206461118
	.word	1062017600
	.word	1064814405
	.word	3209166396
	.word	3197761411
	.word	1065265118
	.word	3192714430
	.word	3184570360
	.word	1057684595
	.word	1053868539
	.word	3185015656
	.word	1059280972
	.word	3205518270
	.word	1040804082
	.word	3204503966
	.word	3172683491
	.word	1060716633
	.word	1061124492
	.word	1064149281
	.word	3208422506
	.word	1063545352
	.word	1055924362
	.word	3194342090
	.word	1061305786
	.word	1065264951
	.word	3208639841
	.word	3211809718
	.word	3206447574
	.word	1062465450
	.word	1050053508
	.word	3200179002
	.word	3197494171
	.word	1053496085
	.word	3212614749
	.word	3182192731
	.word	1065349203
	.word	1013524334
	.word	3209823574
	.word	1053943779
	.word	1047053697
	.word	3206822238
	.word	3203468064
	.word	3203984234
	.word	3208779138
	.word	3212359380
	.word	3211981892
	.word	3189137032
	.word	3163975033
	.word	1053707102
	.word	1031671725
	.word	3191531664
	.word	3200233663
	.word	1058081706
	.word	1063332343
	.word	1062893008
	.word	3204705316
	.word	1057160778
	.word	1051668111
	.word	1052759782
	.word	3209387015
	.word	3206942531
	.word	1061346685
	.word	1046817210
	.word	3199170817
	.word	1064776290
	.word	3209417550
	.word	1046231023
	.word	3174839778
	.word	1063189755
	.word	1059727352
	.word	3205225070
	.word	3211828737
	.word	3193589754
	.word	1057963584
	.word	3196255767
	.word	1057125267
	.word	3207787007
	.word	3204789130
	.word	3211566941
	.word	3211558678
	.word	1063145356
	.word	3205643289
	.word	1065097207
	.word	3211356823
	.word	3196572879
	.word	1027902409
	.word	3192390676
	.word	1061297852
	.word	3201702739
	.word	3196506712
	.word	1019021935
	.word	1053025486
	.word	3205726832
	.word	3208471182
	.word	1036246927
	.word	1024945694
	.word	1033327827
	.word	1058464016
	.word	1057779750
	.word	1065287727
	.word	3205692763
	.word	3209935401
	.word	1058647084
	.word	3179632241
	.word	1065115936
	.word	1065062982
	.word	1061622445
	.word	3188638463
	.word	1064533756
	.word	1062105000
	.word	1040887539
	.word	1048656142
	.word	1056479455
	.word	1049270205
	.word	1063555539
	.word	1054956985
	.word	1057222715
	.word	1058657163
	.word	1064480570
	.word	1051577138
	.word	1053738601
	.word	3211780161
	.word	1060815474
	.word	3200743909
	.word	3201787813
	.word	3208860726
	.word	3179135723
	.word	1056516807
	.word	3211889570
	.word	1055997291
	.word	1065300975
	.word	3211919423
	.word	1047285681
	.word	3206482026
	.word	1062650980
	.word	1040058004
	.word	1060950485
	.word	3193905325
	.word	1026560512
	.word	1046810058
	.word	1062334558
	.word	3200367404
	.word	3198934346
	.word	1059477688
	.word	3203013934
	.word	3207212753
	.word	1041893945
	.word	1064930648
	.word	983384075
	.word	1041244015
	.word	3196147972
	.word	3187564438
	.word	3200528912
	.word	3199631700
	.word	1032738172
	.word	1044430689
	.word	3210397334
	.word	3211202082
	.word	1055422922
	.word	1057546522
	.word	1062112483
	.word	1049388142
	.word	3208901496
	.word	1055601124
	.word	3211105409
	.word	1053035400
	.word	1043167054
	.word	3191637937
	.word	1023705844
	.word	1058994912
	.word	1041185470
	.word	1056325908
	.word	1032126101
	.word	1062255567
	.word	1061360075
	.word	3183341341
	.word	3205804757
	.word	1046000048
	.word	1042882482
	.word	1050438795
	.word	1060752038
	.word	3207260953
	.word	3206492446
	.word	3211818775
	.word	3192510174
	.word	1063711599
	.word	3210987086
	.word	1059768303
	.word	1064169948
	.word	1059649396
	.word	3180453120
	.word	1054151146
	.word	3206163288
	.word	3209958949
	.word	3212114020
	.word	1050193208
	.word	3211727285
	.word	3192619996
	.word	1061143833
	.word	3211534388
	.word	1061493668
	.word	1064874387
	.word	3194491793
	.word	3206017081
	.word	3206724076
	.word	3202539941
	.word	1051947022
	.word	1052937389
	.word	1063613130
	.word	1007598892
	.word	1053670191
	.word	1062256521
	.word	1046285460
	.word	1060021716
	.word	1057112577
	.word	3212643662
	.word	1046338382
	.word	3191749775
	.word	1057335491
	.word	1063578376
	.word	3209134147
	.word	1041046515
	.word	3209795842
	.word	1059266685
	.word	1044406372
	.word	1044212966
	.word	1050767889
	.word	3170894496
	.word	1056916260
	.word	1062933576
	.word	1064293754
	.word	3176579506
	.word	1048813809
	.word	1062268588
	.word	3189160374
	.word	1044854489
	.word	3207055913
	.word	3206972251
	.word	1057568847
	.word	1020057985
	.word	3210544766
	.word	1031273208
	.word	3212227221
	.word	1060137796
	.word	3211656824
	.word	3198655064
	.word	1060540206
	.word	1061420420
	.word	3198218887
	.word	1053944458
	.word	1061215583
	.word	3208757459
	.word	1061339903
	.word	1057169511
	.word	3207381253
	.word	1057984272
	.word	3210738133
	.word	1064098325
	.word	3211283378
	.word	3205720579
	.word	3195937100
	.word	3191893747
	.word	1047297643
	.word	3205122543
	.word	1053303506
	.word	3207896170
	.word	1036569649
	.word	1063339610
	.word	3200365556
	.word	3206887053
	.word	1063396414
	.word	1060801906
	.word	3192138583
	.word	3211863605
	.word	1064418929
	.word	3199991724
	.word	3212402746
	.word	3205789540
	.word	1057129448
	.word	1064548701
	.word	3183717598
	.word	3148093228
	.word	3130129874
	.word	3173357569
	.word	3196586666
	.word	1063103087
	.word	3211963031
	.word	3209822635
	.word	1034734764
	.word	3211974507
	.word	3203240918
	.word	1058655591
	.word	3181349618
	.word	1061275510
	.word	3212089212
	.word	3205343260
	.word	3201134961
	.word	1058132707
	.word	1043841817
	.word	3191991968
	.word	3203346546
	.word	1052523497
	.word	3208178481
	.word	1063069899
	.word	1031879682
	.word	3212539391
	.word	3210115406
	.word	1054338324
	.word	3207329663
	.word	1062978702
	.word	3208563677
	.word	3207125815
	.word	1053717827
	.word	1064547707
	.word	1047159158
	.word	3198799896
	.word	1061910362
	.word	1059816368
	.word	1064977136
	.word	3199294261
	.word	1060186727
	.word	3189980102
	.word	1060501389
	.word	3205382770
	.word	1059072930
	.word	3207989059
	.word	3207341177
	.word	3203605952
	.word	3192452588
	.word	1063711408
	.word	3203097087
	.word	1059504885
	.word	3207571126
	.word	3209535588
	.word	1052640135
	.word	1049913811
	.word	3208155671
	.word	3183516982
	.word	1044215658
	.word	1053660304
	.word	1062194424
	.word	1046875452
	.word	1037696151
	.word	3186658898
	.word	3201339823
	.word	1060049790
	.word	3193817032
	.word	1060498637
	.word	1063135225
	.word	1059090005
	.word	1038853415
	.word	1064963023
	.word	1048599517
	.word	1049338475
	.word	1042531081
	.word	1043053831
	.word	3202628411
	.word	3204097225
	.word	1047091612
	.word	1059828514
	.word	1058816167
	.word	1057028394
	.word	3207599287
	.word	3173612140
	.word	1042252265
	.word	1064043087
	.word	3203351000
	.word	3212702387
	.word	3204901396
	.word	1048452379
	.word	1059668187
	.word	3212433329
	.word	3195553244
	.word	3196997705
	.word	1042671120
	.word	1063498599
	.word	3190775465
	.word	3179431744
	.word	1050633516
	.word	3194567904
	.word	3205584108
	.word	3188199967
	.word	1063186387
	.word	1054953973
	.word	3183091784
	.word	1053947311
	.word	1063972084
	.word	1064938740
	.word	1060932659
	.word	1059546561
	.word	3190456926
	.word	3193956817
	.word	3180136625
	.word	3206068765
	.word	3191420641
	.word	1047166888
	.word	3206925093
	.word	1060699483
	.word	1061329939
	.word	1048685483
	.word	1033264332
	.word	3211854188
	.word	1046839147
	.word	1059229381
	.word	1057612586
	.word	3205983159
	.word	1062488558
	.word	1054503726
	.word	3205495748
	.word	1064081137
	.word	3207702447
	.word	3204791730
	.word	1062755383
	.word	1042736472
	.word	3193511662
	.word	1027975369
	.word	1062343115
	.word	1059919412
	.word	1058477483
	.word	3203015144
	.word	3199458126
	.word	1050997378
	.word	3207530670
	.word	3197054089
	.word	3191773608
	.word	1064774096
	.word	3177273798
	.word	3202362675
	.word	3202725925
	.word	3202398645
	.word	1062504535
	.word	3159255912
	.word	1060885720
	.word	1063172189
	.word	3192027417
	.word	3207405565
	.word	3198959856
	.word	3197364677
	.word	3211370020
	.word	1057129927
	.word	3207106645
	.word	3205502673
	.word	3184595116
	.word	1063743644
	.word	1056070047
	.word	1045907409
	.word	3182758765
	.word	1060670226
	.word	1057607431
	.word	3210898848
	.word	1042592842
	.word	1059076248
	.word	3211955845
	.word	1052355700
	.word	3192027296
	.word	3185715316
	.word	3207241835
	.word	3193699235
	.word	1063888057
	.word	3212398913
	.word	1059739119
	.word	1041739958
	.word	1040289712
	.word	993654688
	.word	1050679880
	.word	1058298745
	.word	1059943957
	.word	3209138619
	.word	1032738235
	.word	3197695853
	.word	1059568601
	.word	1054814074
	.word	1050995126
	.word	1061407671
	.word	3208034164
	.word	1065233166
	.word	3208406261
	.word	1049589507
	.word	1058381386
	.word	1061946695
	.word	1061033219
	.word	1033953294
	.word	3205494473
	.word	1063246811
	.word	3209384984
	.word	3207111927
	.word	1039518425
	.word	1059688761
	.word	3208128086
	.word	3207190899
	.word	3206757873
	.word	1060423024
	.word	1060903744
	.word	3202740965
	.word	3208778886
	.word	1060639814
	.word	3194628884
	.word	3181398660
	.word	1059277020
	.word	3191274543
	.word	3210291323
	.word	1062683666
	.word	1064980996
	.word	1058063096
	.word	3209604144
	.word	3184387382
	.word	3202307046
	.word	1062914876
	.word	3205246451
	.word	3206491454
	.word	1060130260
	.word	3207618514
	.word	3212818655
	.word	1061183967
	.word	3192906789
	.word	3210845695
	.word	3201847147
	.word	3198444514
	.word	3208799920
	.word	3209590524
	.word	3204342134
	.word	1046367270
	.word	3209092214
	.word	3202627844
	.word	1060491259
	.word	1049390600
	.word	1059487855
	.word	3207961337
	.word	1063049093
	.word	3211933683
	.word	1062444693
	.word	3202790242
	.word	3209619961
	.word	3201574673
	.word	3203479143
	.word	1065044396
	.word	1044737031
	.word	3198240010
	.word	1060697857
	.word	3209412880
	.word	1039710588
	.word	1027017767
	.word	1059510063
	.word	1063627313
	.word	1049711286
	.word	1052588117
	.word	3190273791
	.word	3209467063
	.word	1051533378
	.word	1061930525
	.word	1058671447
	.word	3205398765
	.word	1063793681
	.word	3200240667
	.word	1062237830
	.word	3196203778
	.word	1055055476
	.word	3165836319
	.word	1062446206
	.word	1061548240
	.word	1043335403
	.word	1056886442
	.word	1064584462
	.word	1034685788
	.word	3207902033
	.word	1041574121
	.word	3202307650
	.word	1056272031
	.word	3208130751
	.word	3204836585
	.word	3211458158
	.word	3206293812
	.word	3192185230
	.word	3200338078
	.word	3196073717
	.word	1063233035
	.word	1064059688
	.word	3211199604
	.word	1049778283
	.word	3205746286
	.word	3206097392
	.word	3162100246
	.word	1057027119
	.word	1064455665
	.word	1048948727
	.word	1045640590
	.word	3210941413
	.word	1065171805
	.word	1055681624
	.word	1050430899
	.word	1048171527
	.word	3205684813
	.word	1038416476
	.word	3200206641
	.word	1058215598
	.word	3208019870
	.word	3177809528
	.word	1048187401
	.word	3208097179
	.word	3203673827
	.word	3202574911
	.word	3196222435
	.word	3204543528
	.word	3212057546
	.word	3171010376
	.word	1045103571
	.word	1041995186
	.word	3168023095
	.word	3209475480
	.word	3210979776
	.word	1051569777
	.word	1063755765
	.word	3199996620
	.word	1063109796
	.word	1038545269
	.word	3182341879
	.word	3197185009
	.word	3208390087
	.word	1057014451
	.word	3205143419
	.word	1063365054
	.word	3194543259
	.word	3206746465
	.word	3181628212
	.word	3210048160
	.word	3194233439
	.word	1054721286
	.word	1036205562
	.word	1064772729
	.word	1050553293
	.word	1051740733
	.word	1039902956
	.word	3211134143
	.word	3191835985
	.word	1060409847
	.word	3209780240
	.word	1050378360
	.word	1060569412
	.word	3154987655
	.word	3210198074
	.word	1062274665
	.word	1064088115
	.word	1051415334
	.word	3193537344
	.word	3208781637
	.word	1058414254
	.word	1063830639
	.word	3209488511
	.word	1053522960
	.word	3201389013
	.word	3201492554
	.word	3206171329
	.word	3211051625
	.word	1054201359
	.word	3208917080
	.word	3190426537
	.word	1063394210
	.word	3180851555
	.word	1038699304
	.word	3196671959
	.word	3209910678
	.word	1063431322
	.word	3212778536
	.word	3126634218
	.word	1064351390
	.word	3204923563
	.word	1036011619
	.word	3212271419
	.word	1063540547
	.word	3203890736
	.word	1048817939
	.word	3209820662
	.word	1052398314
	.word	1024815845
	.word	1031641936
	.word	3206888467
	.word	1057774601
	.word	3197385929
	.word	3204562007
	.word	3211188858
	.word	3202363656
	.word	1061133951
	.word	3204949630
	.word	1064079190
	.word	3199932911
	.word	3196505788
	.word	3211613535
	.word	3192216859
	.word	3202772251
	.word	3205178545
	.word	1062584588
	.word	3201997945
	.word	3199786072
	.word	1063405047
	.word	1059990889
	.word	3205348228
	.word	1057784126
	.word	3199664409
	.word	1045921510
	.word	1064506161
	.word	3206315207
	.word	1051755112
	.word	1032593997
	.word	3210775861
	.word	3204817232
	.word	3170424830
	.word	3206918199
	.word	1060205552
	.word	3183719705
	.word	3208903945
	.word	3209839079
	.word	3194109236
	.word	1042470013
	.word	1018591436
	.word	1058129591
	.word	1063609785
	.word	1064911960
	.word	3201208205
	.word	3212449831
	.word	3180565730
	.word	1033997450
	.word	3202125664
	.word	1058313132
	.word	3191056460
	.word	3196285924
	.word	3207747795
	.word	1063180114
	.word	1041641018
	.word	1049506847
	.word	1056999422
	.word	1053492733
	.word	3109765068
	.word	3212451054
	.word	1055335786
	.word	1054297355
	.word	3181985511
	.word	1055660035
	.word	1061777442
	.word	1054590797
	.word	1063581993
	.word	3207305370
	.word	3210045981
	.word	3211303225
	.word	1057238263
	.word	1064937711
	.word	3205001125
	.word	1061583234
	.word	3160333316
	.word	1059562008
	.word	1052384835
	.word	1059058053
	.word	1019357051
	.word	3190863443
	.word	1053669826
	.word	1065309449
	.word	3205353712
	.word	3201610396
	.word	3208777329
	.word	3203869982
	.word	1059272722
	.word	3208290239
	.word	1060317559
	.word	3209942929
	.word	1063686497
	.word	3202138027
	.word	1024937818
	.word	3200375020
	.word	1047741444
	.word	1057518599
	.word	3197075328
	.word	3210556266
	.word	3172745536
	.word	3205570426
	.word	1057631128
	.word	1042996525
	.word	1062837981
	.word	1053095451
	.word	3200589338
	.word	1050376398
	.word	3205795426
	.word	1032121839
	.word	3190215964
	.word	3195054319
	.word	3196578692
	.word	3187245209
	.word	1026205362
	.word	1051712720
	.word	3196107616
	.word	3210623953
	.word	3209525652
	.word	3205279526
	.word	3205622963
	.word	3210381255
	.word	3205531570
	.word	1064614083
	.word	3183386150
	.word	3190041266
	.word	3206811944
	.word	1061974865
	.word	1057015804
	.word	1061414718
	.word	1063834489
	.word	1059944078
	.word	3185743899
	.word	3198960269
	.word	3207536352
	.word	1064720464
	.word	1063395377
	.word	1065048194
	.word	3206080527
	.word	1046280407
	.word	3210280966
	.word	1059982628
	.word	1050250423
	.word	3207422966
	.word	3199359393
	.word	1059506196
	.word	3188233885
	.word	1060627263
	.word	1035077452
	.word	1042228421
	.word	3210641062
	.word	3205568522
	.word	3176298139
	.word	3200022013
	.word	3212470710
	.word	3194664690
	.word	1051750537
	.word	3207188104
	.word	1054858686
	.word	990281706
	.word	3182934176
	.word	1062577082
	.word	1040648588
	.word	1038587777
	.word	3201717604
	.word	3198341116
	.word	3208479872
	.word	1054395132
	.word	3197765322
	.word	3203071195
	.word	1060197081
	.word	3205453955
	.word	1015685869
	.word	1058116554
	.word	3200591354
	.word	3199618278
	.word	3209388250
	.word	1063824310
	.word	3197586397
	.word	1062008261
	.word	1045643873
	.word	1060816509
	.word	3179695102
	.word	3196452470
	.word	3209521356
	.word	1034313477
	.word	3148683069
	.word	3208235552
	.word	1063995538
	.word	3211100375
	.word	1063036614
	.word	3209553125
	.word	1047256574
	.word	1050145663
	.word	3199410815
	.word	3196738467
	.word	1024924802
	.word	1058329271
	.word	1064407326
	.word	1060571912
	.word	1057441332
	.word	1060251552
	.word	3206702345
	.word	3203904212
	.word	1058061922
	.word	3204952862
	.word	1052368306
	.word	3209910188
	.word	1063526125
	.word	3212680714
	.word	3202792056
	.word	3206075781
	.word	3203252972
	.word	3211879336
	.word	3210679309
	.word	1047390585
	.word	1062984052
	.word	3204927903
	.word	3198568083
	.word	1058573209
	.word	3212443851
	.word	3201892221
	.word	3210034905
	.word	1045133630
	.word	3190573139
	.word	1062720314
	.word	1035657524
	.word	1056480445
	.word	3184940154
	.word	3206519593
	.word	3209610833
	.word	1060953940
	.word	1055500439
	.word	3202123047
	.word	3191962920
	.word	3209950919
	.word	1019854354
	.word	1063528284
	.word	1063853347
	.word	1051771593
	.word	3206137426
	.word	1062554476
	.word	1046143253
	.word	3182521631
	.word	3206434428
	.word	1062996472
	.word	1061158556
	.word	3198904074
	.word	1048048536
	.word	3192453776
	.word	1058840131
	.word	1059566035
	.word	3206189053
	.word	1058888191
	.word	1041472206
	.word	1064680955
	.word	1056461620
	.word	3205525862
	.word	3201251061
	.word	1026904458
	.word	1064170198
	.word	1053924117
	.word	1057418494
	.word	1063660186
	.word	3211717149
	.word	1049084668
	.word	3210459547
	.word	3210672509
	.word	1052094792
	.word	1008518346
	.word	1054607106
	.word	1059475623
	.word	3208550837
	.word	3212291603
	.word	1057915937
	.word	1057554001
	.word	3206788717
	.word	3206202926
	.word	1034143347
	.word	3189756434
	.word	3199358341
	.word	1046417044
	.word	1057730360
	.word	3197848693
	.word	3203549691
	.word	3195367629
	.word	1036811828
	.word	3212211646
	.word	1063184660
	.word	1055776062
	.word	1044181114
	.word	1057966708
	.word	1032832963
	.word	1059191194
	.word	1046088324
	.word	3202925115
	.word	3206003153
	.word	1049839324
	.word	3203015270
	.word	3201881109
	.word	3179950344
	.word	1048047925
	.word	1056581481
	.word	3203259347
	.word	3200673908
	.word	3211403848
	.word	3196254370
	.word	1064367844
	.word	1060156958
	.word	1050334162
	.word	3191258776
	.word	3211985923
	.word	1042565744
	.word	3212343315
	.word	3158556875
	.word	3193136403
	.word	1046672820
	.word	3209813634
	.word	1049032823
	.word	1058917077
	.word	3206073289
	.word	3186820034
	.word	1055560992
	.word	3173255377
	.word	1064253722
	.word	3210369552
	.word	1016921436
	.word	1050204557
	.word	3210445970
	.word	3160889061
	.word	3199919325
	.word	1055319261
	.word	1051977852
	.word	3200657946
	.word	3212568344
	.word	1058819020
	.word	3174478123
	.word	1046342484
	.word	3207414791
	.word	1025372957
	.word	1044716063
	.word	3197361884
	.word	1048024000
	.word	3202590641
	.word	1057557166
	.word	1052762692
	.word	1044305479
	.word	1032829777
	.word	3202862916
	.word	3199445904
	.word	3198843451
	.word	1043831528
	.word	1064583170
	.word	3207601702
	.word	1058834497
	.word	3207749837
	.word	3205313398
	.word	1059589148
	.word	3206155830
	.word	3196584987
	.word	3204931799
	.word	1042106783
	.word	1057211893
	.word	3176403994
	.word	3207119974
	.word	3202873055
	.word	3176353425
	.word	1064656607
	.word	1018522122
	.word	3190017209
	.word	1062270631
	.word	1048256842
	.word	3183239703
	.word	1064466886
	.word	1062782490
	.word	1048381729
	.word	3209514521
	.word	3194380411
	.word	1040529642
	.word	1056891326
	.word	1050526846
	.word	3176916883
	.word	3204180562
	.word	1044478228
	.word	3201122812
	.word	1050735902
	.word	1058954063
	.word	1062501949
	.word	3194630238
	.word	1062196670
	.word	1035813131
	.word	1049369647
	.word	3179262966
	.word	3204510281
	.word	1057141526
	.word	1051657073
	.word	3202350666
	.word	1012640309
	.word	1058874493
	.word	1061007005
	.word	1040879382
	.word	1055784573
	.word	3212400033
	.word	3204773537
	.word	1059170296
	.word	3211778850
	.word	1045802922
	.word	3183590968
	.word	1057981093
	.word	1047295950
	.word	3206753588
	.word	3207454317
	.word	3201384624
	.word	3182134084
	.word	3211344880
	.word	1065115238
	.word	3193295298
	.word	1061024137
	.word	1042722284
	.word	1060617052
	.word	1056654832
	.word	3210078109
	.word	3210798704
	.word	3212110878
	.word	3153919713
	.word	1052106862
	.word	1045414447
	.word	3202135643
	.word	1037762897
	.word	1052082238
	.word	3206455211
	.word	1044755197
	.word	3185094474
	.word	1041987811
	.word	3188751152
	.word	1062795863
	.word	3207076976
	.word	3210836257
	.word	3201821415
	.word	1060014073
	.word	1059207935
	.word	1064465036
	.word	3212151055
	.word	3180162564
	.word	3209566354
	.word	1046999059
	.word	3201587150
	.word	1048065897
	.word	3210015588
	.word	1006698907
	.word	3210499666
	.word	3200801604
	.word	3177233771
	.word	3212718092
	.word	1036505026
	.word	1063585415
	.word	1061459557
	.word	3196424679
	.word	1053859395
	.word	1041240240
	.word	1060949110
	.word	3206981096
	.word	1047274978
	.word	3184139454
	.word	1036791028
	.word	3207454281
	.word	3208813255
	.word	3206358186
	.word	3207671803
	.word	3183229826
	.word	1020567365
	.word	1055748723
	.word	3210476765
	.word	1050206752
	.word	3205978944
	.word	3212752724
	.word	3176835376
	.word	1057719234
	.word	1059522846
	.word	1063634367
	.word	3199087643
	.word	1057102808
	.word	3206327081
	.word	3201091218
	.word	3208785074
	.word	3189279019
	.word	1063595492
	.word	3210664012
	.word	3190876420
	.word	3207010186
	.word	1061736889
	.word	3202049258
	.word	3199323361
	.word	3182935757
	.word	1061338208
	.word	3182485670
	.word	3202889463
	.word	1060540049
	.word	3204950136
	.word	3188309097
	.word	3205974241
	.word	3200172866
	.word	1059426340
	.word	3209641065
	.word	1018813130
	.word	3193330904
	.word	3208427309
	.word	1052465519
	.word	1059615734
	.word	1060890181
	.word	3205789194
	.word	1064913891
	.word	1064243835
	.word	3212589148
	.word	3184734973
	.word	3209452976
	.word	3186960403
	.word	1045619311
	.word	1038320194
	.word	1054233227
	.word	1050559479
	.word	1035023134
	.word	3197105677
	.word	3189914285
	.word	1042312895
	.word	1058788142
	.word	3187624706
	.word	3200155330
	.word	1057899952
	.word	3203834726
	.word	1053978668
	.word	1049100674
	.word	1042835937
	.word	1054524959
	.word	3201350034
	.word	1027456549
	.word	1009974906
	.word	1036156898
	.word	1046783652
	.word	1060465201
	.word	1062181104
	.word	3197697503
	.word	1051838003
	.word	1061632452
	.word	3212522438
	.word	3206616397
	.word	3211977638
	.word	3176746329
	.word	3207217269
	.word	1061611793
	.word	3206201343
	.word	3211265857
	.word	1057696378
	.word	3204474216
	.word	1058168957
	.word	1063147205
	.word	1061712701
	.word	1058170393
	.word	1027668914
	.word	1053690820
	.word	1059671665
	.word	1020236266
	.word	1060657965
	.word	3203737083
	.word	1065179388
	.word	1057612453
	.word	3197160593
	.word	1063480878
	.word	1039324773
	.word	1058047215
	.word	1065156858
	.word	1057126317
	.word	3209443472
	.word	1024774536
	.word	1064989416
	.word	3203890179
	.word	1063324029
	.word	1059188257
	.word	1060700521
	.word	1058288654
	.word	3196083862
	.word	1057542332
	.word	3173365267
	.word	1006893615
	.word	1062689176
	.word	3208336737
	.word	1060550887
	.word	1062505296
	.word	1054836038
	.word	1058089090
	.word	1065083793
	.word	3196178718
	.word	1059432621
	.word	1054783380
	.word	1040579154
	.word	3209064284
	.word	1047563816
	.word	3204395570
	.word	3196850568
	.word	1048406042
	.word	3212340203
	.word	1064947809
	.word	3199344510
	.word	3205335039
	.word	3210946680
	.word	3205677540
	.word	1063857744
	.word	3209602831
	.word	3204850433
	.word	3196515638
	.word	1058492279
	.word	3198414113
	.word	1060769611
	.word	3208332217
	.word	3211867569
	.word	1049199210
	.word	1052949757
	.word	3197218616
	.word	1039177845
	.word	3209774057
	.word	1033271230
	.word	3206576962
	.word	3210707282
	.word	3204929356
	.word	1056637637
	.word	1053546843
	.word	3211349062
	.word	3210661702
	.word	1062913598
	.word	1060929896
	.word	1064484707
	.word	3131452021
	.word	1063770138
	.word	3212258060
	.word	1034568104
	.word	3211036891
	.word	3196997763
	.word	1050689521
	.word	1056436762
	.word	3199950638
	.word	1043741250
	.word	1063906630
	.word	3211117832
	.word	1056061188
	.word	1063896787
	.word	3154788906
	.word	1064894853
	.word	3210421928
	.word	1049046004
	.word	3188573307
	.word	3200629608
	.word	3197289683
	.word	3194798045
	.word	1063966843
	.word	3196774946
	.word	3196149966
	.word	1063570516
	.word	1057173703
	.word	1065003497
	.word	3203517885
	.word	1047822203
	.word	3207337870
	.word	3210266312
	.word	1035189051
	.word	1056731593
	.word	3197368684
	.word	1054161601
	.word	3181564823
	.word	3203666174
	.word	3202115283
	.word	3207835157
	.word	1060734186
	.word	1065098237
	.word	1061969007
	.word	973450365
	.word	3182331853
	.word	3207966843
	.word	3198835779
	.word	3208493577
	.word	1060816800
	.word	1056974306
	.word	1057314631
	.word	1058066511
	.word	3200882814
	.word	3205603636
	.word	1058166768
	.word	3209781749
	.word	3209368484
	.word	1058892552
	.word	1061383984
	.word	1055289375
	.word	3208431767
	.word	1062688756
	.word	1063579463
	.word	3196940864
	.word	3209458327
	.word	3197099642
	.word	1062353034
	.word	3203584284
	.word	3192035787
	.word	1032309251
	.word	1063409778
	.word	3190155621
	.word	3212218375
	.word	3205827567
	.word	3198694895
	.word	3211803483
	.word	3163327681
	.word	3208261060
	.word	1054277600
	.word	3199804062
	.word	1056192503
	.word	3189091176
	.word	1054676794
	.word	3200137480
	.word	3211839760
	.word	1042885421
	.word	1061684400
	.word	1030740950
	.word	1058194371
	.word	3200383805
	.word	1057352826
	.word	1053126169
	.word	3195112972
	.word	1049777749
	.word	3187260507
	.word	1059004023
	.word	3182449690
	.word	3206580604
	.word	3198142816
	.word	3204263398
	.word	3212621903
	.word	3181691303
	.word	1056843834
	.word	3210350668
	.word	3209337108
	.word	3210625196
	.word	3194502365
	.word	3198923166
	.word	3196957763
	.word	3200954435
	.word	3208483665
	.word	3190543264
	.word	1058527058
	.word	1051487958
	.word	1048501654
	.word	1064516373
	.word	3209401169
	.word	3205702036
	.word	3209862089
	.word	1064911951
	.word	1040198569
	.word	1058443525
	.word	1040432658
	.word	3193993213
	.word	3196766071
	.word	1040062736
	.word	3206431486
	.word	3208921394
	.word	3203721474
	.word	3202665641
	.word	1064984443
	.word	3206579651
	.word	1043161905
	.word	3208039920
	.word	1053142802
	.word	3199758212
	.word	3195173658
	.word	3198127800
	.word	1027983999
	.word	3203686662
	.word	3202010496
	.word	1053285447
	.word	1058840142
	.word	3206936186
	.word	3199276566
	.word	1057120646
	.word	3160996899
	.word	3205626823
	.word	3179338511
	.word	3208437979
	.word	1056889113
	.word	3208838016
	.word	3209292788
	.word	3212744544
	.word	3212624536
	.word	1059601181
	.word	3208872547
	.word	3180683117
	.word	1027242780
	.word	3184573186
	.word	1055548753
	.word	1010883946
	.word	3196869155
	.word	3211993621
	.word	1061362053
	.word	1053781995
	.word	3208362890
	.word	3208018026
	.word	3209346324
	.word	1055086362
	.word	1000755576
	.word	3211170855
	.word	3205724253
	.word	3211979473
	.word	3210029450
	.word	3212715296
	.word	3179941266
	.word	1058130526
	.word	3212203844
	.word	3204102673
	.word	1064893965
	.word	3209102263
	.word	1038924221
	.word	1033214374
	.word	1057360290
	.word	1059633113
	.word	1040804675
	.word	3209445065
	.word	3190546173
	.word	3207172001
	.word	3205078146
	.word	3206501008
	.word	3209310120
	.word	1065106593
	.word	1063045507
	.word	1064903486
	.word	1041790171
	.word	1049704084
	.word	1057107268
	.word	3195802440
	.word	3196379861
	.word	3209112811
	.word	1040454393
	.word	3211511109
	.word	3186506679
	.word	3196444598
	.word	1061535544
	.word	3207749241
	.word	1065030739
	.word	3194558890
	.word	3203525300
	.word	3205597828
	.word	3189462140
	.word	3184717926
	.word	1055781886
	.word	3210137658
	.word	3171231364
	.word	3191403560
	.word	1012444978
	.word	3206900640
	.word	1062366601
	.word	1059606243
	.word	1061768179
	.word	3202391977
	.word	1060365200
	.word	1063003691
	.word	3204536863
	.word	3195168587
	.word	3207777956
	.word	3208582480
	.word	3193925930
	.word	3209627638
	.word	3211994878
	.word	1043675399
	.word	1060722050
	.word	3188627592
	.word	3200664135
	.word	3210654911
	.word	3200991446
	.word	1020380078
	.word	3205556807
	.word	3190124846
	.word	3208410864
	.word	3193079599
	.word	3206612457
	.word	3168422211
	.word	3199218035
	.word	3194650617
	.word	3203434461
	.word	1048852803
	.word	1042565927
	.word	1029216898
	.word	1048977337
	.word	3205640605
	.word	1053989463
	.word	3189026998
	.word	1048530670
	.word	1042797229
	.word	1059479776
	.word	1041668979
	.word	3194523137
	.word	1063128393
	.word	3180747466
	.word	1028207334
	.word	1024701102
	.word	1043987104
	.word	1030256608
	.word	3210437336
	.word	3195557083
	.word	3206541558
	.word	3209366685
	.word	3196100200
	.word	3210038295
	.word	1052541008
	.word	1064342058
	.word	1050448210
	.word	3206106356
	.word	3177950138
	.word	1052647148
	.word	3194574711
	.word	1060446544
	.word	1061917012
	.word	1056154194
	.word	1062490378
	.word	1053789907
	.word	1046111961
	.word	1061449813
	.word	1057384970
	.word	1048892670
	.word	3204856657
	.word	3208332442
	.word	3194926769
	.word	1047768837
	.word	3211729321
	.word	1057585590
	.word	1056924996
	.word	3201351634
	.word	1053032747
	.word	3201659705
	.word	1033976694
	.word	3179322343
	.word	3198411993
	.word	3210220740
	.word	1041074680
	.word	3207412210
	.word	3212183287
	.word	1062539150
	.word	3211251935
	.word	3186220324
	.word	3200310898
	.word	1053284463
	.word	1064567088
	.word	1065075184
	.word	3182915537
	.word	3207494044
	.word	1059936382
	.word	3210617504
	.word	3209694807
	.word	3193543733
	.word	3212669131
	.word	3180058956
	.word	1040476680
	.word	3206524374
	.word	3197253523
	.word	1047611383
	.word	3206326855
	.word	1057622103
	.word	1064850884
	.word	1063708115
	.word	1043079437
	.word	3207245207
	.word	1064776294
	.word	1059498547
	.word	1060110368
	.word	1061303436
	.word	3210142377
	.word	3205333674
	.word	3204933818
	.word	1043526807
	.word	1048145544
	.word	1058456323
	.word	3197968835
	.word	1064036876
	.word	3166123991
	.word	3184638871
	.word	1058853351
	.word	1062598549
	.word	3202338302
	.word	1055465263
	.word	1050637434
	.word	3206947933
	.word	1051824869
	.word	3206664194
	.word	3206120586
	.word	3207028978
	.word	1056437981
	.word	1061696560
	.word	1064698697
	.word	1059098153
	.word	1064482354
	.word	3191715583
	.word	1058684104
	.word	3210921373
	.word	3135955609
	.word	3191058457
	.word	1027404019
	.word	3211125821
	.word	1048787757
	.word	3208364429
	.word	3208476326
	.word	1064794946
	.word	1051195158
	.word	3196658749
	.word	1059825892
	.word	3199623273
	.word	1033206261
	.word	3206034218
	.word	1057299571
	.word	1031894476
	.word	3210797340
	.word	3204379333
	.word	1014549557
	.word	3193914638
	.word	1057765237
	.word	3183181657
	.word	3197044273
	.word	3194627201
	.word	1036889952
	.word	1062031740
	.word	1043598693
	.word	1029818563
	.word	1064317178
	.word	1059301650
	.word	3197450869
	.word	3210379054
	.word	3206206999
	.word	1022286585
	.word	3211705666
	.word	3206482243
	.word	1053711181
	.word	3209644086
	.word	1064792956
	.word	3192654168
	.word	3205132904
	.word	3160958037
	.word	1038788730
	.word	1055853598
	.word	3189041082
	.word	3210265041
	.word	3210844355
	.word	3201455158
	.word	3206758443
	.word	3192460334
	.word	1044768748
	.word	3196347921
	.word	3190892515
	.word	1056230483
	.word	1064578443
	.word	1064848490
	.word	1040624664
	.word	3204442540
	.word	1050956780
	.word	3194514848
	.word	1061442214
	.word	1059436067
	.word	3209021636
	.word	1061538848
	.word	3211769122
	.word	3207331302
	.word	3206044223
	.word	1051432575
	.word	1059463816
	.word	3209370302
	.word	3212227234
	.word	1063915557
	.word	3201014400
	.word	1062052132
	.word	3197436692
	.word	3199076823
	.word	3193282750
	.word	1049521471
	.word	3210037715
	.word	1048930157
	.word	3205799455
	.word	1063986898
	.word	1059336377
	.word	1062457117
	.word	3201503227
	.word	3204755539
	.word	1054392885
	.word	1033842619
	.word	1053412113
	.word	1058805159
	.word	1049068211
	.word	3203124725
	.word	3182421894
	.word	3197126060
	.word	3191347111
	.word	3147002861
	.word	1062059905
	.word	3189689274
	.word	3137804405
	.word	1032291778
	.word	3208432999
	.word	1058980930
	.word	1038811755
	.word	1057730707
	.word	1059675835
	.word	3205996464
	.word	1058797351
	.word	3212313096
	.word	3207267975
	.word	1045684652
	.word	1036180365
	.word	1049199445
	.word	3174586216
	.word	3211722686
	.word	1047674761
	.word	1032654210
	.word	1064181549
	.word	1054815563
	.word	1057530997
	.word	1052544887
	.word	3206164783
	.word	1060479714
	.word	3190577117
	.word	1040567958
	.word	3207094629
	.word	1038849053
	.word	1043457474
	.word	3207496196
	.word	3205098978
	.word	1056342431
	.word	1012932633
	.word	3205623757
	.word	1044427803
	.word	3199511369
	.word	3212487484
	.word	1046811230
	.word	1065256252
	.word	3189200798
	.word	1046457208
	.word	3187006773
	.word	3159143250
	.word	3206883215
	.word	3204500646
	.word	1057537097
	.word	1058973025
	.word	3195002566
	.word	1065137536
	.word	1048954652
	.word	1062867287
	.word	1061159242
	.word	3211597944
	.word	1055265281
	.word	1061712750
	.word	3203080180
	.word	3194642162
	.word	1049284298
	.word	3207402482
	.word	1061714480
	.word	1059247883
	.word	3208711520
	.word	3205226486
	.word	1025378107
	.word	3208960507
	.word	3206874657
	.word	1007802340
	.word	3181531547
	.word	3212668768
	.word	1058693626
	.word	1049610675
	.word	3206708427
	.word	3208016257
	.word	3201902478
	.word	3202331768
	.word	1055869593
	.word	1063805358
	.word	1061806799
	.word	3189498931
	.word	3212216852
	.word	1063799534
	.word	1062112993
	.word	1060307809
	.word	1037887921
	.word	1040345819
	.word	3204492645
	.word	3204645290
	.word	3187224460
	.word	3206067713
	.word	1053950755
	.word	3210368765
	.word	1049548146
	.word	1020599998
	.word	1065312254
	.word	3204422951
	.word	3202809769
	.word	3210851171
	.word	1065134394
	.word	3187980297
	.word	1064276606
	.word	3206948421
	.word	1057810795
	.word	1049545345
	.word	1013037223
	.word	3207143785
	.word	3201653478
	.word	3197834780
	.word	1043922500
	.word	3211296648
	.word	1049584530
	.word	3207133043
	.word	3209451347
	.word	1063701922
	.word	3206271989
	.word	1050886565
	.word	1063239383
	.word	3181846763
	.word	1065045712
	.word	3199053868
	.word	1057966509
	.word	1053285818
	.word	3198052260
	.word	1064624467
	.word	3206524174
	.word	3192477872
	.word	3207838529
	.word	1050022155
	.word	3206413744
	.word	1062989600
	.word	1059666004
	.word	1033443678
	.word	3197147382
	.word	3207257794
	.word	3202805094
	.word	3203257700
	.word	1058497868
	.word	1057847909
	.word	3195550044
	.word	1041722626
	.word	3150347346
	.word	3210331159
	.word	3207131892
	.word	3190387296
	.word	1045499080
	.word	3207229370
	.word	3208074730
	.word	1054195946
	.word	1055225985
	.word	1060887856
	.word	3190706258
	.word	3199308051
	.word	1064616002
	.word	1023494034
	.word	1057116058
	.word	3189202879
	.word	1060612374
	.word	3189567408
	.word	3205894297
	.word	1039815345
	.word	3210907468
	.word	3199909338
	.word	1035086798
	.word	3209372909
	.word	1057530810
	.word	3210366492
	.word	1050077630
	.word	1040976879
	.word	1062636562
	.word	1061917655
	.word	3209112415
	.word	3196426222
	.word	3197863506
	.word	1049372113
	.word	1057475924
	.word	1035044185
	.word	1032506143
	.word	1060728634
	.word	3212412573
	.word	1061860840
	.word	1048426230
	.word	1065008126
	.word	3200656355
	.word	1032000624
	.word	3147169001
	.word	1052651372
	.word	1059441764
	.word	1049190212
	.word	3198422840
	.word	1035859026
	.word	1048777663
	.word	1060997787
	.word	3207080152
	.word	1062392613
	.word	3209823347
	.word	3202881274
	.word	1061733336
	.word	1063890106
	.word	1036824943
	.word	3193551180
	.word	1015775368
	.word	3205942475
	.word	3190813991
	.word	3204866313
	.word	1064707768
	.word	1037001441
	.word	1064370996
	.word	3212287011
	.word	1058923877
	.word	3211391056
	.word	1049398380
	.word	1064089109
	.word	3210593799
	.word	1047068863
	.word	1035591433
	.word	3187838752
	.word	3211864983
	.word	3186921993
	.word	1059888610
	.word	1063362239
	.word	1048327040
	.word	1029721288
	.word	3203202813
	.word	1063490437
	.word	1059759416
	.word	1047798692
	.word	3197060988
	.word	1062924887
	.word	1050733780
	.word	3191942847
	.word	3206282088
	.word	1043170642
	.word	1049100049
	.word	3211887668
	.word	1056733709
	.word	3200628008
	.word	1009402694
	.word	1061220616
	.word	1052379496
	.word	3197288415
	.word	3206517440
	.word	1044144581
	.word	3187574261
	.word	3207600516
	.word	3204599290
	.word	3207900500
	.word	1058652163
	.word	1062249251
	.word	1045150698
	.word	1056222955
	.word	1061292422
	.word	1058940225
	.word	3199535547
	.word	1054269807
	.word	3210497866
	.word	3166613870
	.word	3209312827
	.word	3211045002
	.word	1058826820
	.word	1062792570
	.word	3212661598
	.word	3200007386
	.word	1061017375
	.word	3211555007
	.word	3205793356
	.word	1058257997
	.word	3211341560
	.word	3211284956
	.word	1060192079
	.word	1062177191
	.word	3206270200
	.word	1061347733
	.word	1029684603
	.word	3200890024
	.word	3186480238
	.word	3171954536
	.word	1052761653
	.word	3211617900
	.word	1064334861
	.word	3212330724
	.word	3175640660
	.word	3205903166
	.word	1019278491
	.word	1053236140
	.word	3180671361
	.word	1054222555
	.word	3205694624
	.word	3209145240
	.word	3210071823
	.word	1063989519
	.word	3208909150
	.word	3211751557
	.word	3180972316
	.word	3196269247
	.word	1060217139
	.word	1058521538
	.word	1062614224
	.word	3209514195
	.word	1031007548
	.word	1042427254
	.word	3202078131
	.word	3202788358
	.word	3190645116
	.word	1054291815
	.word	3211206758
	.word	3207043304
	.word	1064376819
	.word	3201463073
	.word	3202951103
	.word	1058346568
	.word	3196937113
	.word	1042823187
	.word	3212169782
	.word	1058475485
	.word	3212756093
	.word	3197261224
	.word	3209348313
	.word	3202975998
	.word	3210558001
	.word	1061976722
	.word	3204744768
	.word	1057351936
	.word	1053568383
	.word	1063821073
	.word	3202262083
	.word	3196966441
	.word	1058236321
	.word	3173885595
	.word	3198661148
	.word	3201133780
	.word	3194890446
	.word	1058267028
	.word	3208362216
	.word	3197653475
	.word	1042975221
	.word	3206911631
	.word	1023414542
	.word	1061228454
	.word	3211301746
	.word	1050769762
	.word	1052476456
	.word	1063137010
	.word	3206350657
	.word	1006179781
	.word	1064571803
	.word	3209691994
	.word	1060907236
	.word	1061691100
	.word	3207031518
	.word	1058853519
	.word	3197648783
	.word	3201413565
	.word	3188943574
	.word	3209731202
	.word	1052237856
	.word	1052163793
	.word	3210696359
	.word	1060602745
	.word	3200251165
	.word	3180319458
	.word	1051255101
	.word	1036242700
	.word	3211788760
	.word	3198485415
	.word	1061686471
	.word	3209651571
	.word	3189368564
	.word	1062784778
	.word	3187880707
	.word	3208686377
	.word	1062668808
	.word	3180365380
	.word	968892864
	.word	1033986761
	.word	3195794783
	.word	3189794707
	.word	3203131323
	.word	1059011787
	.word	1060703779
	.word	3196323834
	.word	3198066545
	.word	1061414742
	.word	3205342751
	.word	3206339766
	.word	1052066243
	.word	1064066292
	.word	1059157322
	.word	3189264884
	.word	3209847192
	.word	1052543743
	.word	1053790897
	.word	3209535653
	.word	3202092015
	.word	3208203625
	.word	3212231628
	.word	1044608717
	.word	1056193127
	.word	3207154126
	.word	1049302233
	.word	3211427479
	.word	1044990008
	.word	1052883015
	.word	1058374175
	.word	3172648434
	.word	3198655962
	.word	1062849119
	.word	1061990587
	.word	3185809025
	.word	1057393891
	.word	3201243344
	.word	3188308368
	.word	1035357273
	.word	3209742485
	.word	3211497472
	.word	3199753306
	.word	3205391788
	.word	3194112021
	.word	3205648335
	.word	1058194918
	.word	3188265776
	.word	3212537061
	.word	3199500268
	.word	1050880651
	.word	3209329208
	.word	1060171884
	.word	1062098676
	.word	3212528825
	.word	1053850760
	.word	1063981677
	.word	1061609886
	.word	3202360267
	.word	3200593440
	.word	1010608748
	.word	1060105715
	.word	1065227804
	.word	1055991641
	.word	3210715247
	.word	3205470376
	.word	3208242454
	.word	3205101594
	.word	1061528976
	.word	1062979084
	.word	3190613719
	.global	__aeabi_idiv
	.global	__aeabi_idivmod
	.text
	.align	2
	.global	wrap
	.syntax unified
	.arm
	.fpu softvfp
	.type	wrap, %function
wrap:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-20]
	sub	r3, r2, r3
	add	r3, r3, #1
	str	r3, [fp, #-8]
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	bge	.L13
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-16]
	sub	r3, r2, r3
	ldr	r1, [fp, #-8]
	mov	r0, r3
	bl	__aeabi_idiv
	mov	r3, r0
	add	r3, r3, #1
	ldr	r2, [fp, #-8]
	mul	r3, r2, r3
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-16]
.L13:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-20]
	sub	r3, r2, r3
	ldr	r1, [fp, #-8]
	mov	r0, r3
	bl	__aeabi_idivmod
	mov	r3, r1
	mov	r2, r3
	ldr	r3, [fp, #-20]
	add	r3, r2, r3
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	wrap, .-wrap
	.align	2
	.global	fxp_get_int_part
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_get_int_part, %function
fxp_get_int_part:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bge	.L16
	ldr	r3, [fp, #-8]
	rsb	r2, r3, #0
	ldr	r3, .L19
	ldr	r3, [r3]
	and	r3, r3, r2
	rsb	r3, r3, #0
	b	.L18
.L16:
	ldr	r3, .L19
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	and	r3, r3, r2
.L18:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L20:
	.align	2
.L19:
	.word	_fxp_imask
	.size	fxp_get_int_part, .-fxp_get_int_part
	.align	2
	.global	fxp_get_frac_part
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_get_frac_part, %function
fxp_get_frac_part:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bge	.L22
	ldr	r3, [fp, #-8]
	rsb	r2, r3, #0
	ldr	r3, .L25
	ldr	r3, [r3]
	and	r3, r3, r2
	rsb	r3, r3, #0
	b	.L24
.L22:
	ldr	r3, .L25
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	and	r3, r3, r2
.L24:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L26:
	.align	2
.L25:
	.word	_fxp_fmask
	.size	fxp_get_frac_part, .-fxp_get_frac_part
	.align	2
	.global	fxp_quantize
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_quantize, %function
fxp_quantize:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, .L33
	ldr	r3, [r3]
	cmp	r3, #2
	bne	.L28
	ldr	r3, .L33+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	bge	.L29
	ldr	r3, .L33+4
	ldr	r3, [r3]
	b	.L30
.L29:
	ldr	r3, .L33+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	ble	.L31
	ldr	r3, .L33+8
	ldr	r3, [r3]
	b	.L30
.L28:
	ldr	r3, .L33
	ldr	r3, [r3]
	cmp	r3, #3
	bne	.L31
	ldr	r3, .L33+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	blt	.L32
	ldr	r3, .L33+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	ble	.L31
.L32:
	ldr	r3, .L33+4
	ldr	r3, [r3]
	ldr	r2, .L33+8
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, [fp, #-8]
	bl	wrap
	mov	r3, r0
	b	.L30
.L31:
	ldr	r3, [fp, #-8]
.L30:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L34:
	.align	2
.L33:
	.word	overflow_mode
	.word	_fxp_min
	.word	_fxp_max
	.size	fxp_quantize, .-fxp_quantize
	.section	.rodata
	.align	2
.LC3:
	.ascii	"An Overflow Occurred in system's output\000"
	.text
	.align	2
	.global	fxp_verify_overflow
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_verify_overflow, %function
fxp_verify_overflow:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	fxp_quantize
	ldr	r0, .L38
	bl	printf
	ldr	r3, .L38+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	bgt	.L36
	ldr	r3, .L38+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	blt	.L36
	mov	r3, #1
	b	.L37
.L36:
	mov	r3, #0
.L37:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L39:
	.align	2
.L38:
	.word	.LC3
	.word	_fxp_max
	.word	_fxp_min
	.size	fxp_verify_overflow, .-fxp_verify_overflow
	.align	2
	.global	fxp_verify_overflow_node
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_verify_overflow_node, %function
fxp_verify_overflow_node:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r1, [fp, #-12]
	ldr	r0, .L43
	bl	printf
	ldr	r3, .L43+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	bgt	.L41
	ldr	r3, .L43+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	blt	.L41
	mov	r3, #1
	b	.L42
.L41:
	mov	r3, #0
.L42:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L44:
	.align	2
.L43:
	.word	.LC2
	.word	_fxp_max
	.word	_fxp_min
	.size	fxp_verify_overflow_node, .-fxp_verify_overflow_node
	.align	2
	.global	fxp_verify_overflow_array
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_verify_overflow_array, %function
fxp_verify_overflow_array:
	@ 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]
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L46
.L47:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	fxp_verify_overflow
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L46:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	blt	.L47
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fxp_verify_overflow_array, .-fxp_verify_overflow_array
	.align	2
	.global	fxp_int_to_fxp
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_int_to_fxp, %function
fxp_int_to_fxp:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	ldr	r3, .L50
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	mul	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L51:
	.align	2
.L50:
	.word	_fxp_one
	.size	fxp_int_to_fxp, .-fxp_int_to_fxp
	.align	2
	.global	fxp_to_int
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_to_int, %function
fxp_to_int:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L53
	ldr	r3, .L56
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	b	.L54
.L53:
	ldr	r3, .L56
	ldr	r3, [r3]
	ldr	r2, [fp, #-8]
	sub	r3, r2, r3
	str	r3, [fp, #-8]
.L54:
	ldr	r3, .L56+4
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-8]
	asr	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L57:
	.align	2
.L56:
	.word	_fxp_half
	.word	impl
	.size	fxp_to_int, .-fxp_to_int
	.global	__aeabi_f2d
	.global	__aeabi_dmul
	.global	__aeabi_fcmpge
	.global	__aeabi_dadd
	.global	__aeabi_d2iz
	.global	__aeabi_dsub
	.align	2
	.global	fxp_float_to_fxp
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_float_to_fxp, %function
fxp_float_to_fxp:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]	@ float
	ldr	r0, [fp, #-24]	@ float
	bl	__aeabi_f2d
	ldr	r3, .L65
	ldr	r3, [r3, #4]
	ldr	r2, .L65+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r1, #0
	ldr	r0, [fp, #-24]	@ float
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L64
	mov	r2, #0
	ldr	r3, .L65+8
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-16]
	b	.L61
.L64:
	mov	r2, #0
	ldr	r3, .L65+8
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-16]
.L61:
	ldr	r3, [fp, #-16]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L66:
	.align	2
.L65:
	.word	impl
	.word	scale_factor
	.word	1071644672
	.size	fxp_float_to_fxp, .-fxp_float_to_fxp
	.global	__aeabi_dcmpge
	.global	__aeabi_i2d
	.global	__aeabi_dcmplt
	.global	__aeabi_dcmpeq
	.align	2
	.global	fxp_double_to_fxp
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_double_to_fxp, %function
fxp_double_to_fxp:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	ldr	r3, .L80
	ldr	r3, [r3, #4]
	ldr	r2, .L80+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, .L80+8
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L68
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L79
	mov	r2, #0
	ldr	r3, .L80+12
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-24]
	b	.L71
.L79:
	mov	r2, #0
	ldr	r3, .L80+12
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-24]
	b	.L71
.L68:
	ldr	r3, .L80+8
	ldr	r3, [r3]
	cmp	r3, #1
	bne	.L72
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L71
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L71
	mov	r2, #0
	ldr	r3, .L80+16
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-24]
	b	.L71
.L72:
	ldr	r3, .L80+8
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L71
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-24]
.L71:
	ldr	r3, [fp, #-24]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L81:
	.align	2
.L80:
	.word	impl
	.word	scale_factor
	.word	rounding_mode
	.word	1071644672
	.word	1072693248
	.size	fxp_double_to_fxp, .-fxp_double_to_fxp
	.align	2
	.global	fxp_float_to_fxp_array
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_float_to_fxp_array, %function
fxp_float_to_fxp_array:
	@ 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, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L83
.L84:
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldr	r1, [r3]	@ float
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r4, r2, r3
	mov	r0, r1
	bl	fxp_float_to_fxp
	mov	r3, r0
	str	r3, [r4]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L83:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	blt	.L84
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	fxp_float_to_fxp_array, .-fxp_float_to_fxp_array
	.align	2
	.global	fxp_double_to_fxp_array
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_double_to_fxp_array, %function
fxp_double_to_fxp_array:
	@ 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, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L86
.L87:
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-16]
	lsl	r1, r1, #2
	ldr	r0, [fp, #-28]
	add	r4, r0, r1
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r3, r0
	str	r3, [r4]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L86:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	blt	.L87
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	fxp_double_to_fxp_array, .-fxp_double_to_fxp_array
	.global	__aeabi_d2f
	.align	2
	.global	fxp_to_float
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_to_float, %function
fxp_to_float:
	@ 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]
	ldr	r3, [fp, #-16]
	str	r3, [fp, #-12]
	ldr	r0, [fp, #-12]
	bl	__aeabi_i2d
	ldr	r3, .L90
	ldr	r3, [r3, #4]
	ldr	r2, .L90+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	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}
.L91:
	.align	2
.L90:
	.word	impl
	.word	scale_factor_inv
	.size	fxp_to_float, .-fxp_to_float
	.align	2
	.global	fxp_to_double
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_to_double, %function
fxp_to_double:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	__aeabi_i2d
	ldr	r3, .L94
	ldr	r3, [r3, #4]
	ldr	r2, .L94+4
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L95:
	.align	2
.L94:
	.word	impl
	.word	scale_factor_inv
	.size	fxp_to_double, .-fxp_to_double
	.align	2
	.global	fxp_to_float_array
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_to_float_array, %function
fxp_to_float_array:
	@ 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, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L97
.L98:
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-24]
	add	r4, r2, r3
	mov	r0, r1
	bl	fxp_to_float
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L97:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	blt	.L98
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	fxp_to_float_array, .-fxp_to_float_array
	.align	2
	.global	fxp_to_double_array
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_to_double_array, %function
fxp_to_double_array:
	@ 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, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L100
.L101:
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r4, r2, r3
	mov	r0, r1
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L100:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	blt	.L101
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	fxp_to_double_array, .-fxp_to_double_array
	.align	2
	.global	fxp_abs
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_abs, %function
fxp_abs:
	@ 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]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	rsblt	r3, r3, #0
	str	r3, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	fxp_quantize
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fxp_abs, .-fxp_abs
	.align	2
	.global	fxp_add
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_add, %function
fxp_add:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-20]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	fxp_quantize
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fxp_add, .-fxp_add
	.align	2
	.global	fxp_sub
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_sub, %function
fxp_sub:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-20]
	sub	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	fxp_quantize
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fxp_sub, .-fxp_sub
	.align	2
	.global	fxp_mult
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_mult, %function
fxp_mult:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-20]
	mul	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L109
	ldr	r3, .L112
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	mov	r2, #1
	lsl	r2, r2, r3
	ldr	r3, [fp, #-8]
	and	r3, r3, r2
	lsl	r2, r3, #1
	ldr	r3, [fp, #-8]
	add	r2, r2, r3
	ldr	r3, .L112
	ldr	r3, [r3, #4]
	asr	r3, r2, r3
	str	r3, [fp, #-12]
	b	.L110
.L109:
	ldr	r3, [fp, #-8]
	rsb	r2, r3, #0
	ldr	r3, .L112
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	mov	r1, #1
	lsl	r3, r1, r3
	and	r3, r3, r2
	lsl	r2, r3, #1
	ldr	r3, [fp, #-8]
	sub	r2, r2, r3
	ldr	r3, .L112
	ldr	r3, [r3, #4]
	asr	r3, r2, r3
	rsb	r3, r3, #0
	str	r3, [fp, #-12]
.L110:
	ldr	r0, [fp, #-12]
	bl	fxp_quantize
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L113:
	.align	2
.L112:
	.word	impl
	.size	fxp_mult, .-fxp_mult
	.align	2
	.global	fxp_div
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_div, %function
fxp_div:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r3, .L116
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-16]
	lsl	r3, r2, r3
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	__aeabi_idiv
	mov	r3, r0
	str	r3, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	fxp_quantize
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L117:
	.align	2
.L116:
	.word	impl
	.size	fxp_div, .-fxp_div
	.align	2
	.global	fxp_neg
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_neg, %function
fxp_neg:
	@ 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]
	ldr	r3, [fp, #-16]
	rsb	r3, r3, #0
	str	r3, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	fxp_quantize
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fxp_neg, .-fxp_neg
	.align	2
	.global	fxp_sign
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_sign, %function
fxp_sign:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L121
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bge	.L122
	ldr	r3, .L126
	ldr	r3, [r3]
	b	.L125
.L122:
	ldr	r3, .L126+4
	ldr	r3, [r3]
	b	.L125
.L121:
	mov	r3, #0
.L125:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L127:
	.align	2
.L126:
	.word	_fxp_minus_one
	.word	_fxp_one
	.size	fxp_sign, .-fxp_sign
	.align	2
	.global	fxp_shrl
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_shrl, %function
fxp_shrl:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-12]
	lsr	r3, r2, r3
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	fxp_shrl, .-fxp_shrl
	.align	2
	.global	fxp_square
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_square, %function
fxp_square:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r1, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	fxp_mult
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fxp_square, .-fxp_square
	.section	.rodata
	.align	2
.LC4:
	.ascii	"\012%i\000"
	.text
	.align	2
	.global	fxp_print_int
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_print_int, %function
fxp_print_int:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r1, [fp, #-8]
	ldr	r0, .L133
	bl	printf
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L134:
	.align	2
.L133:
	.word	.LC4
	.size	fxp_print_int, .-fxp_print_int
	.section	.rodata
	.align	2
.LC5:
	.ascii	"\012%f\000"
	.text
	.align	2
	.global	fxp_print_float
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_print_float, %function
fxp_print_float:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	fxp_to_float
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L136
	bl	printf
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L137:
	.align	2
.L136:
	.word	.LC5
	.size	fxp_print_float, .-fxp_print_float
	.align	2
	.global	fxp_print_float_array
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_print_float_array, %function
fxp_print_float_array:
	@ 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]
	b	.L139
.L140:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r0, r3
	bl	fxp_to_float
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L141
	bl	printf
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L139:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	blt	.L140
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L142:
	.align	2
.L141:
	.word	.LC5
	.size	fxp_print_float_array, .-fxp_print_float_array
	.section	.rodata
	.align	2
.LC6:
	.ascii	"%s = {\000"
	.align	2
.LC7:
	.ascii	" %jd \000"
	.align	2
.LC8:
	.ascii	"}\000"
	.text
	.align	2
	.global	print_fxp_array_elements
	.syntax unified
	.arm
	.fpu softvfp
	.type	print_fxp_array_elements, %function
print_fxp_array_elements:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r1, [fp, #-16]
	ldr	r0, .L146
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L144
.L145:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L146+4
	bl	printf
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L144:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	blt	.L145
	ldr	r0, .L146+8
	bl	puts
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L147:
	.align	2
.L146:
	.word	.LC6
	.word	.LC7
	.word	.LC8
	.size	print_fxp_array_elements, .-print_fxp_array_elements
	.align	2
	.global	initialize_array
	.syntax unified
	.arm
	.fpu softvfp
	.type	initialize_array, %function
initialize_array:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L149
.L150:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-16]
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L149:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	blt	.L150
	nop
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	initialize_array, .-initialize_array
	.align	2
	.global	revert_array
	.syntax unified
	.arm
	.fpu softvfp
	.type	revert_array, %function
revert_array:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r1, [fp, #-24]
	ldr	r0, [fp, #-20]
	bl	initialize_array
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L152
.L153:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-8]
	sub	r3, r2, r3
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	ldr	r2, [fp, #-8]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-20]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L152:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	blt	.L153
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	revert_array, .-revert_array
	.global	__aeabi_dcmpgt
	.align	2
	.global	internal_pow
	.syntax unified
	.arm
	.fpu softvfp
	.type	internal_pow, %function
internal_pow:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r2, #0
	ldr	r3, .L158
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L155
.L156:
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L155:
	ldr	r0, [fp, #-16]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L156
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L159:
	.align	2
.L158:
	.word	1072693248
	.size	internal_pow, .-internal_pow
	.align	2
	.global	internal_abs
	.syntax unified
	.arm
	.fpu softvfp
	.type	internal_abs, %function
internal_abs:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #8
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L166
	ldr	r4, [fp, #-20]
	ldr	r3, [fp, #-16]
	eor	r5, r3, #-2147483648
	b	.L164
.L166:
	sub	r5, fp, #20
	ldmia	r5, {r4-r5}
.L164:
	mov	r2, r4
	mov	r3, r5
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
	.size	internal_abs, .-internal_abs
	.align	2
	.global	fatorial
	.syntax unified
	.arm
	.fpu softvfp
	.type	fatorial, %function
fatorial:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L168
	ldr	r3, [fp, #-8]
	sub	r3, r3, #1
	mov	r0, r3
	bl	fatorial
	mov	r2, r0
	ldr	r3, [fp, #-8]
	mul	r3, r2, r3
	b	.L170
.L168:
	mov	r3, #1
.L170:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fatorial, .-fatorial
	.global	__aeabi_dcmple
	.section	.rodata
	.align	2
.LC9:
	.ascii	"[DEBUG] the first constraint of Jury criteria faile"
	.ascii	"d: (F(1) > 0)\000"
	.align	2
.LC10:
	.ascii	"[DEBUG] the second constraint of Jury criteria fail"
	.ascii	"ed: (F(-1)*(-1)^n > 0)\000"
	.align	2
.LC11:
	.ascii	"[DEBUG] the third constraint of Jury criteria faile"
	.ascii	"d: (abs(a0) < a_{n}*z^{n})\000"
	.global	__aeabi_ddiv
	.align	2
.LC12:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	check_stability
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_stability, %function
check_stability:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	add	fp, sp, #32
	sub	sp, sp, #76
	str	r0, [fp, #-104]
	str	r1, [fp, #-108]
	ldr	r3, .L213
	ldr	r3, [r3]
	str	r3, [fp, #-40]
	mov	r3,#0
	mov	r3, sp
	mov	r10, r3
	ldr	r3, [fp, #-108]
	lsl	r3, r3, #1
	sub	r3, r3, #1
	str	r3, [fp, #-84]
	ldr	r3, [fp, #-108]
	str	r3, [fp, #-92]
	ldr	ip, [fp, #-108]
	ldr	lr, [fp, #-84]
	sub	r3, ip, #1
	str	r3, [fp, #-80]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r4, r3, #3
	sub	r3, lr, #1
	str	r3, [fp, #-76]
	mov	r3, ip
	mov	r6, r3
	mov	r7, #0
	mov	r3, lr
	mov	r0, r3
	mov	r1, #0
	mul	r2, r0, r7
	mul	r3, r6, r1
	add	r5, r2, r3
	umull	r2, r3, r6, r0
	add	r1, r5, r3
	mov	r3, r1
	mov	r0, #0
	mov	r1, #0
	lsl	r1, r3, #6
	orr	r1, r1, r2, lsr #26
	lsl	r0, r2, #6
	mov	r3, ip
	mov	r6, r3
	mov	r7, #0
	mov	r3, lr
	mov	r0, r3
	mov	r1, #0
	mul	r2, r0, r7
	mul	r3, r6, r1
	add	r5, r2, r3
	umull	r2, r3, r6, r0
	add	r1, r5, r3
	mov	r3, r1
	mov	r0, #0
	mov	r1, #0
	lsl	r1, r3, #6
	orr	r1, r1, r2, lsr #26
	lsl	r0, r2, #6
	mov	r3, ip
	mov	r2, lr
	mul	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-72]
	ldr	ip, [fp, #-108]
	sub	r3, ip, #1
	str	r3, [fp, #-68]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-64]
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L172
.L173:
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-104]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-64]
	ldr	r1, [fp, #-96]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L172:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L173
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L174
.L175:
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-104]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L174:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L175
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L209
	ldr	r0, .L213+4
	bl	printf
	mov	r3, #0
	b	.L178
.L209:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L179
.L180:
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-104]
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-108]
	sub	r2, r3, #1
	ldr	r3, [fp, #-96]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L213+8
	bl	internal_pow
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L179:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L180
	ldr	r3, [fp, #-108]
	sub	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L213+8
	bl	internal_pow
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L210
	ldr	r0, .L213+12
	bl	printf
	mov	r3, #0
	b	.L178
.L210:
	ldr	r3, [fp, #-108]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-104]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	internal_abs
	ldr	r3, [fp, #-104]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L211
	ldr	r0, .L213+16
	bl	printf
	mov	r3, #0
	b	.L178
.L211:
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L185
.L188:
	mov	r3, #0
	str	r3, [fp, #-100]
	b	.L186
.L187:
	lsr	r3, r4, #3
	ldr	r2, [fp, #-72]
	ldr	r1, [fp, #-96]
	mul	r1, r3, r1
	ldr	r3, [fp, #-100]
	add	r3, r1, r3
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
.L186:
	ldr	r2, [fp, #-100]
	ldr	r3, [fp, #-92]
	cmp	r2, r3
	blt	.L187
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L185:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-84]
	cmp	r2, r3
	blt	.L188
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L189
.L197:
	mov	r3, #0
	str	r3, [fp, #-100]
	b	.L190
.L196:
	ldr	r3, [fp, #-96]
	cmp	r3, #0
	bne	.L191
	ldr	r3, [fp, #-100]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-104]
	add	r3, r2, r3
	lsr	r1, r4, #3
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-72]
	ldr	ip, [fp, #-96]
	mul	ip, r1, ip
	ldr	r1, [fp, #-100]
	add	r1, ip, r1
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	b	.L192
.L191:
	ldr	r3, [fp, #-96]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L193
	mov	r3, #0
	str	r3, [fp, #-88]
	b	.L194
.L195:
	lsr	r0, r4, #3
	ldr	r3, [fp, #-96]
	sub	ip, r3, #1
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-88]
	sub	r3, r2, r3
	sub	r3, r3, #1
	lsr	r1, r4, #3
	ldr	r2, [fp, #-72]
	mul	r0, ip, r0
	add	r3, r0, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-72]
	ldr	ip, [fp, #-96]
	mul	ip, r1, ip
	ldr	r1, [fp, #-88]
	add	r1, ip, r1
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-88]
.L194:
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-92]
	cmp	r2, r3
	blt	.L195
	ldr	r3, [fp, #-92]
	sub	r3, r3, #1
	str	r3, [fp, #-92]
	ldr	r3, [fp, #-92]
	str	r3, [fp, #-100]
	b	.L192
.L193:
	lsr	r3, r4, #3
	ldr	r2, [fp, #-96]
	sub	r1, r2, #2
	ldr	r2, [fp, #-72]
	mul	r1, r3, r1
	ldr	r3, [fp, #-100]
	add	r3, r1, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	lsr	r3, r4, #3
	ldr	r2, [fp, #-96]
	sub	r1, r2, #2
	ldr	r2, [fp, #-72]
	mul	r1, r3, r1
	ldr	r3, [fp, #-92]
	add	r3, r1, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	lsr	r3, r4, #3
	ldr	r2, [fp, #-96]
	sub	ip, r2, #2
	ldr	r2, [fp, #-72]
	mul	r3, ip, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	lsr	r3, r4, #3
	ldr	r2, [fp, #-96]
	sub	r1, r2, #1
	ldr	r2, [fp, #-72]
	mul	r1, r3, r1
	ldr	r3, [fp, #-100]
	add	r3, r1, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	lsr	r5, r4, #3
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-72]
	ldr	r1, [fp, #-96]
	mul	ip, r1, r5
	ldr	r1, [fp, #-100]
	add	r1, ip, r1
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
.L192:
	ldr	r3, [fp, #-100]
	add	r3, r3, #1
	str	r3, [fp, #-100]
.L190:
	ldr	r2, [fp, #-100]
	ldr	r3, [fp, #-92]
	cmp	r2, r3
	blt	.L196
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L189:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-84]
	cmp	r2, r3
	blt	.L197
	ldr	r3, [fp, #-72]
	ldmia	r3, {r0-r1}
	mov	r3, #1
	mov	r5, r3
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L198
	mov	r3, #0
	mov	r5, r3
.L198:
	and	r3, r5, #255
	str	r3, [fp, #-60]
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L199
.L203:
	ldr	r3, [fp, #-96]
	and	r3, r3, #1
	cmp	r3, #0
	bne	.L200
	lsr	r3, r4, #3
	ldr	r2, [fp, #-72]
	ldr	r1, [fp, #-96]
	mul	r3, r1, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r3, #1
	mov	r5, r3
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L201
	mov	r3, #0
	mov	r5, r3
.L201:
	and	r3, r5, #255
	str	r3, [fp, #-56]
	ldr	r2, [fp, #-60]
	ldr	r3, [fp, #-56]
	cmp	r2, r3
	beq	.L212
	mov	r3, #0
	b	.L178
.L212:
	nop
.L200:
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L199:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-84]
	cmp	r2, r3
	blt	.L203
	mov	r3, #1
.L178:
	mov	sp, r10
	ldr	r2, .L213
	ldr	r1, [r2]
	ldr	r2, [fp, #-40]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L205
	bl	__stack_chk_fail
.L205:
	mov	r0, r3
	sub	sp, fp, #32
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L214:
	.align	2
.L213:
	.word	.LC12
	.word	.LC9
	.word	-1074790400
	.word	.LC10
	.word	.LC11
	.size	check_stability, .-check_stability
	.align	2
	.global	poly_sum
	.syntax unified
	.arm
	.fpu softvfp
	.type	poly_sum, %function
poly_sum:
	@ args = 8, 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, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #8]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L216
.L219:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	ble	.L217
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	lsl	r2, r2, #3
	ldr	r1, [fp, #4]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-36]
	sub	r3, r2, r3
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L218
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	ldr	r2, [fp, #4]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-28]
	sub	r2, r2, r3
	ldr	r3, [fp, #-36]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	ip, [fp, #-16]
	lsl	ip, ip, #3
	ldr	lr, [fp, #4]
	add	r4, lr, ip
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	b	.L218
.L217:
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	lsl	r2, r2, #3
	ldr	r1, [fp, #4]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L218
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	ldr	r2, [fp, #4]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-36]
	sub	r2, r2, r3
	ldr	r3, [fp, #-28]
	add	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	ip, [fp, #-16]
	lsl	ip, ip, #3
	ldr	lr, [fp, #4]
	add	r4, lr, ip
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
.L218:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L216:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L219
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	poly_sum, .-poly_sum
	.align	2
	.global	poly_mult
	.syntax unified
	.arm
	.fpu softvfp
	.type	poly_mult, %function
poly_mult:
	@ args = 8, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #36
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #8]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L221
.L224:
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L222
.L223:
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-52]
	add	r2, r2, r3
	ldr	r3, [fp, #-32]
	sub	r2, r2, r3
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	sub	r3, r3, #2
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	ldr	r2, [fp, #4]
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L222:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-52]
	cmp	r2, r3
	blt	.L223
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L221:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	blt	.L224
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L225
.L228:
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L226
.L227:
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-52]
	add	r2, r2, r3
	ldr	r3, [fp, #-32]
	sub	r2, r2, r3
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	sub	r3, r3, #2
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	ldr	r2, [fp, #4]
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-32]
	sub	r3, r2, r3
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	ldr	r2, [fp, #4]
	add	r6, r2, r3
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L226:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-52]
	cmp	r2, r3
	blt	.L227
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L225:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	blt	.L228
	nop
	nop
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
	.size	poly_mult, .-poly_mult
	.section	.rodata
	.align	2
.LC13:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/core/util.h\000"
	.align	2
.LC14:
	.ascii	"!(window_count == window_size)\000"
	.text
	.align	2
	.global	double_check_oscillations
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_check_oscillations, %function
double_check_oscillations:
	@ 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, #-40]
	str	r1, [fp, #-44]
	ldr	r3, [fp, #-40]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-44]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	ip, #1
	mov	r4, ip
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L230
	mov	r3, #0
	mov	r4, r3
.L230:
	and	r3, r4, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	mov	r3, #0
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-32]
	mov	r3, #2
	str	r3, [fp, #-28]
	b	.L231
.L239:
	ldr	r3, [fp, #-28]
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L232
.L238:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	ble	.L233
	mov	r3, #0
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-32]
.L233:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-20]
	add	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bge	.L241
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L235
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	bne	.L235
	ldr	r3, .L242
	mov	r2, #209
	ldr	r1, .L242+4
	ldr	r0, .L242+8
	bl	__assert_fail
.L235:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L232:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	blt	.L238
	b	.L237
.L241:
	nop
.L237:
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L231:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	blt	.L239
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L243:
	.align	2
.L242:
	.word	__PRETTY_FUNCTION__.5564
	.word	.LC13
	.word	.LC14
	.size	double_check_oscillations, .-double_check_oscillations
	.section	.rodata
	.align	2
.LC15:
	.ascii	"window_size %d\012\000"
	.align	2
.LC16:
	.ascii	"%.0f == %.0f\012\000"
	.align	2
.LC17:
	.ascii	"desired_elements %d\012\000"
	.align	2
.LC18:
	.ascii	"found_elements %d\012\000"
	.text
	.align	2
	.global	double_check_limit_cycle
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_check_limit_cycle, %function
double_check_limit_cycle:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-32]
	mov	r3, #1
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #2
	str	r3, [fp, #-32]
	b	.L245
.L250:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L258
	b	.L249
.L258:
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	str	r3, [fp, #-32]
.L245:
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bge	.L250
.L249:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	beq	.L251
	ldr	r3, [fp, #-28]
	cmp	r3, #1
	beq	.L251
	mov	r3, #1
	b	.L252
.L251:
	mov	r3, #0
.L252:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r1, [fp, #-28]
	ldr	r0, .L260
	bl	printf
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #1
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	sub	r3, r3, #1
	str	r3, [fp, #-32]
	b	.L253
.L257:
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	ldr	r2, [fp, #-32]
	cmp	r2, r3
	blt	.L254
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L260+4
	bl	printf
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	ble	.L255
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L255
	ldr	r3, [fp, #-24]
	add	r3, r3, #2
	str	r3, [fp, #-24]
.L254:
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	str	r3, [fp, #-32]
.L253:
	ldr	r3, [fp, #-32]
	cmp	r3, #0
	bge	.L257
.L255:
	ldr	r1, [fp, #-20]
	ldr	r0, .L260+8
	bl	printf
	ldr	r1, [fp, #-24]
	ldr	r0, .L260+12
	bl	printf
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L261:
	.align	2
.L260:
	.word	.LC15
	.word	.LC16
	.word	.LC17
	.word	.LC18
	.size	double_check_limit_cycle, .-double_check_limit_cycle
	.section	.rodata
	.align	2
.LC19:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	double_check_persistent_limit_cycle
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_check_persistent_limit_cycle, %function
double_check_persistent_limit_cycle:
	@ args = 0, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #60
	str	r0, [fp, #-64]
	str	r1, [fp, #-68]
	ldr	r3, .L288
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-44]
	ldr	r3, [fp, #-64]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-48]
	b	.L263
.L269:
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L284
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
	b	.L266
.L284:
	ldr	r3, [fp, #-44]
	cmp	r3, #0
	bne	.L287
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L266:
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L263:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-68]
	cmp	r2, r3
	blt	.L269
	b	.L268
.L287:
	nop
.L268:
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-52]
	add	r3, r2, r3
	str	r3, [fp, #-44]
	ldr	r3, [fp, #-44]
	cmp	r3, #1
	ble	.L270
	ldr	r3, [fp, #-68]
	lsr	r2, r3, #31
	add	r3, r2, r3
	asr	r3, r3, #1
	mov	r2, r3
	ldr	r3, [fp, #-44]
	cmp	r3, r2
	bgt	.L270
	mov	r3, #1
	b	.L271
.L270:
	mov	r3, #0
.L271:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	ip, [fp, #-44]
	mov	r3, sp
	mov	r4, r3
	sub	r3, ip, #1
	str	r3, [fp, #-36]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-48]
	b	.L272
.L274:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bge	.L273
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-32]
	ldr	r1, [fp, #-48]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
.L273:
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L272:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-68]
	cmp	r2, r3
	blt	.L274
	mov	r3, #0
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-40]
	mov	r3, #0
	strb	r3, [fp, #-53]
	b	.L275
.L280:
	ldr	r3, [fp, #-48]
	add	r2, r3, #1
	str	r2, [fp, #-48]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-40]
	add	r2, r3, #1
	str	r2, [fp, #-40]
	ldr	r2, [fp, #-32]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L285
	mov	r3, #1
	strb	r3, [fp, #-53]
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bne	.L275
	b	.L286
.L285:
	mov	r3, #0
	strb	r3, [fp, #-53]
	b	.L279
.L286:
	mov	r3, #0
	str	r3, [fp, #-40]
.L275:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-68]
	cmp	r2, r3
	blt	.L280
.L279:
	ldrb	r3, [fp, #-53]	@ zero_extendqisi2
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	mov	sp, r4
	nop
	ldr	r3, .L288
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L281
	bl	__stack_chk_fail
.L281:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L289:
	.align	2
.L288:
	.word	.LC19
	.size	double_check_persistent_limit_cycle, .-double_check_persistent_limit_cycle
	.section	.rodata
	.align	2
.LC20:
	.ascii	" %.32f \000"
	.text
	.align	2
	.global	print_array_elements
	.syntax unified
	.arm
	.fpu softvfp
	.type	print_array_elements, %function
print_array_elements:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r1, [fp, #-16]
	ldr	r0, .L293
	bl	printf
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L291
.L292:
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r0, .L293+4
	bl	printf
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L291:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	blt	.L292
	ldr	r0, .L293+8
	bl	puts
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L294:
	.align	2
.L293:
	.word	.LC6
	.word	.LC20
	.word	.LC8
	.size	print_array_elements, .-print_array_elements
	.align	2
	.global	double_add_matrix
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_add_matrix, %function
double_add_matrix:
	@ args = 4, 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, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L296
.L299:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L297
.L298:
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-32]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-36]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	ip, [fp, #-20]
	lsl	ip, ip, #5
	ldr	lr, [fp, #4]
	add	r4, lr, ip
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-16]
	lsl	r1, r1, #3
	add	r1, r4, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L297:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	bcc	.L298
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L296:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	bcc	.L299
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	double_add_matrix, .-double_add_matrix
	.align	2
	.global	double_sub_matrix
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_sub_matrix, %function
double_sub_matrix:
	@ args = 4, 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, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L301
.L304:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L302
.L303:
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-32]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-36]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	ip, [fp, #-20]
	lsl	ip, ip, #5
	ldr	lr, [fp, #4]
	add	r4, lr, ip
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-16]
	lsl	r1, r1, #3
	add	r1, r4, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L302:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	bcc	.L303
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L301:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	bcc	.L304
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	double_sub_matrix, .-double_sub_matrix
	.section	.rodata
	.align	2
.LC21:
	.ascii	"\012Error! Operation invalid, please enter with val"
	.ascii	"id matrices.\000"
	.text
	.align	2
	.global	double_matrix_multiplication
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_matrix_multiplication, %function
double_matrix_multiplication:
	@ args = 12, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #44
	str	r0, [fp, #-48]
	str	r1, [fp, #-52]
	str	r2, [fp, #-56]
	str	r3, [fp, #-60]
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-56]
	cmp	r2, r3
	bne	.L306
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L307
.L310:
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L308
.L309:
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #5
	ldr	r2, [fp, #12]
	add	r2, r2, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L308:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-60]
	cmp	r2, r3
	bcc	.L309
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L307:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	bcc	.L310
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L311
.L316:
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L312
.L315:
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L313
.L314:
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #5
	ldr	r2, [fp, #4]
	add	r2, r2, r3
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #5
	ldr	r2, [fp, #8]
	add	r2, r2, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #5
	ldr	r2, [fp, #12]
	add	r2, r2, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #5
	ldr	r2, [fp, #4]
	add	r2, r2, r3
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #5
	ldr	r2, [fp, #8]
	add	r2, r2, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #5
	ldr	r2, [fp, #12]
	add	r6, r2, r3
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-36]
	lsl	r1, r1, #3
	add	r1, r6, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L313:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-52]
	cmp	r2, r3
	bcc	.L314
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L312:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-60]
	cmp	r2, r3
	bcc	.L315
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L311:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	bcc	.L316
	b	.L318
.L306:
	ldr	r0, .L319
	bl	puts
.L318:
	nop
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L320:
	.align	2
.L319:
	.word	.LC21
	.size	double_matrix_multiplication, .-double_matrix_multiplication
	.align	2
	.global	fxp_matrix_multiplication
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_matrix_multiplication, %function
fxp_matrix_multiplication:
	@ args = 12, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #32
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	bne	.L322
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L323
.L326:
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L324
.L325:
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #4
	ldr	r2, [fp, #12]
	add	r3, r2, r3
	ldr	r2, [fp, #-20]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L324:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bcc	.L325
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L323:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	bcc	.L326
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L327
.L332:
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L328
.L331:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L329
.L330:
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #4
	ldr	r2, [fp, #12]
	add	r3, r2, r3
	ldr	r2, [fp, #-20]
	ldr	r5, [r3, r2, lsl #2]
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #4
	ldr	r2, [fp, #4]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	ldr	r0, [r3, r2, lsl #2]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #4
	ldr	r2, [fp, #8]
	add	r3, r2, r3
	ldr	r2, [fp, #-20]
	ldr	r3, [r3, r2, lsl #2]
	mov	r1, r3
	bl	fxp_mult
	mov	r1, r0
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #4
	ldr	r2, [fp, #12]
	add	r4, r2, r3
	mov	r0, r5
	bl	fxp_add
	mov	r2, r0
	ldr	r3, [fp, #-20]
	str	r2, [r4, r3, lsl #2]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L329:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	bcc	.L330
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L328:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bcc	.L331
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L327:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	bcc	.L332
	b	.L334
.L322:
	ldr	r0, .L335
	bl	puts
.L334:
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L336:
	.align	2
.L335:
	.word	.LC21
	.size	fxp_matrix_multiplication, .-fxp_matrix_multiplication
	.section	.rodata
	.align	2
.LC22:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	fxp_exp_matrix
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_exp_matrix, %function
fxp_exp_matrix:
	@ 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, #112
	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, .L370
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, [fp, #-116]
	cmp	r3, #0
	bne	.L338
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L339
.L344:
	mov	r3, #0
	str	r3, [fp, #-92]
	b	.L340
.L343:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-92]
	cmp	r2, r3
	bne	.L341
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-120]
	add	r4, r2, r3
	mov	r0, #0
	ldr	r1, .L370+4
	bl	fxp_double_to_fxp
	mov	r2, r0
	ldr	r3, [fp, #-92]
	str	r2, [r4, r3, lsl #2]
	b	.L342
.L341:
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-120]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
.L342:
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L340:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	bcc	.L343
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L339:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	bcc	.L344
	b	.L337
.L338:
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L346
.L349:
	mov	r3, #0
	str	r3, [fp, #-92]
	b	.L347
.L348:
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-112]
	add	r2, r2, r3
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #4
	ldr	r1, [fp, #-120]
	add	r3, r1, r3
	ldr	r1, [fp, #-92]
	ldr	r1, [r2, r1, lsl #2]
	ldr	r2, [fp, #-92]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L347:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	bcc	.L348
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L346:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	bcc	.L349
	ldr	r3, [fp, #-116]
	cmp	r3, #1
	beq	.L369
	mov	r3, #1
	str	r3, [fp, #-88]
	b	.L351
.L366:
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L352
.L355:
	mov	r3, #0
	str	r3, [fp, #-92]
	b	.L353
.L354:
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-120]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]
	ldr	r2, [r3, r2, lsl #2]
	ldr	r3, [fp, #-96]
	lsl	r1, r3, #2
	ldr	r3, [fp, #-92]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #12
	add	r3, r1, r3
	str	r2, [r3, #-68]
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L353:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	bcc	.L354
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L352:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	bcc	.L355
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L356
.L359:
	mov	r3, #0
	str	r3, [fp, #-92]
	b	.L357
.L358:
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-120]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L357:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	bcc	.L358
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L356:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	bcc	.L359
	mov	r3, #0
	str	r3, [fp, #-96]
	b	.L360
.L365:
	mov	r3, #0
	str	r3, [fp, #-92]
	b	.L361
.L364:
	mov	r3, #0
	str	r3, [fp, #-84]
	b	.L362
.L363:
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-120]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]
	ldr	r5, [r3, r2, lsl #2]
	ldr	r3, [fp, #-96]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-84]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r0, [r3, #-68]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldr	r2, [fp, #-92]
	ldr	r3, [r3, r2, lsl #2]
	mov	r1, r3
	bl	fxp_mult
	mov	r1, r0
	ldr	r3, [fp, #-96]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-120]
	add	r4, r2, r3
	mov	r0, r5
	bl	fxp_add
	mov	r2, r0
	ldr	r3, [fp, #-92]
	str	r2, [r4, r3, lsl #2]
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-84]
.L362:
	ldr	r2, [fp, #-84]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	bcc	.L363
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L361:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	bcc	.L364
	ldr	r3, [fp, #-96]
	add	r3, r3, #1
	str	r3, [fp, #-96]
.L360:
	ldr	r2, [fp, #-96]
	ldr	r3, [fp, #-104]
	cmp	r2, r3
	bcc	.L365
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-88]
.L351:
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-116]
	cmp	r2, r3
	bcc	.L366
	b	.L337
.L369:
	nop
.L337:
	ldr	r3, .L370
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L368
	bl	__stack_chk_fail
.L368:
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L371:
	.align	2
.L370:
	.word	.LC22
	.word	1072693248
	.size	fxp_exp_matrix, .-fxp_exp_matrix
	.section	.rodata
	.align	2
.LC23:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	double_exp_matrix
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_exp_matrix, %function
double_exp_matrix:
	@ args = 4, pretend = 0, frame = 176
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #180
	str	r0, [fp, #-176]
	str	r1, [fp, #-180]
	str	r2, [fp, #-184]
	str	r3, [fp, #-188]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-192]
	ldr	r3, .L405
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	ldr	r3, [fp, #-188]
	cmp	r3, #0
	bne	.L373
	mov	r3, #0
	str	r3, [fp, #-172]
	b	.L374
.L379:
	mov	r3, #0
	str	r3, [fp, #-168]
	b	.L375
.L378:
	ldr	r2, [fp, #-172]
	ldr	r3, [fp, #-168]
	cmp	r2, r3
	bne	.L376
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-192]
	add	r2, r2, r3
	ldr	r3, [fp, #-168]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	ldr	r3, .L405+4
	stm	r1, {r2-r3}
	b	.L377
.L376:
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-192]
	add	r2, r2, r3
	ldr	r3, [fp, #-168]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
.L377:
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
.L375:
	ldr	r2, [fp, #-168]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	bcc	.L378
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	str	r3, [fp, #-172]
.L374:
	ldr	r2, [fp, #-172]
	ldr	r3, [fp, #-176]
	cmp	r2, r3
	bcc	.L379
	b	.L372
.L373:
	mov	r3, #0
	str	r3, [fp, #-172]
	b	.L381
.L384:
	mov	r3, #0
	str	r3, [fp, #-168]
	b	.L382
.L383:
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-184]
	add	r2, r2, r3
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #5
	ldr	r1, [fp, #-192]
	add	r0, r1, r3
	ldr	r3, [fp, #-168]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-168]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
.L382:
	ldr	r2, [fp, #-168]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	bcc	.L383
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	str	r3, [fp, #-172]
.L381:
	ldr	r2, [fp, #-172]
	ldr	r3, [fp, #-176]
	cmp	r2, r3
	bcc	.L384
	ldr	r3, [fp, #-188]
	cmp	r3, #1
	beq	.L404
	mov	r3, #1
	str	r3, [fp, #-160]
	b	.L386
.L401:
	mov	r3, #0
	str	r3, [fp, #-172]
	b	.L387
.L390:
	mov	r3, #0
	str	r3, [fp, #-168]
	b	.L388
.L389:
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-192]
	add	r2, r2, r3
	ldr	r3, [fp, #-168]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-172]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-168]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #20
	add	r1, r0, r1
	sub	r1, r1, #136
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
.L388:
	ldr	r2, [fp, #-168]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	bcc	.L389
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	str	r3, [fp, #-172]
.L387:
	ldr	r2, [fp, #-172]
	ldr	r3, [fp, #-176]
	cmp	r2, r3
	bcc	.L390
	mov	r3, #0
	str	r3, [fp, #-172]
	b	.L391
.L394:
	mov	r3, #0
	str	r3, [fp, #-168]
	b	.L392
.L393:
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-192]
	add	r2, r2, r3
	ldr	r3, [fp, #-168]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
.L392:
	ldr	r2, [fp, #-168]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	bcc	.L393
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	str	r3, [fp, #-172]
.L391:
	ldr	r2, [fp, #-172]
	ldr	r3, [fp, #-176]
	cmp	r2, r3
	bcc	.L394
	mov	r3, #0
	str	r3, [fp, #-172]
	b	.L395
.L400:
	mov	r3, #0
	str	r3, [fp, #-168]
	b	.L396
.L399:
	mov	r3, #0
	str	r3, [fp, #-164]
	b	.L397
.L398:
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-192]
	add	r2, r2, r3
	ldr	r3, [fp, #-168]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r3, [fp, #-172]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-164]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #20
	add	r3, r2, r3
	sub	r3, r3, #136
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-184]
	add	r2, r2, r3
	ldr	r3, [fp, #-168]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-192]
	add	r6, r2, r3
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-168]
	lsl	r1, r1, #3
	add	r1, r6, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-164]
	add	r3, r3, #1
	str	r3, [fp, #-164]
.L397:
	ldr	r2, [fp, #-164]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	bcc	.L398
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
.L396:
	ldr	r2, [fp, #-168]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	bcc	.L399
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	str	r3, [fp, #-172]
.L395:
	ldr	r2, [fp, #-172]
	ldr	r3, [fp, #-176]
	cmp	r2, r3
	bcc	.L400
	ldr	r3, [fp, #-160]
	add	r3, r3, #1
	str	r3, [fp, #-160]
.L386:
	ldr	r2, [fp, #-160]
	ldr	r3, [fp, #-188]
	cmp	r2, r3
	bcc	.L401
	b	.L372
.L404:
	nop
.L372:
	ldr	r3, .L405
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L403
	bl	__stack_chk_fail
.L403:
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L406:
	.align	2
.L405:
	.word	.LC23
	.word	1072693248
	.size	double_exp_matrix, .-double_exp_matrix
	.align	2
	.global	fxp_add_matrix
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_add_matrix, %function
fxp_add_matrix:
	@ args = 4, 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, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L408
.L411:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L409
.L410:
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	ldr	r0, [r3, r2, lsl #2]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-36]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	ldr	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #4
	ldr	r2, [fp, #4]
	add	r4, r2, r3
	bl	fxp_add
	mov	r2, r0
	ldr	r3, [fp, #-16]
	str	r2, [r4, r3, lsl #2]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L409:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	bcc	.L410
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L408:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	bcc	.L411
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	fxp_add_matrix, .-fxp_add_matrix
	.align	2
	.global	fxp_sub_matrix
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_sub_matrix, %function
fxp_sub_matrix:
	@ args = 4, 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, #-24]
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L413
.L416:
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L414
.L415:
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	ldr	r0, [r3, r2, lsl #2]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-36]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	ldr	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #4
	ldr	r2, [fp, #4]
	add	r4, r2, r3
	bl	fxp_sub
	mov	r2, r0
	ldr	r3, [fp, #-16]
	str	r2, [r4, r3, lsl #2]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L414:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	bcc	.L415
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L413:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	bcc	.L416
	nop
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	fxp_sub_matrix, .-fxp_sub_matrix
	.section	.rodata
	.align	2
.LC24:
	.ascii	"\012Matrix\012=====================\012\000"
	.align	2
.LC25:
	.ascii	"#matrix[%d][%d]: %2.2f \000"
	.text
	.align	2
	.global	print_matrix
	.syntax unified
	.arm
	.fpu softvfp
	.type	print_matrix, %function
print_matrix:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r0, .L422
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L418
.L421:
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L419
.L420:
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-16]
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r2, [fp, #-8]
	ldr	r1, [fp, #-12]
	ldr	r0, .L422+4
	bl	printf
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L419:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	bcc	.L420
	mov	r0, #10
	bl	putchar
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L418:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-20]
	cmp	r2, r3
	bcc	.L421
	mov	r0, #10
	bl	putchar
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L423:
	.align	2
.L422:
	.word	.LC24
	.word	.LC25
	.size	print_matrix, .-print_matrix
	.section	.rodata
	.align	2
.LC26:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	determinant
	.syntax unified
	.arm
	.fpu softvfp
	.type	determinant, %function
determinant:
	@ args = 0, pretend = 0, frame = 168
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #168
	str	r0, [fp, #-176]
	str	r1, [fp, #-180]
	ldr	r3, .L441
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-156]
	str	r3, [fp, #-152]
	ldr	r3, [fp, #-180]
	cmp	r3, #0
	ble	.L425
	ldr	r3, [fp, #-180]
	cmp	r3, #1
	bne	.L426
	ldr	r3, [fp, #-176]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-156]
	str	r3, [fp, #-152]
	b	.L425
.L426:
	ldr	r3, [fp, #-180]
	cmp	r3, #2
	bne	.L427
	ldr	r3, [fp, #-176]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-176]
	add	r3, r3, #32
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-176]
	add	r3, r3, #32
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-176]
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-156]
	str	r3, [fp, #-152]
	b	.L425
.L427:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-156]
	str	r3, [fp, #-152]
	mov	r3, #0
	str	r3, [fp, #-164]
	b	.L428
.L437:
	mov	r3, #0
	str	r3, [fp, #-172]
	b	.L429
.L436:
	mov	r3, #1
	str	r3, [fp, #-172]
	b	.L430
.L435:
	mov	r3, #0
	str	r3, [fp, #-160]
	mov	r3, #0
	str	r3, [fp, #-168]
	b	.L431
.L434:
	ldr	r2, [fp, #-168]
	ldr	r3, [fp, #-164]
	cmp	r2, r3
	beq	.L440
	ldr	r3, [fp, #-172]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-176]
	add	r2, r2, r3
	ldr	r3, [fp, #-172]
	sub	r1, r3, #1
	ldr	r3, [fp, #-168]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	lsl	r0, r1, #2
	ldr	r1, [fp, #-160]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #12
	add	r1, r0, r1
	sub	r1, r1, #136
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-160]
	add	r3, r3, #1
	str	r3, [fp, #-160]
	b	.L433
.L440:
	nop
.L433:
	ldr	r3, [fp, #-168]
	add	r3, r3, #1
	str	r3, [fp, #-168]
.L431:
	ldr	r2, [fp, #-168]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	blt	.L434
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	str	r3, [fp, #-172]
.L430:
	ldr	r2, [fp, #-172]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	blt	.L435
	ldr	r3, [fp, #-172]
	add	r3, r3, #1
	str	r3, [fp, #-172]
.L429:
	ldr	r3, [fp, #-180]
	sub	r3, r3, #1
	ldr	r2, [fp, #-172]
	cmp	r2, r3
	blt	.L436
	ldr	r0, [fp, #-164]
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L441+4
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L441+4
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L441+8
	bl	internal_pow
	ldr	r2, [fp, #-176]
	ldr	r3, [fp, #-164]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-180]
	sub	r2, r3, #1
	sub	r3, fp, #148
	mov	r1, r2
	mov	r0, r3
	bl	determinant
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #156
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-156]
	str	r3, [fp, #-152]
	ldr	r3, [fp, #-164]
	add	r3, r3, #1
	str	r3, [fp, #-164]
.L428:
	ldr	r2, [fp, #-164]
	ldr	r3, [fp, #-180]
	cmp	r2, r3
	blt	.L437
.L425:
	sub	r3, fp, #156
	ldmia	r3, {r2-r3}
	ldr	r1, .L441
	ldr	r0, [r1]
	ldr	r1, [fp, #-16]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L439
	bl	__stack_chk_fail
.L439:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L442:
	.align	2
.L441:
	.word	.LC26
	.word	1072693248
	.word	-1074790400
	.size	determinant, .-determinant
	.section	.rodata
	.align	2
.LC27:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	fxp_determinant
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_determinant, %function
fxp_determinant:
	@ args = 0, pretend = 0, frame = 296
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #296
	str	r0, [fp, #-304]
	str	r1, [fp, #-308]
	ldr	r3, .L464
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-300]
	b	.L444
.L447:
	mov	r3, #0
	str	r3, [fp, #-296]
	b	.L445
.L446:
	ldr	r3, [fp, #-300]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-304]
	add	r3, r2, r3
	ldr	r2, [fp, #-296]
	ldr	r3, [r3, r2, lsl #2]
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-300]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-296]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #12
	add	r1, r0, r1
	sub	r1, r1, #264
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-296]
	add	r3, r3, #1
	str	r3, [fp, #-296]
.L445:
	ldr	r2, [fp, #-296]
	ldr	r3, [fp, #-308]
	cmp	r2, r3
	blt	.L446
	ldr	r3, [fp, #-300]
	add	r3, r3, #1
	str	r3, [fp, #-300]
.L444:
	ldr	r2, [fp, #-300]
	ldr	r3, [fp, #-308]
	cmp	r2, r3
	blt	.L447
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-284]
	str	r3, [fp, #-280]
	ldr	r3, [fp, #-308]
	cmp	r3, #0
	ble	.L448
	ldr	r3, [fp, #-308]
	cmp	r3, #1
	bne	.L449
	sub	r3, fp, #276
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-284]
	str	r3, [fp, #-280]
	b	.L448
.L449:
	ldr	r3, [fp, #-308]
	cmp	r3, #2
	bne	.L450
	sub	r1, fp, #276
	ldmia	r1, {r0-r1}
	sub	r3, fp, #236
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r1, fp, #244
	ldmia	r1, {r0-r1}
	sub	r3, fp, #268
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-284]
	str	r3, [fp, #-280]
	b	.L448
.L450:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-284]
	str	r3, [fp, #-280]
	mov	r3, #0
	str	r3, [fp, #-292]
	b	.L451
.L460:
	mov	r3, #0
	str	r3, [fp, #-300]
	b	.L452
.L459:
	mov	r3, #1
	str	r3, [fp, #-300]
	b	.L453
.L458:
	mov	r3, #0
	str	r3, [fp, #-288]
	mov	r3, #0
	str	r3, [fp, #-296]
	b	.L454
.L457:
	ldr	r2, [fp, #-296]
	ldr	r3, [fp, #-292]
	cmp	r2, r3
	beq	.L463
	ldr	r3, [fp, #-300]
	sub	r1, r3, #1
	ldr	r3, [fp, #-300]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-296]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #264
	ldmia	r3, {r2-r3}
	lsl	r0, r1, #2
	ldr	r1, [fp, #-288]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #12
	add	r1, r0, r1
	sub	r1, r1, #136
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-288]
	add	r3, r3, #1
	str	r3, [fp, #-288]
	b	.L456
.L463:
	nop
.L456:
	ldr	r3, [fp, #-296]
	add	r3, r3, #1
	str	r3, [fp, #-296]
.L454:
	ldr	r2, [fp, #-296]
	ldr	r3, [fp, #-308]
	cmp	r2, r3
	blt	.L457
	ldr	r3, [fp, #-300]
	add	r3, r3, #1
	str	r3, [fp, #-300]
.L453:
	ldr	r2, [fp, #-300]
	ldr	r3, [fp, #-308]
	cmp	r2, r3
	blt	.L458
	ldr	r3, [fp, #-300]
	add	r3, r3, #1
	str	r3, [fp, #-300]
.L452:
	ldr	r3, [fp, #-308]
	sub	r3, r3, #1
	ldr	r2, [fp, #-300]
	cmp	r2, r3
	blt	.L459
	ldr	r0, [fp, #-292]
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L464+4
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L464+4
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L464+8
	bl	internal_pow
	ldr	r3, [fp, #-292]
	lsl	r3, r3, #3
	sub	r2, fp, #12
	add	r3, r2, r3
	sub	r3, r3, #264
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-308]
	sub	r2, r3, #1
	sub	r3, fp, #148
	mov	r1, r2
	mov	r0, r3
	bl	determinant
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #284
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-284]
	str	r3, [fp, #-280]
	ldr	r3, [fp, #-292]
	add	r3, r3, #1
	str	r3, [fp, #-292]
.L451:
	ldr	r2, [fp, #-292]
	ldr	r3, [fp, #-308]
	cmp	r2, r3
	blt	.L460
.L448:
	sub	r3, fp, #284
	ldmia	r3, {r2-r3}
	ldr	r1, .L464
	ldr	r0, [r1]
	ldr	r1, [fp, #-16]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L462
	bl	__stack_chk_fail
.L462:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L465:
	.align	2
.L464:
	.word	.LC27
	.word	1072693248
	.word	-1074790400
	.size	fxp_determinant, .-fxp_determinant
	.align	2
	.global	transpose
	.syntax unified
	.arm
	.fpu softvfp
	.type	transpose, %function
transpose:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L467
.L470:
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L468
.L469:
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #5
	ldr	r2, [fp, #-16]
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #5
	ldr	r1, [fp, #-20]
	add	r0, r1, r3
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-12]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L468:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	blt	.L469
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L467:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	blt	.L470
	nop
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	transpose, .-transpose
	.align	2
	.global	fxp_transpose
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_transpose, %function
fxp_transpose:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L472
.L475:
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L473
.L474:
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #4
	ldr	r2, [fp, #-16]
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #4
	ldr	r1, [fp, #-20]
	add	r3, r1, r3
	ldr	r1, [fp, #-8]
	ldr	r1, [r2, r1, lsl #2]
	ldr	r2, [fp, #-12]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L473:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	blt	.L474
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L472:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	blt	.L475
	nop
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	fxp_transpose, .-fxp_transpose
	.align	2
	.global	generic_timing_shift_l_double
	.syntax unified
	.arm
	.fpu softvfp
	.type	generic_timing_shift_l_double, %function
generic_timing_shift_l_double:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #36
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, .L480
	ldr	r3, [r3, #16]
	lsl	r1, r3, #1
	ldr	r3, .L480
	ldr	r2, [r3, #20]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L480
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L480
	ldr	r3, [r3, #24]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #28]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #36]
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L480+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L480+4
	str	r3, [r2]
	ldr	r3, [fp, #-32]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, .L480
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r2, r3, r2
	ldr	r3, .L480
	ldr	r3, [r3, #76]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #36]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #84]
	add	r2, r2, r3
	ldr	r3, .L480+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L480+4
	str	r3, [r2]
	ldr	r3, .L480
	ldr	r3, [r3, #36]
	lsl	r2, r3, #1
	ldr	r3, .L480
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L480+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L480+4
	str	r3, [r2]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L477
.L478:
	ldr	r3, .L480
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #4
	add	r2, r3, r2
	ldr	r3, .L480
	ldr	r3, [r3, #52]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #56]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #60]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #64]
	lsl	r3, r3, #1
	add	r1, r2, r3
	ldr	r3, .L480
	ldr	r2, [r3, #76]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r2, r1, r3
	ldr	r3, .L480
	ldr	r3, [r3, #68]
	lsl	r3, r3, #1
	add	r1, r2, r3
	ldr	r3, .L480
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L480
	ldr	r3, [r3, #84]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #116]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #44]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #80]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #92]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #96]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #120]
	add	r2, r2, r3
	ldr	r3, .L480+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L480+4
	str	r3, [r2]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-32]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L477:
	ldr	r3, [fp, #-36]
	sub	r3, r3, #1
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L478
	ldr	r3, [fp, #-36]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r1, r2, r3
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, .L480
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r1, r3
	ldr	r3, .L480
	ldr	r2, [r3, #76]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r1, r1, r3
	ldr	r3, .L480
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L480
	ldr	r3, [r3, #52]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #56]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #64]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #60]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #44]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #48]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #116]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #20]
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #28]
	add	r2, r2, r3
	ldr	r3, .L480+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L480+4
	str	r3, [r2]
	ldr	r3, .L480
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r2, r3, r2
	ldr	r3, .L480
	ldr	r3, [r3, #108]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L480
	ldr	r3, [r3, #112]
	add	r2, r2, r3
	ldr	r3, .L480+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L480+4
	str	r3, [r2]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L481:
	.align	2
.L480:
	.word	hw
	.word	generic_timer
	.size	generic_timing_shift_l_double, .-generic_timing_shift_l_double
	.align	2
	.global	generic_timing_shift_r_double
	.syntax unified
	.arm
	.fpu softvfp
	.type	generic_timing_shift_r_double, %function
generic_timing_shift_r_double:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #36
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, .L486
	ldr	r3, [r3, #16]
	lsl	r1, r3, #1
	ldr	r3, .L486
	ldr	r2, [r3, #20]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L486
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L486
	ldr	r3, [r3, #24]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #28]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #36]
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L486+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L486+4
	str	r3, [r2]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, .L486
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #3
	sub	r2, r3, r2
	ldr	r3, .L486
	ldr	r3, [r3, #56]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #52]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #76]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #36]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #60]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #64]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #84]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #44]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #48]
	add	r2, r2, r3
	ldr	r3, .L486+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L486+4
	str	r3, [r2]
	ldr	r3, .L486
	ldr	r2, [r3, #40]
	ldr	r3, .L486
	ldr	r3, [r3, #36]
	add	r3, r2, r3
	lsl	r2, r3, #1
	ldr	r3, .L486
	ldr	r3, [r3, #24]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L486+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L486+4
	str	r3, [r2]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #1
	str	r3, [fp, #-16]
	b	.L483
.L484:
	ldr	r3, [fp, #-16]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-32]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, .L486
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r2, r3, r2
	ldr	r3, .L486
	ldr	r3, [r3, #52]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #56]
	lsl	r3, r3, #2
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #60]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #64]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #76]
	lsl	r3, r3, #2
	add	r1, r2, r3
	ldr	r3, .L486
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L486
	ldr	r3, [r3, #44]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #48]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #84]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #116]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #24]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #92]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #96]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #120]
	add	r2, r2, r3
	ldr	r3, .L486+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L486+4
	str	r3, [r2]
	ldr	r3, [fp, #-16]
	sub	r3, r3, #1
	str	r3, [fp, #-16]
.L483:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bgt	.L484
	ldr	r1, [fp, #-32]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, .L486
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	mov	r1, r3
	ldr	r3, .L486
	ldr	r2, [r3, #76]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L486
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L486
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L486
	ldr	r3, [r3, #108]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #112]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #112]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #28]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #20]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #116]
	add	r2, r2, r3
	ldr	r3, .L486
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L486+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L486+4
	str	r3, [r2]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L487:
	.align	2
.L486:
	.word	hw
	.word	generic_timer
	.size	generic_timing_shift_r_double, .-generic_timing_shift_r_double
	.align	2
	.global	shiftL
	.syntax unified
	.arm
	.fpu softvfp
	.type	shiftL, %function
shiftL:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L489
.L490:
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-20]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-20]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L489:
	ldr	r3, [fp, #-24]
	sub	r3, r3, #1
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	blt	.L490
	ldr	r3, [fp, #-24]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	shiftL, .-shiftL
	.align	2
	.global	shiftR
	.syntax unified
	.arm
	.fpu softvfp
	.type	shiftR, %function
shiftR:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-16]
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, [fp, #-24]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-24]
	sub	r3, r3, #1
	str	r3, [fp, #-12]
	b	.L493
.L494:
	ldr	r3, [fp, #-12]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-20]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-20]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #1
	str	r3, [fp, #-12]
.L493:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bgt	.L494
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	shiftR, .-shiftR
	.align	2
	.global	shiftLfloat
	.syntax unified
	.arm
	.fpu softvfp
	.type	shiftLfloat, %function
shiftLfloat:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-16]	@ float
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, [fp, #-20]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-8]	@ float
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L497
.L498:
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-20]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-20]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L497:
	ldr	r3, [fp, #-24]
	sub	r3, r3, #1
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	blt	.L498
	ldr	r3, [fp, #-24]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-8]	@ float
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	shiftLfloat, .-shiftLfloat
	.align	2
	.global	shiftRfloat
	.syntax unified
	.arm
	.fpu softvfp
	.type	shiftRfloat, %function
shiftRfloat:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #28
	str	r0, [fp, #-16]	@ float
	str	r1, [fp, #-20]
	str	r2, [fp, #-24]
	ldr	r3, [fp, #-24]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-8]	@ float
	ldr	r3, [fp, #-24]
	sub	r3, r3, #1
	str	r3, [fp, #-12]
	b	.L501
.L502:
	ldr	r3, [fp, #-12]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-20]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-20]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-12]
	sub	r3, r3, #1
	str	r3, [fp, #-12]
.L501:
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bgt	.L502
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-8]	@ float
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	shiftRfloat, .-shiftRfloat
	.align	2
	.global	shiftRDdouble
	.syntax unified
	.arm
	.fpu softvfp
	.type	shiftRDdouble, %function
shiftRDdouble:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #36
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-32]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L505
.L506:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-32]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L505:
	ldr	r3, [fp, #-36]
	sub	r3, r3, #1
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L506
	ldr	r3, [fp, #-36]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r1, r2, r3
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	shiftRDdouble, .-shiftRDdouble
	.align	2
	.global	shiftRdouble
	.syntax unified
	.arm
	.fpu softvfp
	.type	shiftRdouble, %function
shiftRdouble:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #36
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #1
	str	r3, [fp, #-16]
	b	.L509
.L510:
	ldr	r3, [fp, #-16]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-32]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-16]
	sub	r3, r3, #1
	str	r3, [fp, #-16]
.L509:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bgt	.L510
	ldr	r1, [fp, #-32]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	shiftRdouble, .-shiftRdouble
	.align	2
	.global	shiftLDouble
	.syntax unified
	.arm
	.fpu softvfp
	.type	shiftLDouble, %function
shiftLDouble:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #36
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-32]
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L513
.L514:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-32]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L513:
	ldr	r3, [fp, #-36]
	sub	r3, r3, #1
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L514
	ldr	r3, [fp, #-36]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-32]
	add	r1, r2, r3
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	shiftLDouble, .-shiftLDouble
	.align	2
	.global	shiftLboth
	.syntax unified
	.arm
	.fpu softvfp
	.type	shiftLboth, %function
shiftLboth:
	@ args = 4, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #36
	str	r0, [fp, #-24]	@ float
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-36]
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-8]	@ float
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L517
.L518:
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-36]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-36]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-28]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L517:
	ldr	r3, [fp, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	blt	.L518
	ldr	r3, [fp, #4]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-36]
	add	r3, r2, r3
	ldr	r2, [fp, #-32]
	str	r2, [r3]
	ldr	r3, [fp, #4]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldr	r2, [fp, #-24]	@ float
	str	r2, [r3]	@ float
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	shiftLboth, .-shiftLboth
	.align	2
	.global	shiftRboth
	.syntax unified
	.arm
	.fpu softvfp
	.type	shiftRboth, %function
shiftRboth:
	@ args = 4, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #36
	str	r0, [fp, #-24]	@ float
	str	r1, [fp, #-28]
	str	r2, [fp, #-32]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #4]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-36]
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	ldr	r3, [fp, #4]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	str	r3, [fp, #-8]	@ float
	ldr	r3, [fp, #4]
	sub	r3, r3, #1
	str	r3, [fp, #-16]
	b	.L520
.L521:
	ldr	r3, [fp, #-16]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-36]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-36]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-28]
	add	r2, r2, r3
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-28]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-16]
	sub	r3, r3, #1
	str	r3, [fp, #-16]
.L520:
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bgt	.L521
	ldr	r3, [fp, #-36]
	ldr	r2, [fp, #-32]
	str	r2, [r3]
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-24]	@ float
	str	r2, [r3]	@ float
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	shiftRboth, .-shiftRboth
	.align	2
	.global	order
	.syntax unified
	.arm
	.fpu softvfp
	.type	order, %function
order:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	ble	.L523
	ldr	r3, [fp, #-8]
	sub	r3, r3, #1
	b	.L525
.L523:
	ldr	r3, [fp, #-12]
	sub	r3, r3, #1
.L525:
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	order, .-order
	.align	2
	.global	fxp_check_limit_cycle
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_check_limit_cycle, %function
fxp_check_limit_cycle:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-28]
	mov	r3, #1
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #2
	str	r3, [fp, #-28]
	b	.L527
.L531:
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	cmp	r2, r3
	beq	.L538
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-28]
	sub	r3, r3, #1
	str	r3, [fp, #-28]
.L527:
	ldr	r3, [fp, #-28]
	cmp	r3, #0
	bge	.L531
	b	.L530
.L538:
	nop
.L530:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	beq	.L532
	ldr	r3, [fp, #-24]
	cmp	r3, #1
	beq	.L532
	mov	r3, #1
	b	.L533
.L532:
	mov	r3, #0
.L533:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r1, [fp, #-24]
	ldr	r0, .L539
	bl	printf
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #1
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #1
	str	r3, [fp, #-28]
	b	.L534
.L537:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-24]
	sub	r3, r2, r3
	ldr	r2, [fp, #-28]
	cmp	r2, r3
	blt	.L535
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-24]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r0, .L539+4
	bl	printf
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-24]
	sub	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	ble	.L536
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [r3]
	ldr	r1, [fp, #-28]
	ldr	r3, [fp, #-24]
	sub	r3, r1, r3
	lsl	r3, r3, #2
	ldr	r1, [fp, #-32]
	add	r3, r1, r3
	ldr	r3, [r3]
	cmp	r2, r3
	bne	.L536
	ldr	r3, [fp, #-20]
	add	r3, r3, #2
	str	r3, [fp, #-20]
.L535:
	ldr	r3, [fp, #-28]
	sub	r3, r3, #1
	str	r3, [fp, #-28]
.L534:
	ldr	r3, [fp, #-28]
	cmp	r3, #0
	bge	.L537
.L536:
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	movgt	r3, #1
	movle	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r1, [fp, #-12]
	ldr	r0, .L539+8
	bl	printf
	ldr	r1, [fp, #-20]
	ldr	r0, .L539+12
	bl	printf
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	moveq	r3, #1
	movne	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	mov	r0, #0
	bl	__DSVERIFIER_assert
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L540:
	.align	2
.L539:
	.word	.LC15
	.word	.LC16
	.word	.LC17
	.word	.LC18
	.size	fxp_check_limit_cycle, .-fxp_check_limit_cycle
	.section	.rodata
	.align	2
.LC28:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	fxp_check_persistent_limit_cycle
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_check_persistent_limit_cycle, %function
fxp_check_persistent_limit_cycle:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #52
	str	r0, [fp, #-56]
	str	r1, [fp, #-60]
	ldr	r3, .L561
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-44]
	mov	r3, #0
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-56]
	ldr	r3, [r3]
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L542
.L547:
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, [fp, #-28]
	cmp	r2, r3
	beq	.L543
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
	b	.L544
.L543:
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	bne	.L560
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L544:
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L542:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-60]
	cmp	r2, r3
	blt	.L547
	b	.L546
.L560:
	nop
.L546:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-44]
	add	r3, r2, r3
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-36]
	cmp	r3, #1
	ble	.L548
	ldr	r3, [fp, #-60]
	lsr	r2, r3, #31
	add	r3, r2, r3
	asr	r3, r3, #1
	mov	r2, r3
	ldr	r3, [fp, #-36]
	cmp	r3, r2
	bgt	.L548
	mov	r3, #1
	b	.L549
.L548:
	mov	r3, #0
.L549:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	ip, [fp, #-36]
	mov	r3, sp
	mov	r4, r3
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L550
.L552:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	bge	.L551
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r1, [r3]
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-40]
	str	r1, [r3, r2, lsl #2]
.L551:
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L550:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-60]
	cmp	r2, r3
	blt	.L552
	mov	r3, #0
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-32]
	mov	r3, #0
	strb	r3, [fp, #-45]
	b	.L553
.L557:
	ldr	r3, [fp, #-40]
	add	r2, r3, #1
	str	r2, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r2, [r3]
	ldr	r3, [fp, #-32]
	add	r1, r3, #1
	str	r1, [fp, #-32]
	ldr	r1, [fp, #-20]
	ldr	r3, [r1, r3, lsl #2]
	cmp	r2, r3
	bne	.L554
	mov	r3, #1
	strb	r3, [fp, #-45]
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	bne	.L553
	b	.L559
.L554:
	mov	r3, #0
	strb	r3, [fp, #-45]
	b	.L556
.L559:
	mov	r3, #0
	str	r3, [fp, #-32]
.L553:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-60]
	cmp	r2, r3
	blt	.L557
.L556:
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	eor	r3, r3, #1
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	mov	sp, r4
	nop
	ldr	r3, .L561
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L558
	bl	__stack_chk_fail
.L558:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L562:
	.align	2
.L561:
	.word	.LC28
	.size	fxp_check_persistent_limit_cycle, .-fxp_check_persistent_limit_cycle
	.align	2
	.global	fxp_check_oscillations
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_check_oscillations, %function
fxp_check_oscillations:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	ldr	r3, [fp, #-32]
	ldr	r2, [r3]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r1, [fp, #-32]
	add	r3, r1, r3
	ldr	r3, [r3]
	cmp	r2, r3
	beq	.L564
	ldr	r3, [fp, #-36]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [r3]
	ldr	r3, [fp, #-36]
	sub	r3, r3, #-1073741822
	lsl	r3, r3, #2
	ldr	r1, [fp, #-32]
	add	r3, r1, r3
	ldr	r3, [r3]
	cmp	r2, r3
	beq	.L564
	mov	r3, #1
	b	.L565
.L564:
	mov	r3, #0
.L565:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	mov	r3, #0
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-24]
	mov	r3, #2
	str	r3, [fp, #-20]
	b	.L566
.L573:
	ldr	r3, [fp, #-20]
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L567
.L572:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	ble	.L568
	mov	r3, #0
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-24]
.L568:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	bge	.L574
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-32]
	add	r3, r1, r3
	ldr	r3, [r3]
	cmp	r2, r3
	bne	.L570
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-12]
	cmp	r2, r3
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
.L570:
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L567:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	blt	.L572
	b	.L571
.L574:
	nop
.L571:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L566:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	blt	.L573
	nop
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fxp_check_oscillations, .-fxp_check_oscillations
	.align	2
	.global	fxp_ln
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_ln, %function
fxp_ln:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]
	ldr	r3, .L589
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-16]
	cmp	r3, #32768
	bge	.L576
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #16
	str	r3, [fp, #-16]
	ldr	r2, [fp, #-12]
	ldr	r3, .L589+4
	add	r3, r2, r3
	str	r3, [fp, #-12]
.L576:
	ldr	r3, [fp, #-16]
	cmp	r3, #8388608
	bge	.L577
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #8
	str	r3, [fp, #-16]
	ldr	r2, [fp, #-12]
	ldr	r3, .L589+8
	add	r3, r2, r3
	str	r3, [fp, #-12]
.L577:
	ldr	r3, [fp, #-16]
	cmn	r3, #-134217727
	bgt	.L578
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #4
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #181248
	sub	r3, r3, #456
	str	r3, [fp, #-12]
.L578:
	ldr	r3, [fp, #-16]
	cmn	r3, #-536870911
	bgt	.L579
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #90112
	sub	r3, r3, #740
	str	r3, [fp, #-12]
.L579:
	ldr	r3, [fp, #-16]
	cmn	r3, #-1073741823
	bgt	.L580
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #45312
	sub	r3, r3, #114
	str	r3, [fp, #-12]
.L580:
	ldr	r3, [fp, #-16]
	asr	r3, r3, #1
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L581
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #26368
	sub	r3, r3, #205
	str	r3, [fp, #-12]
.L581:
	ldr	r3, [fp, #-16]
	asr	r3, r3, #2
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L582
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #14592
	sub	r3, r3, #32
	str	r3, [fp, #-12]
.L582:
	ldr	r3, [fp, #-16]
	asr	r3, r3, #3
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L583
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #7680
	sub	r3, r3, #39
	str	r3, [fp, #-12]
.L583:
	ldr	r3, [fp, #-16]
	asr	r3, r3, #4
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L584
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #3968
	sub	r3, r3, #5
	str	r3, [fp, #-12]
.L584:
	ldr	r3, [fp, #-16]
	asr	r3, r3, #5
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L585
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #2016
	sub	r3, r3, #1
	str	r3, [fp, #-12]
.L585:
	ldr	r3, [fp, #-16]
	asr	r3, r3, #6
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L586
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #1016
	str	r3, [fp, #-12]
.L586:
	ldr	r3, [fp, #-16]
	asr	r3, r3, #7
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	blt	.L587
	ldr	r3, [fp, #-8]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-12]
	sub	r3, r3, #508
	sub	r3, r3, #2
	str	r3, [fp, #-12]
.L587:
	ldr	r3, [fp, #-16]
	rsb	r3, r3, #-2147483648
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	asr	r3, r3, #15
	ldr	r2, [fp, #-12]
	sub	r3, r2, r3
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-12]
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L590:
	.align	2
.L589:
	.word	681391
	.word	-726817
	.word	-363409
	.size	fxp_ln, .-fxp_ln
	.align	2
	.global	fxp_log10_low
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_log10_low, %function
fxp_log10_low:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #24
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	mov	r2, #0
	ldr	r3, .L593
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L593+4
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-24]
	ldr	r0, [fp, #-24]
	bl	fxp_ln
	str	r0, [fp, #-20]
	mov	r0, #655360
	bl	fxp_ln
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-20]
	bl	__aeabi_i2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-16]
	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
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L594:
	.align	2
.L593:
	.word	1089470464
	.word	1071644672
	.size	fxp_log10_low, .-fxp_log10_low
	.align	2
	.global	fxp_log10
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_log10, %function
fxp_log10:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L605
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L603
	mov	r2, #8388608
	ldr	r3, .L605+4
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L604
	mov	r2, #8388608
	ldr	r3, .L605+4
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	fxp_log10_low
	ldr	r2, .L605+8
	ldr	r3, .L605+12
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L600
.L604:
	mov	r2, #0
	ldr	r3, .L605
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	fxp_log10_low
	ldr	r2, .L605+8
	ldr	r3, .L605+16
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L600
.L603:
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	fxp_log10_low
	mov	r2, r0
	mov	r3, r1
.L600:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L606:
	.align	2
.L605:
	.word	1088421824
	.word	1104150400
	.word	-1574947053
	.word	1075974094
	.word	1074925518
	.size	fxp_log10, .-fxp_log10
	.section	.rodata
	.align	2
.LC29:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/core/functions.h\000"
	.align	2
.LC30:
	.ascii	"sv >= nv\000"
	.text
	.align	2
	.global	snrVariance
	.syntax unified
	.arm
	.fpu softvfp
	.type	snrVariance, %function
snrVariance:
	@ args = 0, pretend = 0, frame = 64
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #64
	str	r0, [fp, #-64]
	str	r1, [fp, #-68]
	str	r2, [fp, #-72]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-56]
	b	.L608
.L609:
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-56]
	add	r3, r3, #1
	str	r3, [fp, #-56]
.L608:
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-72]
	cmp	r2, r3
	blt	.L609
	ldr	r0, [fp, #-72]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r0, [fp, #-72]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-56]
	b	.L610
.L611:
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #52
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-56]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-56]
	add	r3, r3, #1
	str	r3, [fp, #-56]
.L610:
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-72]
	cmp	r2, r3
	blt	.L611
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L617
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L614
	ldr	r3, .L618
	ldr	r2, .L618+4
	ldr	r1, .L618+8
	ldr	r0, .L618+12
	bl	__assert_fail
.L614:
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2f
	mov	r3, r0
	b	.L615
.L617:
	ldr	r3, .L618+16
.L615:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L619:
	.align	2
.L618:
	.word	__PRETTY_FUNCTION__.6126
	.word	373
	.word	.LC29
	.word	.LC30
	.word	1176256410
	.size	snrVariance, .-snrVariance
	.global	__aeabi_fmul
	.align	2
	.global	snrPower
	.syntax unified
	.arm
	.fpu softvfp
	.type	snrPower, %function
snrPower:
	@ args = 0, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L621
.L622:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L621:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-48]
	cmp	r2, r3
	blt	.L622
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L628
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L625
	ldr	r3, .L629
	ldr	r2, .L629+4
	ldr	r1, .L629+8
	ldr	r0, .L629+12
	bl	__assert_fail
.L625:
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2f
	mov	r3, r0
	b	.L626
.L628:
	ldr	r3, .L629+16
.L626:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L630:
	.align	2
.L629:
	.word	__PRETTY_FUNCTION__.6139
	.word	394
	.word	.LC29
	.word	.LC30
	.word	1176256410
	.size	snrPower, .-snrPower
	.global	__aeabi_fcmpeq
	.global	__aeabi_fdiv
	.section	.rodata
	.align	2
.LC31:
	.ascii	"power >= 1.0f\000"
	.text
	.align	2
	.global	snrPoint
	.syntax unified
	.arm
	.fpu softvfp
	.type	snrPoint, %function
snrPoint:
	@ 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]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L632
.L639:
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-36]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L641
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-32]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-36]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r2, #0
	ldr	r3, .L643
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L642
	mov	r2, #0
	ldr	r3, .L643+4
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L642
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L643+8
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L635
	ldr	r3, .L643+12
	mov	r2, #412
	ldr	r1, .L643+16
	ldr	r0, .L643+20
	bl	__assert_fail
.L641:
	nop
	b	.L635
.L642:
	nop
.L635:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L632:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r2, r3
	blt	.L639
	ldr	r3, .L643+24
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L644:
	.align	2
.L643:
	.word	1080213504
	.word	-1067270144
	.word	1072693248
	.word	__PRETTY_FUNCTION__.6149
	.word	.LC29
	.word	.LC31
	.word	1176256410
	.size	snrPoint, .-snrPoint
	.global	next
	.data
	.align	2
	.type	next, %object
	.size	next, 4
next:
	.word	1
	.text
	.align	2
	.global	rand
	.syntax unified
	.arm
	.fpu softvfp
	.type	rand, %function
rand:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	ldr	r3, .L647
	ldr	r3, [r3]
	ldr	r2, .L647+4
	mul	r3, r2, r3
	add	r3, r3, #12288
	add	r3, r3, #57
	ldr	r2, .L647
	str	r3, [r2]
	ldr	r3, .L647
	ldr	r3, [r3]
	lsr	r3, r3, #16
	lsl	r3, r3, #17
	lsr	r3, r3, #17
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L648:
	.align	2
.L647:
	.word	next
	.word	1103515245
	.size	rand, .-rand
	.align	2
	.global	srand
	.syntax unified
	.arm
	.fpu softvfp
	.type	srand, %function
srand:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	ldr	r2, .L650
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L651:
	.align	2
.L650:
	.word	next
	.size	srand, .-srand
	.global	__aeabi_fsub
	.global	__aeabi_fadd
	.section	.rodata
	.align	2
.LC32:
	.ascii	"(double)timer1*CYCLE <= (double)DEADLINE\000"
	.text
	.align	2
	.global	iirIIOutTime
	.syntax unified
	.arm
	.fpu softvfp
	.type	iirIIOutTime, %function
iirIIOutTime:
	@ args = 8, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]	@ float
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #4
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #4
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-32]
	add	r3, r3, #71
	str	r3, [fp, #-32]
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L653
.L654:
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-40]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-32]
	add	r3, r3, #54
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L653:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L654
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-44]	@ float
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-40]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L655
.L656:
	ldr	r3, [fp, #-24]
	add	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	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, #-32]
	add	r3, r3, #46
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L655:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L656
	ldr	r3, [fp, #-32]
	add	r3, r3, #38
	str	r3, [fp, #-32]
	ldr	r0, [fp, #-32]
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L659
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L659+4
	ldr	r3, .L659+8
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L657
	ldr	r3, .L659+12
	ldr	r2, .L659+16
	ldr	r1, .L659+20
	ldr	r0, .L659+24
	bl	__assert_fail
.L657:
	ldr	r3, [fp, #-16]	@ float
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L660:
	.align	2
.L659:
	.word	1097761920
	.word	1202590843
	.word	1065646817
	.word	__PRETTY_FUNCTION__.6181
	.word	450
	.word	.LC29
	.word	.LC32
	.size	iirIIOutTime, .-iirIIOutTime
	.align	2
	.global	iirIItOutTime
	.syntax unified
	.arm
	.fpu softvfp
	.type	iirIItOutTime, %function
iirIItOutTime:
	@ args = 8, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #44
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]	@ float
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-20]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #4
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-28]
	ldr	r2, [fp, #8]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-44]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-20]	@ float
	ldr	r3, [fp, #-36]
	add	r3, r3, #105
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L662
.L665:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-40]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	bge	.L663
	ldr	r3, [fp, #-32]
	add	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-20]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r4, r2, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #-36]
	add	r3, r3, #41
	str	r3, [fp, #-36]
.L663:
	ldr	r3, [fp, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	bge	.L664
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-44]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r1, [r3]	@ float
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r4, r2, r3
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4]	@ float
	ldr	r3, [fp, #-36]
	add	r3, r3, #38
	str	r3, [fp, #-36]
.L664:
	ldr	r3, [fp, #-36]
	add	r3, r3, #54
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L662:
	ldr	r3, [fp, #-16]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	blt	.L665
	ldr	r3, [fp, #-36]
	add	r3, r3, #7
	str	r3, [fp, #-36]
	ldr	r0, [fp, #-36]
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L668
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L668+4
	ldr	r3, .L668+8
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L666
	ldr	r3, .L668+12
	ldr	r2, .L668+16
	ldr	r1, .L668+20
	ldr	r0, .L668+24
	bl	__assert_fail
.L666:
	ldr	r3, [fp, #-20]	@ float
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L669:
	.align	2
.L668:
	.word	1097761920
	.word	1202590843
	.word	1065646817
	.word	__PRETTY_FUNCTION__.6199
	.word	477
	.word	.LC29
	.word	.LC32
	.size	iirIItOutTime, .-iirIItOutTime
	.align	2
	.global	iirIItOutTime_double
	.syntax unified
	.arm
	.fpu softvfp
	.type	iirIItOutTime_double, %function
iirIItOutTime_double:
	@ args = 16, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r6, r7, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #52
	str	r0, [fp, #-56]
	str	r2, [fp, #-68]
	str	r3, [fp, #-64]
	mov	r3, #0
	str	r3, [fp, #-48]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	str	r3, [fp, #-44]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-40]
	ldr	r2, [fp, #16]
	ldr	r3, [fp, #12]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-56]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-48]
	add	r3, r3, #105
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L671
.L674:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r2, [fp, #-36]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-56]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #12]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bge	.L672
	ldr	r3, [fp, #-44]
	add	r2, r3, #8
	str	r2, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r4, r2, r3
	mov	r2, r6
	mov	r3, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-48]
	add	r3, r3, #41
	str	r3, [fp, #-48]
.L672:
	ldr	r3, [fp, #16]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bge	.L673
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-36]
	lsl	r1, r1, #3
	ldr	r0, [fp, #-56]
	add	r4, r0, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-48]
	add	r3, r3, #38
	str	r3, [fp, #-48]
.L673:
	ldr	r3, [fp, #-48]
	add	r3, r3, #54
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L671:
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	blt	.L674
	ldr	r3, [fp, #-48]
	add	r3, r3, #7
	str	r3, [fp, #-48]
	ldr	r0, [fp, #-48]
	bl	__aeabi_i2d
	mov	r2, #0
	ldr	r3, .L677
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L677+4
	ldr	r3, .L677+8
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L675
	ldr	r3, .L677+12
	mov	r2, #504
	ldr	r1, .L677+16
	ldr	r0, .L677+20
	bl	__assert_fail
.L675:
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r6, r7, fp, pc}
.L678:
	.align	2
.L677:
	.word	1097761920
	.word	1202590843
	.word	1065646817
	.word	__PRETTY_FUNCTION__.6217
	.word	.LC29
	.word	.LC32
	.size	iirIItOutTime_double, .-iirIItOutTime_double
	.align	2
	.global	iirOutBoth
	.syntax unified
	.arm
	.fpu softvfp
	.type	iirOutBoth, %function
iirOutBoth:
	@ args = 32, pretend = 0, frame = 64
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #64
	str	r0, [fp, #-56]
	str	r1, [fp, #-60]
	str	r2, [fp, #-64]
	str	r3, [fp, #-68]
	mov	r3, #0
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #16]
	add	r3, r3, #4
	str	r3, [fp, #-52]
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #8]
	add	r3, r2, r3
	str	r3, [fp, #-48]
	ldr	r3, [fp, #20]
	str	r3, [fp, #-44]
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #12]
	add	r3, r2, r3
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-64]
	add	r3, r3, #4
	str	r3, [fp, #-36]
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-68]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L680
.L681:
	ldr	r3, [fp, #-44]
	add	r2, r3, #4
	str	r2, [fp, #-44]
	ldr	r0, [r3]
	ldr	r3, [fp, #-40]
	sub	r2, r3, #4
	str	r2, [fp, #-40]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	fxp_add
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-24]
	sub	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	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, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L680:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #32]
	cmp	r2, r3
	blt	.L681
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L682
.L683:
	ldr	r3, [fp, #-52]
	add	r2, r3, #4
	str	r2, [fp, #-52]
	ldr	r0, [r3]
	ldr	r3, [fp, #-48]
	sub	r2, r3, #4
	str	r2, [fp, #-48]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	fxp_sub
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-36]
	add	r2, r3, #4
	str	r2, [fp, #-36]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-32]
	sub	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L682:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #28]
	cmp	r2, r3
	blt	.L683
	ldr	r3, [fp, #24]
	ldr	r2, [fp, #-20]
	str	r2, [r3]
	ldr	r3, [fp, #4]
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	iirOutBoth, .-iirOutBoth
	.align	2
	.global	iirOutFixedL
	.syntax unified
	.arm
	.fpu softvfp
	.type	iirOutFixedL, %function
iirOutFixedL:
	@ args = 12, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-16]
	ldr	r3, [fp, #8]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-52]
	add	r3, r2, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #4
	str	r3, [fp, #-28]
	ldr	r3, [fp, #12]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #4]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L685
.L686:
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-44]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #-24]
	sub	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	fxp_add
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L685:
	ldr	r3, [fp, #12]
	sub	r3, r3, #1
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	blt	.L686
	ldr	r3, [fp, #12]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r2, [fp, #-48]
	str	r2, [r3]
	ldr	r3, [fp, #-24]
	sub	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	fxp_add
	str	r0, [fp, #-16]
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L687
.L688:
	ldr	r3, [fp, #-32]
	sub	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	fxp_sub
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-40]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L687:
	ldr	r3, [fp, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	blt	.L688
	ldr	r3, [fp, #8]
	cmp	r3, #1
	ble	.L689
	ldr	r3, [fp, #-32]
	sub	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	fxp_sub
	str	r0, [fp, #-16]
.L689:
	ldr	r3, [fp, #8]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	iirOutFixedL, .-iirOutFixedL
	.align	2
	.global	iirOutFloatL
	.syntax unified
	.arm
	.fpu softvfp
	.type	iirOutFloatL, %function
iirOutFloatL:
	@ args = 12, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]	@ float
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #8]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-52]
	add	r3, r2, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #4
	str	r3, [fp, #-28]
	ldr	r3, [fp, #12]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #4]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-44]
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L692
.L693:
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-44]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-24]
	sub	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	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, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L692:
	ldr	r3, [fp, #12]
	sub	r3, r3, #1
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	blt	.L693
	ldr	r3, [fp, #12]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	ldr	r2, [fp, #-48]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-24]
	sub	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L694
.L695:
	ldr	r3, [fp, #-32]
	sub	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-40]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L694:
	ldr	r3, [fp, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	blt	.L695
	ldr	r3, [fp, #8]
	cmp	r3, #1
	ble	.L696
	ldr	r3, [fp, #-32]
	sub	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
.L696:
	ldr	r3, [fp, #8]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-16]	@ float
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	iirOutFloatL, .-iirOutFloatL
	.align	2
	.global	iirOutBothL
	.syntax unified
	.arm
	.fpu softvfp
	.type	iirOutBothL, %function
iirOutBothL:
	@ args = 32, pretend = 0, frame = 64
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #64
	str	r0, [fp, #-56]
	str	r1, [fp, #-60]
	str	r2, [fp, #-64]
	str	r3, [fp, #-68]
	mov	r3, #0
	str	r3, [fp, #-36]
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #16]
	add	r3, r2, r3
	str	r3, [fp, #-52]
	ldr	r3, [fp, #8]
	add	r3, r3, #4
	str	r3, [fp, #-48]
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #20]
	add	r3, r2, r3
	str	r3, [fp, #-44]
	ldr	r3, [fp, #12]
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-56]
	add	r3, r3, #4
	str	r3, [fp, #-28]
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-60]
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L699
.L700:
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #12]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r1, [fp, #12]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #-44]
	sub	r2, r3, #4
	str	r2, [fp, #-44]
	ldr	r0, [r3]
	ldr	r3, [fp, #-40]
	add	r2, r3, #4
	str	r2, [fp, #-40]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-36]
	bl	fxp_add
	str	r0, [fp, #-36]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-60]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-24]
	sub	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	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, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L699:
	ldr	r3, [fp, #32]
	sub	r3, r3, #1
	ldr	r2, [fp, #-12]
	cmp	r2, r3
	blt	.L700
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #12]
	add	r3, r2, r3
	ldr	r2, [fp, #24]
	str	r2, [r3]
	ldr	r3, [fp, #-44]
	sub	r2, r3, #4
	str	r2, [fp, #-44]
	ldr	r0, [r3]
	ldr	r3, [fp, #-40]
	add	r2, r3, #4
	str	r2, [fp, #-40]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-36]
	bl	fxp_add
	str	r0, [fp, #-36]
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r3, r2, r3
	ldr	r2, [fp, #4]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-24]
	sub	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L701
.L702:
	ldr	r3, [fp, #-52]
	sub	r2, r3, #4
	str	r2, [fp, #-52]
	ldr	r0, [r3]
	ldr	r3, [fp, #-48]
	add	r2, r3, #4
	str	r2, [fp, #-48]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-36]
	bl	fxp_sub
	str	r0, [fp, #-36]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #8]
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r1, [fp, #8]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #-32]
	sub	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-56]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L701:
	ldr	r3, [fp, #28]
	sub	r3, r3, #1
	ldr	r2, [fp, #-8]
	cmp	r2, r3
	blt	.L702
	ldr	r3, [fp, #28]
	cmp	r3, #1
	ble	.L703
	ldr	r3, [fp, #-52]
	sub	r2, r3, #4
	str	r2, [fp, #-52]
	ldr	r0, [r3]
	ldr	r3, [fp, #-48]
	add	r2, r3, #4
	str	r2, [fp, #-48]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-36]
	bl	fxp_sub
	str	r0, [fp, #-36]
.L703:
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #8]
	add	r3, r2, r3
	ldr	r2, [fp, #-36]
	str	r2, [r3]
	ldr	r3, [fp, #28]
	cmp	r3, #1
	ble	.L704
	ldr	r3, [fp, #-32]
	sub	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
.L704:
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r2, [fp, #-16]	@ float
	str	r2, [r3]	@ float
	ldr	r0, [fp, #-36]
	bl	fxp_to_float
	mov	r3, r0
	ldr	r1, [fp, #-16]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	iirOutBothL, .-iirOutBothL
	.align	2
	.global	iirOutBothL2
	.syntax unified
	.arm
	.fpu softvfp
	.type	iirOutBothL2, %function
iirOutBothL2:
	@ args = 32, pretend = 0, frame = 64
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #64
	str	r0, [fp, #-56]
	str	r1, [fp, #-60]
	str	r2, [fp, #-64]
	str	r3, [fp, #-68]
	mov	r3, #0
	str	r3, [fp, #-52]
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #16]
	add	r3, r2, r3
	str	r3, [fp, #-36]
	ldr	r3, [fp, #8]
	add	r3, r3, #4
	str	r3, [fp, #-32]
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #20]
	add	r3, r2, r3
	str	r3, [fp, #-28]
	ldr	r3, [fp, #12]
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-48]	@ float
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-56]
	add	r3, r3, #4
	str	r3, [fp, #-16]
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-60]
	str	r3, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-44]
	mov	r3, #1
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-44]
	b	.L707
.L708:
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #12]
	add	r2, r2, r3
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #2
	ldr	r1, [fp, #12]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #32]
	sub	r2, r3, #1
	ldr	r3, [fp, #-44]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #20]
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #2
	ldr	r2, [fp, #12]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-52]
	bl	fxp_add
	str	r0, [fp, #-52]
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r2, r2, r3
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-60]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #32]
	sub	r2, r3, #1
	ldr	r3, [fp, #-44]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-48]	@ float
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L707:
	ldr	r3, [fp, #32]
	sub	r3, r3, #1
	ldr	r2, [fp, #-44]
	cmp	r2, r3
	blt	.L708
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #12]
	add	r3, r2, r3
	ldr	r2, [fp, #24]
	str	r2, [r3]
	ldr	r3, [fp, #32]
	sub	r2, r3, #1
	ldr	r3, [fp, #-44]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #20]
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #2
	ldr	r2, [fp, #12]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-52]
	bl	fxp_add
	str	r0, [fp, #-52]
	ldr	r3, [fp, #32]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r3, r2, r3
	ldr	r2, [fp, #4]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #32]
	sub	r2, r3, #1
	ldr	r3, [fp, #-44]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-60]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-48]	@ float
	mov	r3, #1
	str	r3, [fp, #-40]
	b	.L709
.L710:
	ldr	r2, [fp, #28]
	ldr	r3, [fp, #-40]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #16]
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #8]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-52]
	bl	fxp_sub
	str	r0, [fp, #-52]
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #8]
	add	r2, r2, r3
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r1, [fp, #8]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r2, [fp, #28]
	ldr	r3, [fp, #-40]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-48]	@ float
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r2, r2, r3
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-56]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L709:
	ldr	r3, [fp, #28]
	sub	r3, r3, #1
	ldr	r2, [fp, #-40]
	cmp	r2, r3
	blt	.L710
	ldr	r3, [fp, #28]
	cmp	r3, #1
	ble	.L711
	ldr	r2, [fp, #28]
	ldr	r3, [fp, #-40]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #16]
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #8]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-52]
	bl	fxp_sub
	str	r0, [fp, #-52]
.L711:
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #8]
	add	r3, r2, r3
	ldr	r2, [fp, #-52]
	str	r2, [r3]
	ldr	r3, [fp, #28]
	cmp	r3, #1
	ble	.L712
	ldr	r2, [fp, #28]
	ldr	r3, [fp, #-40]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-48]	@ float
.L712:
	ldr	r3, [fp, #28]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r2, [fp, #-48]	@ float
	str	r2, [r3]	@ float
	ldr	r0, [fp, #-52]
	bl	fxp_to_float
	mov	r3, r0
	ldr	r1, [fp, #-48]	@ float
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	iirOutBothL2, .-iirOutBothL2
	.section	.rodata
	.align	2
.LC33:
	.ascii	"An Overflow Occurred in the node a0\000"
	.text
	.align	2
	.global	fxp_direct_form_1
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_direct_form_1, %function
fxp_direct_form_1:
	@ args = 8, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-48]
	add	r3, r3, #4
	str	r3, [fp, #-32]
	ldr	r3, [fp, #4]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #8]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L715
.L716:
	ldr	r3, [fp, #-24]
	add	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]
	ldr	r3, [fp, #-20]
	sub	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	fxp_add
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L715:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L716
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L717
.L718:
	ldr	r3, [fp, #-32]
	add	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	sub	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	fxp_sub
	str	r0, [fp, #-16]
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L717:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L718
	ldr	r1, .L720
	ldr	r0, [fp, #-16]
	bl	fxp_verify_overflow_node
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, [fp, #-16]
	bl	fxp_div
	str	r0, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	fxp_quantize
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L721:
	.align	2
.L720:
	.word	.LC33
	.size	fxp_direct_form_1, .-fxp_direct_form_1
	.section	.rodata
	.align	2
.LC34:
	.ascii	"An Overflow Occurred in the node b0\000"
	.text
	.align	2
	.global	fxp_direct_form_2
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_direct_form_2, %function
fxp_direct_form_2:
	@ args = 8, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #44
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-48]
	add	r3, r3, #4
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r3, r3, #4
	str	r3, [fp, #-28]
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L723
.L724:
	ldr	r3, [fp, #-40]
	ldr	r4, [r3]
	ldr	r3, [fp, #-36]
	add	r2, r3, #4
	str	r2, [fp, #-36]
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	fxp_sub
	mov	r2, r0
	ldr	r3, [fp, #-40]
	str	r2, [r3]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L723:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L724
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	bl	fxp_add
	mov	r2, r0
	ldr	r3, [fp, #-40]
	str	r2, [r3]
	ldr	r3, [fp, #-40]
	ldr	r2, [r3]
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, r2
	bl	fxp_div
	mov	r2, r0
	ldr	r3, [fp, #-40]
	str	r2, [r3]
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]
	ldr	r1, .L728
	mov	r0, r3
	bl	fxp_verify_overflow_node
	ldr	r3, [fp, #-40]
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L725
.L726:
	ldr	r3, [fp, #-32]
	add	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-24]
	bl	fxp_add
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L725:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L726
	ldr	r0, [fp, #-24]
	bl	fxp_quantize
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L729:
	.align	2
.L728:
	.word	.LC34
	.size	fxp_direct_form_2, .-fxp_direct_form_2
	.align	2
	.global	fxp_transposed_direct_form_2
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_transposed_direct_form_2, %function
fxp_transposed_direct_form_2:
	@ args = 8, 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]
	ldr	r3, [fp, #-48]
	add	r3, r3, #4
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-28]
	ldr	r2, [fp, #8]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	bl	fxp_mult
	mov	r2, r0
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, r2
	bl	fxp_add
	str	r0, [fp, #-20]
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	fxp_div
	str	r0, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L731
.L734:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-40]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, [fp, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	bge	.L732
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r5, [r3]
	ldr	r3, [fp, #-32]
	add	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r3, [r3]
	ldr	r1, [fp, #-20]
	mov	r0, r3
	bl	fxp_mult
	mov	r1, r0
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r4, r2, r3
	mov	r0, r5
	bl	fxp_sub
	mov	r3, r0
	str	r3, [r4]
.L732:
	ldr	r3, [fp, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	bge	.L733
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r5, [r3]
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	bl	fxp_mult
	mov	r1, r0
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r4, r2, r3
	mov	r0, r5
	bl	fxp_add
	mov	r3, r0
	str	r3, [r4]
.L733:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L731:
	ldr	r3, [fp, #-16]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	blt	.L734
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r1, .L736
	mov	r0, r3
	bl	fxp_verify_overflow_node
	ldr	r0, [fp, #-20]
	bl	fxp_quantize
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L737:
	.align	2
.L736:
	.word	.LC33
	.size	fxp_transposed_direct_form_2, .-fxp_transposed_direct_form_2
	.align	2
	.global	double_direct_form_1
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_direct_form_1, %function
double_direct_form_1:
	@ args = 8, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	str	r3, [fp, #-36]
	ldr	r3, [fp, #4]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #8]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L739
.L740:
	ldr	r3, [fp, #-28]
	add	r2, r3, #8
	str	r2, [fp, #-28]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-24]
	sub	r2, r3, #8
	str	r2, [fp, #-24]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L739:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L740
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L741
.L742:
	ldr	r3, [fp, #-36]
	add	r2, r3, #8
	str	r2, [fp, #-36]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	sub	r2, r3, #8
	str	r2, [fp, #-32]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L741:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L742
	ldr	r3, [fp, #-48]
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	double_direct_form_1, .-double_direct_form_1
	.align	2
	.global	double_direct_form_2
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_direct_form_2, %function
double_direct_form_2:
	@ args = 16, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #48
	str	r0, [fp, #-48]
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	str	r3, [fp, #-40]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	str	r3, [fp, #-32]
	mov	r3, #1
	str	r3, [fp, #-24]
	b	.L745
.L746:
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	add	r2, r3, #8
	str	r2, [fp, #-32]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	mov	r2, r4
	mov	r3, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L745:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #12]
	cmp	r2, r3
	blt	.L746
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #4]
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-48]
	str	r3, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L747
.L748:
	ldr	r3, [fp, #-36]
	add	r2, r3, #8
	str	r2, [fp, #-36]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	add	r2, r3, #8
	str	r2, [fp, #-32]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L747:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #16]
	cmp	r2, r3
	blt	.L748
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
	.size	double_direct_form_2, .-double_direct_form_2
	.align	2
	.global	double_transposed_direct_form_2
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_transposed_direct_form_2, %function
double_transposed_direct_form_2:
	@ args = 16, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r6, r7, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #44
	str	r0, [fp, #-48]
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	str	r3, [fp, #-44]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-40]
	ldr	r2, [fp, #16]
	ldr	r3, [fp, #12]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #4]
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L751
.L754:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	ldr	r2, [fp, #-36]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-48]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #12]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bge	.L752
	ldr	r3, [fp, #-44]
	add	r2, r3, #8
	str	r2, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r4, r2, r3
	mov	r2, r6
	mov	r3, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
.L752:
	ldr	r3, [fp, #16]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bge	.L753
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-36]
	lsl	r1, r1, #3
	ldr	r0, [fp, #-48]
	add	r4, r0, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
.L753:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L751:
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	blt	.L754
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r6, r7, fp, pc}
	.size	double_transposed_direct_form_2, .-double_transposed_direct_form_2
	.align	2
	.global	float_direct_form_1
	.syntax unified
	.arm
	.fpu softvfp
	.type	float_direct_form_1, %function
float_direct_form_1:
	@ args = 8, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #4
	str	r3, [fp, #-32]
	ldr	r3, [fp, #4]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #8]
	sub	r3, r3, #-1073741823
	lsl	r3, r3, #2
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L757
.L758:
	ldr	r3, [fp, #-24]
	add	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-20]
	sub	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	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, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L757:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L758
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L759
.L760:
	ldr	r3, [fp, #-32]
	add	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-28]
	sub	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L759:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L760
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-16]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-16]	@ float
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	float_direct_form_1, .-float_direct_form_1
	.align	2
	.global	float_direct_form_2
	.syntax unified
	.arm
	.fpu softvfp
	.type	float_direct_form_2, %function
float_direct_form_2:
	@ args = 8, 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]	@ float
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	mov	r3, #0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-40]
	add	r3, r3, #4
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-44]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-32]
	add	r3, r3, #4
	str	r3, [fp, #-20]
	mov	r3, #1
	str	r3, [fp, #-8]
	b	.L763
.L764:
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-32]
	ldr	r3, [r3]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-32]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L763:
	ldr	r2, [fp, #-8]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L764
	ldr	r3, [fp, #-32]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-36]	@ float
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-32]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-32]
	ldr	r2, [r3]	@ float
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fdiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-32]
	str	r2, [r3]	@ float
	ldr	r3, [fp, #-32]
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-12]
	b	.L765
.L766:
	ldr	r3, [fp, #-24]
	add	r2, r3, #4
	str	r2, [fp, #-24]
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-20]
	add	r2, r3, #4
	str	r2, [fp, #-20]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	bl	__aeabi_fmul
	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, #-12]
	add	r3, r3, #1
	str	r3, [fp, #-12]
.L765:
	ldr	r2, [fp, #-12]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L766
	ldr	r3, [fp, #-16]	@ float
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	float_direct_form_2, .-float_direct_form_2
	.align	2
	.global	float_transposed_direct_form_2
	.syntax unified
	.arm
	.fpu softvfp
	.type	float_transposed_direct_form_2, %function
float_transposed_direct_form_2:
	@ args = 8, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #44
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]	@ float
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	mov	r3, #0
	str	r3, [fp, #-20]	@ float
	ldr	r3, [fp, #-48]
	add	r3, r3, #4
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-28]
	ldr	r2, [fp, #8]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-44]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-40]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-20]	@ float
	ldr	r3, [fp, #-48]
	ldr	r3, [r3]	@ float
	mov	r1, r3
	ldr	r0, [fp, #-20]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-20]	@ float
	mov	r3, #0
	str	r3, [fp, #-24]
	b	.L769
.L772:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-40]
	add	r3, r1, r3
	ldr	r2, [r2]	@ float
	str	r2, [r3]	@ float
	ldr	r3, [fp, #4]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	bge	.L770
	ldr	r3, [fp, #-32]
	add	r2, r3, #4
	str	r2, [fp, #-32]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-20]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r0, [r3]	@ float
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r4, r2, r3
	bl	__aeabi_fsub
	mov	r3, r0
	str	r3, [r4]	@ float
.L770:
	ldr	r3, [fp, #8]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	bge	.L771
	ldr	r3, [fp, #-28]
	add	r2, r3, #4
	str	r2, [fp, #-28]
	ldr	r3, [r3]	@ float
	ldr	r1, [fp, #-44]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldr	r1, [r3]	@ float
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r4, r2, r3
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [r4]	@ float
.L771:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L769:
	ldr	r3, [fp, #-16]
	sub	r3, r3, #1
	ldr	r2, [fp, #-24]
	cmp	r2, r3
	blt	.L772
	ldr	r3, [fp, #-20]	@ float
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
	.size	float_transposed_direct_form_2, .-float_transposed_direct_form_2
	.section	.rodata
	.align	2
.LC35:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/core/realizations.h\000"
	.align	2
.LC36:
	.ascii	"(double) timer1 * hw.cycle <= ds.sample_time\000"
	.text
	.align	2
	.global	double_direct_form_1_MSP430
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_direct_form_1_MSP430, %function
double_direct_form_1_MSP430:
	@ 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]
	mov	r3, #0
	str	r3, [fp, #-40]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-56]
	add	r3, r3, #8
	str	r3, [fp, #-36]
	ldr	r3, [fp, #4]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-60]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #8]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-52]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	add	r3, r3, #91
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L775
.L776:
	ldr	r3, [fp, #-28]
	add	r2, r3, #8
	str	r2, [fp, #-28]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-24]
	sub	r2, r3, #8
	str	r2, [fp, #-24]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-40]
	add	r3, r3, #47
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L775:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L776
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L777
.L778:
	ldr	r3, [fp, #-36]
	add	r2, r3, #8
	str	r2, [fp, #-36]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	sub	r2, r3, #8
	str	r2, [fp, #-32]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-40]
	add	r3, r3, #57
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L777:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L778
	ldr	r3, [fp, #-40]
	add	r3, r3, #3
	str	r3, [fp, #-40]
	ldr	r0, [fp, #-40]
	bl	__aeabi_i2d
	ldr	r3, .L781
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L781+4
	add	r3, r3, #1616
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L779
	ldr	r3, .L781+8
	mov	r2, #235
	ldr	r1, .L781+12
	ldr	r0, .L781+16
	bl	__assert_fail
.L779:
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L782:
	.align	2
.L781:
	.word	hw
	.word	ds
	.word	__PRETTY_FUNCTION__.6554
	.word	.LC35
	.word	.LC36
	.size	double_direct_form_1_MSP430, .-double_direct_form_1_MSP430
	.align	2
	.global	double_direct_form_2_MSP430
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_direct_form_2_MSP430, %function
double_direct_form_2_MSP430:
	@ args = 16, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #48
	str	r0, [fp, #-48]
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	mov	r3, #0
	str	r3, [fp, #-44]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	str	r3, [fp, #-40]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-44]
	add	r3, r3, #71
	str	r3, [fp, #-44]
	mov	r3, #1
	str	r3, [fp, #-24]
	b	.L784
.L785:
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	add	r2, r3, #8
	str	r2, [fp, #-32]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	mov	r2, r4
	mov	r3, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #54
	str	r3, [fp, #-44]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L784:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #12]
	cmp	r2, r3
	blt	.L785
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #4]
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-48]
	str	r3, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L786
.L787:
	ldr	r3, [fp, #-36]
	add	r2, r3, #8
	str	r2, [fp, #-36]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	add	r2, r3, #8
	str	r2, [fp, #-32]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-44]
	add	r3, r3, #46
	str	r3, [fp, #-44]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L786:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #16]
	cmp	r2, r3
	blt	.L787
	ldr	r3, [fp, #-44]
	add	r3, r3, #38
	str	r3, [fp, #-44]
	ldr	r0, [fp, #-44]
	bl	__aeabi_i2d
	ldr	r3, .L790
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L790+4
	add	r3, r3, #1616
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L788
	ldr	r3, .L790+8
	ldr	r2, .L790+12
	ldr	r1, .L790+16
	ldr	r0, .L790+20
	bl	__assert_fail
.L788:
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L791:
	.align	2
.L790:
	.word	hw
	.word	ds
	.word	__PRETTY_FUNCTION__.6576
	.word	262
	.word	.LC35
	.word	.LC36
	.size	double_direct_form_2_MSP430, .-double_direct_form_2_MSP430
	.align	2
	.global	double_transposed_direct_form_2_MSP430
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_transposed_direct_form_2_MSP430, %function
double_transposed_direct_form_2_MSP430:
	@ args = 16, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r6, r7, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #52
	str	r0, [fp, #-56]
	str	r2, [fp, #-68]
	str	r3, [fp, #-64]
	mov	r3, #0
	str	r3, [fp, #-48]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	str	r3, [fp, #-44]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-40]
	ldr	r2, [fp, #16]
	ldr	r3, [fp, #12]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-56]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-48]
	add	r3, r3, #105
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L793
.L796:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r2, [fp, #-36]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-56]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #12]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bge	.L794
	ldr	r3, [fp, #-44]
	add	r2, r3, #8
	str	r2, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r4, r2, r3
	mov	r2, r6
	mov	r3, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-48]
	add	r3, r3, #41
	str	r3, [fp, #-48]
.L794:
	ldr	r3, [fp, #16]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bge	.L795
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-36]
	lsl	r1, r1, #3
	ldr	r0, [fp, #-56]
	add	r4, r0, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-48]
	add	r3, r3, #38
	str	r3, [fp, #-48]
.L795:
	ldr	r3, [fp, #-48]
	add	r3, r3, #54
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L793:
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	blt	.L796
	ldr	r3, [fp, #-48]
	add	r3, r3, #7
	str	r3, [fp, #-48]
	ldr	r0, [fp, #-48]
	bl	__aeabi_i2d
	ldr	r3, .L799
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L799+4
	add	r3, r3, #1616
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L797
	ldr	r3, .L799+8
	ldr	r2, .L799+12
	ldr	r1, .L799+16
	ldr	r0, .L799+20
	bl	__assert_fail
.L797:
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r6, r7, fp, pc}
.L800:
	.align	2
.L799:
	.word	hw
	.word	ds
	.word	__PRETTY_FUNCTION__.6594
	.word	291
	.word	.LC35
	.word	.LC36
	.size	double_transposed_direct_form_2_MSP430, .-double_transposed_direct_form_2_MSP430
	.align	2
	.global	generic_timing_double_direct_form_1
	.syntax unified
	.arm
	.fpu softvfp
	.type	generic_timing_double_direct_form_1, %function
generic_timing_double_direct_form_1:
	@ args = 8, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #48
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	ldr	r3, .L807
	ldr	r2, [r3, #16]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	mov	r1, r3
	ldr	r3, .L807
	ldr	r2, [r3, #20]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L807
	ldr	r3, [r3, #24]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #28]
	add	r1, r2, r3
	ldr	r3, .L807
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L807
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r2, r1, r3
	ldr	r3, .L807+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L807+4
	str	r3, [r2]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	str	r3, [fp, #-36]
	ldr	r3, [fp, #4]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-28]
	ldr	r3, [fp, #8]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-44]
	add	r3, r2, r3
	str	r3, [fp, #-24]
	ldr	r3, .L807
	ldr	r2, [r3, #36]
	ldr	r3, .L807
	ldr	r3, [r3, #40]
	add	r2, r2, r3
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	mov	r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #44]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #48]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #52]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #56]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #60]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #64]
	add	r3, r2, r3
	lsl	r2, r3, #1
	ldr	r3, .L807
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L807+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L807+4
	str	r3, [r2]
	ldr	r3, .L807
	ldr	r3, [r3, #36]
	lsl	r2, r3, #1
	ldr	r3, .L807
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L807+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L807+4
	str	r3, [r2]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L802
.L803:
	ldr	r3, .L807
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r1, r3
	ldr	r3, .L807
	ldr	r2, [r3, #76]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r1, r3
	ldr	r3, .L807
	ldr	r3, [r3, #44]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #48]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #80]
	add	r1, r2, r3
	ldr	r3, .L807
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r2, r1, r3
	ldr	r3, .L807
	ldr	r3, [r3, #84]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #88]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #92]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #96]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #104]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L807+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L807+4
	str	r3, [r2]
	ldr	r3, [fp, #-28]
	add	r2, r3, #8
	str	r2, [fp, #-28]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-24]
	sub	r2, r3, #8
	str	r2, [fp, #-24]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L802:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L803
	ldr	r3, .L807
	ldr	r2, [r3, #100]
	ldr	r3, .L807
	ldr	r3, [r3, #36]
	add	r3, r2, r3
	lsl	r2, r3, #1
	ldr	r3, .L807
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L807+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L807+4
	str	r3, [r2]
	mov	r3, #1
	str	r3, [fp, #-16]
	b	.L804
.L805:
	ldr	r3, .L807
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	mov	r1, r3
	ldr	r3, .L807
	ldr	r2, [r3, #76]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r1, r3
	ldr	r3, .L807
	ldr	r3, [r3, #44]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #36]
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #48]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #84]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #88]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #80]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #92]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #96]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #104]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L807+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L807+4
	str	r3, [r2]
	ldr	r3, [fp, #-36]
	add	r2, r3, #8
	str	r2, [fp, #-36]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	sub	r2, r3, #8
	str	r2, [fp, #-32]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L804:
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #4]
	cmp	r2, r3
	blt	.L805
	ldr	r3, .L807
	ldr	r2, [r3, #40]
	ldr	r3, .L807
	ldr	r3, [r3, #76]
	add	r3, r2, r3
	lsl	r2, r3, #2
	ldr	r3, .L807
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #20]
	add	r2, r2, r3
	ldr	r3, .L807
	ldr	r3, [r3, #28]
	add	r1, r2, r3
	ldr	r3, .L807
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L807
	ldr	r2, [r3, #108]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r2, r1, r3
	ldr	r3, .L807
	ldr	r3, [r3, #112]
	add	r2, r2, r3
	ldr	r3, .L807+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L807+4
	str	r3, [r2]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L808:
	.align	2
.L807:
	.word	hw
	.word	generic_timer
	.size	generic_timing_double_direct_form_1, .-generic_timing_double_direct_form_1
	.align	2
	.global	generic_timing_double_direct_form_2
	.syntax unified
	.arm
	.fpu softvfp
	.type	generic_timing_double_direct_form_2, %function
generic_timing_double_direct_form_2:
	@ args = 16, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #48
	str	r0, [fp, #-48]
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r3, .L815
	ldr	r3, [r3, #16]
	lsl	r1, r3, #3
	ldr	r3, .L815
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #3
	sub	r3, r3, r2
	lsl	r3, r3, #1
	add	r1, r1, r3
	ldr	r3, .L815
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L815
	ldr	r2, [r3, #20]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L815
	ldr	r3, [r3, #24]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #28]
	add	r2, r2, r3
	ldr	r3, .L815+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L815+4
	str	r3, [r2]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	str	r3, [fp, #-40]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-48]
	add	r3, r3, #8
	str	r3, [fp, #-32]
	ldr	r3, .L815
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	mov	r1, r3
	ldr	r3, .L815
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r2, r1, r3
	ldr	r3, .L815
	ldr	r3, [r3, #68]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L815+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L815+4
	str	r3, [r2]
	ldr	r3, .L815
	ldr	r2, [r3, #100]
	ldr	r3, .L815
	ldr	r3, [r3, #36]
	add	r3, r2, r3
	lsl	r2, r3, #1
	ldr	r3, .L815
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L815+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L815+4
	str	r3, [r2]
	mov	r3, #1
	str	r3, [fp, #-24]
	b	.L810
.L811:
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	add	r2, r3, #8
	str	r2, [fp, #-32]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	mov	r2, r4
	mov	r3, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, .L815
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #3
	sub	r2, r3, r2
	ldr	r3, .L815
	ldr	r3, [r3, #76]
	lsl	r3, r3, #5
	add	r1, r2, r3
	ldr	r3, .L815
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #3
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L815
	ldr	r3, [r3, #44]
	lsl	r3, r3, #1
	add	r1, r2, r3
	ldr	r3, .L815
	ldr	r2, [r3, #84]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L815
	ldr	r3, [r3, #88]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #48]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #116]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #92]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #96]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #104]
	add	r2, r2, r3
	ldr	r3, .L815+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L815+4
	str	r3, [r2]
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
.L810:
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #12]
	cmp	r2, r3
	blt	.L811
	ldr	r3, [fp, #-48]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-48]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-48]
	str	r3, [fp, #-32]
	ldr	r3, .L815
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r1, r3, r2
	ldr	r3, .L815
	ldr	r2, [r3, #76]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r1, r1, r3
	ldr	r3, .L815
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L815
	ldr	r3, [r3, #116]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #84]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #88]
	add	r2, r2, r3
	ldr	r3, .L815+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L815+4
	str	r3, [r2]
	ldr	r3, .L815
	ldr	r3, [r3, #36]
	lsl	r2, r3, #1
	ldr	r3, .L815
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L815+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L815+4
	str	r3, [r2]
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L812
.L813:
	ldr	r3, [fp, #-36]
	add	r2, r3, #8
	str	r2, [fp, #-36]
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	add	r2, r3, #8
	str	r2, [fp, #-32]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, .L815
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #2
	mov	r1, r3
	ldr	r3, .L815
	ldr	r2, [r3, #76]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r1, r1, r3
	ldr	r3, .L815
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r2, r1, r3
	ldr	r3, .L815
	ldr	r3, [r3, #88]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #84]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #44]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #48]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #92]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #96]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #104]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L815+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L815+4
	str	r3, [r2]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L812:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #16]
	cmp	r2, r3
	blt	.L813
	ldr	r3, .L815
	ldr	r2, [r3, #40]
	ldr	r3, .L815
	ldr	r3, [r3, #76]
	add	r3, r2, r3
	lsl	r2, r3, #2
	ldr	r3, .L815
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #20]
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #28]
	add	r1, r2, r3
	ldr	r3, .L815
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L815
	ldr	r3, [r3, #108]
	lsl	r3, r3, #3
	add	r2, r2, r3
	ldr	r3, .L815
	ldr	r3, [r3, #112]
	add	r2, r2, r3
	ldr	r3, .L815+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L815+4
	str	r3, [r2]
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L816:
	.align	2
.L815:
	.word	hw
	.word	generic_timer
	.size	generic_timing_double_direct_form_2, .-generic_timing_double_direct_form_2
	.align	2
	.global	generic_timing_double_transposed_direct_form_2
	.syntax unified
	.arm
	.fpu softvfp
	.type	generic_timing_double_transposed_direct_form_2, %function
generic_timing_double_transposed_direct_form_2:
	@ args = 16, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r6, r7, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #44
	str	r0, [fp, #-48]
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r3, .L823
	ldr	r3, [r3, #16]
	lsl	r1, r3, #3
	ldr	r3, .L823
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #3
	sub	r3, r3, r2
	lsl	r3, r3, #1
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #20]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L823
	ldr	r3, [r3, #24]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #28]
	add	r2, r2, r3
	ldr	r3, .L823+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L823+4
	str	r3, [r2]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #4]
	add	r3, r3, #8
	str	r3, [fp, #-44]
	ldr	r3, [fp, #8]
	str	r3, [fp, #-40]
	ldr	r2, [fp, #16]
	ldr	r3, [fp, #12]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-48]
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, .L823
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r1, r3, r2
	ldr	r3, .L823
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #76]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #3
	add	r2, r1, r3
	ldr	r3, .L823
	ldr	r3, [r3, #88]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #84]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #92]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #96]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #44]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #48]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #104]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L823+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L823+4
	str	r3, [r2]
	ldr	r3, .L823
	ldr	r3, [r3, #36]
	lsl	r2, r3, #1
	ldr	r3, .L823
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L823+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L823+4
	str	r3, [r2]
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L818
.L821:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	ldr	r2, [fp, #-36]
	lsl	r2, r2, #3
	ldr	r1, [fp, #-48]
	add	r1, r1, r2
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #12]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bge	.L819
	ldr	r3, [fp, #-44]
	add	r2, r3, #8
	str	r2, [fp, #-44]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r4, r2, r3
	mov	r2, r6
	mov	r3, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
.L819:
	ldr	r3, [fp, #16]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	bge	.L820
	ldr	r3, [fp, #-40]
	add	r2, r3, #8
	str	r2, [fp, #-40]
	ldmia	r3, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r6, r2
	mov	r7, r3
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-36]
	lsl	r1, r1, #3
	ldr	r0, [fp, #-48]
	add	r4, r0, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
.L820:
	ldr	r3, .L823
	ldr	r2, [r3, #76]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #3
	sub	r2, r2, r3
	lsl	r3, r2, #1
	mov	r2, r3
	mov	r1, r2
	ldr	r3, .L823
	ldr	r2, [r3, #40]
	mov	r3, r2
	lsl	r3, r3, #6
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #52]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #56]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #2
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #36]
	mov	r3, r2
	lsl	r3, r3, #4
	sub	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #60]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #64]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r3, r3, #1
	add	r2, r1, r3
	ldr	r3, .L823
	ldr	r3, [r3, #68]
	lsl	r3, r3, #1
	add	r1, r2, r3
	ldr	r3, .L823
	ldr	r2, [r3, #96]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #92]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #84]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L823
	ldr	r3, [r3, #88]
	lsl	r3, r3, #2
	add	r1, r2, r3
	ldr	r3, .L823
	ldr	r2, [r3, #44]
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	add	r1, r1, r3
	ldr	r3, .L823
	ldr	r2, [r3, #72]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L823
	ldr	r3, [r3, #120]
	lsl	r3, r3, #1
	add	r1, r2, r3
	ldr	r3, .L823
	ldr	r2, [r3, #116]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L823
	ldr	r3, [r3, #48]
	lsl	r3, r3, #1
	add	r1, r2, r3
	ldr	r3, .L823
	ldr	r2, [r3, #80]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L823
	ldr	r3, [r3, #104]
	add	r2, r2, r3
	ldr	r3, .L823+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L823+4
	str	r3, [r2]
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L818:
	ldr	r3, [fp, #-32]
	sub	r3, r3, #1
	ldr	r2, [fp, #-36]
	cmp	r2, r3
	blt	.L821
	ldr	r3, .L823
	ldr	r2, [r3, #40]
	ldr	r3, .L823
	ldr	r3, [r3, #76]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #108]
	lsl	r3, r3, #1
	add	r3, r2, r3
	lsl	r1, r3, #2
	ldr	r3, .L823
	ldr	r2, [r3, #32]
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	add	r2, r1, r3
	ldr	r3, .L823
	ldr	r3, [r3, #20]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #28]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L823
	ldr	r3, [r3, #112]
	add	r2, r2, r3
	ldr	r3, .L823+4
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L823+4
	str	r3, [r2]
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r6, r7, fp, pc}
.L824:
	.align	2
.L823:
	.word	hw
	.word	generic_timer
	.size	generic_timing_double_transposed_direct_form_2, .-generic_timing_double_transposed_direct_form_2
	.section	.rodata
	.align	2
.LC37:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	double_direct_form_1_impl2
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_direct_form_1_impl2, %function
double_direct_form_1_impl2:
	@ args = 12, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #48
	str	r0, [fp, #-56]
	str	r1, [fp, #-60]
	str	r2, [fp, #-64]
	str	r3, [fp, #-68]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-72]
	ldr	r3, [fp, #12]
	str	r3, [fp, #-76]
	ldr	r3, .L841
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r3, sp
	mov	r9, r3
	mov	r3, #0
	str	r3, [fp, #-44]
	mov	r3, #0
	str	r3, [fp, #-48]
	ldr	ip, [fp, #-60]
	sub	r3, ip, #1
	str	r3, [fp, #-40]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-44]
	b	.L826
.L831:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	mov	r3, #0
	str	r3, [fp, #-48]
	b	.L827
.L830:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bgt	.L839
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-48]
	sub	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-36]
	ldr	r1, [fp, #-44]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L827:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-68]
	cmp	r2, r3
	blt	.L830
	b	.L829
.L839:
	nop
.L829:
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L826:
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-60]
	cmp	r2, r3
	blt	.L831
	ldr	r3, [fp, #-36]
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-76]
	stm	r1, {r2-r3}
	mov	r3, #1
	str	r3, [fp, #-44]
	b	.L832
.L837:
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-76]
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-76]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	ip, [fp, #-44]
	lsl	ip, ip, #3
	ldr	lr, [fp, #-76]
	add	r6, lr, ip
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r6, {r2-r3}
	mov	r3, #1
	str	r3, [fp, #-48]
	b	.L833
.L836:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bgt	.L840
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-76]
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-48]
	sub	r3, r2, r3
	lsl	r3, r3, #3
	ldr	r2, [fp, #-76]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-48]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-72]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r4, r2
	eor	r5, r3, #-2147483648
	mov	r2, r4
	mov	r3, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-44]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-76]
	add	r8, r2, r3
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	stm	r8, {r2-r3}
	ldr	r3, [fp, #-48]
	add	r3, r3, #1
	str	r3, [fp, #-48]
.L833:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L836
	b	.L835
.L840:
	nop
.L835:
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L832:
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-60]
	cmp	r2, r3
	blt	.L837
	mov	sp, r9
	nop
	ldr	r3, .L841
	ldr	r2, [r3]
	ldr	r3, [fp, #-32]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L838
	bl	__stack_chk_fail
.L838:
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L842:
	.align	2
.L841:
	.word	.LC37
	.size	double_direct_form_1_impl2, .-double_direct_form_1_impl2
	.section	.rodata
	.align	2
.LC38:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	fxp_direct_form_1_impl2
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_direct_form_1_impl2, %function
fxp_direct_form_1_impl2:
	@ args = 12, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #52
	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, [fp, #12]
	str	r3, [fp, #-68]
	ldr	r3, .L859
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	mov	r3, sp
	mov	r6, r3
	mov	r3, #0
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-40]
	ldr	ip, [fp, #-52]
	sub	r3, ip, #1
	str	r3, [fp, #-32]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-28]
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L844
.L849:
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-36]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L845
.L848:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	bgt	.L857
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-36]
	ldr	r4, [r3, r2, lsl #2]
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-40]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #-48]
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-56]
	add	r3, r2, r3
	ldr	r3, [r3]
	mov	r1, r3
	bl	fxp_mult
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	fxp_add
	mov	r1, r0
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-36]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L845:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-60]
	cmp	r2, r3
	blt	.L848
	b	.L847
.L857:
	nop
.L847:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L844:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-52]
	cmp	r2, r3
	blt	.L849
	ldr	r3, [fp, #-28]
	ldr	r2, [r3]
	ldr	r3, [fp, #-68]
	str	r2, [r3]
	mov	r3, #1
	str	r3, [fp, #-36]
	b	.L850
.L855:
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-36]
	ldr	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r4, r2, r3
	bl	fxp_add
	mov	r3, r0
	str	r3, [r4]
	mov	r3, #1
	str	r3, [fp, #-40]
	b	.L851
.L854:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	bgt	.L858
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	ldr	r5, [r3]
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-40]
	sub	r3, r2, r3
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r3, r2, r3
	ldr	r0, [r3]
	ldr	r3, [fp, #-40]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-64]
	add	r3, r2, r3
	ldr	r3, [r3]
	rsb	r3, r3, #0
	mov	r1, r3
	bl	fxp_mult
	mov	r1, r0
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-68]
	add	r4, r2, r3
	mov	r0, r5
	bl	fxp_add
	mov	r3, r0
	str	r3, [r4]
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L851:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #8]
	cmp	r2, r3
	blt	.L854
	b	.L853
.L858:
	nop
.L853:
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L850:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-52]
	cmp	r2, r3
	blt	.L855
	mov	sp, r6
	nop
	ldr	r3, .L859
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L856
	bl	__stack_chk_fail
.L856:
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L860:
	.align	2
.L859:
	.word	.LC38
	.size	fxp_direct_form_1_impl2, .-fxp_direct_form_1_impl2
	.align	2
	.global	nchoosek
	.syntax unified
	.arm
	.fpu softvfp
	.type	nchoosek, %function
nchoosek:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L862
	mov	r3, #1
	b	.L863
.L862:
	ldr	r3, [fp, #-8]
	sub	r2, r3, #1
	ldr	r3, [fp, #-12]
	sub	r3, r3, #1
	mov	r1, r3
	mov	r0, r2
	bl	nchoosek
	mov	r2, r0
	ldr	r3, [fp, #-8]
	mul	r3, r2, r3
	ldr	r1, [fp, #-12]
	mov	r0, r3
	bl	__aeabi_idiv
	mov	r3, r0
.L863:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	nchoosek, .-nchoosek
	.align	2
	.global	generate_delta_coefficients
	.syntax unified
	.arm
	.fpu softvfp
	.type	generate_delta_coefficients, %function
generate_delta_coefficients:
	@ args = 8, 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]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L865
.L868:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-28]
	b	.L866
.L867:
	ldr	r3, [fp, #-28]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-28]
	sub	r0, r2, r3
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-28]
	sub	r3, r2, r3
	mov	r1, r3
	bl	nchoosek
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-28]
	add	r3, r3, #1
	str	r3, [fp, #-28]
.L866:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	ble	.L867
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-32]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	ldmib	fp, {r0-r1}
	bl	internal_pow
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-44]
	add	r4, r2, r3
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L865:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	ble	.L868
	nop
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
	.size	generate_delta_coefficients, .-generate_delta_coefficients
	.align	2
	.global	get_delta_transfer_function
	.syntax unified
	.arm
	.fpu softvfp
	.type	get_delta_transfer_function, %function
get_delta_transfer_function:
	@ args = 16, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	str	r3, [fp, #-20]
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-12]
	ldr	r0, [fp, #-8]
	bl	generate_delta_coefficients
	add	r3, fp, #12
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	ldr	r2, [fp, #8]
	ldr	r1, [fp, #4]
	ldr	r0, [fp, #-20]
	bl	generate_delta_coefficients
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	get_delta_transfer_function, .-get_delta_transfer_function
	.align	2
	.global	get_delta_transfer_function_with_base
	.syntax unified
	.arm
	.fpu softvfp
	.type	get_delta_transfer_function_with_base, %function
get_delta_transfer_function_with_base:
	@ args = 16, 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]
	ldr	r3, [fp, #8]
	sub	r3, r3, #1
	str	r3, [fp, #-28]
	ldr	r3, [fp, #-48]
	sub	r3, r3, #1
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L871
.L874:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L872
.L873:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-52]
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-32]
	sub	r0, r2, r3
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-32]
	sub	r3, r2, r3
	mov	r1, r3
	bl	nchoosek
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L872:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	ble	.L873
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-36]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	add	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	internal_pow
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #4]
	add	r4, r2, r3
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L871:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-28]
	cmp	r2, r3
	ble	.L874
	mov	r3, #0
	str	r3, [fp, #-36]
	b	.L875
.L878:
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L876
.L877:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-32]
	sub	r0, r2, r3
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-32]
	sub	r3, r2, r3
	mov	r1, r3
	bl	nchoosek
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L876:
	ldr	r2, [fp, #-32]
	ldr	r3, [fp, #-36]
	cmp	r2, r3
	ble	.L877
	ldr	r2, [fp, #-24]
	ldr	r3, [fp, #-36]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	add	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	internal_pow
	ldr	r3, [fp, #-36]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-44]
	add	r4, r2, r3
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r3, [fp, #-36]
	add	r3, r3, #1
	str	r3, [fp, #-36]
.L875:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-24]
	cmp	r2, r3
	ble	.L878
	nop
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
	.size	get_delta_transfer_function_with_base, .-get_delta_transfer_function_with_base
	.section	.rodata
	.align	2
.LC39:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	ft_closedloop_series
	.syntax unified
	.arm
	.fpu softvfp
	.type	ft_closedloop_series, %function
ft_closedloop_series:
	@ args = 32, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #60
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #12]
	str	r3, [fp, #-52]
	ldr	r3, [fp, #20]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #28]
	str	r3, [fp, #-60]
	ldr	r3, .L881
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #8]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #24]
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #16]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #32]
	ldr	ip, [fp, #32]
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-20]
	ldr	r3, [fp, #24]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-56]
	str	r3, [sp]
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-48]
	ldr	r1, [fp, #-36]
	ldr	r0, [fp, #-32]
	bl	poly_mult
	ldr	r3, [fp, #32]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-52]
	ldr	r1, [fp, #-44]
	ldr	r0, [fp, #-40]
	bl	poly_mult
	ldr	r3, [fp, #32]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-60]
	str	r3, [sp]
	ldr	r3, [fp, #32]
	ldr	r2, [fp, #-20]
	ldr	r1, [fp, #24]
	ldr	r0, [fp, #-56]
	bl	poly_sum
	mov	sp, r4
	nop
	ldr	r3, .L881
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L880
	bl	__stack_chk_fail
.L880:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L882:
	.align	2
.L881:
	.word	.LC39
	.size	ft_closedloop_series, .-ft_closedloop_series
	.section	.rodata
	.align	2
.LC40:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	ft_closedloop_sensitivity
	.syntax unified
	.arm
	.fpu softvfp
	.type	ft_closedloop_sensitivity, %function
ft_closedloop_sensitivity:
	@ args = 32, pretend = 0, frame = 48
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #60
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	str	r2, [fp, #-40]
	str	r3, [fp, #-44]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #12]
	str	r3, [fp, #-52]
	ldr	r3, [fp, #20]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #28]
	str	r3, [fp, #-60]
	ldr	r3, .L885
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #8]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-28]
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #16]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #32]
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #16]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #24]
	ldr	ip, [fp, #-28]
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-20]
	ldr	r3, [fp, #24]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-56]
	str	r3, [sp]
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-52]
	ldr	r1, [fp, #-44]
	ldr	r0, [fp, #-40]
	bl	poly_mult
	ldr	r3, [fp, #-28]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-48]
	ldr	r1, [fp, #-36]
	ldr	r0, [fp, #-32]
	bl	poly_mult
	ldr	r3, [fp, #32]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-60]
	str	r3, [sp]
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-20]
	ldr	r1, [fp, #24]
	ldr	r0, [fp, #-56]
	bl	poly_sum
	mov	sp, r4
	nop
	ldr	r3, .L885
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L884
	bl	__stack_chk_fail
.L884:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L886:
	.align	2
.L885:
	.word	.LC40
	.size	ft_closedloop_sensitivity, .-ft_closedloop_sensitivity
	.section	.rodata
	.align	2
.LC41:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	ft_closedloop_feedback
	.syntax unified
	.arm
	.fpu softvfp
	.type	ft_closedloop_feedback, %function
ft_closedloop_feedback:
	@ args = 32, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #68
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	str	r3, [fp, #-52]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-56]
	ldr	r3, [fp, #12]
	str	r3, [fp, #-60]
	ldr	r3, [fp, #20]
	str	r3, [fp, #-64]
	ldr	r3, [fp, #28]
	str	r3, [fp, #-68]
	ldr	r3, .L889
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #8]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #24]
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #16]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #32]
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #8]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-36]
	ldr	ip, [fp, #32]
	sub	r3, ip, #1
	str	r3, [fp, #-32]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-28]
	ldr	ip, [fp, #-36]
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-36]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-20]
	str	r3, [sp]
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-56]
	ldr	r1, [fp, #-44]
	ldr	r0, [fp, #-40]
	bl	poly_mult
	ldr	r3, [fp, #32]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-28]
	str	r3, [sp]
	ldr	r3, [fp, #16]
	ldr	r2, [fp, #-60]
	ldr	r1, [fp, #-52]
	ldr	r0, [fp, #-48]
	bl	poly_mult
	ldr	r3, [fp, #32]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-68]
	str	r3, [sp]
	ldr	r3, [fp, #32]
	ldr	r2, [fp, #-28]
	ldr	r1, [fp, #-36]
	ldr	r0, [fp, #-20]
	bl	poly_sum
	ldr	r3, [fp, #24]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-64]
	str	r3, [sp]
	ldr	r3, [fp, #8]
	ldr	r2, [fp, #-56]
	ldr	r1, [fp, #-52]
	ldr	r0, [fp, #-48]
	bl	poly_mult
	mov	sp, r4
	nop
	ldr	r3, .L889
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L888
	bl	__stack_chk_fail
.L888:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L890:
	.align	2
.L889:
	.word	.LC41
	.size	ft_closedloop_feedback, .-ft_closedloop_feedback
	.section	.rodata
	.align	2
.LC42:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	check_stability_closedloop
	.syntax unified
	.arm
	.fpu softvfp
	.type	check_stability_closedloop, %function
check_stability_closedloop:
	@ args = 8, pretend = 0, frame = 80
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	add	fp, sp, #32
	sub	sp, sp, #84
	str	r0, [fp, #-96]
	str	r1, [fp, #-100]
	str	r2, [fp, #-104]
	str	r3, [fp, #-108]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-112]
	ldr	r3, .L917
	ldr	r3, [r3]
	str	r3, [fp, #-40]
	mov	r3,#0
	mov	r3, sp
	mov	r10, r3
	ldr	r3, [fp, #-100]
	str	r3, [fp, #-84]
	ldr	ip, [fp, #-100]
	ldr	r3, [fp, #-100]
	lsl	r3, r3, #1
	sub	lr, r3, #1
	sub	r3, ip, #1
	str	r3, [fp, #-76]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r4, r3, #3
	sub	r3, lr, #1
	str	r3, [fp, #-72]
	mov	r3, ip
	mov	r6, r3
	mov	r7, #0
	mov	r3, lr
	mov	r0, r3
	mov	r1, #0
	mul	r2, r0, r7
	mul	r3, r6, r1
	add	r5, r2, r3
	umull	r2, r3, r6, r0
	add	r1, r5, r3
	mov	r3, r1
	mov	r0, #0
	mov	r1, #0
	lsl	r1, r3, #6
	orr	r1, r1, r2, lsr #26
	lsl	r0, r2, #6
	mov	r3, ip
	mov	r6, r3
	mov	r7, #0
	mov	r3, lr
	mov	r0, r3
	mov	r1, #0
	mul	r2, r0, r7
	mul	r3, r6, r1
	add	r5, r2, r3
	umull	r2, r3, r6, r0
	add	r1, r5, r3
	mov	r3, r1
	mov	r0, #0
	mov	r1, #0
	lsl	r1, r3, #6
	orr	r1, r1, r2, lsr #26
	lsl	r0, r2, #6
	mov	r3, ip
	mov	r2, lr
	mul	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-68]
	mov	r3, #0
	str	r3, [fp, #-64]
	ldr	r3, [fp, #-104]
	str	r3, [fp, #-60]
	ldr	r3, [fp, #-112]
	str	r3, [fp, #-56]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-88]
	b	.L892
.L893:
	ldr	r3, [fp, #-88]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-96]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-88]
.L892:
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-100]
	cmp	r2, r3
	blt	.L893
	mov	r3, #1
	mov	r5, r3
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L894
	mov	r3, #0
	mov	r5, r3
.L894:
	and	r3, r5, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-88]
	b	.L895
.L896:
	ldr	r3, [fp, #-88]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-96]
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-100]
	sub	r2, r3, #1
	ldr	r3, [fp, #-88]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L917+4
	bl	internal_pow
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-88]
.L895:
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-100]
	cmp	r2, r3
	blt	.L896
	ldr	r3, [fp, #-100]
	sub	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L917+4
	bl	internal_pow
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r3, #1
	mov	r5, r3
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L897
	mov	r3, #0
	mov	r5, r3
.L897:
	and	r3, r5, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	ldr	r3, [fp, #-100]
	sub	r3, r3, #-536870911
	lsl	r3, r3, #3
	ldr	r2, [fp, #-96]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	internal_abs
	ldr	r3, [fp, #-96]
	ldmia	r3, {r2-r3}
	mov	ip, #1
	mov	r5, ip
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	bne	.L898
	mov	r3, #0
	mov	r5, r3
.L898:
	and	r3, r5, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	mov	r3, #0
	str	r3, [fp, #-88]
	b	.L899
.L912:
	mov	r3, #0
	str	r3, [fp, #-92]
	b	.L900
.L911:
	lsr	r3, r4, #3
	ldr	r2, [fp, #-68]
	ldr	r1, [fp, #-88]
	mul	r1, r3, r1
	ldr	r3, [fp, #-92]
	add	r3, r1, r3
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-88]
	cmp	r3, #0
	bne	.L901
	ldr	r3, [fp, #-92]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-96]
	add	r3, r2, r3
	lsr	r1, r4, #3
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-68]
	ldr	ip, [fp, #-88]
	mul	ip, r1, ip
	ldr	r1, [fp, #-92]
	add	r1, ip, r1
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	b	.L902
.L901:
	ldr	r3, [fp, #-88]
	and	r3, r3, #1
	cmp	r3, #0
	beq	.L903
	mov	r3, #0
	str	r3, [fp, #-80]
	b	.L904
.L905:
	lsr	r0, r4, #3
	ldr	r3, [fp, #-88]
	sub	ip, r3, #1
	ldr	r2, [fp, #-84]
	ldr	r3, [fp, #-80]
	sub	r3, r2, r3
	sub	r3, r3, #1
	lsr	r1, r4, #3
	ldr	r2, [fp, #-68]
	mul	r0, ip, r0
	add	r3, r0, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-68]
	ldr	ip, [fp, #-88]
	mul	ip, r1, ip
	ldr	r1, [fp, #-80]
	add	r1, ip, r1
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-80]
	add	r3, r3, #1
	str	r3, [fp, #-80]
.L904:
	ldr	r2, [fp, #-80]
	ldr	r3, [fp, #-84]
	cmp	r2, r3
	blt	.L905
	ldr	r3, [fp, #-84]
	sub	r3, r3, #1
	str	r3, [fp, #-84]
	ldr	r3, [fp, #-84]
	str	r3, [fp, #-92]
	b	.L902
.L903:
	lsr	r3, r4, #3
	ldr	r2, [fp, #-88]
	sub	r1, r2, #2
	ldr	r2, [fp, #-68]
	mul	r3, r1, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r3, #1
	mov	r5, r3
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L906
	mov	r3, #0
	mov	r5, r3
.L906:
	and	r3, r5, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	lsr	r3, r4, #3
	ldr	r2, [fp, #-88]
	sub	r1, r2, #2
	ldr	r2, [fp, #-68]
	mul	r1, r3, r1
	ldr	r3, [fp, #-92]
	add	r3, r1, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	lsr	r3, r4, #3
	ldr	r2, [fp, #-88]
	sub	r1, r2, #2
	ldr	r2, [fp, #-68]
	mul	r1, r3, r1
	ldr	r3, [fp, #-84]
	add	r3, r1, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	lsr	r3, r4, #3
	ldr	r2, [fp, #-88]
	sub	ip, r2, #2
	ldr	r2, [fp, #-68]
	mul	r3, ip, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r8, r2
	mov	r9, r3
	lsr	r3, r4, #3
	ldr	r2, [fp, #-88]
	sub	r1, r2, #1
	ldr	r2, [fp, #-68]
	mul	r1, r3, r1
	ldr	r3, [fp, #-92]
	add	r3, r1, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	lsr	r5, r4, #3
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-68]
	ldr	r1, [fp, #-88]
	mul	ip, r1, r5
	ldr	r1, [fp, #-92]
	add	r1, ip, r1
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-68]
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L907
	lsr	r3, r4, #3
	ldr	r2, [fp, #-68]
	ldr	r1, [fp, #-88]
	mul	r3, r1, r3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L907
	mov	r3, #1
	b	.L910
.L907:
	mov	r3, #0
.L910:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
.L902:
	ldr	r3, [fp, #-92]
	add	r3, r3, #1
	str	r3, [fp, #-92]
.L900:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-84]
	cmp	r2, r3
	blt	.L911
	ldr	r3, [fp, #-88]
	add	r3, r3, #1
	str	r3, [fp, #-88]
.L899:
	ldr	r3, [fp, #-100]
	lsl	r3, r3, #1
	sub	r3, r3, #1
	ldr	r2, [fp, #-88]
	cmp	r2, r3
	blt	.L912
	mov	r3, #1
	mov	sp, r10
	ldr	r2, .L917
	ldr	r1, [r2]
	ldr	r2, [fp, #-40]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L914
	bl	__stack_chk_fail
.L914:
	mov	r0, r3
	sub	sp, fp, #32
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L918:
	.align	2
.L917:
	.word	.LC42
	.word	-1074790400
	.size	check_stability_closedloop, .-check_stability_closedloop
	.section	.rodata
	.align	2
.LC43:
	.ascii	"impl.frac_bits must be less than word width!\000"
	.align	2
.LC44:
	.ascii	"impl.int_bits must be less than word width subtract"
	.ascii	"ed by precision!\000"
	.align	2
.LC45:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/core/initialization.h\000"
	.align	2
.LC46:
	.ascii	"0\000"
	.text
	.align	2
	.global	initialization
	.syntax unified
	.arm
	.fpu softvfp
	.type	initialization, %function
initialization:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	cmp	r3, #31
	ble	.L920
	ldr	r0, .L932+4
	bl	puts
.L920:
	ldr	r3, .L932
	ldr	r2, [r3]
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	rsb	r3, r3, #32
	cmp	r2, r3
	blt	.L921
	ldr	r0, .L932+8
	bl	puts
	ldr	r3, .L932+12
	mov	r2, #33
	ldr	r1, .L932+16
	ldr	r0, .L932+20
	bl	__assert_fail
.L921:
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	cmp	r3, #30
	ble	.L922
	ldr	r3, .L932+24
	mvn	r2, #-2147483648
	str	r2, [r3]
	b	.L923
.L922:
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	mov	r2, #1
	lsl	r3, r2, r3
	ldr	r2, .L932+24
	str	r3, [r2]
.L923:
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	sub	r3, r3, #1
	mov	r2, #1
	lsl	r3, r2, r3
	ldr	r2, .L932+28
	str	r3, [r2]
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	mov	r2, #1
	lsl	r3, r2, r3
	rsb	r3, r3, #0
	ldr	r2, .L932+32
	str	r3, [r2]
	ldr	r3, .L932
	ldr	r2, [r3, #4]
	ldr	r3, .L932
	ldr	r3, [r3]
	add	r3, r2, r3
	sub	r3, r3, #1
	mov	r2, #1
	lsl	r3, r2, r3
	rsb	r3, r3, #0
	ldr	r2, .L932+36
	str	r3, [r2]
	ldr	r3, .L932
	ldr	r2, [r3, #4]
	ldr	r3, .L932
	ldr	r3, [r3]
	add	r3, r2, r3
	sub	r3, r3, #1
	mov	r2, #1
	lsl	r3, r2, r3
	sub	r3, r3, #1
	ldr	r2, .L932+40
	str	r3, [r2]
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	mov	r2, #1
	lsl	r3, r2, r3
	sub	r3, r3, #1
	ldr	r2, .L932+44
	str	r3, [r2]
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	rsb	r3, r3, #31
	mov	r2, #-2147483648
	lsr	r3, r2, r3
	mov	r2, r3
	ldr	r3, .L932+48
	str	r2, [r3]
	ldr	r3, .L932+36
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L932+52
	stm	r1, {r2-r3}
	ldr	r3, .L932+52
	ldmia	r3, {r4-r5}
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	mov	r2, #1
	lsl	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
	ldr	r1, .L932+52
	stm	r1, {r2-r3}
	ldr	r3, .L932+40
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L932+56
	stm	r1, {r2-r3}
	ldr	r3, .L932+56
	ldmia	r3, {r4-r5}
	ldr	r3, .L932
	ldr	r3, [r3, #4]
	mov	r2, #1
	lsl	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
	ldr	r1, .L932+56
	stm	r1, {r2-r3}
	ldr	r3, .L932
	ldr	r3, [r3, #40]
	cmp	r3, #0
	beq	.L924
	ldr	r3, .L932
	ldr	r3, [r3, #40]
	cmp	r3, #1
	bne	.L925
.L924:
	ldr	r3, .L932
	mov	r2, #1
	str	r2, [r3, #40]
	pop	{r4, r5, fp, pc}
.L925:
	ldr	r3, .L932
	add	r1, r3, #16
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L927
	ldr	r3, .L932
	add	r5, r3, #16
	ldmia	r5, {r4-r5}
	ldr	r3, .L932
	ldr	r3, [r3, #40]
	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
	ldr	r1, .L932
	str	r2, [r1, #16]
	str	r3, [r1, #20]
.L927:
	ldr	r3, .L932
	add	r1, r3, #8
	ldmia	r1, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	popne	{r4, r5, fp, pc}
	ldr	r3, .L932
	add	r5, r3, #8
	ldmia	r5, {r4-r5}
	ldr	r3, .L932
	ldr	r3, [r3, #40]
	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
	ldr	r1, .L932
	str	r2, [r1, #8]
	str	r3, [r1, #12]
	pop	{r4, r5, fp, pc}
.L933:
	.align	2
.L932:
	.word	impl
	.word	.LC43
	.word	.LC44
	.word	__PRETTY_FUNCTION__.6844
	.word	.LC45
	.word	.LC46
	.word	_fxp_one
	.word	_fxp_half
	.word	_fxp_minus_one
	.word	_fxp_min
	.word	_fxp_max
	.word	_fxp_fmask
	.word	_fxp_imask
	.word	_dbl_min
	.word	_dbl_max
	.size	initialization, .-initialization
	.section	.rodata
	.align	2
.LC47:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	double_state_space_representation
	.syntax unified
	.arm
	.fpu softvfp
	.type	double_state_space_representation, %function
double_state_space_representation:
	@ args = 0, pretend = 0, frame = 272
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #288
	ldr	r3, .L941
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-276]
	b	.L935
.L938:
	mov	r3, #0
	str	r3, [fp, #-272]
	b	.L936
.L937:
	ldr	r3, [fp, #-276]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-272]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #264
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-276]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-272]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-272]
	add	r3, r3, #1
	str	r3, [fp, #-272]
.L936:
	ldr	r3, [fp, #-272]
	cmp	r3, #3
	ble	.L937
	ldr	r3, [fp, #-276]
	add	r3, r3, #1
	str	r3, [fp, #-276]
.L935:
	ldr	r3, [fp, #-276]
	cmp	r3, #3
	ble	.L938
	ldr	r3, .L941+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L941+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L941+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L941+12
	str	r3, [sp, #4]
	ldr	r3, .L941+16
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L941+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L941+20
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L941+20
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	ldr	r3, .L941+24
	str	r3, [sp, #4]
	ldr	r3, .L941+28
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L941+4
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #140
	sub	r2, fp, #268
	ldr	r1, .L941+32
	str	r1, [sp]
	mov	r1, #1
	bl	double_add_matrix
	ldr	r3, .L941+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L941+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L941+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L941+12
	str	r3, [sp, #4]
	ldr	r3, .L941+36
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L941+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L941+20
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L941+20
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	ldr	r3, .L941+24
	str	r3, [sp, #4]
	ldr	r3, .L941+40
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L941+8
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #140
	sub	r2, fp, #268
	ldr	r1, .L941+12
	str	r1, [sp]
	mov	r1, #1
	bl	double_add_matrix
	ldr	r3, .L941+36
	add	r3, r3, #640
	ldmia	r3, {r2-r3}
	ldr	r1, .L941
	ldr	r0, [r1]
	ldr	r1, [fp, #-8]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L940
	bl	__stack_chk_fail
.L940:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L942:
	.align	2
.L941:
	.word	.LC47
	.word	nOutputs
	.word	nStates
	.word	_controller+512
	.word	_controller+256
	.word	nInputs
	.word	_controller+768
	.word	_controller+384
	.word	_controller+640
	.word	_controller
	.word	_controller+128
	.size	double_state_space_representation, .-double_state_space_representation
	.section	.rodata
	.align	2
.LC48:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	fxp_state_space_representation
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_state_space_representation, %function
fxp_state_space_representation:
	@ args = 0, pretend = 0, frame = 592
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #608
	ldr	r3, .L1014
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L944
.L947:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L945
.L946:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-580]
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-516]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L945:
	ldr	r3, [fp, #-588]
	cmp	r3, #3
	ble	.L946
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L944:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	ble	.L947
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L948
.L951:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L949
.L950:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-452]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L949:
	ldr	r3, [fp, #-588]
	cmp	r3, #3
	ble	.L950
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L948:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	ble	.L951
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L952
.L955:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L953
.L954:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-388]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L953:
	ldr	r3, [fp, #-588]
	cmp	r3, #3
	ble	.L954
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L952:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	ble	.L955
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L956
.L959:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L957
.L958:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-324]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L957:
	ldr	r3, [fp, #-588]
	cmp	r3, #3
	ble	.L958
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L956:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	ble	.L959
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L960
.L963:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L961
.L962:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-260]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L961:
	ldr	r3, [fp, #-588]
	cmp	r3, #3
	ble	.L962
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L960:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	ble	.L963
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L964
.L967:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L965
.L966:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-196]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L965:
	ldr	r3, [fp, #-588]
	cmp	r3, #3
	ble	.L966
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L964:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	ble	.L967
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L968
.L971:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L969
.L970:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-132]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L969:
	ldr	r3, [fp, #-588]
	cmp	r3, #3
	ble	.L970
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L968:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	ble	.L971
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L972
.L975:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L973
.L974:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-68]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L973:
	ldr	r3, [fp, #-588]
	cmp	r3, #3
	ble	.L974
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L972:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	ble	.L975
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L976
.L979:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L977
.L978:
	ldr	r1, .L1014+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-452]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L977:
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-588]
	cmp	r2, r3
	blt	.L978
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L976:
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-592]
	cmp	r2, r3
	blt	.L979
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L980
.L983:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L981
.L982:
	ldr	r1, .L1014+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	add	r3, r3, #16
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-388]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L981:
	ldr	r3, .L1014+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-588]
	cmp	r2, r3
	blt	.L982
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L980:
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-592]
	cmp	r2, r3
	blt	.L983
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L984
.L987:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L985
.L986:
	ldr	r1, .L1014+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	add	r3, r3, #32
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-324]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L985:
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-588]
	cmp	r2, r3
	blt	.L986
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L984:
	ldr	r3, .L1014+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-592]
	cmp	r2, r3
	blt	.L987
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L988
.L991:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L989
.L990:
	ldr	r1, .L1014+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	add	r3, r3, #48
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-260]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L989:
	ldr	r3, .L1014+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-588]
	cmp	r2, r3
	blt	.L990
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L988:
	ldr	r3, .L1014+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-592]
	cmp	r2, r3
	blt	.L991
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L992
.L995:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L993
.L994:
	ldr	r1, .L1014+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	add	r3, r3, #64
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-196]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L993:
	ldr	r3, [fp, #-588]
	cmp	r3, #0
	ble	.L994
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L992:
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-592]
	cmp	r2, r3
	blt	.L995
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L996
.L999:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L997
.L998:
	ldr	r1, .L1014+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	add	r3, r3, #96
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-132]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L997:
	ldr	r3, [fp, #-588]
	cmp	r3, #0
	ble	.L998
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L996:
	ldr	r3, .L1014+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-592]
	cmp	r2, r3
	blt	.L999
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1000
.L1003:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L1001
.L1002:
	ldr	r1, .L1014+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	add	r3, r3, #80
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-68]
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L1001:
	ldr	r3, [fp, #-588]
	cmp	r3, #0
	ble	.L1002
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1000:
	ldr	r3, .L1014+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-592]
	cmp	r2, r3
	blt	.L1003
	ldr	r3, .L1014+16
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #584
	str	r3, [sp, #8]
	sub	r3, fp, #200
	str	r3, [sp, #4]
	sub	r3, fp, #328
	str	r3, [sp]
	mov	r3, #1
	bl	fxp_matrix_multiplication
	ldr	r3, .L1014+16
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1014+12
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1014+12
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #520
	str	r3, [sp, #8]
	sub	r3, fp, #136
	str	r3, [sp, #4]
	sub	r3, fp, #264
	str	r3, [sp]
	mov	r3, #1
	bl	fxp_matrix_multiplication
	ldr	r3, .L1014+16
	ldr	r3, [r3]
	mov	r0, r3
	sub	r1, fp, #520
	sub	r2, fp, #584
	sub	r3, fp, #72
	str	r3, [sp]
	mov	r3, r1
	mov	r1, #1
	bl	fxp_add_matrix
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #584
	str	r3, [sp, #8]
	sub	r3, fp, #200
	str	r3, [sp, #4]
	sub	r3, fp, #456
	str	r3, [sp]
	mov	r3, #1
	bl	fxp_matrix_multiplication
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1014+12
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1014+12
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #520
	str	r3, [sp, #8]
	sub	r3, fp, #136
	str	r3, [sp, #4]
	sub	r3, fp, #392
	str	r3, [sp]
	mov	r3, #1
	bl	fxp_matrix_multiplication
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	mov	r0, r3
	sub	r1, fp, #520
	sub	r2, fp, #584
	sub	r3, fp, #200
	str	r3, [sp]
	mov	r3, r1
	mov	r1, #1
	bl	fxp_add_matrix
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1004
.L1007:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L1005
.L1006:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-196]
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	ldr	ip, .L1014+4
	ldr	r1, [fp, #-592]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-588]
	add	r1, r0, r1
	add	r1, r1, #64
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L1005:
	ldr	r3, [fp, #-588]
	cmp	r3, #0
	ble	.L1006
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1004:
	ldr	r3, .L1014+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-592]
	cmp	r2, r3
	blt	.L1007
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1008
.L1011:
	mov	r3, #0
	str	r3, [fp, #-588]
	b	.L1009
.L1010:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-588]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-68]
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	ldr	ip, .L1014+4
	ldr	r1, [fp, #-592]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-588]
	add	r1, r0, r1
	add	r1, r1, #80
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-588]
	add	r3, r3, #1
	str	r3, [fp, #-588]
.L1009:
	ldr	r3, [fp, #-588]
	cmp	r3, #0
	ble	.L1010
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1008:
	ldr	r3, .L1014+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-592]
	cmp	r2, r3
	blt	.L1011
	ldr	r3, .L1014+4
	add	r3, r3, #640
	ldmia	r3, {r2-r3}
	ldr	r1, .L1014
	ldr	r0, [r1]
	ldr	r1, [fp, #-8]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L1013
	bl	__stack_chk_fail
.L1013:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1015:
	.align	2
.L1014:
	.word	.LC48
	.word	_controller
	.word	nStates
	.word	nInputs
	.word	nOutputs
	.size	fxp_state_space_representation, .-fxp_state_space_representation
	.section	.rodata
	.align	2
.LC49:
	.ascii	"Warning: Function sinTyl from bmc/core/filter_funct"
	.ascii	"ions.h: Precision must be a positive integer. Assum"
	.ascii	"ing 0 precision\000"
	.align	2
.LC50:
	.ascii	"Warning: Function sinTyl from bmc/core/filter_funct"
	.ascii	"ions.h: Precision representation exceeded. Assuming"
	.ascii	" maximum precision of 6\000"
	.text
	.align	2
	.global	sinTyl
	.syntax unified
	.arm
	.fpu softvfp
	.type	sinTyl, %function
sinTyl:
	@ 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, #-36]
	str	r1, [fp, #-32]
	str	r2, [fp, #-40]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	bge	.L1017
	ldr	r0, .L1020
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-40]
.L1017:
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	blt	.L1018
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	ble	.L1018
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #1
	ble	.L1018
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1020+4
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #2
	ble	.L1018
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1020+8
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #3
	ble	.L1018
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1020+12
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #4
	ble	.L1018
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1020+16
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #5
	ble	.L1018
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1020+20
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #6
	ble	.L1018
	ldr	r0, .L1020+24
	bl	puts
.L1018:
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1021:
	.align	2
.L1020:
	.word	.LC49
	.word	1075314688
	.word	1079902208
	.word	1085517824
	.word	1091970560
	.word	1099106472
	.word	.LC50
	.size	sinTyl, .-sinTyl
	.section	.rodata
	.align	2
.LC51:
	.ascii	"Warning: Function cosTyl from bmc/core/filter_funct"
	.ascii	"ions.h: Precision must be a positive integer. Assum"
	.ascii	"ing 0 precision\000"
	.text
	.align	2
	.global	cosTyl
	.syntax unified
	.arm
	.fpu softvfp
	.type	cosTyl, %function
cosTyl:
	@ 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, #-36]
	str	r1, [fp, #-32]
	str	r2, [fp, #-40]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	bge	.L1023
	ldr	r0, .L1026
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-40]
.L1023:
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	blt	.L1024
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	ble	.L1024
	mov	r2, #0
	ldr	r3, .L1026+4
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1026+4
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #1
	ble	.L1024
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	mov	r3, #1073741824
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #2
	ble	.L1024
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1026+8
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #3
	ble	.L1024
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1026+12
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #4
	ble	.L1024
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1026+16
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #5
	ble	.L1024
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1026+20
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #6
	ble	.L1024
	ldr	r0, .L1026+24
	bl	puts
.L1024:
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1027:
	.align	2
.L1026:
	.word	.LC51
	.word	1072693248
	.word	1077411840
	.word	1082556416
	.word	1088663552
	.word	1095479168
	.word	.LC50
	.size	cosTyl, .-cosTyl
	.section	.rodata
	.align	2
.LC52:
	.ascii	"Warning: Function sinTyl from bmc/core/filter_funct"
	.ascii	"ions.h: Precision representation exceeded. Assuming"
	.ascii	" maximum precision of 4\000"
	.text
	.align	2
	.global	atanTyl
	.syntax unified
	.arm
	.fpu softvfp
	.type	atanTyl, %function
atanTyl:
	@ 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, #-36]
	str	r1, [fp, #-32]
	str	r2, [fp, #-40]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	bge	.L1029
	ldr	r0, .L1032
	bl	puts
	mov	r3, #0
	str	r3, [fp, #-40]
.L1029:
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	blt	.L1030
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	ble	.L1030
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #1
	ble	.L1030
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1032+4
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #2
	ble	.L1030
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1032+8
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #3
	ble	.L1030
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	mov	r2, #0
	ldr	r3, .L1032+12
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-40]
	cmp	r3, #6
	ble	.L1030
	ldr	r0, .L1032+16
	bl	puts
.L1030:
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1033:
	.align	2
.L1032:
	.word	.LC49
	.word	1074266112
	.word	1075052544
	.word	1075576832
	.word	.LC52
	.size	atanTyl, .-atanTyl
	.align	2
	.global	sqrt1
	.syntax unified
	.arm
	.fpu softvfp
	.type	sqrt1, %function
sqrt1:
	@ 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, #-24]	@ float
	mov	r1, #1056964608
	ldr	r0, [fp, #-24]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	str	r3, [fp, #-16]	@ float
	ldr	r3, [fp, #-24]	@ float
	str	r3, [fp, #-20]	@ float
	ldr	r3, [fp, #-20]
	asr	r2, r3, #1
	ldr	r3, .L1036
	sub	r3, r3, r2
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]	@ float
	ldr	r1, [fp, #-24]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r4, r3
	ldr	r3, [fp, #-20]	@ float
	ldr	r1, [fp, #-16]	@ float
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, [fp, #-20]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	mov	r0, #1069547520
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r1, r3
	mov	r0, r4
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1037:
	.align	2
.L1036:
	.word	1597463007
	.size	sqrt1, .-sqrt1
	.align	2
	.global	sqrt2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sqrt2, %function
sqrt2:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #20
	str	r0, [fp, #-16]	@ float
	ldr	r3, [fp, #-16]	@ float
	str	r3, [fp, #-8]	@ float
	ldr	r3, [fp, #-8]
	asr	r3, r3, #1
	add	r3, r3, #532676608
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]	@ float
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	sqrt2, .-sqrt2
	.global	__aeabi_fcmplt
	.align	2
	.global	fabsolut
	.syntax unified
	.arm
	.fpu softvfp
	.type	fabsolut, %function
fabsolut:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]	@ float
	mov	r1, #0
	ldr	r0, [fp, #-8]	@ float
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1041
	ldr	r3, [fp, #-8]
	eor	r3, r3, #-2147483648
	str	r3, [fp, #-8]	@ float
.L1041:
	ldr	r3, [fp, #-8]	@ float
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	fabsolut, .-fabsolut
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	sqrt3, %function
sqrt3:
	@ args = 0, 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, #-48]	@ float
	ldr	r1, .L1058
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_fdiv
	mov	r3, r0
	str	r3, [fp, #-44]	@ float
	ldr	r2, .L1058+4
	ldr	r3, .L1058+8
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-36]
	mov	r1, #0
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1057
	mov	r3, #0
	str	r3, [fp, #-44]	@ float
	b	.L1048
.L1057:
	mov	r3, #1
	str	r3, [fp, #-40]
	b	.L1049
.L1053:
	ldr	r3, [fp, #-36]
	cmp	r3, #0
	bne	.L1051
	ldr	r1, [fp, #-44]	@ float
	ldr	r0, [fp, #-44]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r4, r0
	mov	r5, r1
	ldr	r0, [fp, #-44]	@ float
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	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, #-32]	@ float
	ldr	r1, [fp, #-32]	@ float
	ldr	r0, [fp, #-44]	@ float
	bl	__aeabi_fadd
	mov	r3, r0
	str	r3, [fp, #-44]	@ float
	ldr	r1, [fp, #-44]	@ float
	ldr	r0, [fp, #-44]	@ float
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r1, r3
	ldr	r0, [fp, #-48]	@ float
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2f
	mov	r3, r0
	mov	r0, r3
	bl	fabsolut
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1051
	mov	r3, #1
	str	r3, [fp, #-36]
.L1051:
	ldr	r3, [fp, #-40]
	add	r3, r3, #1
	str	r3, [fp, #-40]
.L1049:
	ldr	r3, [fp, #-40]
	cmp	r3, #19
	ble	.L1053
.L1048:
	ldr	r3, [fp, #-44]	@ float
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1059:
	.align	2
.L1058:
	.word	1092616192
	.word	-1998362383
	.word	1055193269
	.size	sqrt3, .-sqrt3
	.section	.rodata
	.align	2
.LC53:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_overflow
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_overflow, %function
verify_overflow:
	@ args = 0, pretend = 0, frame = 80
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #88
	ldr	r3, .L1075
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r3, .L1075+4
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-72]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-76]
	ldr	r3, .L1075+4
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-80]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-84]
	ldr	r3, .L1075+4
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-76]
	ldr	r0, .L1075+4
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1075+4
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-84]
	ldr	r0, .L1075+8
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1075+12
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-88]
	ldr	r3, .L1075+12
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-64]
	ldr	r3, .L1075+16
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-60]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-56]
	ldr	r3, .L1075+16
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-52]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-68]
	b	.L1061
.L1064:
	ldr	r3, [fp, #-56]
	ldr	r2, [fp, #-68]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	bl	nondet_int
	mov	r1, r0
	ldr	r3, [fp, #-48]
	ldr	r2, [fp, #-68]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-48]
	ldr	r2, [fp, #-68]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, [fp, #-88]
	cmp	r2, r3
	bgt	.L1062
	ldr	r3, [fp, #-48]
	ldr	r2, [fp, #-68]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, [fp, #-64]
	cmp	r2, r3
	blt	.L1062
	mov	r3, #1
	b	.L1063
.L1062:
	mov	r3, #0
.L1063:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r3, [fp, #-68]
	add	r3, r3, #1
	str	r3, [fp, #-68]
.L1061:
	ldr	r3, .L1075+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-68]
	cmp	r2, r3
	blt	.L1064
	mov	r3, #0
	str	r3, [fp, #-44]
	ldr	r3, .L1075+4
	ldr	r2, [r3, #1608]
	ldr	r3, .L1075+4
	ldr	r3, [r3, #800]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-44]
	ldr	r3, .L1075+4
	ldr	ip, [r3, #800]
	mov	r3, sp
	mov	r5, r3
	sub	r3, ip, #1
	str	r3, [fp, #-40]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-36]
	ldr	r3, .L1075+4
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-32]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-28]
	ldr	ip, [fp, #-44]
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-68]
	b	.L1065
.L1066:
	ldr	r3, [fp, #-36]
	ldr	r2, [fp, #-68]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-68]
	add	r3, r3, #1
	str	r3, [fp, #-68]
.L1065:
	ldr	r3, .L1075+4
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-68]
	cmp	r2, r3
	blt	.L1066
	mov	r3, #0
	str	r3, [fp, #-68]
	b	.L1067
.L1068:
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-68]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-68]
	add	r3, r3, #1
	str	r3, [fp, #-68]
.L1067:
	ldr	r3, .L1075+4
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-68]
	cmp	r2, r3
	blt	.L1068
	mov	r3, #0
	str	r3, [fp, #-68]
	b	.L1069
.L1070:
	ldr	r3, [fp, #-20]
	ldr	r2, [fp, #-68]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-68]
	add	r3, r3, #1
	str	r3, [fp, #-68]
.L1069:
	ldr	r2, [fp, #-68]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	blt	.L1070
	mov	r3, #0
	str	r3, [fp, #-68]
	b	.L1071
.L1072:
	ldr	r3, [fp, #-48]
	ldr	r2, [fp, #-68]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, .L1075+4
	ldr	r2, [r2, #1608]
	ldr	r1, [fp, #-28]
	mov	r0, r3
	bl	shiftL
	ldr	r3, .L1075+4
	ldr	r3, [r3, #800]
	ldr	r2, .L1075+4
	ldr	r2, [r2, #1608]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, [fp, #-84]
	ldr	r2, [fp, #-76]
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-36]
	bl	fxp_direct_form_1
	mov	r1, r0
	ldr	r3, [fp, #-56]
	ldr	r2, [fp, #-68]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-56]
	ldr	r2, [fp, #-68]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, .L1075+4
	ldr	r2, [r2, #800]
	ldr	r1, [fp, #-36]
	mov	r0, r3
	bl	shiftL
	ldr	r3, [fp, #-68]
	add	r3, r3, #1
	str	r3, [fp, #-68]
.L1071:
	ldr	r3, .L1075+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-68]
	cmp	r2, r3
	blt	.L1072
	ldr	r3, .L1075+20
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L1075+16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, [fp, #-56]
	bl	fxp_verify_overflow_array
	mov	r3, #0
	mov	sp, r5
	mov	sp, r4
	ldr	r2, .L1075
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1074
	bl	__stack_chk_fail
.L1074:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1076:
	.align	2
.L1075:
	.word	.LC53
	.word	ds
	.word	ds+808
	.word	impl
	.word	X_SIZE_VALUE
	.word	overflow_mode
	.size	verify_overflow, .-verify_overflow
	.section	.rodata
	.align	2
.LC54:
	.ascii	"#matrix STATES -------------------------------\000"
	.align	2
.LC55:
	.ascii	"#matrix OUTPUTS -------------------------------\000"
	.align	2
.LC56:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/engine/verify_limit_cycle.h\000"
	.align	2
.LC57:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_limit_cycle_state_space
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_limit_cycle_state_space, %function
verify_limit_cycle_state_space:
	@ args = 0, pretend = 0, frame = 536
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #552
	ldr	r3, .L1089
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-532]
	b	.L1078
.L1081:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1079
.L1080:
	ldr	r3, [fp, #-532]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #264
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-532]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-532]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #520
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-532]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #392
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1079:
	ldr	r3, [fp, #-536]
	cmp	r3, #3
	ble	.L1080
	ldr	r3, [fp, #-532]
	add	r3, r3, #1
	str	r3, [fp, #-532]
.L1078:
	ldr	r3, [fp, #-532]
	cmp	r3, #3
	ble	.L1081
	ldr	r3, .L1089+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1089+12
	str	r3, [sp, #4]
	ldr	r3, .L1089+16
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1089+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1089+20
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1089+20
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	ldr	r3, .L1089+24
	str	r3, [sp, #4]
	ldr	r3, .L1089+28
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1089+4
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #140
	sub	r2, fp, #268
	ldr	r1, .L1089+32
	str	r1, [sp]
	mov	r1, #1
	bl	double_add_matrix
	mov	r3, #0
	str	r3, [fp, #-540]
	mov	r3, #1
	str	r3, [fp, #-532]
	b	.L1082
.L1087:
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1089+12
	str	r3, [sp, #4]
	ldr	r3, .L1089+36
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1089+20
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1089+20
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	ldr	r3, .L1089+24
	str	r3, [sp, #4]
	ldr	r3, .L1089+40
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #140
	sub	r2, fp, #268
	ldr	r1, .L1089+12
	str	r1, [sp]
	mov	r1, #1
	bl	double_add_matrix
	ldr	r3, .L1089+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1089+12
	str	r3, [sp, #4]
	ldr	r3, .L1089+16
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1089+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1089+20
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1089+20
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	ldr	r3, .L1089+24
	str	r3, [sp, #4]
	ldr	r3, .L1089+28
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1089+4
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #140
	sub	r2, fp, #268
	ldr	r1, .L1089+32
	str	r1, [sp]
	mov	r1, #1
	bl	double_add_matrix
	mov	r3, #0
	str	r3, [fp, #-528]
	b	.L1083
.L1084:
	ldr	r2, .L1089+36
	ldr	r3, [fp, #-528]
	add	r3, r3, #16
	lsl	r3, r3, #5
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-528]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-540]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #4
	add	r1, r0, r1
	sub	r1, r1, #520
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-528]
	add	r3, r3, #1
	str	r3, [fp, #-528]
.L1083:
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-528]
	cmp	r2, r3
	blt	.L1084
	mov	r3, #0
	str	r3, [fp, #-528]
	b	.L1085
.L1086:
	ldr	r2, .L1089+36
	ldr	r3, [fp, #-528]
	add	r3, r3, #20
	lsl	r3, r3, #5
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-528]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-540]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #4
	add	r1, r0, r1
	sub	r1, r1, #520
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-528]
	add	r3, r3, #1
	str	r3, [fp, #-528]
.L1085:
	ldr	r3, .L1089+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-528]
	cmp	r2, r3
	blt	.L1086
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
	ldr	r3, [fp, #-532]
	add	r3, r3, #1
	str	r3, [fp, #-532]
.L1082:
	ldr	r3, [fp, #-532]
	cmp	r3, #0
	blt	.L1087
	ldr	r0, .L1089+44
	bl	printf
	ldr	r3, .L1089+8
	ldr	r3, [r3]
	mov	r1, r3
	sub	r3, fp, #524
	mov	r2, #0
	mov	r0, r3
	bl	print_matrix
	ldr	r0, .L1089+48
	bl	printf
	ldr	r3, .L1089+4
	ldr	r3, [r3]
	mov	r1, r3
	sub	r3, fp, #396
	mov	r2, #0
	mov	r0, r3
	bl	print_matrix
	ldr	r3, .L1089+52
	mov	r2, #93
	ldr	r1, .L1089+56
	ldr	r0, .L1089+60
	bl	__assert_fail
.L1090:
	.align	2
.L1089:
	.word	.LC57
	.word	nOutputs
	.word	nStates
	.word	_controller+512
	.word	_controller+256
	.word	nInputs
	.word	_controller+768
	.word	_controller+384
	.word	_controller+640
	.word	_controller
	.word	_controller+128
	.word	.LC54
	.word	.LC55
	.word	__PRETTY_FUNCTION__.7103
	.word	.LC56
	.word	.LC46
	.size	verify_limit_cycle_state_space, .-verify_limit_cycle_state_space
	.section	.rodata
	.align	2
.LC58:
	.ascii	"X_SIZE must be at least 2 * ds.a_size\000"
	.align	2
.LC59:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_limit_cycle
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_limit_cycle, %function
verify_limit_cycle:
	@ args = 0, pretend = 0, frame = 104
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #112
	ldr	r3, .L1106
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r3, .L1106+4
	mov	r2, #3
	str	r2, [r3]
	ldr	r3, .L1106+8
	ldr	r3, [r3, #800]
	lsl	r3, r3, #1
	str	r3, [fp, #-84]
	ldr	r0, .L1106+12
	bl	printf
	ldr	r3, .L1106+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-84]
	cmp	r2, r3
	movle	r3, #1
	movgt	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	ldr	r3, .L1106+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-88]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-92]
	ldr	r3, .L1106+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-96]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-100]
	ldr	r3, .L1106+8
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-92]
	ldr	r0, .L1106+8
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1106+8
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-100]
	ldr	r0, .L1106+20
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1106+16
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-104]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-108]
	ldr	r3, .L1106+16
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-112]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-76]
	ldr	r3, .L1106+24
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-72]
	ldr	r3, .L1106+24
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-68]
	ldr	r3, .L1106+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-64]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-60]
	bl	nondet_int
	str	r0, [fp, #-56]
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-72]
	cmp	r2, r3
	blt	.L1092
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-68]
	cmp	r2, r3
	bgt	.L1092
	mov	r3, #1
	b	.L1093
.L1092:
	mov	r3, #0
.L1093:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	mov	r3, #0
	str	r3, [fp, #-80]
	b	.L1094
.L1095:
	ldr	r3, [fp, #-76]
	ldr	r2, [fp, #-80]
	ldr	r1, [fp, #-56]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-108]
	ldr	r2, [fp, #-80]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-80]
	add	r3, r3, #1
	str	r3, [fp, #-80]
.L1094:
	ldr	r3, .L1106+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-80]
	cmp	r2, r3
	blt	.L1095
	mov	r3, #0
	str	r3, [fp, #-80]
	b	.L1096
.L1097:
	ldr	r3, [fp, #-60]
	ldr	r2, [fp, #-80]
	ldr	r1, [fp, #-56]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-80]
	add	r3, r3, #1
	str	r3, [fp, #-80]
.L1096:
	ldr	r3, .L1106+8
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-80]
	cmp	r2, r3
	blt	.L1097
	mov	r3, #0
	str	r3, [fp, #-52]
	ldr	r3, .L1106+8
	ldr	r2, [r3, #1608]
	ldr	r3, .L1106+8
	ldr	r3, [r3, #800]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-52]
	ldr	r3, .L1106+8
	ldr	ip, [r3, #800]
	mov	r3, sp
	mov	r5, r3
	sub	r3, ip, #1
	str	r3, [fp, #-48]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-44]
	ldr	r3, .L1106+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-40]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-36]
	ldr	ip, [fp, #-52]
	sub	r3, ip, #1
	str	r3, [fp, #-32]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-28]
	ldr	ip, [fp, #-52]
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-80]
	b	.L1098
.L1101:
	bl	nondet_int
	mov	r1, r0
	ldr	r3, [fp, #-44]
	ldr	r2, [fp, #-80]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-44]
	ldr	r2, [fp, #-80]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, [fp, #-72]
	cmp	r2, r3
	bgt	.L1099
	ldr	r3, [fp, #-44]
	ldr	r2, [fp, #-80]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, [fp, #-68]
	cmp	r2, r3
	blt	.L1099
	mov	r3, #1
	b	.L1100
.L1099:
	mov	r3, #0
.L1100:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r3, [fp, #-44]
	ldr	r2, [fp, #-80]
	ldr	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-36]
	ldr	r2, [fp, #-80]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-80]
	add	r3, r3, #1
	str	r3, [fp, #-80]
.L1098:
	ldr	r3, .L1106+8
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-80]
	cmp	r2, r3
	blt	.L1101
	mov	r3, #0
	str	r3, [fp, #-80]
	b	.L1102
.L1103:
	ldr	r3, [fp, #-76]
	ldr	r2, [fp, #-80]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, .L1106+8
	ldr	r2, [r2, #1608]
	ldr	r1, [fp, #-60]
	mov	r0, r3
	bl	shiftL
	ldr	r3, .L1106+8
	ldr	r3, [r3, #800]
	ldr	r2, .L1106+8
	ldr	r2, [r2, #1608]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, [fp, #-100]
	ldr	r2, [fp, #-92]
	ldr	r1, [fp, #-60]
	ldr	r0, [fp, #-44]
	bl	fxp_direct_form_1
	mov	r1, r0
	ldr	r3, [fp, #-108]
	ldr	r2, [fp, #-80]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-108]
	ldr	r2, [fp, #-80]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, .L1106+8
	ldr	r2, [r2, #800]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	bl	shiftL
	ldr	r3, [fp, #-80]
	add	r3, r3, #1
	str	r3, [fp, #-80]
.L1102:
	ldr	r3, .L1106+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-80]
	cmp	r2, r3
	blt	.L1103
	ldr	r3, .L1106+16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, [fp, #-108]
	bl	fxp_check_persistent_limit_cycle
	mov	r3, #0
	mov	sp, r5
	mov	sp, r4
	ldr	r2, .L1106
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1105
	bl	__stack_chk_fail
.L1105:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1107:
	.align	2
.L1106:
	.word	.LC59
	.word	overflow_mode
	.word	ds
	.word	.LC58
	.word	X_SIZE_VALUE
	.word	ds+808
	.word	impl
	.size	verify_limit_cycle, .-verify_limit_cycle
	.section	.rodata
	.align	2
.LC60:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_error
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_error, %function
verify_error:
	@ args = 0, pretend = 0, frame = 928
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, fp, lr}
	add	fp, sp, #24
	sub	sp, sp, #940
	ldr	r3, .L1129
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r3, sp
	mov	r8, r3
	ldr	r3, .L1129+4
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L1129+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-916]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-920]
	ldr	r3, .L1129+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-924]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-928]
	ldr	r3, .L1129+8
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-920]
	ldr	r0, .L1129+8
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1129+8
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-928]
	ldr	r0, .L1129+12
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1129+16
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-932]
	ldr	r3, .L1129+16
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-936]
	ldr	r3, .L1129+20
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-940]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-944]
	ldr	r3, .L1129+20
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-948]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-952]
	ldr	r3, .L1129+20
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-956]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-908]
	ldr	r3, .L1129+20
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-904]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-900]
	mov	r3, #0
	str	r3, [fp, #-896]
	ldr	r3, .L1129+8
	ldr	r2, [r3, #1608]
	ldr	r3, .L1129+8
	ldr	r3, [r3, #800]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-896]
	ldr	r3, .L1129+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-892]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-888]
	ldr	r3, .L1129+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-884]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-880]
	ldr	ip, [fp, #-896]
	sub	r3, ip, #1
	str	r3, [fp, #-876]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-872]
	ldr	r3, .L1129+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-868]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-864]
	ldr	r3, .L1129+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-860]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-856]
	ldr	ip, [fp, #-896]
	sub	r3, ip, #1
	str	r3, [fp, #-852]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-848]
	mov	r3, #0
	str	r3, [fp, #-912]
	b	.L1109
.L1110:
	ldr	r3, [fp, #-888]
	ldr	r2, [fp, #-912]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r2, [fp, #-864]
	ldr	r3, [fp, #-912]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-912]
	add	r3, r3, #1
	str	r3, [fp, #-912]
.L1109:
	ldr	r3, .L1129+8
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-912]
	cmp	r2, r3
	blt	.L1110
	mov	r3, #0
	str	r3, [fp, #-912]
	b	.L1111
.L1112:
	ldr	r3, [fp, #-880]
	ldr	r2, [fp, #-912]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r2, [fp, #-856]
	ldr	r3, [fp, #-912]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-912]
	add	r3, r3, #1
	str	r3, [fp, #-912]
.L1111:
	ldr	r3, .L1129+8
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-912]
	cmp	r2, r3
	blt	.L1112
	mov	r3, #0
	str	r3, [fp, #-912]
	b	.L1113
.L1114:
	ldr	r3, [fp, #-872]
	ldr	r2, [fp, #-912]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r2, [fp, #-848]
	ldr	r3, [fp, #-912]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-912]
	add	r3, r3, #1
	str	r3, [fp, #-912]
.L1113:
	ldr	r2, [fp, #-912]
	ldr	r3, [fp, #-896]
	cmp	r2, r3
	blt	.L1114
	mov	r3, #0
	str	r3, [fp, #-912]
	b	.L1115
.L1118:
	ldr	r3, [fp, #-944]
	ldr	r2, [fp, #-912]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	bl	nondet_int
	mov	r1, r0
	ldr	r3, [fp, #-952]
	ldr	r2, [fp, #-912]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-952]
	ldr	r2, [fp, #-912]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, [fp, #-932]
	cmp	r2, r3
	bgt	.L1116
	ldr	r3, [fp, #-952]
	ldr	r2, [fp, #-912]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, [fp, #-936]
	cmp	r2, r3
	blt	.L1116
	mov	r3, #1
	b	.L1117
.L1116:
	mov	r3, #0
.L1117:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r2, [fp, #-908]
	ldr	r3, [fp, #-912]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-952]
	ldr	r2, [fp, #-912]
	ldr	r3, [r3, r2, lsl #2]
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-900]
	ldr	r1, [fp, #-912]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-912]
	add	r3, r3, #1
	str	r3, [fp, #-912]
.L1115:
	ldr	r3, .L1129+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-912]
	cmp	r2, r3
	blt	.L1118
	mov	r3, #0
	str	r3, [fp, #-912]
	b	.L1119
.L1124:
	ldr	r3, [fp, #-952]
	ldr	r2, [fp, #-912]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, .L1129+8
	ldr	r2, [r2, #1608]
	ldr	r1, [fp, #-880]
	mov	r0, r3
	bl	shiftL
	ldr	r3, .L1129+8
	ldr	r3, [r3, #800]
	ldr	r2, .L1129+8
	ldr	r2, [r2, #1608]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, [fp, #-928]
	ldr	r2, [fp, #-920]
	ldr	r1, [fp, #-880]
	ldr	r0, [fp, #-888]
	bl	fxp_direct_form_1
	mov	r1, r0
	ldr	r3, [fp, #-944]
	ldr	r2, [fp, #-912]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-944]
	ldr	r2, [fp, #-912]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, .L1129+8
	ldr	r2, [r2, #800]
	ldr	r1, [fp, #-888]
	mov	r0, r3
	bl	shiftL
	ldr	r2, [fp, #-900]
	ldr	r3, [fp, #-912]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1129+8
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-856]
	bl	shiftLDouble
	ldr	r3, .L1129+8
	ldr	r3, [r3, #800]
	ldr	r2, .L1129+8
	ldr	r2, [r2, #1608]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L1129+12
	ldr	r2, .L1129+8
	ldr	r1, [fp, #-856]
	ldr	r0, [fp, #-864]
	bl	double_direct_form_1
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-908]
	ldr	r1, [fp, #-912]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-908]
	ldr	r3, [fp, #-912]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1129+8
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-864]
	bl	shiftLDouble
	ldr	r2, [fp, #-908]
	ldr	r3, [fp, #-912]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	ldr	r3, [fp, #-944]
	ldr	r2, [fp, #-912]
	ldr	r3, [r3, r2, lsl #2]
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-844]
	str	r3, [fp, #-840]
	ldr	r3, .L1129+16
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	sub	r1, fp, #844
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1120
	ldr	r3, .L1129+16
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	mov	r4, r2
	eor	r5, r3, #-2147483648
	mov	r2, r4
	mov	r3, r5
	sub	r1, fp, #844
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1120
	mov	r3, #1
	b	.L1123
.L1120:
	mov	r3, #0
.L1123:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	ldr	r3, [fp, #-912]
	add	r3, r3, #1
	str	r3, [fp, #-912]
.L1119:
	ldr	r3, .L1129+20
	ldr	r3, [r3]
	ldr	r2, [fp, #-912]
	cmp	r2, r3
	blt	.L1124
	mov	r3, #0
	mov	sp, r8
	ldr	r2, .L1129
	ldr	r1, [r2]
	ldr	r2, [fp, #-32]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1126
	bl	__stack_chk_fail
.L1126:
	mov	r0, r3
	sub	sp, fp, #24
	@ sp needed
	pop	{r4, r5, r6, r7, r8, fp, pc}
.L1130:
	.align	2
.L1129:
	.word	.LC60
	.word	overflow_mode
	.word	ds
	.word	ds+808
	.word	impl
	.word	X_SIZE_VALUE
	.size	verify_error, .-verify_error
	.section	.rodata
	.align	2
.LC61:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/engine/verify_zero_input_limit_cycl"
	.ascii	"e.h\000"
	.align	2
.LC62:
	.ascii	"X_SIZE_VALUE >= Set_xsize_at_least_two_times_Na\000"
	.align	2
.LC63:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_zero_input_limit_cycle
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_zero_input_limit_cycle, %function
verify_zero_input_limit_cycle:
	@ args = 0, pretend = 0, frame = 96
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #104
	ldr	r3, .L1145
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r3, .L1145+4
	mov	r2, #3
	str	r2, [r3]
	ldr	r3, .L1145+8
	ldr	r3, [r3, #800]
	lsl	r3, r3, #1
	str	r3, [fp, #-80]
	ldr	r0, .L1145+12
	bl	printf
	ldr	r3, .L1145+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-80]
	cmp	r2, r3
	ble	.L1132
	ldr	r3, .L1145+20
	mov	r2, #23
	ldr	r1, .L1145+24
	ldr	r0, .L1145+28
	bl	__assert_fail
.L1132:
	ldr	r3, .L1145+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-84]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-88]
	ldr	r3, .L1145+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-92]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-96]
	ldr	r3, .L1145+8
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-88]
	ldr	r0, .L1145+8
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1145+8
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-96]
	ldr	r0, .L1145+32
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1145+36
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-100]
	ldr	r3, .L1145+36
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-104]
	ldr	r3, .L1145+16
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-108]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-72]
	ldr	r3, .L1145+16
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-68]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-64]
	mov	r3, #0
	str	r3, [fp, #-76]
	b	.L1133
.L1134:
	ldr	r3, [fp, #-72]
	ldr	r2, [fp, #-76]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-64]
	ldr	r2, [fp, #-76]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-76]
	add	r3, r3, #1
	str	r3, [fp, #-76]
.L1133:
	ldr	r3, .L1145+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-76]
	cmp	r2, r3
	blt	.L1134
	mov	r3, #0
	str	r3, [fp, #-60]
	ldr	r3, .L1145+8
	ldr	r2, [r3, #1608]
	ldr	r3, .L1145+8
	ldr	r3, [r3, #800]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-60]
	ldr	r3, .L1145+8
	ldr	ip, [r3, #800]
	mov	r3, sp
	mov	r5, r3
	sub	r3, ip, #1
	str	r3, [fp, #-56]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-52]
	ldr	r3, .L1145+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-48]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-44]
	ldr	ip, [fp, #-60]
	sub	r3, ip, #1
	str	r3, [fp, #-40]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-36]
	ldr	r3, .L1145+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-32]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-28]
	ldr	ip, [fp, #-60]
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-76]
	b	.L1135
.L1138:
	bl	nondet_int
	mov	r1, r0
	ldr	r3, [fp, #-52]
	ldr	r2, [fp, #-76]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-52]
	ldr	r2, [fp, #-76]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, [fp, #-100]
	cmp	r2, r3
	bgt	.L1136
	ldr	r3, [fp, #-52]
	ldr	r2, [fp, #-76]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, [fp, #-104]
	cmp	r2, r3
	blt	.L1136
	mov	r3, #1
	b	.L1137
.L1136:
	mov	r3, #0
.L1137:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r3, [fp, #-52]
	ldr	r2, [fp, #-76]
	ldr	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-28]
	ldr	r2, [fp, #-76]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-76]
	add	r3, r3, #1
	str	r3, [fp, #-76]
.L1135:
	ldr	r3, .L1145+8
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-76]
	cmp	r2, r3
	blt	.L1138
	mov	r3, #0
	str	r3, [fp, #-76]
	b	.L1139
.L1140:
	ldr	r3, [fp, #-44]
	ldr	r2, [fp, #-76]
	mov	r1, #0
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-76]
	add	r3, r3, #1
	str	r3, [fp, #-76]
.L1139:
	ldr	r3, .L1145+8
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-76]
	cmp	r2, r3
	blt	.L1140
	mov	r3, #0
	str	r3, [fp, #-76]
	b	.L1141
.L1142:
	ldr	r3, [fp, #-64]
	ldr	r2, [fp, #-76]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, .L1145+8
	ldr	r2, [r2, #1608]
	ldr	r1, [fp, #-44]
	mov	r0, r3
	bl	shiftL
	ldr	r3, .L1145+8
	ldr	r3, [r3, #800]
	ldr	r2, .L1145+8
	ldr	r2, [r2, #1608]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, [fp, #-96]
	ldr	r2, [fp, #-88]
	ldr	r1, [fp, #-44]
	ldr	r0, [fp, #-52]
	bl	fxp_direct_form_1
	mov	r1, r0
	ldr	r3, [fp, #-72]
	ldr	r2, [fp, #-76]
	str	r1, [r3, r2, lsl #2]
	ldr	r3, [fp, #-72]
	ldr	r2, [fp, #-76]
	ldr	r3, [r3, r2, lsl #2]
	ldr	r2, .L1145+8
	ldr	r2, [r2, #800]
	ldr	r1, [fp, #-52]
	mov	r0, r3
	bl	shiftL
	ldr	r3, [fp, #-76]
	add	r3, r3, #1
	str	r3, [fp, #-76]
.L1141:
	ldr	r3, .L1145+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-76]
	cmp	r2, r3
	blt	.L1142
	ldr	r3, .L1145+16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, [fp, #-72]
	bl	fxp_check_persistent_limit_cycle
	mov	r3, #0
	mov	sp, r5
	mov	sp, r4
	ldr	r2, .L1145
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1144
	bl	__stack_chk_fail
.L1144:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1146:
	.align	2
.L1145:
	.word	.LC63
	.word	overflow_mode
	.word	ds
	.word	.LC58
	.word	X_SIZE_VALUE
	.word	__PRETTY_FUNCTION__.7203
	.word	.LC61
	.word	.LC62
	.word	ds+808
	.word	impl
	.size	verify_zero_input_limit_cycle, .-verify_zero_input_limit_cycle
	.global	generic_timer
	.bss
	.align	2
	.type	generic_timer, %object
	.size	generic_timer, 4
generic_timer:
	.space	4
	.section	.rodata
	.align	2
.LC64:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/engine/verify_generic_timing.h\000"
	.align	2
.LC65:
	.ascii	"spent_time <= ds.sample_time\000"
	.align	2
.LC66:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_generic_timing
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_generic_timing, %function
verify_generic_timing:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #80
	ldr	r3, .L1167
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r3, .L1167+4
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-76]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-80]
	ldr	r3, .L1167+4
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-84]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-68]
	mov	r3, #0
	str	r3, [fp, #-72]
	b	.L1148
.L1153:
	ldr	r2, [fp, #-80]
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	bl	nondet_float
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-68]
	ldr	r1, [fp, #-72]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-68]
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1167+8
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1149
	ldr	r2, [fp, #-68]
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1167+8
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1149
	mov	r3, #1
	b	.L1152
.L1149:
	mov	r3, #0
.L1152:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	str	r3, [fp, #-72]
.L1148:
	ldr	r3, .L1167+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-72]
	cmp	r2, r3
	blt	.L1153
	mov	r3, #0
	str	r3, [fp, #-64]
	ldr	r3, .L1167+12
	ldr	r2, [r3, #1608]
	ldr	r3, .L1167+12
	ldr	r3, [r3, #800]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-64]
	ldr	r3, .L1167+12
	ldr	ip, [r3, #800]
	mov	r3, sp
	mov	r5, r3
	sub	r3, ip, #1
	str	r3, [fp, #-60]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-56]
	ldr	r3, .L1167+12
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-52]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-48]
	ldr	ip, [fp, #-64]
	sub	r3, ip, #1
	str	r3, [fp, #-44]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-72]
	b	.L1154
.L1155:
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	str	r3, [fp, #-72]
.L1154:
	ldr	r3, .L1167+12
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-72]
	cmp	r2, r3
	blt	.L1155
	mov	r3, #0
	str	r3, [fp, #-72]
	b	.L1156
.L1157:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	str	r3, [fp, #-72]
.L1156:
	ldr	r3, .L1167+12
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-72]
	cmp	r2, r3
	blt	.L1157
	mov	r3, #0
	str	r3, [fp, #-72]
	b	.L1158
.L1159:
	ldr	r2, [fp, #-40]
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	str	r3, [fp, #-72]
.L1158:
	ldr	r2, [fp, #-72]
	ldr	r3, [fp, #-64]
	cmp	r2, r3
	blt	.L1159
	ldr	r3, .L1167+16
	ldr	r3, [r3, #36]
	lsl	r2, r3, #1
	ldr	r3, .L1167+16
	ldr	r3, [r3, #72]
	add	r2, r2, r3
	ldr	r3, .L1167+20
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L1167+20
	str	r3, [r2]
	ldr	r3, .L1167+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r3, #0
	str	r3, [fp, #-72]
	b	.L1160
.L1162:
	ldr	r3, .L1167+16
	ldr	r3, [r3, #40]
	lsl	r2, r3, #1
	ldr	r3, .L1167+16
	ldr	r3, [r3, #68]
	add	r2, r2, r3
	ldr	r3, .L1167+16
	ldr	r3, [r3, #36]
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, .L1167+20
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L1167+20
	str	r3, [r2]
	ldr	r3, .L1167+16
	ldr	r3, [r3, #40]
	lsl	r2, r3, #1
	ldr	r3, .L1167+16
	ldr	r3, [r3, #124]
	add	r2, r2, r3
	ldr	r3, .L1167+16
	ldr	r3, [r3, #96]
	add	r2, r2, r3
	ldr	r3, .L1167+16
	ldr	r3, [r3, #120]
	add	r2, r2, r3
	ldr	r3, .L1167+20
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L1167+20
	str	r3, [r2]
	ldr	r2, [fp, #-68]
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1167+12
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-48]
	bl	generic_timing_shift_l_double
	ldr	r3, .L1167+12
	ldr	r3, [r3, #800]
	ldr	r2, .L1167+12
	ldr	r2, [r2, #1608]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L1167+24
	ldr	r2, .L1167+12
	ldr	r1, [fp, #-48]
	ldr	r0, [fp, #-56]
	bl	generic_timing_double_direct_form_1
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-80]
	ldr	r1, [fp, #-72]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-80]
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1167+12
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-56]
	bl	generic_timing_shift_l_double
	ldr	r3, .L1167+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2d
	ldr	r3, .L1167+16
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, .L1167+12
	add	r3, r3, #1616
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L1161
	ldr	r3, .L1167+28
	mov	r2, #89
	ldr	r1, .L1167+32
	ldr	r0, .L1167+36
	bl	__assert_fail
.L1161:
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r3, r0
	ldr	r2, .L1167+20
	str	r3, [r2]
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	str	r3, [fp, #-72]
.L1160:
	ldr	r3, .L1167+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-72]
	cmp	r2, r3
	blt	.L1162
	mov	r3, #0
	mov	sp, r5
	mov	sp, r4
	ldr	r2, .L1167
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1164
	bl	__stack_chk_fail
.L1164:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1168:
	.align	2
.L1167:
	.word	.LC66
	.word	X_SIZE_VALUE
	.word	impl
	.word	ds
	.word	hw
	.word	generic_timer
	.word	ds+808
	.word	__PRETTY_FUNCTION__.7273
	.word	.LC64
	.word	.LC65
	.size	verify_generic_timing, .-verify_generic_timing
	.section	.rodata
	.align	2
.LC67:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_timing_msp_430
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_timing_msp_430, %function
verify_timing_msp_430:
	@ args = 0, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #64
	ldr	r3, .L1188
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r3, .L1188+4
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-56]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-60]
	ldr	r3, .L1188+4
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-64]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-52]
	b	.L1170
.L1175:
	ldr	r2, [fp, #-60]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	bl	nondet_float
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-48]
	ldr	r1, [fp, #-52]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1188+8
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1171
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1188+8
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1171
	mov	r3, #1
	b	.L1174
.L1171:
	mov	r3, #0
.L1174:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L1170:
	ldr	r3, .L1188+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-52]
	cmp	r2, r3
	blt	.L1175
	mov	r3, #0
	str	r3, [fp, #-44]
	ldr	r3, .L1188+12
	ldr	r2, [r3, #1608]
	ldr	r3, .L1188+12
	ldr	r3, [r3, #800]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-44]
	ldr	r3, .L1188+12
	ldr	ip, [r3, #800]
	mov	r3, sp
	mov	r5, r3
	sub	r3, ip, #1
	str	r3, [fp, #-40]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-36]
	ldr	r3, .L1188+12
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-32]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-28]
	ldr	ip, [fp, #-44]
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-20]
	mov	r3, #0
	str	r3, [fp, #-52]
	b	.L1176
.L1177:
	ldr	r2, [fp, #-36]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L1176:
	ldr	r3, .L1188+12
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-52]
	cmp	r2, r3
	blt	.L1177
	mov	r3, #0
	str	r3, [fp, #-52]
	b	.L1178
.L1179:
	ldr	r2, [fp, #-28]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L1178:
	ldr	r3, .L1188+12
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-52]
	cmp	r2, r3
	blt	.L1179
	mov	r3, #0
	str	r3, [fp, #-52]
	b	.L1180
.L1181:
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L1180:
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	blt	.L1181
	mov	r3, #0
	str	r3, [fp, #-52]
	b	.L1182
.L1183:
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	ldr	r3, .L1188+12
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-28]
	bl	shiftL
	ldr	r3, .L1188+12
	ldr	r3, [r3, #800]
	ldr	r2, .L1188+12
	ldr	r2, [r2, #1608]
	str	r2, [sp, #4]
	str	r3, [sp]
	ldr	r3, .L1188+16
	ldr	r2, .L1188+12
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-36]
	bl	double_direct_form_1_MSP430
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-60]
	ldr	r1, [fp, #-52]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-60]
	ldr	r3, [fp, #-52]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	ldr	r3, .L1188+12
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-36]
	bl	shiftL
	ldr	r3, [fp, #-52]
	add	r3, r3, #1
	str	r3, [fp, #-52]
.L1182:
	ldr	r3, .L1188+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-52]
	cmp	r2, r3
	blt	.L1183
	mov	r3, #0
	mov	sp, r5
	mov	sp, r4
	ldr	r2, .L1188
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1185
	bl	__stack_chk_fail
.L1185:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1189:
	.align	2
.L1188:
	.word	.LC67
	.word	X_SIZE_VALUE
	.word	impl
	.word	ds
	.word	ds+808
	.size	verify_timing_msp_430, .-verify_timing_msp_430
	.section	.rodata
	.align	2
.LC68:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/engine/verify_stability.h\000"
	.align	2
.LC69:
	.ascii	"check_stability(_a, ds.a_size)\000"
	.align	2
.LC70:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_stability
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_stability, %function
verify_stability:
	@ 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
	ldr	r3, .L1194
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r3, .L1194+4
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L1194+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-32]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-28]
	ldr	r3, .L1194+8
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-28]
	ldr	r0, .L1194+8
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1194+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-20]
	ldr	r3, .L1194+8
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-20]
	bl	fxp_to_double_array
	ldr	r3, .L1194+8
	ldr	r3, [r3, #800]
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	check_stability
	mov	r3, r0
	cmp	r3, #0
	bne	.L1191
	ldr	r3, .L1194+12
	mov	r2, #37
	ldr	r1, .L1194+16
	ldr	r0, .L1194+20
	bl	__assert_fail
.L1191:
	mov	r3, #0
	mov	sp, r4
	ldr	r2, .L1194
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1193
	bl	__stack_chk_fail
.L1193:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1195:
	.align	2
.L1194:
	.word	.LC70
	.word	overflow_mode
	.word	ds
	.word	__PRETTY_FUNCTION__.7321
	.word	.LC68
	.word	.LC69
	.size	verify_stability, .-verify_stability
	.section	.rodata
	.align	2
.LC71:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_minimum_phase
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_minimum_phase, %function
verify_minimum_phase:
	@ 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
	ldr	r3, .L1199
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r3, .L1199+4
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L1199+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-32]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-28]
	ldr	r3, .L1199+8
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-28]
	ldr	r0, .L1199+12
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1199+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-24]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-20]
	ldr	r3, .L1199+8
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-20]
	bl	fxp_to_double_array
	ldr	r3, .L1199+8
	ldr	r3, [r3, #1608]
	mov	r1, r3
	ldr	r0, [fp, #-20]
	bl	check_stability
	mov	r3, r0
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	mov	r3, #0
	mov	sp, r4
	ldr	r2, .L1199
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1198
	bl	__stack_chk_fail
.L1198:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1200:
	.align	2
.L1199:
	.word	.LC71
	.word	overflow_mode
	.word	ds
	.word	ds+808
	.size	verify_minimum_phase, .-verify_minimum_phase
	.section	.rodata
	.align	2
.LC72:
	.ascii	"Verifying stability for closedloop function\000"
	.align	2
.LC73:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_stability_closedloop_using_dslib
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_stability_closedloop_using_dslib, %function
verify_stability_closedloop_using_dslib:
	@ args = 0, pretend = 0, frame = 880
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #892
	ldr	r3, .L1204
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r3, .L1204+4
	str	r3, [fp, #-868]
	ldr	r3, .L1204+8
	ldr	r3, [r3, #1608]
	str	r3, [fp, #-872]
	ldr	r3, .L1204+8
	str	r3, [fp, #-876]
	ldr	r3, .L1204+8
	ldr	r3, [r3, #800]
	str	r3, [fp, #-880]
	ldr	r3, .L1204+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-884]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-888]
	ldr	r3, .L1204+8
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-888]
	ldr	r0, [fp, #-868]
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1204+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-892]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-864]
	ldr	r3, .L1204+8
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-864]
	ldr	r0, [fp, #-876]
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1204+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-860]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-856]
	ldr	r3, .L1204+8
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-888]
	ldr	r0, [fp, #-856]
	bl	fxp_to_double_array
	ldr	r3, .L1204+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-852]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-848]
	ldr	r3, .L1204+8
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-864]
	ldr	r0, [fp, #-848]
	bl	fxp_to_double_array
	ldr	r3, .L1204+12
	str	r3, [fp, #-844]
	ldr	r3, .L1204+16
	ldr	r3, [r3, #1608]
	str	r3, [fp, #-840]
	ldr	r3, .L1204+20
	str	r3, [fp, #-836]
	ldr	r3, .L1204+16
	ldr	r3, [r3, #800]
	str	r3, [fp, #-832]
	ldr	r3, .L1204+8
	ldr	r2, [r3, #1608]
	ldr	r3, .L1204+16
	ldr	r3, [r3, #1608]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-828]
	ldr	r3, .L1204+8
	ldr	r2, [r3, #800]
	ldr	r3, .L1204+16
	ldr	r3, [r3, #800]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-824]
	ldr	r0, .L1204+24
	bl	puts
	sub	r0, fp, #820
	ldr	r3, [fp, #-832]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-836]
	str	r3, [sp]
	ldr	r3, [fp, #-840]
	ldr	r2, [fp, #-844]
	ldr	r1, [fp, #-824]
	bl	check_stability_closedloop
	mov	r3, r0
	cmp	r3, #0
	movne	r3, #1
	moveq	r3, #0
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	mov	r3, #0
	mov	sp, r4
	ldr	r2, .L1204
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1203
	bl	__stack_chk_fail
.L1203:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L1205:
	.align	2
.L1204:
	.word	.LC73
	.word	controller+808
	.word	controller
	.word	plant_cbmc+808
	.word	plant
	.word	plant_cbmc
	.word	.LC72
	.size	verify_stability_closedloop_using_dslib, .-verify_stability_closedloop_using_dslib
	.section	.rodata
	.align	2
.LC74:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_limit_cycle_closed_loop
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_limit_cycle_closed_loop, %function
verify_limit_cycle_closed_loop:
	@ args = 0, pretend = 0, frame = 1752
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #1760
	ldr	r3, .L1229
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	mov	r3, sp
	mov	r4, r3
	ldr	r3, .L1229+4
	mov	r2, #3
	str	r2, [r3]
	ldr	r3, .L1229+8
	str	r3, [fp, #-1716]
	ldr	r3, .L1229+12
	ldr	r3, [r3, #1608]
	str	r3, [fp, #-1720]
	ldr	r3, .L1229+12
	str	r3, [fp, #-1724]
	ldr	r3, .L1229+12
	ldr	r3, [r3, #800]
	str	r3, [fp, #-1728]
	ldr	r3, .L1229+12
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-1732]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-1736]
	ldr	r3, .L1229+12
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-1736]
	ldr	r0, [fp, #-1716]
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1229+12
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-1740]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-1744]
	ldr	r3, .L1229+12
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-1744]
	ldr	r0, [fp, #-1724]
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1229+12
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-1748]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-1752]
	ldr	r3, .L1229+12
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-1736]
	ldr	r0, [fp, #-1752]
	bl	fxp_to_double_array
	ldr	r3, .L1229+12
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-1756]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-1760]
	ldr	r3, .L1229+12
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-1744]
	ldr	r0, [fp, #-1760]
	bl	fxp_to_double_array
	ldr	r3, .L1229+16
	str	r3, [fp, #-1764]
	ldr	r3, .L1229+20
	ldr	r3, [r3, #1608]
	str	r3, [fp, #-1708]
	ldr	r3, .L1229+24
	str	r3, [fp, #-1704]
	ldr	r3, .L1229+20
	ldr	r3, [r3, #800]
	str	r3, [fp, #-1700]
	ldr	r3, .L1229+12
	ldr	r2, [r3, #1608]
	ldr	r3, .L1229+20
	ldr	r3, [r3, #1608]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-1696]
	ldr	r3, .L1229+12
	ldr	r2, [r3, #800]
	ldr	r3, .L1229+20
	ldr	r3, [r3, #800]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-1692]
	ldr	r3, .L1229+28
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-1688]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-1684]
	ldr	r3, .L1229+28
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-1680]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-1676]
	ldr	ip, [fp, #-1696]
	sub	r3, ip, #1
	str	r3, [fp, #-1672]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-1668]
	bl	nondet_double
	str	r0, [fp, #-1628]
	str	r1, [fp, #-1624]
	ldr	r3, .L1229+32
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-1628]
	ldr	r1, [fp, #-1624]
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1207
	ldr	r3, .L1229+32
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-1628]
	ldr	r1, [fp, #-1624]
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1207
	mov	r3, #1
	b	.L1210
.L1207:
	mov	r3, #0
.L1210:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	mov	r3, #0
	str	r3, [fp, #-1712]
	b	.L1211
.L1212:
	ldr	r2, [fp, #-1676]
	ldr	r3, [fp, #-1712]
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r2, [fp, #-1628]
	ldr	r3, [fp, #-1624]
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-1684]
	ldr	r3, [fp, #-1712]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1712]
	add	r3, r3, #1
	str	r3, [fp, #-1712]
.L1211:
	ldr	r3, .L1229+28
	ldr	r3, [r3]
	ldr	r2, [fp, #-1712]
	cmp	r2, r3
	blt	.L1212
	mov	r3, #0
	str	r3, [fp, #-1712]
	b	.L1213
.L1214:
	ldr	r2, [fp, #-1668]
	ldr	r3, [fp, #-1712]
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r2, [fp, #-1628]
	ldr	r3, [fp, #-1624]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1712]
	add	r3, r3, #1
	str	r3, [fp, #-1712]
.L1213:
	ldr	r2, [fp, #-1712]
	ldr	r3, [fp, #-1696]
	cmp	r2, r3
	blt	.L1214
	ldr	ip, [fp, #-1692]
	mov	r3, sp
	mov	r5, r3
	sub	r3, ip, #1
	str	r3, [fp, #-1664]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-1660]
	ldr	ip, [fp, #-1692]
	sub	r3, ip, #1
	str	r3, [fp, #-1656]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-1652]
	ldr	r2, [fp, #-1696]
	ldr	r3, [fp, #-1692]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-1648]
	ldr	ip, [fp, #-1648]
	sub	r3, ip, #1
	str	r3, [fp, #-1644]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-1640]
	ldr	ip, [fp, #-1648]
	sub	r3, ip, #1
	str	r3, [fp, #-1636]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-1632]
	mov	r3, #0
	str	r3, [fp, #-1712]
	b	.L1215
.L1220:
	bl	nondet_int
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-1660]
	ldr	r1, [fp, #-1712]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-1660]
	ldr	r3, [fp, #-1712]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1229+32
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1216
	ldr	r2, [fp, #-1660]
	ldr	r3, [fp, #-1712]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, .L1229+32
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1216
	mov	r3, #1
	b	.L1219
.L1216:
	mov	r3, #0
.L1219:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r2, [fp, #-1660]
	ldr	r3, [fp, #-1712]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-1652]
	ldr	r1, [fp, #-1712]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1712]
	add	r3, r3, #1
	str	r3, [fp, #-1712]
.L1215:
	ldr	r2, [fp, #-1712]
	ldr	r3, [fp, #-1692]
	cmp	r2, r3
	blt	.L1220
	mov	r3, #0
	str	r3, [fp, #-1712]
	b	.L1221
.L1222:
	ldr	r2, [fp, #-1676]
	ldr	r3, [fp, #-1712]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1696]
	ldr	r2, [fp, #-1668]
	bl	shiftLDouble
	sub	r3, fp, #1600
	sub	r3, r3, #12
	sub	r3, r3, #8
	sub	r1, fp, #820
	ldr	r2, [fp, #-1696]
	str	r2, [sp, #4]
	ldr	r2, [fp, #-1692]
	str	r2, [sp]
	mov	r2, r1
	ldr	r1, [fp, #-1668]
	ldr	r0, [fp, #-1660]
	bl	double_direct_form_1
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-1684]
	ldr	r1, [fp, #-1712]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-1684]
	ldr	r3, [fp, #-1712]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1692]
	ldr	r2, [fp, #-1660]
	bl	shiftLDouble
	ldr	r3, [fp, #-1712]
	add	r3, r3, #1
	str	r3, [fp, #-1712]
.L1221:
	ldr	r3, .L1229+28
	ldr	r3, [r3]
	ldr	r2, [fp, #-1712]
	cmp	r2, r3
	blt	.L1222
	ldr	r3, .L1229+28
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, [fp, #-1684]
	bl	double_check_persistent_limit_cycle
	mov	r3, #0
	mov	sp, r5
	mov	sp, r4
	ldr	r2, .L1229
	ldr	r1, [r2]
	ldr	r2, [fp, #-16]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1224
	bl	__stack_chk_fail
.L1224:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L1230:
	.align	2
.L1229:
	.word	.LC74
	.word	overflow_mode
	.word	controller+808
	.word	controller
	.word	plant_cbmc+808
	.word	plant
	.word	plant_cbmc
	.word	X_SIZE_VALUE
	.word	impl
	.size	verify_limit_cycle_closed_loop, .-verify_limit_cycle_closed_loop
	.section	.rodata
	.align	2
.LC75:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_error_closedloop
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_error_closedloop, %function
verify_error_closedloop:
	@ args = 0, pretend = 0, frame = 3424
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, fp, lr}
	add	fp, sp, #28
	sub	sp, sp, #3424
	sub	sp, sp, #8
	ldr	r3, .L1254
	ldr	r3, [r3]
	str	r3, [fp, #-32]
	mov	r3,#0
	mov	r3, sp
	mov	r8, r3
	ldr	r3, .L1254+4
	mov	r2, #3
	str	r2, [r3]
	ldr	r3, .L1254+8
	str	r3, [fp, #-3348]
	ldr	r3, .L1254+12
	ldr	r3, [r3, #1608]
	str	r3, [fp, #-3352]
	ldr	r3, .L1254+12
	str	r3, [fp, #-3356]
	ldr	r3, .L1254+12
	ldr	r3, [r3, #800]
	str	r3, [fp, #-3360]
	ldr	r3, .L1254+12
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-3364]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-3368]
	ldr	r3, .L1254+12
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-3368]
	ldr	r0, [fp, #-3348]
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1254+12
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-3372]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-3376]
	ldr	r3, .L1254+12
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-3376]
	ldr	r0, [fp, #-3356]
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1254+12
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-3380]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3384]
	ldr	r3, .L1254+12
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-3368]
	ldr	r0, [fp, #-3384]
	bl	fxp_to_double_array
	ldr	r3, .L1254+12
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-3388]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3392]
	ldr	r3, .L1254+12
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-3376]
	ldr	r0, [fp, #-3392]
	bl	fxp_to_double_array
	ldr	r3, .L1254+16
	str	r3, [fp, #-3396]
	ldr	r3, .L1254+20
	ldr	r3, [r3, #1608]
	str	r3, [fp, #-3400]
	ldr	r3, .L1254+24
	str	r3, [fp, #-3404]
	ldr	r3, .L1254+20
	ldr	r3, [r3, #800]
	str	r3, [fp, #-3408]
	ldr	r3, .L1254+12
	ldr	r2, [r3, #1608]
	ldr	r3, .L1254+20
	ldr	r3, [r3, #1608]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-3412]
	ldr	r3, .L1254+12
	ldr	r2, [r3, #800]
	ldr	r3, .L1254+20
	ldr	r3, [r3, #800]
	add	r3, r2, r3
	sub	r3, r3, #1
	str	r3, [fp, #-3416]
	ldr	r3, .L1254+28
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-3420]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3424]
	ldr	r3, .L1254+28
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-3428]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3432]
	ldr	r3, .L1254+28
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-3436]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3440]
	ldr	r3, .L1254+28
	ldr	ip, [r3]
	sub	r3, ip, #1
	str	r3, [fp, #-3444]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3448]
	ldr	ip, [fp, #-3412]
	sub	r3, ip, #1
	str	r3, [fp, #-3452]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3340]
	ldr	ip, [fp, #-3412]
	sub	r3, ip, #1
	str	r3, [fp, #-3336]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3332]
	ldr	ip, [fp, #-3412]
	sub	r3, ip, #1
	str	r3, [fp, #-3328]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3324]
	bl	nondet_double
	str	r0, [fp, #-3252]
	str	r1, [fp, #-3248]
	ldr	r3, .L1254+32
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-3252]
	ldr	r1, [fp, #-3248]
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1232
	ldr	r3, .L1254+32
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-3252]
	ldr	r1, [fp, #-3248]
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1232
	mov	r3, #1
	b	.L1235
.L1232:
	mov	r3, #0
.L1235:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	mov	r3, #0
	str	r3, [fp, #-3344]
	b	.L1236
.L1237:
	ldr	r2, [fp, #-3440]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r2, [fp, #-3252]
	ldr	r3, [fp, #-3248]
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-3448]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r2, [fp, #-3252]
	ldr	r3, [fp, #-3248]
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-3424]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-3432]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-3344]
	add	r3, r3, #1
	str	r3, [fp, #-3344]
.L1236:
	ldr	r3, .L1254+28
	ldr	r3, [r3]
	ldr	r2, [fp, #-3344]
	cmp	r2, r3
	blt	.L1237
	mov	r3, #0
	str	r3, [fp, #-3344]
	b	.L1238
.L1239:
	ldr	r2, [fp, #-3340]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r2, [fp, #-3252]
	ldr	r3, [fp, #-3248]
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-3332]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r1, r2, r3
	ldr	r2, [fp, #-3252]
	ldr	r3, [fp, #-3248]
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-3344]
	add	r3, r3, #1
	str	r3, [fp, #-3344]
.L1238:
	ldr	r2, [fp, #-3344]
	ldr	r3, [fp, #-3412]
	cmp	r2, r3
	blt	.L1239
	ldr	ip, [fp, #-3416]
	mov	r3, sp
	mov	r9, r3
	sub	r3, ip, #1
	str	r3, [fp, #-3320]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3316]
	ldr	ip, [fp, #-3416]
	sub	r3, ip, #1
	str	r3, [fp, #-3312]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3308]
	ldr	ip, [fp, #-3416]
	sub	r3, ip, #1
	str	r3, [fp, #-3304]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3300]
	ldr	ip, [fp, #-3416]
	sub	r3, ip, #1
	str	r3, [fp, #-3296]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3292]
	ldr	r2, [fp, #-3412]
	ldr	r3, [fp, #-3416]
	cmp	r2, r3
	movge	r3, r2
	movlt	r3, r3
	str	r3, [fp, #-3288]
	ldr	ip, [fp, #-3288]
	sub	r3, ip, #1
	str	r3, [fp, #-3284]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3280]
	ldr	ip, [fp, #-3288]
	sub	r3, ip, #1
	str	r3, [fp, #-3276]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3272]
	ldr	ip, [fp, #-3288]
	sub	r3, ip, #1
	str	r3, [fp, #-3268]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3264]
	ldr	ip, [fp, #-3288]
	sub	r3, ip, #1
	str	r3, [fp, #-3260]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-3256]
	mov	r3, #0
	str	r3, [fp, #-3344]
	b	.L1240
.L1241:
	ldr	r2, [fp, #-3316]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-3308]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-3344]
	add	r3, r3, #1
	str	r3, [fp, #-3344]
.L1240:
	ldr	r2, [fp, #-3344]
	ldr	r3, [fp, #-3416]
	cmp	r2, r3
	blt	.L1241
	mov	r3, #0
	str	r3, [fp, #-3344]
	b	.L1242
.L1247:
	ldr	r2, [fp, #-3440]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-3412]
	ldr	r2, [fp, #-3340]
	bl	shiftLDouble
	sub	r3, fp, #2416
	sub	r3, r3, #12
	sub	r3, r3, #8
	sub	r2, fp, #1616
	sub	r2, r2, #12
	sub	r2, r2, #8
	ldr	r1, [fp, #-3412]
	str	r1, [sp, #4]
	ldr	r1, [fp, #-3416]
	str	r1, [sp]
	ldr	r1, [fp, #-3340]
	ldr	r0, [fp, #-3316]
	bl	double_direct_form_1
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-3424]
	ldr	r1, [fp, #-3344]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-3424]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-3416]
	ldr	r2, [fp, #-3316]
	bl	shiftLDouble
	ldr	r2, [fp, #-3448]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-3412]
	ldr	r2, [fp, #-3332]
	bl	shiftLDouble
	sub	r3, fp, #3216
	sub	r3, r3, #12
	sub	r3, r3, #8
	sub	r1, fp, #836
	ldr	r2, [fp, #-3412]
	str	r2, [sp, #4]
	ldr	r2, [fp, #-3416]
	str	r2, [sp]
	mov	r2, r1
	ldr	r1, [fp, #-3332]
	ldr	r0, [fp, #-3308]
	bl	double_direct_form_1
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-3432]
	ldr	r1, [fp, #-3344]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-3432]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-3416]
	ldr	r2, [fp, #-3308]
	bl	shiftLDouble
	ldr	r2, [fp, #-3432]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r6-r7}
	ldr	r2, [fp, #-3424]
	ldr	r3, [fp, #-3344]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-3244]
	str	r3, [fp, #-3240]
	ldr	r3, .L1254+32
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-3244]
	ldr	r1, [fp, #-3240]
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1243
	ldr	r3, .L1254+32
	add	r3, r3, #48
	ldmia	r3, {r2-r3}
	mov	r4, r2
	eor	r5, r3, #-2147483648
	mov	r2, r4
	mov	r3, r5
	ldr	r0, [fp, #-3244]
	ldr	r1, [fp, #-3240]
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1243
	mov	r3, #1
	b	.L1246
.L1243:
	mov	r3, #0
.L1246:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assert
	ldr	r3, [fp, #-3344]
	add	r3, r3, #1
	str	r3, [fp, #-3344]
.L1242:
	ldr	r3, .L1254+28
	ldr	r3, [r3]
	ldr	r2, [fp, #-3344]
	cmp	r2, r3
	blt	.L1247
	mov	r3, #0
	mov	sp, r9
	mov	sp, r8
	ldr	r2, .L1254
	ldr	r1, [r2]
	ldr	r2, [fp, #-32]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1249
	bl	__stack_chk_fail
.L1249:
	mov	r0, r3
	sub	sp, fp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, fp, pc}
.L1255:
	.align	2
.L1254:
	.word	.LC75
	.word	overflow_mode
	.word	controller+808
	.word	controller
	.word	plant_cbmc+808
	.word	plant
	.word	plant_cbmc
	.word	X_SIZE_VALUE
	.word	impl
	.size	verify_error_closedloop, .-verify_error_closedloop
	.comm	new_state,128,8
	.comm	new_stateFWL,128,8
	.comm	_controller_fxp,1040,8
	.comm	_controller_double,1040,8
	.section	.rodata
	.align	2
.LC76:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	ss_system_quantization_error
	.syntax unified
	.arm
	.fpu softvfp
	.type	ss_system_quantization_error, %function
ss_system_quantization_error:
	@ args = 0, pretend = 0, frame = 1088
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #1088
	str	r0, [fp, #-1088]
	ldr	r3, .L1331
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r0, [fp, #-1088]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L1331+4
	str	r2, [r1, #768]
	str	r3, [r1, #772]
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1257
.L1260:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1258
.L1259:
	ldr	r1, .L1331+4
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1258:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1080]
	cmp	r2, r3
	blt	.L1259
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1257:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1260
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1261
.L1264:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1262
.L1263:
	ldr	r1, .L1331+4
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #16
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #16
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1262:
	ldr	r3, .L1331+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-1080]
	cmp	r2, r3
	blt	.L1263
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1261:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1264
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1265
.L1268:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1266
.L1267:
	ldr	r1, .L1331+4
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #32
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #32
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1266:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1080]
	cmp	r2, r3
	blt	.L1267
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1265:
	ldr	r3, .L1331+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1268
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1269
.L1272:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1270
.L1271:
	ldr	r1, .L1331+4
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #48
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #48
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1270:
	ldr	r3, .L1331+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-1080]
	cmp	r2, r3
	blt	.L1271
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1269:
	ldr	r3, .L1331+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1272
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1273
.L1276:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1274
.L1275:
	ldr	r1, .L1331+4
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #64
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #64
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1274:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1275
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1273:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1276
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1277
.L1280:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1278
.L1279:
	ldr	r1, .L1331+4
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #96
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #96
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1278:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1279
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1277:
	ldr	r3, .L1331+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1280
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1281
.L1284:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1282
.L1283:
	ldr	r1, .L1331+4
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #80
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #80
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	stm	r3, {r0-r1}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1282:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1283
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1281:
	ldr	r3, .L1331+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1284
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-1076]
	str	r3, [fp, #-1072]
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1285
.L1288:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1286
.L1287:
	ldr	r1, .L1331+20
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+4
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	add	r1, r1, #64
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1286:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1287
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1285:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1288
	bl	double_state_space_representation
	str	r0, [fp, #-1068]
	str	r1, [fp, #-1064]
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1289
.L1292:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1290
.L1291:
	ldr	r1, .L1331+4
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #64
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+20
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1290:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1291
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1289:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1292
	ldr	r0, [fp, #-1088]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-284]
	str	r3, [fp, #-280]
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1293
.L1296:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1294
.L1295:
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+4
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1294:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1080]
	cmp	r2, r3
	blt	.L1295
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1293:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1296
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1297
.L1300:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1298
.L1299:
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #16
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+4
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	add	r1, r1, #16
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1298:
	ldr	r3, .L1331+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-1080]
	cmp	r2, r3
	blt	.L1299
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1297:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1300
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1301
.L1304:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1302
.L1303:
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #32
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+4
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	add	r1, r1, #32
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1302:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1080]
	cmp	r2, r3
	blt	.L1303
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1301:
	ldr	r3, .L1331+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1304
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1305
.L1308:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1306
.L1307:
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #48
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+4
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	add	r1, r1, #48
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1306:
	ldr	r3, .L1331+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-1080]
	cmp	r2, r3
	blt	.L1307
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1305:
	ldr	r3, .L1331+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1308
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1309
.L1312:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1310
.L1311:
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #64
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+4
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	add	r1, r1, #64
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1310:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1311
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1309:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1312
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1313
.L1316:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1314
.L1315:
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #96
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+4
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	add	r1, r1, #96
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1314:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1315
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1313:
	ldr	r3, .L1331+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1316
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1317
.L1320:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1318
.L1319:
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #80
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #1040
	sub	r3, r3, #8
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+4
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	add	r1, r1, #80
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1318:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1319
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1317:
	ldr	r3, .L1331+16
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1320
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1321
.L1324:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1322
.L1323:
	ldr	r1, .L1331+24
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+4
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	add	r1, r1, #64
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1322:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1323
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1321:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1324
	bl	fxp_state_space_representation
	str	r0, [fp, #-1060]
	str	r1, [fp, #-1056]
	mov	r3, #0
	str	r3, [fp, #-1084]
	b	.L1325
.L1328:
	mov	r3, #0
	str	r3, [fp, #-1080]
	b	.L1326
.L1327:
	ldr	r1, .L1331+4
	ldr	r3, [fp, #-1084]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-1080]
	add	r3, r2, r3
	add	r3, r3, #64
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	ldr	ip, .L1331+24
	ldr	r1, [fp, #-1084]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-1080]
	add	r1, r0, r1
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-1080]
	add	r3, r3, #1
	str	r3, [fp, #-1080]
.L1326:
	ldr	r3, [fp, #-1080]
	cmp	r3, #0
	ble	.L1327
	ldr	r3, [fp, #-1084]
	add	r3, r3, #1
	str	r3, [fp, #-1084]
.L1325:
	ldr	r3, .L1331+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-1084]
	cmp	r2, r3
	blt	.L1328
	ldr	r2, [fp, #-1060]
	ldr	r3, [fp, #-1056]
	ldr	r0, [fp, #-1068]
	ldr	r1, [fp, #-1064]
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-1076]
	str	r3, [fp, #-1072]
	ldr	r2, [fp, #-1076]
	ldr	r3, [fp, #-1072]
	ldr	r1, .L1331
	ldr	r0, [r1]
	ldr	r1, [fp, #-8]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L1330
	bl	__stack_chk_fail
.L1330:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1332:
	.align	2
.L1331:
	.word	.LC76
	.word	_controller
	.word	nStates
	.word	nInputs
	.word	nOutputs
	.word	new_state
	.word	new_stateFWL
	.size	ss_system_quantization_error, .-ss_system_quantization_error
	.section	.rodata
	.align	2
.LC77:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	fxp_ss_closed_loop_quantization_error
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_ss_closed_loop_quantization_error, %function
fxp_ss_closed_loop_quantization_error:
	@ args = 0, pretend = 0, frame = 736
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #752
	str	r0, [fp, #-740]
	str	r1, [fp, #-736]
	ldr	r3, .L1364
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #4
	sub	r3, r3, #724
	sub	r3, r3, #2
	mov	r2, #0
	strh	r2, [r3]	@ movhi
	mov	r3, #0
	str	r3, [fp, #-728]
	b	.L1334
.L1339:
	mov	r3, #0
	str	r3, [fp, #-724]
	b	.L1335
.L1338:
	ldr	r1, .L1364+4
	ldr	r3, [fp, #-728]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-724]
	add	r3, r2, r3
	add	r3, r3, #48
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L1336
	sub	r3, fp, #4
	sub	r3, r3, #724
	sub	r3, r3, #2
	mov	r2, #1
	strh	r2, [r3]	@ movhi
.L1336:
	ldr	r3, [fp, #-724]
	add	r3, r3, #1
	str	r3, [fp, #-724]
.L1335:
	ldr	r3, .L1364+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-724]
	cmp	r3, r2
	bcc	.L1338
	ldr	r3, [fp, #-728]
	add	r3, r3, #1
	str	r3, [fp, #-728]
.L1334:
	ldr	r3, .L1364+12
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-728]
	cmp	r3, r2
	bcc	.L1339
	mov	r3, #0
	str	r3, [fp, #-728]
	b	.L1340
.L1343:
	mov	r3, #0
	str	r3, [fp, #-724]
	b	.L1341
.L1342:
	ldr	r3, [fp, #-728]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-724]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #392
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-728]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-724]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-712]
	ldr	r3, [fp, #-724]
	add	r3, r3, #1
	str	r3, [fp, #-724]
.L1341:
	ldr	r3, [fp, #-724]
	cmp	r3, #3
	bls	.L1342
	ldr	r3, [fp, #-728]
	add	r3, r3, #1
	str	r3, [fp, #-728]
.L1340:
	ldr	r3, [fp, #-728]
	cmp	r3, #3
	bls	.L1343
	mov	r3, #0
	str	r3, [fp, #-728]
	b	.L1344
.L1345:
	ldr	r3, [fp, #-728]
	lsl	r3, r3, #5
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #392
	sub	r3, fp, #740
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-728]
	add	r3, r3, #1
	str	r3, [fp, #-728]
.L1344:
	ldr	r3, .L1364+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-728]
	cmp	r3, r2
	bcc	.L1345
	mov	r3, #0
	str	r3, [fp, #-728]
	b	.L1346
.L1347:
	ldr	r3, [fp, #-728]
	lsl	r3, r3, #4
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-648]
	ldr	r3, [fp, #-728]
	add	r3, r3, #1
	str	r3, [fp, #-728]
.L1346:
	ldr	r3, [fp, #-728]
	cmp	r3, #3
	bls	.L1347
	mov	r3, #0
	str	r3, [fp, #-728]
	b	.L1348
.L1349:
	ldr	r2, .L1364+4
	ldr	r3, [fp, #-728]
	add	r3, r3, #112
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r2, r0
	ldr	r3, [fp, #-728]
	lsl	r3, r3, #2
	sub	r1, fp, #4
	add	r3, r1, r3
	str	r2, [r3, #-712]
	ldr	r3, [fp, #-728]
	add	r3, r3, #1
	str	r3, [fp, #-728]
.L1348:
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-728]
	cmp	r3, r2
	bcc	.L1349
	mov	r3, #0
	str	r3, [fp, #-728]
	b	.L1350
.L1353:
	mov	r3, #0
	str	r3, [fp, #-724]
	b	.L1351
.L1352:
	ldr	r3, [fp, #-728]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-724]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #264
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-728]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-724]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-724]
	add	r3, r3, #1
	str	r3, [fp, #-724]
.L1351:
	ldr	r3, [fp, #-724]
	cmp	r3, #3
	bls	.L1352
	ldr	r3, [fp, #-728]
	add	r3, r3, #1
	str	r3, [fp, #-728]
.L1350:
	ldr	r3, [fp, #-728]
	cmp	r3, #3
	bls	.L1353
	mov	r3, #0
	str	r3, [fp, #-720]
	b	.L1354
.L1355:
	ldr	r2, .L1364+4
	ldr	r3, [fp, #-720]
	add	r3, r3, #16
	lsl	r3, r3, #5
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r2, r0
	ldr	r3, [fp, #-720]
	lsl	r3, r3, #4
	sub	r1, fp, #4
	add	r3, r1, r3
	str	r2, [r3, #-648]
	ldr	r3, [fp, #-720]
	add	r3, r3, #1
	str	r3, [fp, #-720]
.L1354:
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-720]
	cmp	r3, r2
	bcc	.L1355
	ldr	r3, .L1364+12
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #588
	str	r3, [sp, #8]
	sub	r3, fp, #652
	str	r3, [sp, #4]
	sub	r3, fp, #716
	str	r3, [sp]
	mov	r3, #1
	bl	fxp_matrix_multiplication
	mov	r3, #0
	str	r3, [fp, #-720]
	b	.L1356
.L1357:
	ldr	r3, [fp, #-720]
	lsl	r3, r3, #5
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #392
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	mov	r0, r3
	bl	fxp_quantize
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r2, r0
	ldr	r3, [fp, #-720]
	lsl	r3, r3, #4
	sub	r1, fp, #4
	add	r3, r1, r3
	str	r2, [r3, #-520]
	ldr	r3, [fp, #-720]
	add	r3, r3, #1
	str	r3, [fp, #-720]
.L1356:
	ldr	r3, .L1364+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-720]
	cmp	r3, r2
	bcc	.L1357
	ldr	r3, .L1364+8
	ldr	r3, [r3]
	mov	r0, r3
	sub	r1, fp, #588
	sub	r2, fp, #524
	sub	r3, fp, #460
	str	r3, [sp]
	mov	r3, r1
	mov	r1, #1
	bl	fxp_sub_matrix
	mov	r3, #0
	str	r3, [fp, #-720]
	b	.L1358
.L1359:
	ldr	r3, [fp, #-720]
	lsl	r3, r3, #4
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-456]
	mov	r0, r3
	bl	fxp_quantize
	mov	r3, r0
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L1364+4
	ldr	r1, [fp, #-720]
	add	r1, r1, #24
	lsl	r1, r1, #5
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-720]
	add	r3, r3, #1
	str	r3, [fp, #-720]
.L1358:
	ldr	r3, .L1364+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-720]
	cmp	r3, r2
	bcc	.L1359
	ldr	r3, .L1364+12
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1364+20
	str	r3, [sp, #4]
	ldr	r3, .L1364+24
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	sub	r3, fp, #4
	sub	r3, r3, #724
	sub	r3, r3, #2
	ldrh	r3, [r3]
	cmp	r3, #1
	bne	.L1360
	ldr	r3, .L1364+12
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1364+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1364+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	ldr	r3, .L1364+28
	str	r3, [sp, #4]
	ldr	r3, .L1364+32
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
.L1360:
	ldr	r3, .L1364+12
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #140
	sub	r2, fp, #268
	ldr	r1, .L1364+36
	str	r1, [sp]
	mov	r1, #1
	bl	double_add_matrix
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1364+20
	str	r3, [sp, #4]
	ldr	r3, .L1364+4
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1364+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1364+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	ldr	r3, .L1364+28
	str	r3, [sp, #4]
	ldr	r3, .L1364+40
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1364+16
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #140
	sub	r2, fp, #268
	ldr	r1, .L1364+20
	str	r1, [sp]
	mov	r1, #1
	bl	double_add_matrix
	ldr	r3, .L1364+4
	add	r3, r3, #640
	ldmia	r3, {r2-r3}
	ldr	r1, .L1364
	ldr	r0, [r1]
	ldr	r1, [fp, #-8]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L1362
	bl	__stack_chk_fail
.L1362:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1365:
	.align	2
.L1364:
	.word	.LC77
	.word	_controller_fxp
	.word	nInputs
	.word	nOutputs
	.word	nStates
	.word	_controller_fxp+512
	.word	_controller_fxp+256
	.word	_controller_fxp+768
	.word	_controller_fxp+384
	.word	_controller_fxp+640
	.word	_controller_fxp+128
	.size	fxp_ss_closed_loop_quantization_error, .-fxp_ss_closed_loop_quantization_error
	.section	.rodata
	.align	2
.LC78:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	ss_closed_loop_quantization_error
	.syntax unified
	.arm
	.fpu softvfp
	.type	ss_closed_loop_quantization_error, %function
ss_closed_loop_quantization_error:
	@ args = 0, pretend = 0, frame = 416
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #432
	str	r0, [fp, #-420]
	str	r1, [fp, #-416]
	ldr	r3, .L1385
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #4
	sub	r3, r3, #400
	sub	r3, r3, #2
	mov	r2, #0
	strh	r2, [r3]	@ movhi
	mov	r3, #0
	str	r3, [fp, #-404]
	b	.L1367
.L1372:
	mov	r3, #0
	str	r3, [fp, #-400]
	b	.L1368
.L1371:
	ldr	r1, .L1385+4
	ldr	r3, [fp, #-404]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-400]
	add	r3, r2, r3
	add	r3, r3, #48
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L1369
	sub	r3, fp, #4
	sub	r3, r3, #400
	sub	r3, r3, #2
	mov	r2, #1
	strh	r2, [r3]	@ movhi
.L1369:
	ldr	r3, [fp, #-400]
	add	r3, r3, #1
	str	r3, [fp, #-400]
.L1368:
	ldr	r3, .L1385+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-400]
	cmp	r3, r2
	bcc	.L1371
	ldr	r3, [fp, #-404]
	add	r3, r3, #1
	str	r3, [fp, #-404]
.L1367:
	ldr	r3, .L1385+12
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-404]
	cmp	r3, r2
	bcc	.L1372
	mov	r3, #0
	str	r3, [fp, #-404]
	b	.L1373
.L1376:
	mov	r3, #0
	str	r3, [fp, #-400]
	b	.L1374
.L1375:
	ldr	r3, [fp, #-404]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-400]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #392
	sub	r3, fp, #420
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-400]
	add	r3, r3, #1
	str	r3, [fp, #-400]
.L1374:
	ldr	r3, [fp, #-400]
	cmp	r3, #0
	beq	.L1375
	ldr	r3, [fp, #-404]
	add	r3, r3, #1
	str	r3, [fp, #-404]
.L1373:
	ldr	r3, .L1385+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-404]
	cmp	r3, r2
	bcc	.L1376
	mov	r3, #0
	str	r3, [fp, #-404]
	b	.L1377
.L1380:
	mov	r3, #0
	str	r3, [fp, #-400]
	b	.L1378
.L1379:
	ldr	r3, [fp, #-404]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-400]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #264
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-404]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-400]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-400]
	add	r3, r3, #1
	str	r3, [fp, #-400]
.L1378:
	ldr	r3, [fp, #-400]
	cmp	r3, #3
	bls	.L1379
	ldr	r3, [fp, #-404]
	add	r3, r3, #1
	str	r3, [fp, #-404]
.L1377:
	ldr	r3, [fp, #-404]
	cmp	r3, #3
	bls	.L1380
	ldr	r3, .L1385+12
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1385+16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1385+16
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1385+20
	str	r3, [sp, #4]
	ldr	r3, .L1385+24
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1385+8
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #268
	sub	r2, fp, #396
	ldr	r1, .L1385+28
	str	r1, [sp]
	mov	r1, #1
	bl	double_sub_matrix
	ldr	r3, .L1385+12
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1385+16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1385+16
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1385+20
	str	r3, [sp, #4]
	ldr	r3, .L1385+32
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	sub	r3, fp, #4
	sub	r3, r3, #400
	sub	r3, r3, #2
	ldrh	r3, [r3]
	cmp	r3, #1
	bne	.L1381
	ldr	r3, .L1385+12
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1385+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1385+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	ldr	r3, .L1385+28
	str	r3, [sp, #4]
	ldr	r3, .L1385+36
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
.L1381:
	ldr	r3, .L1385+12
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #140
	sub	r2, fp, #268
	ldr	r1, .L1385+40
	str	r1, [sp]
	mov	r1, #1
	bl	double_add_matrix
	ldr	r3, .L1385+16
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1385+16
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1385+16
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1385+20
	str	r3, [sp, #4]
	ldr	r3, .L1385+4
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1385+16
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1385+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1385+8
	ldr	r3, [r3]
	mov	r2, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	ldr	r3, .L1385+28
	str	r3, [sp, #4]
	ldr	r3, .L1385+44
	str	r3, [sp]
	mov	r3, #1
	bl	double_matrix_multiplication
	ldr	r3, .L1385+16
	ldr	r3, [r3]
	mov	r0, r3
	sub	r3, fp, #140
	sub	r2, fp, #268
	ldr	r1, .L1385+20
	str	r1, [sp]
	mov	r1, #1
	bl	double_add_matrix
	ldr	r3, .L1385+4
	add	r3, r3, #640
	ldmia	r3, {r2-r3}
	ldr	r1, .L1385
	ldr	r0, [r1]
	ldr	r1, [fp, #-8]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L1383
	bl	__stack_chk_fail
.L1383:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1386:
	.align	2
.L1385:
	.word	.LC78
	.word	_controller_double
	.word	nInputs
	.word	nOutputs
	.word	nStates
	.word	_controller_double+512
	.word	_controller_double+896
	.word	_controller_double+768
	.word	_controller_double+256
	.word	_controller_double+384
	.word	_controller_double+640
	.word	_controller_double+128
	.size	ss_closed_loop_quantization_error, .-ss_closed_loop_quantization_error
	.section	.rodata
	.align	2
.LC79:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/engine/verify_error_state_space.h\000"
	.align	2
.LC80:
	.ascii	"__quant_error < error_limit && __quant_error > ((-1"
	.ascii	")*error_limit)\000"
	.align	2
.LC81:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_error_state_space
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_error_state_space, %function
verify_error_state_space:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #40
	ldr	r3, .L1422
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-60]
	b	.L1388
.L1391:
	mov	r3, #0
	str	r3, [fp, #-56]
	b	.L1389
.L1390:
	ldr	r1, .L1422+4
	ldr	r3, [fp, #-60]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-56]
	add	r3, r2, r3
	add	r3, r3, #64
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	ldr	ip, .L1422+8
	ldr	r1, [fp, #-60]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-56]
	add	r1, r0, r1
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-56]
	add	r3, r3, #1
	str	r3, [fp, #-56]
.L1389:
	ldr	r3, [fp, #-56]
	cmp	r3, #0
	ble	.L1390
	ldr	r3, [fp, #-60]
	add	r3, r3, #1
	str	r3, [fp, #-60]
.L1388:
	ldr	r3, .L1422+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-60]
	cmp	r2, r3
	blt	.L1391
	mov	r3, #0
	str	r3, [fp, #-60]
	b	.L1392
.L1395:
	mov	r3, #0
	str	r3, [fp, #-56]
	b	.L1393
.L1394:
	ldr	r1, .L1422+4
	ldr	r3, [fp, #-60]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-56]
	add	r3, r2, r3
	add	r3, r3, #64
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	ldr	ip, .L1422+16
	ldr	r1, [fp, #-60]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-56]
	add	r1, r0, r1
	lsl	r1, r1, #3
	add	r1, ip, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-56]
	add	r3, r3, #1
	str	r3, [fp, #-56]
.L1393:
	ldr	r3, [fp, #-56]
	cmp	r3, #0
	ble	.L1394
	ldr	r3, [fp, #-60]
	add	r3, r3, #1
	str	r3, [fp, #-60]
.L1392:
	ldr	r3, .L1422+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-60]
	cmp	r2, r3
	blt	.L1395
	ldr	r2, .L1422+20
	ldr	r3, .L1422+4
	mov	r0, r2
	mov	r1, r3
	mov	r3, #1040
	mov	r2, r3
	bl	memcpy
	ldr	r2, .L1422+24
	ldr	r3, .L1422+4
	mov	r0, r2
	mov	r1, r3
	mov	r3, #1040
	mov	r2, r3
	bl	memcpy
	ldr	r3, .L1422+28
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L1422+32
	add	r3, r3, #16
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-52]
	ldr	r3, .L1422+32
	add	r3, r3, #8
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	str	r0, [fp, #-48]
	bl	nondet_double
	str	r0, [fp, #-44]
	str	r1, [fp, #-40]
	ldr	r0, [fp, #-52]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1396
	ldr	r0, [fp, #-48]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1396
	mov	r3, #1
	b	.L1399
.L1396:
	mov	r3, #0
.L1399:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	mov	r3, #0
	str	r3, [fp, #-60]
	b	.L1400
.L1401:
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_d2iz
	mov	r2, r0
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	sub	r1, fp, #20
	add	r3, r1, r3
	str	r2, [r3, #-8]
	ldr	r3, [fp, #-60]
	add	r3, r3, #1
	str	r3, [fp, #-60]
.L1400:
	ldr	r3, [fp, #-60]
	cmp	r3, #0
	blt	.L1401
	ldr	r3, .L1422+36
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L1402
	mov	r3, #0
	str	r3, [fp, #-60]
	b	.L1403
.L1408:
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	sub	r2, fp, #20
	add	r3, r2, r3
	ldr	r3, [r3, #-8]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	ss_closed_loop_quantization_error
	mov	r4, r0
	mov	r5, r1
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	sub	r2, fp, #20
	add	r3, r2, r3
	ldr	r3, [r3, #-8]
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	fxp_ss_closed_loop_quantization_error
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r3, .L1422+40
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1404
	ldr	r3, .L1422+40
	ldmia	r3, {r2-r3}
	mov	r6, r2
	eor	r7, r3, #-2147483648
	mov	r2, r6
	mov	r3, r7
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L1407
.L1404:
	ldr	r3, .L1422+44
	ldr	r2, .L1422+48
	ldr	r1, .L1422+52
	ldr	r0, .L1422+56
	bl	__assert_fail
.L1407:
	ldr	r3, [fp, #-60]
	add	r3, r3, #1
	str	r3, [fp, #-60]
.L1403:
	ldr	r3, [fp, #-60]
	cmp	r3, #0
	blt	.L1408
	b	.L1409
.L1402:
	mov	r3, #0
	str	r3, [fp, #-60]
	b	.L1410
.L1415:
	ldr	r3, [fp, #-60]
	lsl	r3, r3, #2
	sub	r2, fp, #20
	add	r3, r2, r3
	ldr	r3, [r3, #-8]
	mov	r0, r3
	bl	ss_system_quantization_error
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	ldr	r3, .L1422+40
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1411
	ldr	r3, .L1422+40
	ldmia	r3, {r2-r3}
	mov	r4, r2
	eor	r5, r3, #-2147483648
	mov	r2, r4
	mov	r3, r5
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L1414
.L1411:
	ldr	r3, .L1422+44
	ldr	r2, .L1422+60
	ldr	r1, .L1422+52
	ldr	r0, .L1422+56
	bl	__assert_fail
.L1414:
	ldr	r3, [fp, #-60]
	add	r3, r3, #1
	str	r3, [fp, #-60]
.L1410:
	ldr	r3, [fp, #-60]
	cmp	r3, #0
	blt	.L1415
.L1409:
	mov	r3, #0
	ldr	r2, .L1422
	ldr	r1, [r2]
	ldr	r2, [fp, #-24]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1417
	bl	__stack_chk_fail
.L1417:
	mov	r0, r3
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
.L1423:
	.align	2
.L1422:
	.word	.LC81
	.word	_controller
	.word	new_state
	.word	nStates
	.word	new_stateFWL
	.word	_controller_fxp
	.word	_controller_double
	.word	overflow_mode
	.word	impl
	.word	closed_loop
	.word	error_limit
	.word	__PRETTY_FUNCTION__.7688
	.word	354
	.word	.LC79
	.word	.LC80
	.word	361
	.size	verify_error_state_space, .-verify_error_state_space
	.section	.rodata
	.align	2
.LC82:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	fxp_ss_closed_loop_safety
	.syntax unified
	.arm
	.fpu softvfp
	.type	fxp_ss_closed_loop_safety, %function
fxp_ss_closed_loop_safety:
	@ args = 0, pretend = 0, frame = 600
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #600
	ldr	r3, .L1458
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #4
	sub	r3, r3, #592
	sub	r3, r3, #2
	mov	r2, #0
	strh	r2, [r3]	@ movhi
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1425
.L1430:
	mov	r3, #0
	str	r3, [fp, #-596]
	b	.L1426
.L1429:
	ldr	r1, .L1458+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-596]
	add	r3, r2, r3
	add	r3, r3, #48
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L1427
	sub	r3, fp, #4
	sub	r3, r3, #592
	sub	r3, r3, #2
	mov	r2, #1
	strh	r2, [r3]	@ movhi
.L1427:
	ldr	r3, [fp, #-596]
	add	r3, r3, #1
	str	r3, [fp, #-596]
.L1426:
	ldr	r3, .L1458+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-596]
	cmp	r3, r2
	bcc	.L1429
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1425:
	ldr	r3, .L1458+12
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-592]
	cmp	r3, r2
	bcc	.L1430
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1431
.L1434:
	mov	r3, #0
	str	r3, [fp, #-596]
	b	.L1432
.L1433:
	ldr	r1, .L1458+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-596]
	add	r3, r2, r3
	add	r3, r3, #96
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-592]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-596]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #4
	add	r1, r0, r1
	sub	r1, r1, #392
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-596]
	add	r3, r3, #1
	str	r3, [fp, #-596]
.L1432:
	ldr	r3, [fp, #-596]
	cmp	r3, #0
	beq	.L1433
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1431:
	ldr	r3, .L1458+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-592]
	cmp	r3, r2
	bcc	.L1434
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1435
.L1438:
	mov	r3, #0
	str	r3, [fp, #-596]
	b	.L1436
.L1437:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-596]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-584]
	ldr	r3, [fp, #-596]
	add	r3, r3, #1
	str	r3, [fp, #-596]
.L1436:
	ldr	r3, .L1458+12
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-596]
	cmp	r3, r2
	bcc	.L1437
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1435:
	ldr	r3, .L1458+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-592]
	cmp	r3, r2
	bcc	.L1438
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1439
.L1442:
	mov	r3, #0
	str	r3, [fp, #-596]
	b	.L1440
.L1441:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-596]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-520]
	ldr	r3, [fp, #-596]
	add	r3, r3, #1
	str	r3, [fp, #-596]
.L1440:
	ldr	r3, [fp, #-596]
	cmp	r3, #0
	beq	.L1441
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1439:
	ldr	r3, .L1458+12
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-592]
	cmp	r3, r2
	bcc	.L1442
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1443
.L1446:
	mov	r3, #0
	str	r3, [fp, #-596]
	b	.L1444
.L1445:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-596]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-456]
	ldr	r3, [fp, #-596]
	add	r3, r3, #1
	str	r3, [fp, #-596]
.L1444:
	ldr	r3, [fp, #-596]
	cmp	r3, #3
	bls	.L1445
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1443:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	bls	.L1446
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1447
.L1450:
	mov	r3, #0
	str	r3, [fp, #-596]
	b	.L1448
.L1449:
	ldr	r1, .L1458+4
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-596]
	add	r3, r2, r3
	add	r3, r3, #112
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-596]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-584]
	ldr	r3, [fp, #-596]
	add	r3, r3, #1
	str	r3, [fp, #-596]
.L1448:
	ldr	r3, .L1458+12
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-596]
	cmp	r3, r2
	bcc	.L1449
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1447:
	ldr	r3, .L1458+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-592]
	cmp	r3, r2
	bcc	.L1450
	mov	r3, #0
	str	r3, [fp, #-592]
	b	.L1451
.L1454:
	mov	r3, #0
	str	r3, [fp, #-596]
	b	.L1452
.L1453:
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-596]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #264
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-592]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-596]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-596]
	add	r3, r3, #1
	str	r3, [fp, #-596]
.L1452:
	ldr	r3, [fp, #-596]
	cmp	r3, #3
	bls	.L1453
	ldr	r3, [fp, #-592]
	add	r3, r3, #1
	str	r3, [fp, #-592]
.L1451:
	ldr	r3, [fp, #-592]
	cmp	r3, #3
	bls	.L1454
	mov	r3, #1
	str	r3, [fp, #-592]
	nop
	ldr	r3, .L1458+4
	add	r3, r3, #640
	ldmia	r3, {r2-r3}
	ldr	r1, .L1458
	ldr	r0, [r1]
	ldr	r1, [fp, #-8]
	eors	r0, r1, r0
	mov	r1, #0
	beq	.L1456
	bl	__stack_chk_fail
.L1456:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1459:
	.align	2
.L1458:
	.word	.LC82
	.word	_controller
	.word	nInputs
	.word	nOutputs
	.size	fxp_ss_closed_loop_safety, .-fxp_ss_closed_loop_safety
	.section	.rodata
	.align	2
.LC83:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/engine/verify_safety_state_space.h\000"
	.align	2
.LC84:
	.ascii	"output_double <= error_limit\000"
	.text
	.align	2
	.global	verify_safety_state_space
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_safety_state_space, %function
verify_safety_state_space:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	bl	fxp_ss_closed_loop_safety
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	fxp_to_double
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	ldr	r3, .L1463
	ldmia	r3, {r2-r3}
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L1461
	ldr	r3, .L1463+4
	mov	r2, #140
	ldr	r1, .L1463+8
	ldr	r0, .L1463+12
	bl	__assert_fail
.L1461:
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1464:
	.align	2
.L1463:
	.word	error_limit
	.word	__PRETTY_FUNCTION__.7770
	.word	.LC83
	.word	.LC84
	.size	verify_safety_state_space, .-verify_safety_state_space
	.section	.rodata
	.align	2
.LC85:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/engine/verify_controllability.h\000"
	.align	2
.LC86:
	.ascii	"determinant(controllabilityMatrix_double,nStates) !"
	.ascii	"= 0\000"
	.align	2
.LC87:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_controllability
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_controllability, %function
verify_controllability:
	@ args = 0, pretend = 0, frame = 536
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #552
	ldr	r3, .L1505
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1466
.L1469:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1467
.L1468:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-520]
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-456]
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-392]
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-328]
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-264]
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #136
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1467:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, .L1505+8
	ldr	r2, [r2]
	mul	r3, r2, r3
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1468
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1466:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1469
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1470
.L1473:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1471
.L1472:
	ldr	r1, .L1505+12
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-520]
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1471:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1472
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1470:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1473
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1474
.L1477:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1475
.L1476:
	ldr	r1, .L1505+12
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	add	r3, r3, #16
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-456]
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1475:
	ldr	r3, .L1505+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1476
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1474:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1477
	ldr	r3, .L1505+8
	ldr	r3, [r3]
	cmp	r3, #1
	ble	.L1478
	mov	r3, #0
	str	r3, [fp, #-532]
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1479
.L1484:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	ip, r3
	ldr	r1, [fp, #-532]
	sub	r2, fp, #524
	sub	r3, fp, #332
	str	r3, [sp]
	mov	r3, r1
	mov	r1, ip
	bl	fxp_exp_matrix
	ldr	r3, [fp, #-532]
	add	r3, r3, #1
	str	r3, [fp, #-532]
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, .L1505+8
	ldr	r3, [r3]
	mov	ip, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	sub	r3, fp, #460
	str	r3, [sp, #4]
	sub	r3, fp, #332
	str	r3, [sp]
	mov	r3, ip
	bl	fxp_matrix_multiplication
	mov	r3, #0
	str	r3, [fp, #-528]
	b	.L1480
.L1483:
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1481
.L1482:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-528]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r2, [r3, #-264]
	ldr	r3, [fp, #-540]
	lsl	r1, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #4
	add	r3, r1, r3
	str	r2, [r3, #-392]
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1481:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1482
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
	ldr	r3, [fp, #-528]
	add	r3, r3, #1
	str	r3, [fp, #-528]
.L1480:
	ldr	r3, .L1505+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-528]
	cmp	r2, r3
	blt	.L1483
.L1479:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, .L1505+8
	ldr	r2, [r2]
	mul	r3, r2, r3
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1484
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1485
.L1488:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1486
.L1487:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-328]
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1486:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, .L1505+8
	ldr	r2, [r2]
	mul	r3, r2, r3
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1487
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1485:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1488
	ldr	r3, .L1505+4
	ldr	ip, [r3]
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, .L1505+8
	ldr	r2, [r2]
	mul	r3, r2, r3
	sub	r1, fp, #332
	sub	r0, fp, #396
	mov	r2, ip
	bl	fxp_transpose
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, .L1505+8
	ldr	r2, [r2]
	mul	r3, r2, r3
	mov	r1, r3
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, .L1505+8
	ldr	r2, [r2]
	mul	r3, r2, r3
	mov	r2, r3
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	ip, r3
	sub	r3, fp, #204
	str	r3, [sp, #8]
	sub	r3, fp, #332
	str	r3, [sp, #4]
	sub	r3, fp, #396
	str	r3, [sp]
	mov	r3, ip
	bl	fxp_matrix_multiplication
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1489
.L1492:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1490
.L1491:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-200]
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-540]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-536]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #4
	add	r1, r0, r1
	sub	r1, r1, #136
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1490:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1491
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1489:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1492
	ldr	r3, .L1505+4
	ldr	r2, [r3]
	sub	r3, fp, #140
	mov	r1, r2
	mov	r0, r3
	bl	determinant
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1494
	ldr	r3, .L1505+16
	mov	r2, #91
	ldr	r1, .L1505+20
	ldr	r0, .L1505+24
	bl	__assert_fail
.L1478:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1495
.L1498:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	ip, r3
	ldr	r1, [fp, #-536]
	sub	r2, fp, #524
	sub	r3, fp, #332
	str	r3, [sp]
	mov	r3, r1
	mov	r1, ip
	bl	fxp_exp_matrix
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, .L1505+8
	ldr	r3, [r3]
	mov	ip, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	sub	r3, fp, #460
	str	r3, [sp, #4]
	sub	r3, fp, #332
	str	r3, [sp]
	mov	r3, ip
	bl	fxp_matrix_multiplication
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1496
.L1497:
	ldr	r3, [fp, #-540]
	lsl	r3, r3, #4
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r2, [r3, #-264]
	ldr	r3, [fp, #-540]
	lsl	r1, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #4
	add	r3, r1, r3
	str	r2, [r3, #-392]
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1496:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1497
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1495:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1498
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1499
.L1502:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1500
.L1501:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-392]
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-540]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-536]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #4
	add	r1, r0, r1
	sub	r1, r1, #136
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1500:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1501
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1499:
	ldr	r3, .L1505+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1502
	ldr	r3, .L1505+4
	ldr	r2, [r3]
	sub	r3, fp, #140
	mov	r1, r2
	mov	r0, r3
	bl	determinant
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1494
	ldr	r3, .L1505+16
	mov	r2, #113
	ldr	r1, .L1505+20
	ldr	r0, .L1505+24
	bl	__assert_fail
.L1494:
	mov	r3, #0
	ldr	r2, .L1505
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1504
	bl	__stack_chk_fail
.L1504:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1506:
	.align	2
.L1505:
	.word	.LC87
	.word	nStates
	.word	nInputs
	.word	_controller
	.word	__PRETTY_FUNCTION__.7825
	.word	.LC85
	.word	.LC86
	.size	verify_controllability, .-verify_controllability
	.section	.rodata
	.align	2
.LC88:
	.ascii	"determinant(mimo_controllabilityMatrix_double,nStat"
	.ascii	"es) != 0\000"
	.align	2
.LC89:
	.ascii	"determinant(controllabilityMatrix,nStates) != 0\000"
	.align	2
.LC90:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_controllability_double
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_controllability_double, %function
verify_controllability_double:
	@ args = 0, pretend = 0, frame = 536
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #552
	ldr	r3, .L1527
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, .L1527+4
	ldr	r3, [r3]
	cmp	r3, #1
	ble	.L1508
	mov	r3, #0
	str	r3, [fp, #-532]
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1509
.L1514:
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r2, [fp, #-532]
	sub	r3, fp, #396
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L1527+12
	bl	double_exp_matrix
	ldr	r3, [fp, #-532]
	add	r3, r3, #1
	str	r3, [fp, #-532]
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, .L1527+4
	ldr	r3, [r3]
	mov	ip, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1527+16
	str	r3, [sp, #4]
	sub	r3, fp, #396
	str	r3, [sp]
	mov	r3, ip
	bl	double_matrix_multiplication
	mov	r3, #0
	str	r3, [fp, #-528]
	b	.L1510
.L1513:
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1511
.L1512:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-528]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #264
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-540]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-536]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #4
	add	r1, r0, r1
	sub	r1, r1, #520
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1511:
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1512
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
	ldr	r3, [fp, #-528]
	add	r3, r3, #1
	str	r3, [fp, #-528]
.L1510:
	ldr	r3, .L1527+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-528]
	cmp	r2, r3
	blt	.L1513
.L1509:
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	ldr	r2, .L1527+4
	ldr	r2, [r2]
	mul	r3, r2, r3
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1514
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1515
.L1518:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1516
.L1517:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #3
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r1, r3, #392
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1516:
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	ldr	r2, .L1527+4
	ldr	r2, [r2]
	mul	r3, r2, r3
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1517
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1515:
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1518
	ldr	r3, .L1527+8
	ldr	ip, [r3]
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	ldr	r2, .L1527+4
	ldr	r2, [r2]
	mul	r3, r2, r3
	sub	r1, fp, #396
	sub	r0, fp, #524
	mov	r2, ip
	bl	transpose
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	ldr	r2, .L1527+4
	ldr	r2, [r2]
	mul	r3, r2, r3
	mov	r1, r3
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	ldr	r2, .L1527+4
	ldr	r2, [r2]
	mul	r3, r2, r3
	mov	r2, r3
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	ip, r3
	sub	r3, fp, #140
	str	r3, [sp, #8]
	sub	r3, fp, #396
	str	r3, [sp, #4]
	sub	r3, fp, #524
	str	r3, [sp]
	mov	r3, ip
	bl	double_matrix_multiplication
	ldr	r3, .L1527+8
	ldr	r2, [r3]
	sub	r3, fp, #140
	mov	r1, r2
	mov	r0, r3
	bl	determinant
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1520
	ldr	r3, .L1527+20
	mov	r2, #154
	ldr	r1, .L1527+24
	ldr	r0, .L1527+28
	bl	__assert_fail
.L1508:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1521
.L1524:
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r2, [fp, #-536]
	sub	r3, fp, #396
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L1527+12
	bl	double_exp_matrix
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, .L1527+4
	ldr	r3, [r3]
	mov	ip, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	ldr	r3, .L1527+16
	str	r3, [sp, #4]
	sub	r3, fp, #396
	str	r3, [sp]
	mov	r3, ip
	bl	double_matrix_multiplication
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1522
.L1523:
	ldr	r3, [fp, #-540]
	lsl	r3, r3, #5
	sub	r2, fp, #4
	add	r3, r2, r3
	sub	r3, r3, #264
	ldmia	r3, {r2-r3}
	ldr	r1, [fp, #-540]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-536]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #4
	add	r1, r0, r1
	sub	r1, r1, #520
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1522:
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1523
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1521:
	ldr	r3, .L1527+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1524
	ldr	r3, .L1527+8
	ldr	r2, [r3]
	sub	r3, fp, #524
	mov	r1, r2
	mov	r0, r3
	bl	determinant
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1520
	ldr	r3, .L1527+20
	mov	r2, #163
	ldr	r1, .L1527+24
	ldr	r0, .L1527+32
	bl	__assert_fail
.L1520:
	mov	r3, #0
	ldr	r2, .L1527
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1526
	bl	__stack_chk_fail
.L1526:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1528:
	.align	2
.L1527:
	.word	.LC90
	.word	nInputs
	.word	nStates
	.word	_controller
	.word	_controller+128
	.word	__PRETTY_FUNCTION__.7865
	.word	.LC85
	.word	.LC88
	.word	.LC89
	.size	verify_controllability_double, .-verify_controllability_double
	.section	.rodata
	.align	2
.LC91:
	.ascii	"/home/yashchopda/Desktop/dsverifier-v2.0.3-esbmc-v4"
	.ascii	".0-cbmc-5.6/bmc/engine/verify_observability.h\000"
	.align	2
.LC92:
	.ascii	"determinant(observabilityMatrix_double,nStates) != "
	.ascii	"0\000"
	.align	2
.LC93:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_observability
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_observability, %function
verify_observability:
	@ args = 0, pretend = 0, frame = 536
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #552
	ldr	r3, .L1569
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1530
.L1533:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1531
.L1532:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-392]
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-520]
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-456]
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-328]
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-264]
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1531:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1532
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1530:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1533
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1534
.L1537:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1535
.L1536:
	ldr	r1, .L1569+8
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-520]
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1535:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1536
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1534:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1537
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1538
.L1541:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1539
.L1540:
	ldr	r1, .L1569+8
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	add	r3, r3, #32
	lsl	r3, r3, #3
	add	r3, r1, r3
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	fxp_double_to_fxp
	mov	r1, r0
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	str	r1, [r3, #-456]
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1539:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1540
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1538:
	ldr	r3, .L1569+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1541
	ldr	r3, .L1569+12
	ldr	r3, [r3]
	cmp	r3, #1
	ble	.L1542
	mov	r3, #0
	str	r3, [fp, #-536]
	mov	r3, #0
	str	r3, [fp, #-532]
	b	.L1543
.L1548:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	ip, r3
	ldr	r1, [fp, #-532]
	sub	r2, fp, #524
	sub	r3, fp, #332
	str	r3, [sp]
	mov	r3, r1
	mov	r1, ip
	bl	fxp_exp_matrix
	ldr	r3, [fp, #-532]
	add	r3, r3, #1
	str	r3, [fp, #-532]
	ldr	r3, .L1569+12
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	ip, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	sub	r3, fp, #332
	str	r3, [sp, #4]
	sub	r3, fp, #460
	str	r3, [sp]
	mov	r3, ip
	bl	fxp_matrix_multiplication
	mov	r3, #0
	str	r3, [fp, #-528]
	b	.L1544
.L1547:
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1545
.L1546:
	ldr	r3, [fp, #-528]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-540]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r2, [r3, #-264]
	ldr	r3, [fp, #-536]
	lsl	r1, r3, #2
	ldr	r3, [fp, #-540]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #4
	add	r3, r1, r3
	str	r2, [r3, #-392]
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1545:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1546
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
	ldr	r3, [fp, #-528]
	add	r3, r3, #1
	str	r3, [fp, #-528]
.L1544:
	ldr	r3, .L1569+12
	ldr	r3, [r3]
	ldr	r2, [fp, #-528]
	cmp	r2, r3
	blt	.L1547
.L1543:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-532]
	cmp	r2, r3
	blt	.L1548
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1549
.L1552:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1550
.L1551:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	mov	r2, #0
	str	r2, [r3, #-328]
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1550:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, .L1569+12
	ldr	r2, [r2]
	mul	r3, r2, r3
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1551
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1549:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1552
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, .L1569+12
	ldr	r2, [r2]
	mul	r2, r3, r2
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	sub	r1, fp, #332
	sub	r0, fp, #396
	bl	fxp_transpose
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, .L1569+12
	ldr	r2, [r2]
	mul	r3, r2, r3
	mov	r1, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, .L1569+12
	ldr	r2, [r2]
	mul	r3, r2, r3
	mov	r2, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	ip, r3
	sub	r3, fp, #204
	str	r3, [sp, #8]
	sub	r3, fp, #396
	str	r3, [sp, #4]
	sub	r3, fp, #332
	str	r3, [sp]
	mov	r3, ip
	bl	fxp_matrix_multiplication
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1553
.L1556:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1554
.L1555:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-200]
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-540]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-536]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #4
	add	r1, r0, r1
	sub	r1, r1, #136
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1554:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1555
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1553:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1556
	ldr	r3, .L1569+4
	ldr	r2, [r3]
	sub	r3, fp, #140
	mov	r1, r2
	mov	r0, r3
	bl	determinant
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1558
	ldr	r3, .L1569+16
	mov	r2, #119
	ldr	r1, .L1569+20
	ldr	r0, .L1569+24
	bl	__assert_fail
.L1542:
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1559
.L1562:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	ip, r3
	ldr	r1, [fp, #-540]
	sub	r2, fp, #524
	sub	r3, fp, #332
	str	r3, [sp]
	mov	r3, r1
	mov	r1, ip
	bl	fxp_exp_matrix
	ldr	r3, .L1569+12
	ldr	r3, [r3]
	mov	r0, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	r2, r3
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	mov	ip, r3
	sub	r3, fp, #268
	str	r3, [sp, #8]
	sub	r3, fp, #332
	str	r3, [sp, #4]
	sub	r3, fp, #460
	str	r3, [sp]
	mov	r3, ip
	bl	fxp_matrix_multiplication
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1560
.L1561:
	ldr	r3, [fp, #-536]
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r2, [r3, #-264]
	ldr	r3, [fp, #-540]
	lsl	r1, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r1, r3
	lsl	r3, r3, #2
	sub	r1, fp, #4
	add	r3, r1, r3
	str	r2, [r3, #-392]
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1560:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1561
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1559:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1562
	mov	r3, #0
	str	r3, [fp, #-540]
	b	.L1563
.L1566:
	mov	r3, #0
	str	r3, [fp, #-536]
	b	.L1564
.L1565:
	ldr	r3, [fp, #-540]
	lsl	r2, r3, #2
	ldr	r3, [fp, #-536]
	add	r3, r2, r3
	lsl	r3, r3, #2
	sub	r2, fp, #4
	add	r3, r2, r3
	ldr	r3, [r3, #-392]
	mov	r0, r3
	bl	fxp_to_double
	mov	r2, r0
	mov	r3, r1
	ldr	r1, [fp, #-540]
	lsl	r0, r1, #2
	ldr	r1, [fp, #-536]
	add	r1, r0, r1
	lsl	r1, r1, #3
	sub	r0, fp, #4
	add	r1, r0, r1
	sub	r1, r1, #136
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-536]
	add	r3, r3, #1
	str	r3, [fp, #-536]
.L1564:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-536]
	cmp	r2, r3
	blt	.L1565
	ldr	r3, [fp, #-540]
	add	r3, r3, #1
	str	r3, [fp, #-540]
.L1563:
	ldr	r3, .L1569+4
	ldr	r3, [r3]
	ldr	r2, [fp, #-540]
	cmp	r2, r3
	blt	.L1566
	ldr	r3, .L1569+4
	ldr	r2, [r3]
	sub	r3, fp, #140
	mov	r1, r2
	mov	r0, r3
	bl	determinant
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1558
	ldr	r3, .L1569+16
	mov	r2, #134
	ldr	r1, .L1569+20
	ldr	r0, .L1569+24
	bl	__assert_fail
.L1558:
	mov	r3, #0
	ldr	r2, .L1569
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1568
	bl	__stack_chk_fail
.L1568:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L1570:
	.align	2
.L1569:
	.word	.LC93
	.word	nStates
	.word	_controller
	.word	nOutputs
	.word	__PRETTY_FUNCTION__.7926
	.word	.LC91
	.word	.LC92
	.size	verify_observability, .-verify_observability
	.section	.rodata
	.align	2
.LC94:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	resp_mag
	.syntax unified
	.arm
	.fpu softvfp
	.type	resp_mag, %function
resp_mag:
	@ args = 8, pretend = 0, frame = 96
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, fp, lr}
	add	fp, sp, #16
	sub	sp, sp, #100
	str	r0, [fp, #-96]
	str	r1, [fp, #-100]
	str	r2, [fp, #-104]
	str	r3, [fp, #-108]
	ldr	r3, [fp, #4]
	str	r3, [fp, #-112]
	ldr	r3, .L1580
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	mov	r3, sp
	mov	r6, r3
	ldr	r3, [fp, #8]
	add	ip, r3, #1
	sub	r3, ip, #1
	str	r3, [fp, #-88]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-92]
	ldr	r3, [fp, #8]
	add	ip, r3, #1
	sub	r3, ip, #1
	str	r3, [fp, #-76]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-72]
	ldr	r3, [fp, #8]
	add	ip, r3, #1
	sub	r3, ip, #1
	str	r3, [fp, #-68]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-64]
	ldr	r3, [fp, #8]
	add	ip, r3, #1
	sub	r3, ip, #1
	str	r3, [fp, #-60]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	mov	r3, sp
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-56]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-84]
	b	.L1572
.L1578:
	ldr	r3, [fp, #-96]
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-92]
	ldr	r1, [fp, #-84]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-72]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	mov	r3, #1
	str	r3, [fp, #-80]
	b	.L1573
.L1574:
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r2, #6
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	cosTyl
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	mov	r2, #6
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	sinTyl
	ldr	r2, [fp, #-72]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-96]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-92]
	ldr	r1, [fp, #-84]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	mov	r2, #6
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	sinTyl
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	mov	r2, #6
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	cosTyl
	ldr	r2, [fp, #-72]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-72]
	ldr	r1, [fp, #-84]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-80]
	add	r3, r3, #1
	str	r3, [fp, #-80]
.L1573:
	ldr	r2, [fp, #-80]
	ldr	r3, [fp, #-100]
	cmp	r2, r3
	blt	.L1574
	ldr	r3, [fp, #-104]
	ldmia	r3, {r2-r3}
	ldr	r0, [fp, #-64]
	ldr	r1, [fp, #-84]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r1, r2, r3
	mov	r2, #0
	mov	r3, #0
	stm	r1, {r2-r3}
	mov	r3, #1
	str	r3, [fp, #-80]
	b	.L1575
.L1576:
	ldr	r2, [fp, #-64]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	mov	r2, #6
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	cosTyl
	ldr	r2, [fp, #-64]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	mov	r2, #6
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	sinTyl
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-80]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-104]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-64]
	ldr	r1, [fp, #-84]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	mov	r2, #6
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	sinTyl
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	mov	r2, #6
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	cosTyl
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	ldr	r0, [fp, #-56]
	ldr	r1, [fp, #-84]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-80]
	add	r3, r3, #1
	str	r3, [fp, #-80]
.L1575:
	ldr	r2, [fp, #-80]
	ldr	r3, [fp, #-108]
	cmp	r2, r3
	blt	.L1576
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-92]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r2, [fp, #-72]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-72]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	mov	r0, r3
	bl	sqrt3
	mov	r1, r0
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-112]
	add	r4, r2, r3
	mov	r0, r1
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r2, [fp, #-64]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-64]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, [fp, #-56]
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	mov	r0, r3
	bl	sqrt3
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	mov	r3, #1
	mov	r4, r3
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1577
	mov	r3, #0
	mov	r4, r3
.L1577:
	and	r3, r4, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-112]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-84]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-112]
	add	r4, r2, r3
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	stm	r4, {r2-r3}
	ldr	r0, [fp, #8]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L1580+4
	ldr	r1, .L1580+8
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	ldr	r3, [fp, #-84]
	add	r3, r3, #1
	str	r3, [fp, #-84]
.L1572:
	ldr	r2, .L1580+4
	ldr	r3, .L1580+8
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L1578
	mov	sp, r6
	nop
	ldr	r3, .L1580
	ldr	r2, [r3]
	ldr	r3, [fp, #-24]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L1579
	bl	__stack_chk_fail
.L1579:
	sub	sp, fp, #16
	@ sp needed
	pop	{r4, r5, r6, fp, pc}
.L1581:
	.align	2
.L1580:
	.word	.LC94
	.word	1413754136
	.word	1074340347
	.size	resp_mag, .-resp_mag
	.section	.rodata
	.align	2
.LC95:
	.ascii	"|----------------Passband Failure-------------|\000"
	.align	2
.LC96:
	.ascii	"|-------------Cutoff Frequency Failure--------|\000"
	.align	2
.LC97:
	.ascii	"|----------------Stopband Failure-------------|\000"
	.align	2
.LC98:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	verify_magnitude
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_magnitude, %function
verify_magnitude:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #80
	ldr	r3, .L1624
	ldr	r3, [r3]
	str	r3, [fp, #-24]
	mov	r3,#0
	mov	r3, sp
	mov	r7, r3
	mov	r3, #100
	str	r3, [fp, #-80]
	ldr	r0, [fp, #-80]
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L1624+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	ldr	r3, [fp, #-80]
	add	ip, r3, #1
	sub	r3, ip, #1
	str	r3, [fp, #-84]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-88]
	ldr	r3, .L1624+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-92]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-72]
	ldr	r3, .L1624+8
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-72]
	ldr	r0, .L1624+8
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1624+8
	ldr	ip, [r3, #800]
	sub	r3, ip, #1
	str	r3, [fp, #-68]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-64]
	ldr	r3, .L1624+8
	ldr	r3, [r3, #800]
	mov	r2, r3
	ldr	r1, [fp, #-72]
	ldr	r0, [fp, #-64]
	bl	fxp_to_double_array
	ldr	r3, .L1624+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-60]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #5
	orr	r3, r3, r0, lsr #27
	lsl	r2, r0, #5
	mov	r3, ip
	lsl	r3, r3, #2
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #3
	lsr	r3, r3, #2
	lsl	r3, r3, #2
	str	r3, [fp, #-56]
	ldr	r3, .L1624+8
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-56]
	ldr	r0, .L1624+12
	bl	fxp_double_to_fxp_array
	ldr	r3, .L1624+8
	ldr	ip, [r3, #1608]
	sub	r3, ip, #1
	str	r3, [fp, #-52]
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #6
	orr	r3, r3, r0, lsr #26
	lsl	r2, r0, #6
	mov	r3, ip
	lsl	r3, r3, #3
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	sub	sp, sp, r3
	add	r3, sp, #8
	add	r3, r3, #7
	lsr	r3, r3, #3
	lsl	r3, r3, #3
	str	r3, [fp, #-48]
	ldr	r3, .L1624+8
	ldr	r3, [r3, #1608]
	mov	r2, r3
	ldr	r1, [fp, #-56]
	ldr	r0, [fp, #-48]
	bl	fxp_to_double_array
	ldr	r3, .L1624+8
	ldr	r1, [r3, #1608]
	ldr	r3, .L1624+8
	ldr	r2, [r3, #800]
	ldr	r3, [fp, #-80]
	str	r3, [sp, #4]
	ldr	r3, [fp, #-88]
	str	r3, [sp]
	mov	r3, r2
	ldr	r2, .L1624+8
	ldr	r0, .L1624+12
	bl	resp_mag
	ldr	r3, .L1624+16
	ldr	r3, [r3, #24]
	cmp	r3, #1
	bne	.L1583
	mov	r3, #0
	str	r3, [fp, #-76]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	b	.L1584
.L1595:
	ldr	r3, .L1624+16
	ldr	r3, [r3, #12]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1620
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-76]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r3, .L1624+16
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r1, #1
	mov	r6, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L1587
	mov	r3, #0
	mov	r6, r3
.L1587:
	and	r3, r6, #255
	ldr	r1, .L1624+20
	mov	r0, r3
	bl	__DSVERIFIER_assert_msg
	b	.L1588
.L1620:
	ldr	r3, .L1624+16
	ldr	r3, [r3, #16]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1621
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-76]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r3, .L1624+16
	ldr	r3, [r3, #8]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r1, #1
	mov	r6, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L1591
	mov	r3, #0
	mov	r6, r3
.L1591:
	and	r3, r6, #255
	ldr	r1, .L1624+24
	mov	r0, r3
	bl	__DSVERIFIER_assert_msg
	b	.L1588
.L1621:
	ldr	r3, .L1624+16
	ldr	r3, [r3, #20]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1588
	mov	r2, #0
	ldr	r3, .L1624+4
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1588
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-76]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r3, .L1624+16
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r1, #1
	mov	r6, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L1594
	mov	r3, #0
	mov	r6, r3
.L1594:
	and	r3, r6, #255
	ldr	r1, .L1624+28
	mov	r0, r3
	bl	__DSVERIFIER_assert_msg
.L1588:
	ldr	r3, [fp, #-76]
	add	r3, r3, #1
	str	r3, [fp, #-76]
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
.L1584:
	mov	r2, #0
	ldr	r3, .L1624+4
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L1595
	b	.L1596
.L1583:
	ldr	r3, .L1624+16
	ldr	r3, [r3, #24]
	cmp	r3, #2
	bne	.L1597
	mov	r3, #0
	str	r3, [fp, #-76]
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	b	.L1598
.L1609:
	ldr	r3, .L1624+16
	ldr	r3, [r3, #20]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1622
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-76]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r3, .L1624+16
	ldr	r3, [r3, #4]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r1, #1
	mov	r6, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L1601
	mov	r3, #0
	mov	r6, r3
.L1601:
	and	r3, r6, #255
	ldr	r1, .L1624+28
	mov	r0, r3
	bl	__DSVERIFIER_assert_msg
	b	.L1602
.L1622:
	ldr	r3, .L1624+16
	ldr	r3, [r3, #16]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1623
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-76]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r3, .L1624+16
	ldr	r3, [r3, #8]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r1, #1
	mov	r6, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L1605
	mov	r3, #0
	mov	r6, r3
.L1605:
	and	r3, r6, #255
	ldr	r1, .L1624+24
	mov	r0, r3
	bl	__DSVERIFIER_assert_msg
	b	.L1602
.L1623:
	ldr	r3, .L1624+16
	ldr	r3, [r3, #12]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1602
	mov	r2, #0
	ldr	r3, .L1624+4
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1602
	ldr	r2, [fp, #-88]
	ldr	r3, [fp, #-76]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r4-r5}
	ldr	r3, .L1624+16
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	mov	r1, #1
	mov	r6, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	bne	.L1608
	mov	r3, #0
	mov	r6, r3
.L1608:
	and	r3, r6, #255
	ldr	r1, .L1624+20
	mov	r0, r3
	bl	__DSVERIFIER_assert_msg
.L1602:
	ldr	r3, [fp, #-76]
	add	r3, r3, #1
	str	r3, [fp, #-76]
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
.L1598:
	mov	r2, #0
	ldr	r3, .L1624+4
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	bne	.L1609
	b	.L1596
.L1597:
	mov	r0, #0
	bl	__DSVERIFIER_assert
.L1596:
	mov	r3, #0
	mov	sp, r7
	ldr	r2, .L1624
	ldr	r1, [r2]
	ldr	r2, [fp, #-24]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L1611
	bl	__stack_chk_fail
.L1611:
	mov	r0, r3
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
.L1625:
	.align	2
.L1624:
	.word	.LC98
	.word	1072693248
	.word	ds
	.word	ds+808
	.word	filter
	.word	.LC95
	.word	.LC96
	.word	.LC97
	.size	verify_magnitude, .-verify_magnitude
	.comm	plant_cbmc,3224,8
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	initialization
	bl	validation
	ldr	r3, .L1628
	mov	r2, #1
	str	r2, [r3]
	ldr	r0, .L1628+4
	bl	call_verification_task
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
.L1629:
	.align	2
.L1628:
	.word	rounding_mode
	.word	verify_overflow
	.size	main, .-main
	.section	.rodata
	.align	2
.LC99:
	.ascii	"\012\012*******************************************"
	.ascii	"*********************************\000"
	.align	2
.LC100:
	.ascii	"* set (ds and impl) parameters to check with DSVeri"
	.ascii	"fier *\000"
	.align	2
.LC101:
	.ascii	"***************************************************"
	.ascii	"*************************\000"
	.text
	.align	2
	.global	validation
	.syntax unified
	.arm
	.fpu softvfp
	.type	validation, %function
validation:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L1634
	ldr	r3, [r3, #800]
	cmp	r3, #0
	beq	.L1631
	ldr	r3, .L1634
	ldr	r3, [r3, #1608]
	cmp	r3, #0
	bne	.L1632
.L1631:
	ldr	r0, .L1634+4
	bl	puts
	ldr	r0, .L1634+8
	bl	puts
	ldr	r0, .L1634+12
	bl	puts
	mov	r0, #0
	bl	__DSVERIFIER_assert
.L1632:
	ldr	r3, .L1634+16
	mov	r2, #15
	str	r2, [r3]
	pop	{fp, pc}
.L1635:
	.align	2
.L1634:
	.word	ds
	.word	.LC99
	.word	.LC100
	.word	.LC101
	.word	X_SIZE_VALUE
	.size	validation, .-validation
	.align	2
	.global	call_verification_task
	.syntax unified
	.arm
	.fpu softvfp
	.type	call_verification_task, %function
call_verification_task:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #72
	str	r0, [fp, #-88]
	mov	r3, #0
	str	r3, [fp, #-76]
	mov	r3, #0
	strb	r3, [fp, #-77]
	mov	r3, #0
	str	r3, [fp, #-72]
	mov	r3, #0
	str	r3, [fp, #-72]
	b	.L1637
.L1651:
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	add	r3, r3, #300
	add	r3, r3, #3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1638
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	add	r3, r3, #300
	add	r3, r3, #3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L1683+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1679
	ldr	r6, [fp, #-44]
	ldr	r3, [fp, #-40]
	eor	r7, r3, #-2147483648
	b	.L1642
.L1679:
	sub	r7, fp, #44
	ldmia	r7, {r6-r7}
.L1642:
	str	r6, [fp, #-44]
	str	r7, [fp, #-40]
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1643
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1681
.L1643:
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1645
	ldrb	r3, [fp, #-77]
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L1645
	mov	r3, #1
	strb	r3, [fp, #-77]
.L1645:
	bl	nondet_double
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L1683
	ldr	r1, [fp, #-72]
	add	r1, r1, #101
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1647
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1647
	mov	r3, #1
	b	.L1650
.L1647:
	mov	r3, #0
.L1650:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	b	.L1638
.L1681:
	nop
.L1638:
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	str	r3, [fp, #-72]
.L1637:
	ldr	r3, .L1683
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-72]
	cmp	r2, r3
	blt	.L1651
	mov	r3, #0
	str	r3, [fp, #-72]
	b	.L1652
.L1666:
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	add	r3, r3, #203
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1653
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	add	r3, r3, #203
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L1683+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-68]
	str	r3, [fp, #-64]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1680
	ldr	r4, [fp, #-68]
	ldr	r3, [fp, #-64]
	eor	r5, r3, #-2147483648
	b	.L1657
.L1680:
	sub	r5, fp, #68
	ldmia	r5, {r4-r5}
.L1657:
	str	r4, [fp, #-68]
	str	r5, [fp, #-64]
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1658
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1682
.L1658:
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1660
	ldrb	r3, [fp, #-77]
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L1660
	mov	r3, #1
	strb	r3, [fp, #-77]
.L1660:
	bl	nondet_double
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L1683
	ldr	r1, [fp, #-72]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1662
	ldr	r2, .L1683
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1662
	mov	r3, #1
	b	.L1665
.L1662:
	mov	r3, #0
.L1665:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	b	.L1653
.L1682:
	nop
.L1653:
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	str	r3, [fp, #-72]
.L1652:
	ldr	r3, .L1683
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-72]
	cmp	r2, r3
	blt	.L1666
	ldr	r3, [fp, #-88]
	blx	r3
	nop
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
.L1684:
	.align	2
.L1683:
	.word	ds
	.word	1079574528
	.size	call_verification_task, .-call_verification_task
	.align	2
	.global	call_closedloop_verification_task
	.syntax unified
	.arm
	.fpu softvfp
	.type	call_closedloop_verification_task, %function
call_closedloop_verification_task:
	@ args = 0, pretend = 0, frame = 64
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, fp, lr}
	add	fp, sp, #20
	sub	sp, sp, #64
	str	r0, [fp, #-80]
	mov	r3, #0
	strb	r3, [fp, #-73]
	mov	r3, #0
	str	r3, [fp, #-72]
	mov	r3, #0
	str	r3, [fp, #-72]
	b	.L1686
.L1701:
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	add	r3, r3, #300
	add	r3, r3, #3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1730
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	add	r3, r3, #300
	add	r3, r3, #3
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L1736+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1731
	ldr	r6, [fp, #-44]
	ldr	r3, [fp, #-40]
	eor	r7, r3, #-2147483648
	b	.L1691
.L1731:
	sub	r7, fp, #44
	ldmia	r7, {r6-r7}
.L1691:
	str	r6, [fp, #-44]
	str	r7, [fp, #-40]
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	sub	r3, fp, #44
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1692
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1734
.L1692:
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1695
	ldrb	r3, [fp, #-73]
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L1695
	mov	r3, #1
	strb	r3, [fp, #-73]
.L1695:
	bl	nondet_double
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L1736+8
	ldr	r1, [fp, #-72]
	add	r1, r1, #101
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, .L1736+8
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1697
	ldr	r2, .L1736+8
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1697
	mov	r3, #1
	b	.L1700
.L1697:
	mov	r3, #0
.L1700:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	b	.L1694
.L1730:
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	add	r3, r3, #101
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r0, .L1736+8
	ldr	r1, [fp, #-72]
	add	r1, r1, #101
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	b	.L1694
.L1734:
	nop
.L1694:
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	str	r3, [fp, #-72]
.L1686:
	ldr	r3, .L1736
	ldr	r3, [r3, #1608]
	ldr	r2, [fp, #-72]
	cmp	r2, r3
	blt	.L1701
	mov	r3, #0
	str	r3, [fp, #-72]
	b	.L1702
.L1717:
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	add	r3, r3, #203
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	mov	r2, #0
	mov	r3, #0
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1732
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	add	r3, r3, #203
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L1736+4
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-68]
	str	r3, [fp, #-64]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L1733
	ldr	r4, [fp, #-68]
	ldr	r3, [fp, #-64]
	eor	r5, r3, #-2147483648
	b	.L1707
.L1733:
	sub	r5, fp, #68
	ldmia	r5, {r4-r5}
.L1707:
	str	r4, [fp, #-68]
	str	r5, [fp, #-64]
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-52]
	str	r3, [fp, #-48]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1708
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L1735
.L1708:
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #68
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	beq	.L1711
	ldrb	r3, [fp, #-73]
	eor	r3, r3, #1
	and	r3, r3, #255
	cmp	r3, #0
	beq	.L1711
	mov	r3, #1
	strb	r3, [fp, #-73]
.L1711:
	bl	nondet_double
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L1736+8
	ldr	r1, [fp, #-72]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	ldr	r2, .L1736+8
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L1713
	ldr	r2, .L1736+8
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L1713
	mov	r3, #1
	b	.L1716
.L1713:
	mov	r3, #0
.L1716:
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r0, r3
	bl	__DSVERIFIER_assume
	b	.L1710
.L1732:
	ldr	r2, .L1736
	ldr	r3, [fp, #-72]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	ldr	r0, .L1736+8
	ldr	r1, [fp, #-72]
	lsl	r1, r1, #3
	add	r1, r0, r1
	stm	r1, {r2-r3}
	b	.L1710
.L1735:
	nop
.L1710:
	ldr	r3, [fp, #-72]
	add	r3, r3, #1
	str	r3, [fp, #-72]
.L1702:
	ldr	r3, .L1736
	ldr	r3, [r3, #800]
	ldr	r2, [fp, #-72]
	cmp	r2, r3
	blt	.L1717
	ldr	r3, [fp, #-80]
	blx	r3
	nop
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
.L1737:
	.align	2
.L1736:
	.word	plant
	.word	1079574528
	.word	plant_cbmc
	.size	call_closedloop_verification_task, .-call_closedloop_verification_task
	.global	ds
	.data
	.align	3
	.type	ds, %object
	.size	ds, 3224
ds:
	.word	0
	.word	1072693248
	.word	0
	.word	1072693248
	.space	784
	.word	2
	.space	4
	.word	1546188227
	.word	1072546447
	.word	1030792151
	.word	-1075063030
	.space	784
	.word	2
	.space	4
	.word	1202590843
	.word	1066695393
	.space	1600
	.global	impl
	.align	3
	.type	impl, %object
	.size	impl, 56
impl:
	.word	10
	.word	6
	.word	0
	.word	1072693248
	.word	0
	.word	-1074790400
	.space	32
	.section	.rodata
	.align	2
	.type	__PRETTY_FUNCTION__.5216, %object
	.size	__PRETTY_FUNCTION__.5216, 20
__PRETTY_FUNCTION__.5216:
	.ascii	"__DSVERIFIER_assert\000"
	.align	2
	.type	__PRETTY_FUNCTION__.5221, %object
	.size	__PRETTY_FUNCTION__.5221, 24
__PRETTY_FUNCTION__.5221:
	.ascii	"__DSVERIFIER_assert_msg\000"
	.align	2
	.type	__PRETTY_FUNCTION__.5564, %object
	.size	__PRETTY_FUNCTION__.5564, 26
__PRETTY_FUNCTION__.5564:
	.ascii	"double_check_oscillations\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6126, %object
	.size	__PRETTY_FUNCTION__.6126, 12
__PRETTY_FUNCTION__.6126:
	.ascii	"snrVariance\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6139, %object
	.size	__PRETTY_FUNCTION__.6139, 9
__PRETTY_FUNCTION__.6139:
	.ascii	"snrPower\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6149, %object
	.size	__PRETTY_FUNCTION__.6149, 9
__PRETTY_FUNCTION__.6149:
	.ascii	"snrPoint\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6181, %object
	.size	__PRETTY_FUNCTION__.6181, 13
__PRETTY_FUNCTION__.6181:
	.ascii	"iirIIOutTime\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6199, %object
	.size	__PRETTY_FUNCTION__.6199, 14
__PRETTY_FUNCTION__.6199:
	.ascii	"iirIItOutTime\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6217, %object
	.size	__PRETTY_FUNCTION__.6217, 21
__PRETTY_FUNCTION__.6217:
	.ascii	"iirIItOutTime_double\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6554, %object
	.size	__PRETTY_FUNCTION__.6554, 28
__PRETTY_FUNCTION__.6554:
	.ascii	"double_direct_form_1_MSP430\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6576, %object
	.size	__PRETTY_FUNCTION__.6576, 28
__PRETTY_FUNCTION__.6576:
	.ascii	"double_direct_form_2_MSP430\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6594, %object
	.size	__PRETTY_FUNCTION__.6594, 39
__PRETTY_FUNCTION__.6594:
	.ascii	"double_transposed_direct_form_2_MSP430\000"
	.align	2
	.type	__PRETTY_FUNCTION__.6844, %object
	.size	__PRETTY_FUNCTION__.6844, 15
__PRETTY_FUNCTION__.6844:
	.ascii	"initialization\000"
	.align	2
	.type	__PRETTY_FUNCTION__.7103, %object
	.size	__PRETTY_FUNCTION__.7103, 31
__PRETTY_FUNCTION__.7103:
	.ascii	"verify_limit_cycle_state_space\000"
	.align	2
	.type	__PRETTY_FUNCTION__.7203, %object
	.size	__PRETTY_FUNCTION__.7203, 30
__PRETTY_FUNCTION__.7203:
	.ascii	"verify_zero_input_limit_cycle\000"
	.align	2
	.type	__PRETTY_FUNCTION__.7273, %object
	.size	__PRETTY_FUNCTION__.7273, 22
__PRETTY_FUNCTION__.7273:
	.ascii	"verify_generic_timing\000"
	.align	2
	.type	__PRETTY_FUNCTION__.7321, %object
	.size	__PRETTY_FUNCTION__.7321, 17
__PRETTY_FUNCTION__.7321:
	.ascii	"verify_stability\000"
	.align	2
	.type	__PRETTY_FUNCTION__.7688, %object
	.size	__PRETTY_FUNCTION__.7688, 25
__PRETTY_FUNCTION__.7688:
	.ascii	"verify_error_state_space\000"
	.align	2
	.type	__PRETTY_FUNCTION__.7770, %object
	.size	__PRETTY_FUNCTION__.7770, 26
__PRETTY_FUNCTION__.7770:
	.ascii	"verify_safety_state_space\000"
	.align	2
	.type	__PRETTY_FUNCTION__.7825, %object
	.size	__PRETTY_FUNCTION__.7825, 23
__PRETTY_FUNCTION__.7825:
	.ascii	"verify_controllability\000"
	.align	2
	.type	__PRETTY_FUNCTION__.7865, %object
	.size	__PRETTY_FUNCTION__.7865, 30
__PRETTY_FUNCTION__.7865:
	.ascii	"verify_controllability_double\000"
	.align	2
	.type	__PRETTY_FUNCTION__.7926, %object
	.size	__PRETTY_FUNCTION__.7926, 21
__PRETTY_FUNCTION__.7926:
	.ascii	"verify_observability\000"
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
