	.file	"770805.c"
	.intel_syntax noprefix
	.text
	.globl	get_chunk_range
	.type	get_chunk_range, @function
get_chunk_range:
.LFB6:
	.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	QWORD PTR -24[rbp], rdx
	mov	QWORD PTR -32[rbp], rcx
	cmp	DWORD PTR -12[rbp], 0
	jne	.L2
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], 0
	jmp	.L3
.L2:
	mov	eax, DWORD PTR -12[rbp]
	lea	edx, -1[rax]
	mov	rax, QWORD PTR -8[rbp]
	movsx	rdx, edx
	mov	eax, DWORD PTR [rax+rdx*4]
	mov	eax, eax
	sal	rax, 23
	shr	rax, 31
	mov	edx, eax
	mov	rax, QWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
.L3:
	mov	rax, QWORD PTR -8[rbp]
	mov	edx, DWORD PTR -12[rbp]
	movsx	rdx, edx
	mov	eax, DWORD PTR [rax+rdx*4]
	mov	eax, eax
	sal	rax, 23
	shr	rax, 31
	mov	edx, eax
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], edx
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	get_chunk_range, .-get_chunk_range
	.globl	trivial_pattern
	.section	.rodata
	.align 32
	.type	trivial_pattern, @object
	.size	trivial_pattern, 512
trivial_pattern:
	.long	33554432
	.long	67108864
	.long	100663296
	.long	134217728
	.long	167772160
	.long	201326592
	.long	234881024
	.long	268435456
	.long	301989888
	.long	335544320
	.long	369098752
	.long	402653184
	.long	436207616
	.long	469762048
	.long	503316480
	.long	536870912
	.long	570425344
	.long	603979776
	.long	637534208
	.long	671088640
	.long	704643072
	.long	738197504
	.long	771751936
	.long	805306368
	.long	838860800
	.long	872415232
	.long	905969664
	.long	939524096
	.long	973078528
	.long	1006632960
	.long	1040187392
	.long	1073741824
	.long	1107296256
	.long	1140850688
	.long	1174405120
	.long	1207959552
	.long	1241513984
	.long	1275068416
	.long	1308622848
	.long	1342177280
	.long	1375731712
	.long	1409286144
	.long	1442840576
	.long	1476395008
	.long	1509949440
	.long	1543503872
	.long	1577058304
	.long	1610612736
	.long	1644167168
	.long	1677721600
	.long	1711276032
	.long	1744830464
	.long	1778384896
	.long	1811939328
	.long	1845493760
	.long	1879048192
	.long	1912602624
	.long	1946157056
	.long	1979711488
	.long	2013265920
	.long	2046820352
	.long	2080374784
	.long	2113929216
	.long	-2147483648
	.long	0
	.long	1
	.long	2
	.long	3
	.long	4
	.long	5
	.long	6
	.long	7
	.long	8
	.long	9
	.long	10
	.long	11
	.long	12
	.long	13
	.long	14
	.long	15
	.long	16
	.long	17
	.long	18
	.long	19
	.long	20
	.long	21
	.long	22
	.long	23
	.long	24
	.long	25
	.long	26
	.long	27
	.long	28
	.long	29
	.long	30
	.long	31
	.long	32
	.long	33
	.long	34
	.long	35
	.long	36
	.long	37
	.long	38
	.long	39
	.long	40
	.long	41
	.long	42
	.long	43
	.long	44
	.long	45
	.long	46
	.long	47
	.long	48
	.long	49
	.long	50
	.long	51
	.long	52
	.long	53
	.long	54
	.long	55
	.long	56
	.long	57
	.long	58
	.long	59
	.long	60
	.long	61
	.long	62
	.long	63
	.globl	pat0
	.align 32
	.type	pat0, @object
	.size	pat0, 512
pat0:
	.long	32161792
	.long	143278080
	.long	184541184
	.long	215707648
	.long	221073408
	.long	236384256
	.long	239702016
	.long	301404160
	.long	306368512
	.long	314601472
	.long	339460096
	.long	341876736
	.long	366833664
	.long	385933312
	.long	468180992
	.long	504680448
	.long	510312448
	.long	554266624
	.long	615989248
	.long	655777792
	.long	661032960
	.long	810782720
	.long	840478720
	.long	928583680
	.long	934674432
	.long	964788224
	.long	969965568
	.long	1016127488
	.long	1045753856
	.long	1069125632
	.long	1120460800
	.long	1134960640
	.long	1140129792
	.long	1275891712
	.long	1279401984
	.long	1282633728
	.long	1296162816
	.long	1299415040
	.long	1302794240
	.long	1330544640
	.long	1351495680
	.long	1362714624
	.long	1370181632
	.long	1386225664
	.long	1411612672
	.long	1423351808
	.long	1426231296
	.long	1434759168
	.long	1547878400
	.long	1548382208
	.long	1571573760
	.long	1608830976
	.long	1677221888
	.long	1722613760
	.long	1739837440
	.long	1775128576
	.long	1813483520
	.long	1853480960
	.long	1870917632
	.long	1897287680
	.long	1925025792
	.long	2059898880
	.long	2110341120
	.long	-2147483648
	.long	57
	.long	16
	.long	28
	.long	25
	.long	10
	.long	59
	.long	52
	.long	46
	.long	30
	.long	6
	.long	40
	.long	36
	.long	39
	.long	9
	.long	21
	.long	51
	.long	33
	.long	45
	.long	44
	.long	19
	.long	2
	.long	50
	.long	55
	.long	5
	.long	58
	.long	13
	.long	23
	.long	0
	.long	12
	.long	53
	.long	42
	.long	32
	.long	31
	.long	48
	.long	35
	.long	61
	.long	49
	.long	54
	.long	18
	.long	24
	.long	8
	.long	41
	.long	62
	.long	4
	.long	47
	.long	17
	.long	1
	.long	3
	.long	34
	.long	14
	.long	63
	.long	22
	.long	15
	.long	26
	.long	38
	.long	56
	.long	27
	.long	60
	.long	29
	.long	11
	.long	7
	.long	43
	.long	20
	.long	37
	.globl	pat1
	.align 32
	.type	pat1, @object
	.size	pat1, 512
pat1:
	.long	2838528
	.long	23965696
	.long	99307520
	.long	154796032
	.long	175943680
	.long	178163712
	.long	219430912
	.long	243015680
	.long	246927360
	.long	277975040
	.long	281792512
	.long	301486080
	.long	389414912
	.long	392208384
	.long	418033664
	.long	451325952
	.long	476012544
	.long	502497280
	.long	566149120
	.long	597495808
	.long	649596928
	.long	659009536
	.long	664809472
	.long	725401600
	.long	750751744
	.long	784396288
	.long	816218112
	.long	817799168
	.long	818298880
	.long	823848960
	.long	897724416
	.long	902967296
	.long	992010240
	.long	1079869440
	.long	1095532544
	.long	1135153152
	.long	1141149696
	.long	1253367808
	.long	1256329216
	.long	1294544896
	.long	1360941056
	.long	1366278144
	.long	1389850624
	.long	1461882880
	.long	1571123200
	.long	1572757504
	.long	1618010112
	.long	1627127808
	.long	1689403392
	.long	1734565888
	.long	1734705152
	.long	1795424256
	.long	1797844992
	.long	1851068416
	.long	1887174656
	.long	1907736576
	.long	1913004032
	.long	1982468096
	.long	2022309888
	.long	2048790528
	.long	2064031744
	.long	2114240512
	.long	2135748608
	.long	-2147483648
	.long	45
	.long	8
	.long	55
	.long	9
	.long	21
	.long	54
	.long	41
	.long	7
	.long	6
	.long	22
	.long	31
	.long	47
	.long	23
	.long	11
	.long	48
	.long	53
	.long	0
	.long	61
	.long	63
	.long	50
	.long	17
	.long	27
	.long	12
	.long	19
	.long	10
	.long	40
	.long	14
	.long	51
	.long	39
	.long	59
	.long	2
	.long	43
	.long	18
	.long	42
	.long	52
	.long	28
	.long	16
	.long	44
	.long	3
	.long	5
	.long	15
	.long	35
	.long	58
	.long	33
	.long	57
	.long	49
	.long	34
	.long	30
	.long	46
	.long	4
	.long	37
	.long	60
	.long	32
	.long	36
	.long	25
	.long	56
	.long	24
	.long	13
	.long	20
	.long	38
	.long	29
	.long	26
	.long	62
	.long	1
	.globl	pat2
	.align 32
	.type	pat2, @object
	.size	pat2, 512
pat2:
	.long	152227840
	.long	241238016
	.long	259346432
	.long	292417536
	.long	311316480
	.long	466948096
	.long	619290624
	.long	660877312
	.long	684670976
	.long	690786304
	.long	747663360
	.long	758681600
	.long	764678144
	.long	783544320
	.long	820592640
	.long	829652992
	.long	860073984
	.long	875356160
	.long	886120448
	.long	892784640
	.long	903979008
	.long	904187904
	.long	905793536
	.long	910340096
	.long	958713856
	.long	959074304
	.long	1045630976
	.long	1057939456
	.long	1071611904
	.long	1096364032
	.long	1103626240
	.long	1133875200
	.long	1136394240
	.long	1176272896
	.long	1217536000
	.long	1230082048
	.long	1332715520
	.long	1344749568
	.long	1351278592
	.long	1399771136
	.long	1410678784
	.long	1502167040
	.long	1516658688
	.long	1527406592
	.long	1537208320
	.long	1544589312
	.long	1569521664
	.long	1574719488
	.long	1607225344
	.long	1664507904
	.long	1672331264
	.long	1683709952
	.long	1729015808
	.long	1796935680
	.long	1821990912
	.long	1859297280
	.long	1860497408
	.long	1912393728
	.long	1934241792
	.long	1992159232
	.long	2008281088
	.long	2087034880
	.long	2099249152
	.long	-2147483648
	.long	31
	.long	35
	.long	36
	.long	52
	.long	27
	.long	56
	.long	40
	.long	13
	.long	51
	.long	49
	.long	43
	.long	37
	.long	62
	.long	42
	.long	24
	.long	29
	.long	48
	.long	25
	.long	7
	.long	61
	.long	22
	.long	57
	.long	11
	.long	32
	.long	2
	.long	54
	.long	41
	.long	6
	.long	55
	.long	15
	.long	20
	.long	26
	.long	63
	.long	44
	.long	12
	.long	4
	.long	19
	.long	58
	.long	60
	.long	59
	.long	47
	.long	23
	.long	30
	.long	50
	.long	53
	.long	34
	.long	9
	.long	38
	.long	45
	.long	8
	.long	28
	.long	3
	.long	16
	.long	33
	.long	5
	.long	21
	.long	1
	.long	10
	.long	46
	.long	18
	.long	0
	.long	14
	.long	39
	.long	17
	.globl	pat3
	.align 32
	.type	pat3, @object
	.size	pat3, 512
pat3:
	.long	5582848
	.long	27123712
	.long	111280128
	.long	145043456
	.long	149917696
	.long	204623872
	.long	288546816
	.long	329228288
	.long	338079744
	.long	353366016
	.long	465309696
	.long	512016384
	.long	524541952
	.long	527634432
	.long	569147392
	.long	589250560
	.long	591659008
	.long	591814656
	.long	638279680
	.long	678064128
	.long	693207040
	.long	702763008
	.long	802910208
	.long	814338048
	.long	908984320
	.long	1008701440
	.long	1039323136
	.long	1070489600
	.long	1076834304
	.long	1092087808
	.long	1105223680
	.long	1131737088
	.long	1159614464
	.long	1168478208
	.long	1230417920
	.long	1231089664
	.long	1251164160
	.long	1271328768
	.long	1296441344
	.long	1324318720
	.long	1331728384
	.long	1356599296
	.long	1359093760
	.long	1413046272
	.long	1447145472
	.long	1468993536
	.long	1486680064
	.long	1493774336
	.long	1571205120
	.long	1606352896
	.long	1616519168
	.long	1698856960
	.long	1699938304
	.long	1728421888
	.long	1840664576
	.long	1909387264
	.long	1918509056
	.long	1941917696
	.long	1974251520
	.long	1980125184
	.long	1981071360
	.long	2007674880
	.long	2029453312
	.long	-2147483648
	.long	15
	.long	30
	.long	31
	.long	16
	.long	49
	.long	13
	.long	55
	.long	59
	.long	4
	.long	24
	.long	26
	.long	44
	.long	17
	.long	0
	.long	18
	.long	54
	.long	10
	.long	3
	.long	46
	.long	34
	.long	29
	.long	22
	.long	45
	.long	5
	.long	38
	.long	32
	.long	39
	.long	50
	.long	48
	.long	53
	.long	12
	.long	25
	.long	35
	.long	56
	.long	51
	.long	52
	.long	1
	.long	33
	.long	43
	.long	63
	.long	47
	.long	37
	.long	23
	.long	20
	.long	60
	.long	14
	.long	11
	.long	21
	.long	8
	.long	57
	.long	27
	.long	41
	.long	6
	.long	58
	.long	62
	.long	2
	.long	19
	.long	61
	.long	28
	.long	36
	.long	40
	.long	7
	.long	9
	.long	42
	.globl	pat4
	.align 32
	.type	pat4, @object
	.size	pat4, 512
pat4:
	.long	4345856
	.long	9338880
	.long	79233024
	.long	142852096
	.long	157868032
	.long	195870720
	.long	283480064
	.long	307892224
	.long	317718528
	.long	350732288
	.long	359522304
	.long	422187008
	.long	439062528
	.long	457834496
	.long	468303872
	.long	490459136
	.long	606347264
	.long	622243840
	.long	730386432
	.long	731291648
	.long	734867456
	.long	744132608
	.long	765935616
	.long	767168512
	.long	815263744
	.long	858714112
	.long	877809664
	.long	907620352
	.long	925220864
	.long	937844736
	.long	1026641920
	.long	1048653824
	.long	1078648832
	.long	1086750720
	.long	1123627008
	.long	1152466944
	.long	1152471040
	.long	1195057152
	.long	1225031680
	.long	1283014656
	.long	1354104832
	.long	1387515904
	.long	1489375232
	.long	1534935040
	.long	1558646784
	.long	1562497024
	.long	1566826496
	.long	1577119744
	.long	1625862144
	.long	1714950144
	.long	1724317696
	.long	1749221376
	.long	1887182848
	.long	1905758208
	.long	1919422464
	.long	1946251264
	.long	1998704640
	.long	2048647168
	.long	2049757184
	.long	2065846272
	.long	2083590144
	.long	2114166784
	.long	2118131712
	.long	-2147483648
	.long	52
	.long	62
	.long	28
	.long	47
	.long	51
	.long	37
	.long	31
	.long	36
	.long	4
	.long	58
	.long	26
	.long	29
	.long	16
	.long	59
	.long	57
	.long	33
	.long	22
	.long	27
	.long	49
	.long	44
	.long	19
	.long	56
	.long	34
	.long	23
	.long	5
	.long	14
	.long	45
	.long	48
	.long	21
	.long	25
	.long	18
	.long	12
	.long	43
	.long	53
	.long	60
	.long	17
	.long	46
	.long	15
	.long	63
	.long	30
	.long	42
	.long	38
	.long	41
	.long	8
	.long	39
	.long	20
	.long	1
	.long	10
	.long	54
	.long	40
	.long	32
	.long	24
	.long	9
	.long	2
	.long	35
	.long	3
	.long	7
	.long	0
	.long	61
	.long	11
	.long	13
	.long	55
	.long	6
	.long	50
	.globl	pat5
	.align 32
	.type	pat5, @object
	.size	pat5, 512
pat5:
	.long	11431936
	.long	70705152
	.long	136187904
	.long	187129856
	.long	260829184
	.long	263348224
	.long	266854400
	.long	326815744
	.long	347660288
	.long	360357888
	.long	427925504
	.long	439545856
	.long	466214912
	.long	502222848
	.long	512684032
	.long	543748096
	.long	577314816
	.long	581353472
	.long	626782208
	.long	647458816
	.long	660705280
	.long	695713792
	.long	752926720
	.long	773767168
	.long	774291456
	.long	835616768
	.long	887537664
	.long	912052224
	.long	937979904
	.long	945696768
	.long	981344256
	.long	983330816
	.long	1096380416
	.long	1122541568
	.long	1161609216
	.long	1162604544
	.long	1260699648
	.long	1269121024
	.long	1311797248
	.long	1325764608
	.long	1440063488
	.long	1445425152
	.long	1454964736
	.long	1484967936
	.long	1512853504
	.long	1530302464
	.long	1564745728
	.long	1567035392
	.long	1608318976
	.long	1624113152
	.long	1668362240
	.long	1678966784
	.long	1704407040
	.long	1739427840
	.long	1752580096
	.long	1757093888
	.long	1762463744
	.long	1781301248
	.long	1944711168
	.long	1961316352
	.long	2005274624
	.long	2012106752
	.long	2094903296
	.long	-2147483648
	.long	42
	.long	25
	.long	15
	.long	58
	.long	32
	.long	61
	.long	30
	.long	56
	.long	48
	.long	62
	.long	38
	.long	50
	.long	7
	.long	45
	.long	16
	.long	29
	.long	12
	.long	4
	.long	41
	.long	3
	.long	27
	.long	18
	.long	57
	.long	10
	.long	51
	.long	17
	.long	21
	.long	14
	.long	35
	.long	19
	.long	44
	.long	47
	.long	49
	.long	26
	.long	59
	.long	63
	.long	28
	.long	55
	.long	20
	.long	13
	.long	5
	.long	6
	.long	37
	.long	54
	.long	40
	.long	22
	.long	23
	.long	46
	.long	11
	.long	36
	.long	34
	.long	31
	.long	2
	.long	60
	.long	9
	.long	52
	.long	24
	.long	1
	.long	53
	.long	0
	.long	39
	.long	43
	.long	8
	.long	33
	.globl	pat6
	.align 32
	.type	pat6, @object
	.size	pat6, 512
pat6:
	.long	11345920
	.long	35844096
	.long	105594880
	.long	113664000
	.long	116609024
	.long	166002688
	.long	242499584
	.long	252874752
	.long	270249984
	.long	297762816
	.long	347639808
	.long	378650624
	.long	396414976
	.long	404201472
	.long	429367296
	.long	494100480
	.long	498282496
	.long	534609920
	.long	568680448
	.long	577159168
	.long	579293184
	.long	582500352
	.long	588173312
	.long	597446656
	.long	618766336
	.long	660557824
	.long	688087040
	.long	704024576
	.long	777224192
	.long	788307968
	.long	789299200
	.long	790360064
	.long	811380736
	.long	835612672
	.long	878460928
	.long	903147520
	.long	921001984
	.long	988405760
	.long	1019375616
	.long	1074884608
	.long	1117384704
	.long	1129066496
	.long	1144864768
	.long	1163055104
	.long	1250590720
	.long	1289658368
	.long	1371361280
	.long	1477197824
	.long	1480069120
	.long	1507590144
	.long	1537732608
	.long	1569239040
	.long	1577861120
	.long	1592094720
	.long	1643376640
	.long	1671733248
	.long	1755881472
	.long	1760317440
	.long	1765257216
	.long	1913380864
	.long	1926189056
	.long	1962704896
	.long	1984315392
	.long	-2147483648
	.long	31
	.long	46
	.long	36
	.long	22
	.long	63
	.long	12
	.long	51
	.long	60
	.long	13
	.long	44
	.long	41
	.long	6
	.long	11
	.long	17
	.long	42
	.long	24
	.long	16
	.long	61
	.long	20
	.long	26
	.long	35
	.long	21
	.long	29
	.long	55
	.long	50
	.long	45
	.long	62
	.long	19
	.long	54
	.long	9
	.long	30
	.long	34
	.long	53
	.long	52
	.long	10
	.long	39
	.long	0
	.long	49
	.long	48
	.long	38
	.long	40
	.long	28
	.long	23
	.long	56
	.long	2
	.long	5
	.long	4
	.long	59
	.long	14
	.long	57
	.long	3
	.long	25
	.long	43
	.long	32
	.long	27
	.long	47
	.long	8
	.long	7
	.long	37
	.long	33
	.long	1
	.long	18
	.long	58
	.long	15
	.globl	pat7
	.align 32
	.type	pat7, @object
	.size	pat7, 512
pat7:
	.long	14168064
	.long	22638592
	.long	38121472
	.long	111628288
	.long	150839296
	.long	157343744
	.long	221315072
	.long	242012160
	.long	336175104
	.long	354553856
	.long	369463296
	.long	456802304
	.long	485400576
	.long	517054464
	.long	519106560
	.long	561131520
	.long	569360384
	.long	609828864
	.long	651685888
	.long	683995136
	.long	799576064
	.long	810483712
	.long	819703808
	.long	819867648
	.long	862310400
	.long	920371200
	.long	986390528
	.long	1042878464
	.long	1065197568
	.long	1094000640
	.long	1101066240
	.long	1130135552
	.long	1148559360
	.long	1196646400
	.long	1198678016
	.long	1250029568
	.long	1273290752
	.long	1274040320
	.long	1276489728
	.long	1364934656
	.long	1391415296
	.long	1418510336
	.long	1452449792
	.long	1508843520
	.long	1536671744
	.long	1548681216
	.long	1562087424
	.long	1636749312
	.long	1639759872
	.long	1642098688
	.long	1671049216
	.long	1697652736
	.long	1745096704
	.long	1810194432
	.long	1914318848
	.long	1925812224
	.long	1946914816
	.long	1971769344
	.long	1978441728
	.long	1983930368
	.long	2070454272
	.long	2110939136
	.long	2127908864
	.long	-2147483648
	.long	44
	.long	57
	.long	22
	.long	35
	.long	63
	.long	11
	.long	15
	.long	49
	.long	61
	.long	40
	.long	29
	.long	20
	.long	19
	.long	42
	.long	32
	.long	12
	.long	41
	.long	6
	.long	46
	.long	60
	.long	52
	.long	5
	.long	36
	.long	10
	.long	2
	.long	8
	.long	3
	.long	33
	.long	54
	.long	39
	.long	58
	.long	48
	.long	62
	.long	7
	.long	51
	.long	34
	.long	0
	.long	1
	.long	18
	.long	9
	.long	55
	.long	31
	.long	23
	.long	38
	.long	25
	.long	21
	.long	17
	.long	24
	.long	13
	.long	50
	.long	16
	.long	14
	.long	43
	.long	53
	.long	45
	.long	28
	.long	59
	.long	37
	.long	26
	.long	30
	.long	47
	.long	27
	.long	56
	.long	4
	.globl	pat8
	.align 32
	.type	pat8, @object
	.size	pat8, 512
pat8:
	.long	1802240
	.long	41857024
	.long	94687232
	.long	116178944
	.long	189980672
	.long	191946752
	.long	208515072
	.long	226742272
	.long	248844288
	.long	331714560
	.long	335474688
	.long	338563072
	.long	422379520
	.long	447098880
	.long	505610240
	.long	524697600
	.long	551436288
	.long	573878272
	.long	625315840
	.long	654409728
	.long	673591296
	.long	701263872
	.long	841117696
	.long	851849216
	.long	883884032
	.long	937586688
	.long	989630464
	.long	1008099328
	.long	1039269888
	.long	1079758848
	.long	1093087232
	.long	1170444288
	.long	1193009152
	.long	1197006848
	.long	1262469120
	.long	1282088960
	.long	1283518464
	.long	1288527872
	.long	1302200320
	.long	1309143040
	.long	1324195840
	.long	1411047424
	.long	1487564800
	.long	1512857600
	.long	1516404736
	.long	1522089984
	.long	1541259264
	.long	1562198016
	.long	1583624192
	.long	1601368064
	.long	1685524480
	.long	1740455936
	.long	1781055488
	.long	1821863936
	.long	1824841728
	.long	1896628224
	.long	1958240256
	.long	1976528896
	.long	2010427392
	.long	2020663296
	.long	2085076992
	.long	2125799424
	.long	2143199232
	.long	-2147483648
	.long	7
	.long	29
	.long	62
	.long	8
	.long	54
	.long	38
	.long	35
	.long	45
	.long	60
	.long	55
	.long	1
	.long	40
	.long	4
	.long	19
	.long	50
	.long	63
	.long	48
	.long	51
	.long	13
	.long	27
	.long	33
	.long	39
	.long	52
	.long	46
	.long	10
	.long	9
	.long	56
	.long	2
	.long	42
	.long	43
	.long	47
	.long	44
	.long	17
	.long	5
	.long	25
	.long	6
	.long	57
	.long	23
	.long	15
	.long	58
	.long	59
	.long	22
	.long	14
	.long	26
	.long	32
	.long	61
	.long	30
	.long	0
	.long	11
	.long	12
	.long	36
	.long	24
	.long	53
	.long	49
	.long	3
	.long	20
	.long	31
	.long	28
	.long	34
	.long	18
	.long	41
	.long	21
	.long	16
	.long	37
	.globl	pat9
	.align 32
	.type	pat9, @object
	.size	pat9, 512
pat9:
	.long	95784960
	.long	174944256
	.long	195899392
	.long	234426368
	.long	291164160
	.long	335405056
	.long	392265728
	.long	462327808
	.long	505114624
	.long	513265664
	.long	561213440
	.long	564518912
	.long	605290496
	.long	626585600
	.long	642228224
	.long	673542144
	.long	677339136
	.long	750231552
	.long	784011264
	.long	816742400
	.long	827600896
	.long	828157952
	.long	828465152
	.long	861642752
	.long	871194624
	.long	902770688
	.long	1096986624
	.long	1141485568
	.long	1177133056
	.long	1265913856
	.long	1275830272
	.long	1287409664
	.long	1306095616
	.long	1328852992
	.long	1331916800
	.long	1402822656
	.long	1408487424
	.long	1446522880
	.long	1447211008
	.long	1517416448
	.long	1526702080
	.long	1531469824
	.long	1536094208
	.long	1624801280
	.long	1633849344
	.long	1650249728
	.long	1664245760
	.long	1731584000
	.long	1731694592
	.long	1780916224
	.long	1781010432
	.long	1805217792
	.long	1817235456
	.long	1824964608
	.long	1867079680
	.long	1903874048
	.long	1932443648
	.long	1951252480
	.long	1998487552
	.long	2010054656
	.long	2043334656
	.long	2075267072
	.long	2122006528
	.long	-2147483648
	.long	35
	.long	9
	.long	46
	.long	6
	.long	29
	.long	2
	.long	3
	.long	54
	.long	55
	.long	57
	.long	41
	.long	16
	.long	44
	.long	5
	.long	0
	.long	59
	.long	10
	.long	61
	.long	22
	.long	42
	.long	47
	.long	12
	.long	14
	.long	50
	.long	39
	.long	34
	.long	21
	.long	32
	.long	25
	.long	15
	.long	26
	.long	8
	.long	38
	.long	60
	.long	28
	.long	53
	.long	62
	.long	49
	.long	58
	.long	43
	.long	36
	.long	37
	.long	52
	.long	7
	.long	19
	.long	63
	.long	17
	.long	11
	.long	45
	.long	33
	.long	23
	.long	27
	.long	24
	.long	18
	.long	48
	.long	56
	.long	31
	.long	13
	.long	51
	.long	30
	.long	4
	.long	20
	.long	40
	.long	1
	.globl	pat10
	.align 32
	.type	pat10, @object
	.size	pat10, 512
pat10:
	.long	10952704
	.long	25206784
	.long	104882176
	.long	107868160
	.long	138129408
	.long	177664000
	.long	219754496
	.long	330936320
	.long	333111296
	.long	370184192
	.long	408145920
	.long	411594752
	.long	435200000
	.long	571805696
	.long	580624384
	.long	649428992
	.long	716128256
	.long	737476608
	.long	832757760
	.long	836034560
	.long	840523776
	.long	890478592
	.long	916639744
	.long	927379456
	.long	949669888
	.long	970092544
	.long	1034760192
	.long	1038438400
	.long	1051308032
	.long	1052794880
	.long	1066536960
	.long	1127034880
	.long	1136574464
	.long	1138597888
	.long	1202892800
	.long	1216798720
	.long	1227415552
	.long	1236082688
	.long	1292759040
	.long	1329647616
	.long	1351979008
	.long	1425686528
	.long	1443434496
	.long	1451806720
	.long	1534951424
	.long	1601163264
	.long	1612595200
	.long	1693097984
	.long	1733484544
	.long	1744826368
	.long	1779974144
	.long	1792516096
	.long	1792786432
	.long	1816346624
	.long	1866797056
	.long	1878736896
	.long	1887363072
	.long	1897271296
	.long	1900457984
	.long	1977348096
	.long	1998950400
	.long	2060271616
	.long	2063011840
	.long	-2147483648
	.long	61
	.long	38
	.long	5
	.long	23
	.long	62
	.long	11
	.long	53
	.long	9
	.long	17
	.long	45
	.long	30
	.long	29
	.long	41
	.long	60
	.long	39
	.long	21
	.long	40
	.long	19
	.long	44
	.long	33
	.long	42
	.long	50
	.long	56
	.long	28
	.long	32
	.long	46
	.long	43
	.long	20
	.long	16
	.long	3
	.long	54
	.long	8
	.long	4
	.long	26
	.long	15
	.long	34
	.long	47
	.long	12
	.long	6
	.long	27
	.long	48
	.long	0
	.long	1
	.long	2
	.long	57
	.long	59
	.long	7
	.long	58
	.long	49
	.long	35
	.long	24
	.long	37
	.long	52
	.long	63
	.long	10
	.long	55
	.long	36
	.long	13
	.long	14
	.long	25
	.long	18
	.long	22
	.long	31
	.long	51
	.globl	pat11
	.align 32
	.type	pat11, @object
	.size	pat11, 512
pat11:
	.long	10051584
	.long	11530240
	.long	26845184
	.long	74395648
	.long	122421248
	.long	123260928
	.long	214994944
	.long	239648768
	.long	244178944
	.long	252776448
	.long	260550656
	.long	280084480
	.long	366358528
	.long	397545472
	.long	405614592
	.long	420900864
	.long	428662784
	.long	466907136
	.long	503255040
	.long	517734400
	.long	529072128
	.long	545652736
	.long	589328384
	.long	700272640
	.long	717287424
	.long	775507968
	.long	779120640
	.long	849207296
	.long	882372608
	.long	940044288
	.long	950616064
	.long	1084329984
	.long	1097392128
	.long	1120534528
	.long	1121882112
	.long	1159282688
	.long	1179590656
	.long	1191243776
	.long	1205579776
	.long	1303277568
	.long	1348861952
	.long	1398439936
	.long	1430695936
	.long	1471500288
	.long	1482727424
	.long	1520361472
	.long	1536004096
	.long	1548349440
	.long	1555353600
	.long	1562951680
	.long	1625083904
	.long	1649766400
	.long	1689305088
	.long	1699524608
	.long	1702125568
	.long	1709346816
	.long	1716056064
	.long	1724211200
	.long	1771692032
	.long	1779548160
	.long	1822441472
	.long	2045116416
	.long	2128404480
	.long	-2147483648
	.long	16
	.long	28
	.long	2
	.long	38
	.long	10
	.long	57
	.long	21
	.long	26
	.long	61
	.long	43
	.long	46
	.long	31
	.long	56
	.long	7
	.long	47
	.long	48
	.long	58
	.long	25
	.long	63
	.long	4
	.long	59
	.long	15
	.long	32
	.long	50
	.long	1
	.long	40
	.long	53
	.long	18
	.long	17
	.long	24
	.long	29
	.long	30
	.long	55
	.long	36
	.long	49
	.long	42
	.long	41
	.long	37
	.long	23
	.long	39
	.long	6
	.long	51
	.long	33
	.long	9
	.long	45
	.long	5
	.long	35
	.long	19
	.long	44
	.long	11
	.long	34
	.long	0
	.long	27
	.long	12
	.long	60
	.long	62
	.long	20
	.long	13
	.long	22
	.long	8
	.long	14
	.long	54
	.long	3
	.long	52
	.globl	pat12
	.align 32
	.type	pat12, @object
	.size	pat12, 512
pat12:
	.long	5320704
	.long	28778496
	.long	31617024
	.long	61222912
	.long	286638080
	.long	361447424
	.long	375713792
	.long	459698176
	.long	528711680
	.long	557907968
	.long	638349312
	.long	752414720
	.long	753102848
	.long	770793472
	.long	777641984
	.long	781103104
	.long	784146432
	.long	790437888
	.long	801382400
	.long	818937856
	.long	837750784
	.long	855744512
	.long	940142592
	.long	950132736
	.long	1031897088
	.long	1049198592
	.long	1066463232
	.long	1198587904
	.long	1200336896
	.long	1213902848
	.long	1222983680
	.long	1291718656
	.long	1403555840
	.long	1406205952
	.long	1446019072
	.long	1458810880
	.long	1467965440
	.long	1483948032
	.long	1485418496
	.long	1487761408
	.long	1495506944
	.long	1504636928
	.long	1571631104
	.long	1580396544
	.long	1672716288
	.long	1717342208
	.long	1758322688
	.long	1764040704
	.long	1786212352
	.long	1786355712
	.long	1813970944
	.long	1824104448
	.long	1831964672
	.long	1841831936
	.long	1842663424
	.long	1847099392
	.long	1904529408
	.long	1913053184
	.long	1939341312
	.long	1946865664
	.long	1967599616
	.long	1981075456
	.long	2041671680
	.long	-2147483648
	.long	4
	.long	60
	.long	10
	.long	35
	.long	6
	.long	31
	.long	5
	.long	18
	.long	53
	.long	17
	.long	20
	.long	8
	.long	56
	.long	29
	.long	7
	.long	48
	.long	40
	.long	0
	.long	12
	.long	39
	.long	2
	.long	43
	.long	15
	.long	61
	.long	42
	.long	30
	.long	50
	.long	14
	.long	49
	.long	38
	.long	34
	.long	58
	.long	24
	.long	55
	.long	33
	.long	63
	.long	28
	.long	51
	.long	59
	.long	46
	.long	11
	.long	22
	.long	45
	.long	41
	.long	13
	.long	44
	.long	23
	.long	47
	.long	3
	.long	32
	.long	16
	.long	54
	.long	26
	.long	19
	.long	25
	.long	52
	.long	27
	.long	57
	.long	36
	.long	9
	.long	37
	.long	21
	.long	62
	.long	1
	.globl	pat13
	.align 32
	.type	pat13, @object
	.size	pat13, 512
pat13:
	.long	55697408
	.long	93417472
	.long	177807360
	.long	205983744
	.long	208257024
	.long	208588800
	.long	210866176
	.long	225521664
	.long	247545856
	.long	262344704
	.long	391540736
	.long	495034368
	.long	524058624
	.long	559632384
	.long	652480512
	.long	707608576
	.long	729088000
	.long	736755712
	.long	744153088
	.long	748863488
	.long	816398336
	.long	822558720
	.long	827142144
	.long	833740800
	.long	836640768
	.long	839262208
	.long	869945344
	.long	931364864
	.long	945733632
	.long	947126272
	.long	947884032
	.long	952000512
	.long	1026519040
	.long	1051676672
	.long	1076256768
	.long	1076834304
	.long	1090363392
	.long	1246482432
	.long	1266880512
	.long	1274843136
	.long	1288347648
	.long	1319383040
	.long	1343815680
	.long	1417445376
	.long	1489788928
	.long	1491750912
	.long	1507725312
	.long	1551831040
	.long	1601253376
	.long	1677303808
	.long	1720111104
	.long	1734086656
	.long	1825357824
	.long	1849724928
	.long	1874251776
	.long	1906769920
	.long	1928724480
	.long	2008911872
	.long	2030120960
	.long	2056073216
	.long	2067009536
	.long	2106552320
	.long	2145660928
	.long	-2147483648
	.long	10
	.long	52
	.long	48
	.long	8
	.long	34
	.long	4
	.long	35
	.long	19
	.long	3
	.long	17
	.long	54
	.long	45
	.long	31
	.long	38
	.long	24
	.long	44
	.long	21
	.long	36
	.long	22
	.long	11
	.long	43
	.long	40
	.long	39
	.long	26
	.long	5
	.long	30
	.long	2
	.long	7
	.long	57
	.long	12
	.long	20
	.long	32
	.long	62
	.long	15
	.long	55
	.long	14
	.long	25
	.long	58
	.long	6
	.long	33
	.long	49
	.long	9
	.long	59
	.long	27
	.long	13
	.long	63
	.long	42
	.long	61
	.long	1
	.long	51
	.long	0
	.long	50
	.long	37
	.long	47
	.long	16
	.long	18
	.long	41
	.long	56
	.long	60
	.long	46
	.long	23
	.long	28
	.long	53
	.long	29
	.globl	pat14
	.align 32
	.type	pat14, @object
	.size	pat14, 512
pat14:
	.long	16310272
	.long	23699456
	.long	58810368
	.long	108695552
	.long	144650240
	.long	180973568
	.long	210608128
	.long	252145664
	.long	295636992
	.long	328212480
	.long	427315200
	.long	480768000
	.long	529891328
	.long	539480064
	.long	575795200
	.long	610668544
	.long	627064832
	.long	731004928
	.long	736489472
	.long	784494592
	.long	856313856
	.long	860479488
	.long	866664448
	.long	877633536
	.long	877740032
	.long	932601856
	.long	938520576
	.long	939315200
	.long	946667520
	.long	962592768
	.long	970866688
	.long	1046482944
	.long	1048514560
	.long	1120276480
	.long	1216372736
	.long	1295843328
	.long	1331687424
	.long	1361842176
	.long	1409105920
	.long	1497628672
	.long	1530421248
	.long	1586102272
	.long	1607086080
	.long	1612103680
	.long	1640660992
	.long	1687244800
	.long	1723437056
	.long	1730306048
	.long	1773334528
	.long	1783050240
	.long	1784217600
	.long	1820606464
	.long	1824047104
	.long	1899712512
	.long	1968742400
	.long	1978314752
	.long	1993428992
	.long	2012209152
	.long	2021007360
	.long	2078130176
	.long	2095652864
	.long	2110013440
	.long	2136256512
	.long	-2147483648
	.long	54
	.long	31
	.long	48
	.long	10
	.long	51
	.long	49
	.long	55
	.long	19
	.long	38
	.long	18
	.long	44
	.long	5
	.long	17
	.long	20
	.long	16
	.long	11
	.long	9
	.long	3
	.long	42
	.long	59
	.long	63
	.long	45
	.long	25
	.long	60
	.long	57
	.long	21
	.long	40
	.long	29
	.long	0
	.long	39
	.long	26
	.long	7
	.long	53
	.long	12
	.long	13
	.long	2
	.long	58
	.long	41
	.long	22
	.long	8
	.long	14
	.long	28
	.long	46
	.long	24
	.long	27
	.long	6
	.long	52
	.long	32
	.long	56
	.long	4
	.long	30
	.long	36
	.long	15
	.long	47
	.long	23
	.long	37
	.long	43
	.long	35
	.long	50
	.long	33
	.long	61
	.long	34
	.long	1
	.long	62
	.globl	pat15
	.align 32
	.type	pat15, @object
	.size	pat15, 512
pat15:
	.long	14770176
	.long	15491072
	.long	16166912
	.long	104116224
	.long	109666304
	.long	152940544
	.long	204242944
	.long	235417600
	.long	265809920
	.long	273125376
	.long	393478144
	.long	405348352
	.long	447520768
	.long	481644544
	.long	489414656
	.long	573239296
	.long	749744128
	.long	799784960
	.long	839073792
	.long	901836800
	.long	1012842496
	.long	1083211776
	.long	1093197824
	.long	1145114624
	.long	1153224704
	.long	1326104576
	.long	1365749760
	.long	1430372352
	.long	1478213632
	.long	1481527296
	.long	1485811712
	.long	1497182208
	.long	1529204736
	.long	1573490688
	.long	1622364160
	.long	1627373568
	.long	1670283264
	.long	1674543104
	.long	1693323264
	.long	1696841728
	.long	1699352576
	.long	1752952832
	.long	1757343744
	.long	1770151936
	.long	1775828992
	.long	1784815616
	.long	1830522880
	.long	1830686720
	.long	1837654016
	.long	1877254144
	.long	1877655552
	.long	1913331712
	.long	1934475264
	.long	1934819328
	.long	1945231360
	.long	1954136064
	.long	1994600448
	.long	2020458496
	.long	2041839616
	.long	2045022208
	.long	2070331392
	.long	2073051136
	.long	2089836544
	.long	-2147483648
	.long	6
	.long	17
	.long	62
	.long	20
	.long	61
	.long	32
	.long	22
	.long	14
	.long	28
	.long	18
	.long	3
	.long	42
	.long	63
	.long	43
	.long	46
	.long	34
	.long	29
	.long	30
	.long	35
	.long	1
	.long	37
	.long	40
	.long	10
	.long	26
	.long	5
	.long	31
	.long	15
	.long	54
	.long	8
	.long	33
	.long	9
	.long	4
	.long	39
	.long	53
	.long	23
	.long	25
	.long	41
	.long	59
	.long	12
	.long	13
	.long	60
	.long	2
	.long	7
	.long	56
	.long	58
	.long	27
	.long	11
	.long	38
	.long	36
	.long	45
	.long	47
	.long	0
	.long	57
	.long	50
	.long	48
	.long	16
	.long	51
	.long	49
	.long	55
	.long	52
	.long	44
	.long	24
	.long	19
	.long	21
	.globl	pat16
	.align 32
	.type	pat16, @object
	.size	pat16, 512
pat16:
	.long	93757440
	.long	140787712
	.long	177483776
	.long	223993856
	.long	274919424
	.long	276996096
	.long	281128960
	.long	284811264
	.long	300302336
	.long	317140992
	.long	365850624
	.long	369324032
	.long	382918656
	.long	386093056
	.long	408604672
	.long	416919552
	.long	430731264
	.long	456105984
	.long	483835904
	.long	492765184
	.long	527613952
	.long	545853440
	.long	616538112
	.long	633458688
	.long	685916160
	.long	710901760
	.long	772464640
	.long	803074048
	.long	823775232
	.long	858710016
	.long	880844800
	.long	887771136
	.long	892657664
	.long	892907520
	.long	908992512
	.long	955613184
	.long	967507968
	.long	978423808
	.long	979546112
	.long	989880320
	.long	1028796416
	.long	1041199104
	.long	1110859776
	.long	1123987456
	.long	1140928512
	.long	1186562048
	.long	1232683008
	.long	1305374720
	.long	1327443968
	.long	1475137536
	.long	1521098752
	.long	1598132224
	.long	1632727040
	.long	1738002432
	.long	1772224512
	.long	1778843648
	.long	1884770304
	.long	1966219264
	.long	1974067200
	.long	2030317568
	.long	2038910976
	.long	2061352960
	.long	2112389120
	.long	-2147483648
	.long	26
	.long	25
	.long	6
	.long	50
	.long	32
	.long	53
	.long	34
	.long	27
	.long	3
	.long	16
	.long	49
	.long	28
	.long	46
	.long	38
	.long	56
	.long	4
	.long	18
	.long	24
	.long	51
	.long	36
	.long	63
	.long	5
	.long	48
	.long	13
	.long	43
	.long	55
	.long	0
	.long	62
	.long	35
	.long	7
	.long	41
	.long	21
	.long	44
	.long	60
	.long	31
	.long	39
	.long	14
	.long	8
	.long	61
	.long	58
	.long	52
	.long	23
	.long	59
	.long	33
	.long	10
	.long	37
	.long	20
	.long	30
	.long	40
	.long	22
	.long	11
	.long	54
	.long	57
	.long	1
	.long	29
	.long	47
	.long	2
	.long	17
	.long	19
	.long	45
	.long	15
	.long	9
	.long	12
	.long	42
	.globl	pat17
	.align 32
	.type	pat17, @object
	.size	pat17, 512
pat17:
	.long	42643456
	.long	61636608
	.long	66981888
	.long	104493056
	.long	152027136
	.long	188686336
	.long	221192192
	.long	235085824
	.long	315932672
	.long	320032768
	.long	342171648
	.long	355667968
	.long	359710720
	.long	378068992
	.long	381431808
	.long	482226176
	.long	534835200
	.long	622325760
	.long	650555392
	.long	707280896
	.long	709763072
	.long	719147008
	.long	735076352
	.long	748920832
	.long	783355904
	.long	843911168
	.long	895885312
	.long	946425856
	.long	953053184
	.long	958054400
	.long	965709824
	.long	966037504
	.long	1075785728
	.long	1165950976
	.long	1170657280
	.long	1263931392
	.long	1378861056
	.long	1424949248
	.long	1436516352
	.long	1445621760
	.long	1453342720
	.long	1471578112
	.long	1500520448
	.long	1610387456
	.long	1671913472
	.long	1673752576
	.long	1708384256
	.long	1729298432
	.long	1778622464
	.long	1808621568
	.long	1810456576
	.long	1811226624
	.long	1875742720
	.long	1882767360
	.long	1889824768
	.long	1921519616
	.long	1928134656
	.long	1963151360
	.long	1975586816
	.long	2012893184
	.long	2038206464
	.long	2038509568
	.long	2075897856
	.long	-2147483648
	.long	18
	.long	15
	.long	56
	.long	5
	.long	25
	.long	47
	.long	39
	.long	55
	.long	12
	.long	14
	.long	51
	.long	33
	.long	0
	.long	7
	.long	9
	.long	44
	.long	50
	.long	31
	.long	62
	.long	59
	.long	3
	.long	35
	.long	23
	.long	17
	.long	30
	.long	60
	.long	11
	.long	24
	.long	40
	.long	20
	.long	52
	.long	2
	.long	22
	.long	8
	.long	57
	.long	42
	.long	32
	.long	54
	.long	36
	.long	48
	.long	49
	.long	13
	.long	58
	.long	10
	.long	28
	.long	63
	.long	16
	.long	41
	.long	27
	.long	21
	.long	37
	.long	4
	.long	1
	.long	29
	.long	19
	.long	6
	.long	53
	.long	45
	.long	46
	.long	38
	.long	34
	.long	43
	.long	61
	.long	26
	.globl	pat18
	.align 32
	.type	pat18, @object
	.size	pat18, 512
pat18:
	.long	59596800
	.long	87527424
	.long	97181696
	.long	97648640
	.long	170164224
	.long	189595648
	.long	226230272
	.long	259198976
	.long	292216832
	.long	354230272
	.long	390582272
	.long	469458944
	.long	494239744
	.long	542363648
	.long	618504192
	.long	623329280
	.long	647757824
	.long	658407424
	.long	710737920
	.long	718487552
	.long	806793216
	.long	819044352
	.long	848691200
	.long	884191232
	.long	920973312
	.long	932397056
	.long	952377344
	.long	1009590272
	.long	1025757184
	.long	1032429568
	.long	1036537856
	.long	1050308608
	.long	1059434496
	.long	1170018304
	.long	1222197248
	.long	1259495424
	.long	1310179328
	.long	1329033216
	.long	1351647232
	.long	1368748032
	.long	1396768768
	.long	1410514944
	.long	1428512768
	.long	1454469120
	.long	1460121600
	.long	1539198976
	.long	1560702976
	.long	1578897408
	.long	1669378048
	.long	1711312896
	.long	1747189760
	.long	1778139136
	.long	1815244800
	.long	1818042368
	.long	1869205504
	.long	1939632128
	.long	1951121408
	.long	1959624704
	.long	2021359616
	.long	2026246144
	.long	2036977664
	.long	2041241600
	.long	2063802368
	.long	-2147483648
	.long	16
	.long	48
	.long	50
	.long	60
	.long	13
	.long	39
	.long	20
	.long	4
	.long	63
	.long	18
	.long	14
	.long	30
	.long	55
	.long	8
	.long	62
	.long	37
	.long	43
	.long	41
	.long	11
	.long	0
	.long	36
	.long	33
	.long	34
	.long	49
	.long	17
	.long	58
	.long	38
	.long	22
	.long	19
	.long	5
	.long	21
	.long	12
	.long	47
	.long	25
	.long	57
	.long	61
	.long	7
	.long	3
	.long	10
	.long	23
	.long	52
	.long	24
	.long	6
	.long	53
	.long	2
	.long	26
	.long	1
	.long	31
	.long	28
	.long	46
	.long	42
	.long	9
	.long	45
	.long	29
	.long	27
	.long	54
	.long	32
	.long	56
	.long	51
	.long	44
	.long	35
	.long	59
	.long	40
	.long	15
	.globl	pat19
	.align 32
	.type	pat19, @object
	.size	pat19, 512
pat19:
	.long	43503616
	.long	55443456
	.long	125833216
	.long	157696000
	.long	158310400
	.long	196734976
	.long	202973184
	.long	206196736
	.long	212287488
	.long	214859776
	.long	389906432
	.long	445480960
	.long	455708672
	.long	458412032
	.long	511782912
	.long	562421760
	.long	564912128
	.long	731529216
	.long	743137280
	.long	799174656
	.long	876322816
	.long	896520192
	.long	935780352
	.long	943083520
	.long	983449600
	.long	995725312
	.long	1117171712
	.long	1125736448
	.long	1132584960
	.long	1148727296
	.long	1202147328
	.long	1272414208
	.long	1292226560
	.long	1322983424
	.long	1324339200
	.long	1340915712
	.long	1375109120
	.long	1381150720
	.long	1413079040
	.long	1442525184
	.long	1477767168
	.long	1496961024
	.long	1621590016
	.long	1655201792
	.long	1664811008
	.long	1688633344
	.long	1689657344
	.long	1713401856
	.long	1716781056
	.long	1744371712
	.long	1757360128
	.long	1778814976
	.long	1831518208
	.long	1892282368
	.long	1908060160
	.long	1917566976
	.long	2017296384
	.long	2030100480
	.long	2033815552
	.long	2037788672
	.long	2089451520
	.long	2120744960
	.long	2137907200
	.long	-2147483648
	.long	14
	.long	59
	.long	60
	.long	24
	.long	18
	.long	22
	.long	62
	.long	12
	.long	45
	.long	2
	.long	32
	.long	11
	.long	25
	.long	37
	.long	13
	.long	7
	.long	50
	.long	39
	.long	56
	.long	17
	.long	47
	.long	40
	.long	29
	.long	43
	.long	15
	.long	34
	.long	4
	.long	57
	.long	31
	.long	38
	.long	21
	.long	28
	.long	36
	.long	27
	.long	42
	.long	1
	.long	23
	.long	33
	.long	5
	.long	61
	.long	44
	.long	55
	.long	8
	.long	30
	.long	10
	.long	41
	.long	19
	.long	48
	.long	16
	.long	52
	.long	49
	.long	46
	.long	54
	.long	58
	.long	6
	.long	0
	.long	51
	.long	3
	.long	26
	.long	20
	.long	53
	.long	9
	.long	35
	.long	63
	.globl	pat20
	.align 32
	.type	pat20, @object
	.size	pat20, 512
pat20:
	.long	9400320
	.long	10489856
	.long	59650048
	.long	86609920
	.long	109531136
	.long	133423104
	.long	136835072
	.long	155267072
	.long	212275200
	.long	263262208
	.long	280932352
	.long	392945664
	.long	421851136
	.long	486367232
	.long	488689664
	.long	515600384
	.long	583610368
	.long	593498112
	.long	754425856
	.long	758837248
	.long	775491584
	.long	791232512
	.long	831180800
	.long	886951936
	.long	912146432
	.long	999104512
	.long	1007648768
	.long	1026543616
	.long	1044582400
	.long	1058004992
	.long	1081401344
	.long	1087488000
	.long	1100177408
	.long	1128771584
	.long	1160605696
	.long	1215115264
	.long	1263001600
	.long	1265668096
	.long	1278513152
	.long	1341206528
	.long	1358602240
	.long	1369468928
	.long	1391656960
	.long	1441959936
	.long	1470971904
	.long	1493823488
	.long	1510957056
	.long	1575317504
	.long	1624436736
	.long	1650454528
	.long	1653137408
	.long	1694986240
	.long	1785753600
	.long	1785982976
	.long	1836187648
	.long	1849229312
	.long	1859948544
	.long	1860665344
	.long	2007769088
	.long	2007838720
	.long	2020143104
	.long	2040639488
	.long	2062311424
	.long	-2147483648
	.long	21
	.long	56
	.long	38
	.long	11
	.long	62
	.long	9
	.long	30
	.long	47
	.long	34
	.long	23
	.long	37
	.long	16
	.long	5
	.long	49
	.long	10
	.long	43
	.long	4
	.long	45
	.long	36
	.long	7
	.long	42
	.long	1
	.long	53
	.long	57
	.long	20
	.long	59
	.long	55
	.long	50
	.long	46
	.long	39
	.long	60
	.long	27
	.long	12
	.long	31
	.long	48
	.long	25
	.long	15
	.long	22
	.long	44
	.long	52
	.long	14
	.long	33
	.long	0
	.long	29
	.long	17
	.long	18
	.long	2
	.long	32
	.long	24
	.long	19
	.long	6
	.long	41
	.long	54
	.long	8
	.long	35
	.long	26
	.long	61
	.long	3
	.long	51
	.long	13
	.long	63
	.long	28
	.long	40
	.long	58
	.globl	pat21
	.align 32
	.type	pat21, @object
	.size	pat21, 512
pat21:
	.long	44621824
	.long	172740608
	.long	177426432
	.long	213929984
	.long	234766336
	.long	234962944
	.long	267673600
	.long	415809536
	.long	429834240
	.long	432930816
	.long	526925824
	.long	536199168
	.long	584417280
	.long	660934656
	.long	672026624
	.long	774520832
	.long	776151040
	.long	798416896
	.long	798765056
	.long	860082176
	.long	864792576
	.long	872620032
	.long	873467904
	.long	915152896
	.long	934891520
	.long	961093632
	.long	965943296
	.long	996216832
	.long	1015668736
	.long	1084919808
	.long	1110802432
	.long	1217454080
	.long	1230802944
	.long	1249497088
	.long	1280892928
	.long	1308205056
	.long	1328562176
	.long	1336197120
	.long	1423036416
	.long	1480986624
	.long	1492398080
	.long	1513951232
	.long	1517703168
	.long	1549533184
	.long	1615364096
	.long	1627049984
	.long	1631473664
	.long	1641418752
	.long	1657892864
	.long	1679814656
	.long	1744351232
	.long	1774571520
	.long	1804800000
	.long	1862090752
	.long	1882402816
	.long	1887793152
	.long	1914658816
	.long	1928671232
	.long	1950679040
	.long	1953460224
	.long	1980133376
	.long	2004131840
	.long	2011848704
	.long	-2147483648
	.long	28
	.long	51
	.long	33
	.long	2
	.long	30
	.long	55
	.long	29
	.long	17
	.long	40
	.long	48
	.long	32
	.long	9
	.long	39
	.long	1
	.long	49
	.long	50
	.long	37
	.long	43
	.long	62
	.long	11
	.long	10
	.long	26
	.long	22
	.long	6
	.long	8
	.long	7
	.long	45
	.long	47
	.long	46
	.long	42
	.long	60
	.long	5
	.long	12
	.long	56
	.long	4
	.long	23
	.long	35
	.long	25
	.long	13
	.long	16
	.long	61
	.long	54
	.long	31
	.long	63
	.long	34
	.long	19
	.long	41
	.long	59
	.long	38
	.long	24
	.long	0
	.long	58
	.long	53
	.long	44
	.long	3
	.long	18
	.long	52
	.long	20
	.long	36
	.long	27
	.long	14
	.long	21
	.long	57
	.long	15
	.globl	pat22
	.align 32
	.type	pat22, @object
	.size	pat22, 512
pat22:
	.long	51695616
	.long	71639040
	.long	107425792
	.long	179343360
	.long	209768448
	.long	284008448
	.long	312221696
	.long	317845504
	.long	334082048
	.long	340836352
	.long	363769856
	.long	375898112
	.long	420159488
	.long	430723072
	.long	470466560
	.long	472027136
	.long	516849664
	.long	532971520
	.long	581685248
	.long	606502912
	.long	719118336
	.long	729845760
	.long	815861760
	.long	835747840
	.long	913309696
	.long	971415552
	.long	998551552
	.long	1105739776
	.long	1177554944
	.long	1244815360
	.long	1358798848
	.long	1385799680
	.long	1454174208
	.long	1475764224
	.long	1483386880
	.long	1491030016
	.long	1495056384
	.long	1505300480
	.long	1506529280
	.long	1531772928
	.long	1556770816
	.long	1560076288
	.long	1561460736
	.long	1565630464
	.long	1588199424
	.long	1589297152
	.long	1594757120
	.long	1596477440
	.long	1598894080
	.long	1609961472
	.long	1622478848
	.long	1631801344
	.long	1696583680
	.long	1804943360
	.long	1884987392
	.long	1906577408
	.long	1944875008
	.long	1979260928
	.long	1988444160
	.long	2009829376
	.long	2016190464
	.long	2049634304
	.long	2125094912
	.long	-2147483648
	.long	16
	.long	8
	.long	5
	.long	59
	.long	4
	.long	18
	.long	26
	.long	43
	.long	33
	.long	57
	.long	6
	.long	47
	.long	56
	.long	46
	.long	10
	.long	54
	.long	52
	.long	0
	.long	50
	.long	30
	.long	39
	.long	24
	.long	38
	.long	63
	.long	28
	.long	25
	.long	49
	.long	31
	.long	55
	.long	62
	.long	3
	.long	17
	.long	23
	.long	13
	.long	37
	.long	53
	.long	34
	.long	14
	.long	44
	.long	12
	.long	19
	.long	36
	.long	27
	.long	61
	.long	51
	.long	42
	.long	41
	.long	60
	.long	45
	.long	1
	.long	7
	.long	35
	.long	21
	.long	58
	.long	20
	.long	15
	.long	2
	.long	9
	.long	22
	.long	29
	.long	48
	.long	32
	.long	40
	.long	11
	.globl	pat23
	.align 32
	.type	pat23, @object
	.size	pat23, 512
pat23:
	.long	290816
	.long	6815744
	.long	24551424
	.long	31162368
	.long	100720640
	.long	134791168
	.long	166035456
	.long	176353280
	.long	183218176
	.long	210993152
	.long	219066368
	.long	231071744
	.long	240136192
	.long	300244992
	.long	316395520
	.long	342364160
	.long	354418688
	.long	405102592
	.long	468144128
	.long	489291776
	.long	517369856
	.long	669556736
	.long	734236672
	.long	737456128
	.long	747958272
	.long	760696832
	.long	763551744
	.long	776208384
	.long	785227776
	.long	800858112
	.long	866844672
	.long	906723328
	.long	962789376
	.long	979714048
	.long	1026252800
	.long	1055911936
	.long	1096351744
	.long	1098817536
	.long	1124044800
	.long	1271545856
	.long	1346043904
	.long	1351499776
	.long	1386405888
	.long	1398497280
	.long	1412648960
	.long	1463885824
	.long	1474060288
	.long	1494061056
	.long	1606459392
	.long	1616191488
	.long	1617317888
	.long	1634258944
	.long	1706123264
	.long	1731362816
	.long	1732431872
	.long	1757970432
	.long	1803558912
	.long	1869422592
	.long	1883299840
	.long	2011369472
	.long	2043088896
	.long	2107940864
	.long	2116464640
	.long	-2147483648
	.long	63
	.long	50
	.long	51
	.long	33
	.long	28
	.long	35
	.long	24
	.long	14
	.long	4
	.long	23
	.long	47
	.long	11
	.long	37
	.long	41
	.long	12
	.long	55
	.long	62
	.long	32
	.long	34
	.long	30
	.long	25
	.long	43
	.long	16
	.long	0
	.long	3
	.long	49
	.long	61
	.long	15
	.long	57
	.long	46
	.long	59
	.long	44
	.long	31
	.long	27
	.long	21
	.long	53
	.long	5
	.long	2
	.long	8
	.long	56
	.long	52
	.long	22
	.long	60
	.long	40
	.long	20
	.long	1
	.long	48
	.long	18
	.long	17
	.long	19
	.long	54
	.long	29
	.long	9
	.long	38
	.long	42
	.long	6
	.long	39
	.long	45
	.long	13
	.long	10
	.long	26
	.long	58
	.long	36
	.long	7
	.globl	pat24
	.align 32
	.type	pat24, @object
	.size	pat24, 512
pat24:
	.long	59310080
	.long	66949120
	.long	103636992
	.long	132055040
	.long	144031744
	.long	179703808
	.long	203665408
	.long	279654400
	.long	306692096
	.long	334495744
	.long	375406592
	.long	440680448
	.long	472678400
	.long	474378240
	.long	490299392
	.long	510144512
	.long	554172416
	.long	608346112
	.long	670998528
	.long	674148352
	.long	685948928
	.long	711086080
	.long	725295104
	.long	733827072
	.long	747134976
	.long	750682112
	.long	827424768
	.long	893538304
	.long	895434752
	.long	903323648
	.long	944885760
	.long	963272704
	.long	1024520192
	.long	1032388608
	.long	1227063296
	.long	1253564416
	.long	1336799232
	.long	1348481024
	.long	1379115008
	.long	1395101696
	.long	1434894336
	.long	1452703744
	.long	1477447680
	.long	1485529088
	.long	1539411968
	.long	1556152320
	.long	1648320512
	.long	1654603776
	.long	1662476288
	.long	1675411456
	.long	1746731008
	.long	1774247936
	.long	1788846080
	.long	1793449984
	.long	1831575552
	.long	1849827328
	.long	1945714688
	.long	2006130688
	.long	2024947712
	.long	2035027968
	.long	2036146176
	.long	2061533184
	.long	2067587072
	.long	-2147483648
	.long	56
	.long	47
	.long	54
	.long	62
	.long	29
	.long	43
	.long	25
	.long	59
	.long	41
	.long	7
	.long	52
	.long	63
	.long	15
	.long	21
	.long	16
	.long	14
	.long	39
	.long	17
	.long	45
	.long	11
	.long	27
	.long	24
	.long	55
	.long	31
	.long	53
	.long	4
	.long	6
	.long	2
	.long	20
	.long	23
	.long	5
	.long	37
	.long	32
	.long	58
	.long	13
	.long	51
	.long	1
	.long	8
	.long	3
	.long	57
	.long	46
	.long	30
	.long	35
	.long	49
	.long	18
	.long	40
	.long	9
	.long	22
	.long	42
	.long	38
	.long	34
	.long	0
	.long	19
	.long	33
	.long	26
	.long	60
	.long	10
	.long	48
	.long	36
	.long	61
	.long	44
	.long	12
	.long	50
	.long	28
	.globl	pat25
	.align 32
	.type	pat25, @object
	.size	pat25, 512
pat25:
	.long	831488
	.long	36433920
	.long	38146048
	.long	38187008
	.long	96923648
	.long	100352000
	.long	110792704
	.long	119062528
	.long	154034176
	.long	196272128
	.long	227631104
	.long	255705088
	.long	257327104
	.long	270819328
	.long	315961344
	.long	350212096
	.long	362323968
	.long	425107456
	.long	453095424
	.long	456884224
	.long	484466688
	.long	549212160
	.long	557125632
	.long	591069184
	.long	603107328
	.long	618926080
	.long	701276160
	.long	727437312
	.long	732332032
	.long	737669120
	.long	832929792
	.long	878116864
	.long	966004736
	.long	997609472
	.long	1020342272
	.long	1025839104
	.long	1067470848
	.long	1081364480
	.long	1170636800
	.long	1244143616
	.long	1255247872
	.long	1263181824
	.long	1285652480
	.long	1309376512
	.long	1320775680
	.long	1332260864
	.long	1338646528
	.long	1380343808
	.long	1391325184
	.long	1443012608
	.long	1475739648
	.long	1556185088
	.long	1559113728
	.long	1570992128
	.long	1572487168
	.long	1689743360
	.long	1726607360
	.long	1757007872
	.long	1789693952
	.long	1837576192
	.long	1870553088
	.long	1896046592
	.long	1973764096
	.long	-2147483648
	.long	1
	.long	58
	.long	13
	.long	5
	.long	62
	.long	10
	.long	49
	.long	48
	.long	19
	.long	24
	.long	54
	.long	57
	.long	20
	.long	39
	.long	35
	.long	41
	.long	28
	.long	42
	.long	6
	.long	44
	.long	34
	.long	45
	.long	55
	.long	3
	.long	2
	.long	60
	.long	38
	.long	36
	.long	30
	.long	25
	.long	7
	.long	23
	.long	53
	.long	50
	.long	61
	.long	29
	.long	40
	.long	47
	.long	22
	.long	12
	.long	27
	.long	0
	.long	52
	.long	31
	.long	8
	.long	15
	.long	37
	.long	11
	.long	46
	.long	32
	.long	4
	.long	56
	.long	17
	.long	33
	.long	26
	.long	43
	.long	51
	.long	16
	.long	9
	.long	59
	.long	63
	.long	21
	.long	14
	.long	18
	.globl	pat26
	.align 32
	.type	pat26, @object
	.size	pat26, 512
pat26:
	.long	32825344
	.long	74412032
	.long	151678976
	.long	184430592
	.long	187334656
	.long	193658880
	.long	206045184
	.long	206442496
	.long	251904000
	.long	252137472
	.long	349949952
	.long	393379840
	.long	437542912
	.long	447750144
	.long	452235264
	.long	468164608
	.long	499621888
	.long	501604352
	.long	525307904
	.long	546484224
	.long	547762176
	.long	580087808
	.long	587083776
	.long	601997312
	.long	683958272
	.long	692936704
	.long	718376960
	.long	723038208
	.long	723726336
	.long	728256512
	.long	746135552
	.long	778838016
	.long	799563776
	.long	857796608
	.long	921792512
	.long	943742976
	.long	951169024
	.long	974331904
	.long	992382976
	.long	1019490304
	.long	1042948096
	.long	1044099072
	.long	1048817664
	.long	1050755072
	.long	1077268480
	.long	1094184960
	.long	1175826432
	.long	1347620864
	.long	1367113728
	.long	1369333760
	.long	1441513472
	.long	1498382336
	.long	1517494272
	.long	1563209728
	.long	1581289472
	.long	1597587456
	.long	1597669376
	.long	1625055232
	.long	1631006720
	.long	1857904640
	.long	1876299776
	.long	1997934592
	.long	2095583232
	.long	-2147483648
	.long	61
	.long	48
	.long	12
	.long	55
	.long	3
	.long	58
	.long	51
	.long	56
	.long	15
	.long	29
	.long	54
	.long	11
	.long	31
	.long	49
	.long	40
	.long	37
	.long	7
	.long	4
	.long	23
	.long	35
	.long	25
	.long	18
	.long	27
	.long	43
	.long	6
	.long	41
	.long	17
	.long	45
	.long	52
	.long	53
	.long	47
	.long	16
	.long	42
	.long	0
	.long	30
	.long	13
	.long	38
	.long	62
	.long	1
	.long	8
	.long	21
	.long	28
	.long	57
	.long	9
	.long	60
	.long	19
	.long	44
	.long	50
	.long	14
	.long	36
	.long	22
	.long	2
	.long	32
	.long	59
	.long	34
	.long	10
	.long	63
	.long	39
	.long	5
	.long	24
	.long	33
	.long	20
	.long	46
	.long	26
	.globl	pat27
	.align 32
	.type	pat27, @object
	.size	pat27, 512
pat27:
	.long	10919936
	.long	80191488
	.long	85471232
	.long	148742144
	.long	164352000
	.long	193331200
	.long	281165824
	.long	316514304
	.long	343584768
	.long	346701824
	.long	382267392
	.long	399880192
	.long	414564352
	.long	437661696
	.long	453644288
	.long	606212096
	.long	636452864
	.long	645861376
	.long	646672384
	.long	649097216
	.long	658165760
	.long	666640384
	.long	676773888
	.long	696868864
	.long	788443136
	.long	857370624
	.long	881754112
	.long	923267072
	.long	1061437440
	.long	1071816704
	.long	1127952384
	.long	1130180608
	.long	1188569088
	.long	1251815424
	.long	1282207744
	.long	1285775360
	.long	1321476096
	.long	1333379072
	.long	1405956096
	.long	1489469440
	.long	1569783808
	.long	1634516992
	.long	1652555776
	.long	1709101056
	.long	1753419776
	.long	1798443008
	.long	1825857536
	.long	1829740544
	.long	1831833600
	.long	1848979456
	.long	1876287488
	.long	1886146560
	.long	1917448192
	.long	1977008128
	.long	2001895424
	.long	2017120256
	.long	2037612544
	.long	2042617856
	.long	2045677568
	.long	2071240704
	.long	2075398144
	.long	2076094464
	.long	2076160000
	.long	-2147483648
	.long	61
	.long	53
	.long	12
	.long	15
	.long	26
	.long	30
	.long	32
	.long	2
	.long	16
	.long	5
	.long	39
	.long	43
	.long	20
	.long	21
	.long	49
	.long	37
	.long	11
	.long	51
	.long	18
	.long	44
	.long	31
	.long	19
	.long	24
	.long	40
	.long	1
	.long	35
	.long	50
	.long	6
	.long	57
	.long	14
	.long	46
	.long	17
	.long	22
	.long	48
	.long	29
	.long	7
	.long	34
	.long	45
	.long	10
	.long	63
	.long	23
	.long	41
	.long	54
	.long	38
	.long	4
	.long	25
	.long	42
	.long	13
	.long	56
	.long	62
	.long	36
	.long	28
	.long	33
	.long	59
	.long	55
	.long	3
	.long	9
	.long	0
	.long	58
	.long	60
	.long	47
	.long	8
	.long	52
	.long	27
	.globl	pat28
	.align 32
	.type	pat28, @object
	.size	pat28, 512
pat28:
	.long	70885376
	.long	109445120
	.long	220536832
	.long	285589504
	.long	289177600
	.long	338272256
	.long	345120768
	.long	368254976
	.long	429060096
	.long	438153216
	.long	445104128
	.long	455475200
	.long	455680000
	.long	472199168
	.long	514011136
	.long	549175296
	.long	559603712
	.long	623153152
	.long	667455488
	.long	669212672
	.long	683614208
	.long	700608512
	.long	710365184
	.long	745512960
	.long	828608512
	.long	830775296
	.long	832319488
	.long	881487872
	.long	950697984
	.long	970805248
	.long	973500416
	.long	1007538176
	.long	1023229952
	.long	1052467200
	.long	1126535168
	.long	1179205632
	.long	1190965248
	.long	1241841664
	.long	1264336896
	.long	1291792384
	.long	1322950656
	.long	1325551616
	.long	1412304896
	.long	1429618688
	.long	1446215680
	.long	1458536448
	.long	1460776960
	.long	1463619584
	.long	1497608192
	.long	1536237568
	.long	1640898560
	.long	1696665600
	.long	1708957696
	.long	1844322304
	.long	1844641792
	.long	1932840960
	.long	1944543232
	.long	1953734656
	.long	1971609600
	.long	1979514880
	.long	1998012416
	.long	2000588800
	.long	2056105984
	.long	-2147483648
	.long	43
	.long	11
	.long	8
	.long	56
	.long	5
	.long	22
	.long	42
	.long	55
	.long	14
	.long	32
	.long	2
	.long	47
	.long	24
	.long	51
	.long	35
	.long	25
	.long	15
	.long	58
	.long	41
	.long	27
	.long	33
	.long	37
	.long	4
	.long	36
	.long	7
	.long	53
	.long	26
	.long	48
	.long	38
	.long	19
	.long	29
	.long	28
	.long	40
	.long	10
	.long	1
	.long	46
	.long	59
	.long	63
	.long	61
	.long	62
	.long	60
	.long	30
	.long	21
	.long	39
	.long	44
	.long	57
	.long	20
	.long	18
	.long	17
	.long	54
	.long	49
	.long	52
	.long	3
	.long	12
	.long	45
	.long	13
	.long	50
	.long	9
	.long	16
	.long	23
	.long	0
	.long	6
	.long	31
	.long	34
	.globl	pat29
	.align 32
	.type	pat29, @object
	.size	pat29, 512
pat29:
	.long	3551232
	.long	10207232
	.long	26243072
	.long	69029888
	.long	94822400
	.long	166944768
	.long	171892736
	.long	347701248
	.long	407224320
	.long	412000256
	.long	455700480
	.long	469909504
	.long	505327616
	.long	523911168
	.long	541585408
	.long	606117888
	.long	679940096
	.long	695062528
	.long	747814912
	.long	768876544
	.long	876933120
	.long	901316608
	.long	914604032
	.long	1032757248
	.long	1072082944
	.long	1107353600
	.long	1109192704
	.long	1118068736
	.long	1145450496
	.long	1155928064
	.long	1170743296
	.long	1214218240
	.long	1224638464
	.long	1246961664
	.long	1248841728
	.long	1284476928
	.long	1304260608
	.long	1347592192
	.long	1361817600
	.long	1384239104
	.long	1393938432
	.long	1512054784
	.long	1520418816
	.long	1544658944
	.long	1611706368
	.long	1655320576
	.long	1674596352
	.long	1735704576
	.long	1735839744
	.long	1745899520
	.long	1771917312
	.long	1773936640
	.long	1796968448
	.long	1884114944
	.long	1943388160
	.long	1943617536
	.long	2017996800
	.long	2026422272
	.long	2026655744
	.long	2059980800
	.long	2061500416
	.long	2069458944
	.long	2120921088
	.long	-2147483648
	.long	52
	.long	40
	.long	59
	.long	29
	.long	42
	.long	34
	.long	63
	.long	44
	.long	33
	.long	37
	.long	51
	.long	23
	.long	5
	.long	36
	.long	38
	.long	43
	.long	9
	.long	4
	.long	28
	.long	55
	.long	1
	.long	6
	.long	21
	.long	26
	.long	13
	.long	24
	.long	30
	.long	15
	.long	35
	.long	17
	.long	46
	.long	20
	.long	16
	.long	10
	.long	49
	.long	48
	.long	39
	.long	62
	.long	19
	.long	14
	.long	61
	.long	27
	.long	53
	.long	2
	.long	57
	.long	58
	.long	45
	.long	7
	.long	56
	.long	50
	.long	54
	.long	25
	.long	31
	.long	11
	.long	22
	.long	47
	.long	3
	.long	0
	.long	32
	.long	12
	.long	8
	.long	41
	.long	60
	.long	18
	.globl	pat30
	.align 32
	.type	pat30, @object
	.size	pat30, 512
pat30:
	.long	73158656
	.long	113192960
	.long	204025856
	.long	239534080
	.long	240873472
	.long	307675136
	.long	340054016
	.long	359239680
	.long	384327680
	.long	441274368
	.long	461385728
	.long	500142080
	.long	500625408
	.long	525856768
	.long	579309568
	.long	641634304
	.long	692203520
	.long	706383872
	.long	711561216
	.long	747614208
	.long	757989376
	.long	784719872
	.long	830095360
	.long	900087808
	.long	915828736
	.long	925470720
	.long	935358464
	.long	1000058880
	.long	1006977024
	.long	1019985920
	.long	1033150464
	.long	1043238912
	.long	1048199168
	.long	1085898752
	.long	1147502592
	.long	1148420096
	.long	1157509120
	.long	1159565312
	.long	1161216000
	.long	1189027840
	.long	1216696320
	.long	1346166784
	.long	1393573888
	.long	1394589696
	.long	1421979648
	.long	1443389440
	.long	1447211008
	.long	1463435264
	.long	1485303808
	.long	1518800896
	.long	1553399808
	.long	1582718976
	.long	1656287232
	.long	1680662528
	.long	1710116864
	.long	1725640704
	.long	1730658304
	.long	1788485632
	.long	1957228544
	.long	2083102720
	.long	2093314048
	.long	2132938752
	.long	2133389312
	.long	-2147483648
	.long	29
	.long	35
	.long	8
	.long	49
	.long	30
	.long	55
	.long	27
	.long	38
	.long	58
	.long	61
	.long	0
	.long	28
	.long	15
	.long	39
	.long	5
	.long	37
	.long	32
	.long	42
	.long	46
	.long	54
	.long	12
	.long	14
	.long	1
	.long	31
	.long	59
	.long	11
	.long	47
	.long	9
	.long	13
	.long	50
	.long	2
	.long	62
	.long	60
	.long	18
	.long	20
	.long	51
	.long	23
	.long	24
	.long	53
	.long	6
	.long	25
	.long	48
	.long	41
	.long	3
	.long	33
	.long	57
	.long	44
	.long	19
	.long	22
	.long	52
	.long	4
	.long	45
	.long	10
	.long	21
	.long	56
	.long	36
	.long	17
	.long	43
	.long	7
	.long	63
	.long	16
	.long	34
	.long	26
	.long	40
	.globl	pat31
	.align 32
	.type	pat31, @object
	.size	pat31, 512
pat31:
	.long	21229568
	.long	33980416
	.long	53002240
	.long	118120448
	.long	153776128
	.long	155045888
	.long	171606016
	.long	199561216
	.long	201097216
	.long	238366720
	.long	309522432
	.long	339361792
	.long	377638912
	.long	549421056
	.long	551153664
	.long	568532992
	.long	574775296
	.long	575057920
	.long	583966720
	.long	635183104
	.long	691159040
	.long	701304832
	.long	715407360
	.long	752369664
	.long	766488576
	.long	779399168
	.long	794497024
	.long	981110784
	.long	1001619456
	.long	1007788032
	.long	1009819648
	.long	1043271680
	.long	1099411456
	.long	1108934656
	.long	1155743744
	.long	1300561920
	.long	1406054400
	.long	1410183168
	.long	1418948608
	.long	1429250048
	.long	1511067648
	.long	1546125312
	.long	1592881152
	.long	1607266304
	.long	1682128896
	.long	1687740416
	.long	1714176000
	.long	1786650624
	.long	1801064448
	.long	1813114880
	.long	1842966528
	.long	1861332992
	.long	1866784768
	.long	1887760384
	.long	1941254144
	.long	2020786176
	.long	2028826624
	.long	2033561600
	.long	2042597376
	.long	2053828608
	.long	2070925312
	.long	2077499392
	.long	2133012480
	.long	-2147483648
	.long	6
	.long	25
	.long	28
	.long	44
	.long	27
	.long	43
	.long	58
	.long	33
	.long	23
	.long	21
	.long	16
	.long	48
	.long	30
	.long	26
	.long	5
	.long	20
	.long	49
	.long	38
	.long	2
	.long	45
	.long	11
	.long	61
	.long	17
	.long	0
	.long	53
	.long	13
	.long	7
	.long	52
	.long	40
	.long	31
	.long	36
	.long	4
	.long	10
	.long	8
	.long	24
	.long	22
	.long	42
	.long	63
	.long	35
	.long	60
	.long	47
	.long	29
	.long	46
	.long	19
	.long	1
	.long	3
	.long	34
	.long	55
	.long	59
	.long	14
	.long	39
	.long	12
	.long	32
	.long	50
	.long	62
	.long	54
	.long	56
	.long	51
	.long	57
	.long	15
	.long	41
	.long	18
	.long	37
	.long	9
	.globl	patterns
	.section	.data.rel.local,"aw"
	.align 32
	.type	patterns, @object
	.size	patterns, 264
patterns:
	.quad	trivial_pattern
	.quad	pat0
	.quad	pat1
	.quad	pat2
	.quad	pat3
	.quad	pat4
	.quad	pat5
	.quad	pat6
	.quad	pat7
	.quad	pat8
	.quad	pat9
	.quad	pat10
	.quad	pat11
	.quad	pat12
	.quad	pat13
	.quad	pat14
	.quad	pat15
	.quad	pat16
	.quad	pat17
	.quad	pat18
	.quad	pat19
	.quad	pat20
	.quad	pat21
	.quad	pat22
	.quad	pat23
	.quad	pat24
	.quad	pat25
	.quad	pat26
	.quad	pat27
	.quad	pat28
	.quad	pat29
	.quad	pat30
	.quad	pat31
	.local	outfd
	.comm	outfd,4,4
	.local	chunk_sems
	.comm	chunk_sems,14336,32
	.section	.rodata
	.align 8
.LC0:
	.string	"usage: fsync_integrity <file name>\n"
	.text
	.type	usage, @function
usage:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 35
	mov	esi, 1
	lea	rdi, .LC0[rip]
	call	fwrite@PLT
	mov	edi, 2
	call	exit@PLT
	.cfi_endproc
.LFE7:
	.size	usage, .-usage
	.type	marker_fill, @function
marker_fill:
.LFB8:
	.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	QWORD PTR -56[rbp], rdi
	mov	DWORD PTR -60[rbp], esi
	mov	QWORD PTR -72[rbp], rdx
	mov	DWORD PTR -64[rbp], ecx
	mov	eax, DWORD PTR -64[rbp]
	mov	DWORD PTR -36[rbp], eax
	mov	DWORD PTR -32[rbp], -536497974
	mov	eax, DWORD PTR -60[rbp]
	mov	DWORD PTR -40[rbp], eax
	jmp	.L6
.L9:
	cmp	DWORD PTR -64[rbp], 7
	jne	.L7
	mov	eax, DWORD PTR -32[rbp]
	sal	rax, 32
	mov	rbx, rax
	jmp	.L8
.L7:
	mov	eax, DWORD PTR -36[rbp]
	sal	rax, 32
	mov	rbx, rax
.L8:
	mov	eax, DWORD PTR -40[rbp]
	mov	edi, eax
	call	htonl@PLT
	mov	eax, eax
	or	rax, rbx
	mov	QWORD PTR -24[rbp], rax
	mov	eax, DWORD PTR -40[rbp]
	sub	eax, DWORD PTR -60[rbp]
	cdqe
	shr	rax, 3
	mov	DWORD PTR -28[rbp], eax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -56[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -24[rbp]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR -40[rbp]
	add	eax, 8
	mov	DWORD PTR -40[rbp], eax
.L6:
	mov	eax, DWORD PTR -40[rbp]
	cdqe
	mov	edx, DWORD PTR -60[rbp]
	movsx	rcx, edx
	mov	rdx, QWORD PTR -72[rbp]
	add	rdx, rcx
	cmp	rax, rdx
	jb	.L9
	nop
	nop
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	marker_fill, .-marker_fill
	.section	.rodata
.LC1:
	.string	"read"
	.align 8
.LC2:
	.string	"fsync_integrity: miscompare at chunk %i, chunk offset %lx, file offset %lx\n"
.LC3:
	.string	"Expected %016lx, got %016lx\n"
	.align 8
.LC4:
	.string	"fsync_integrity: miscompare ends at chunk %i, chunk offset %lx, file offset %lx\n"
	.text
	.type	verify_file, @function
verify_file:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	DWORD PTR -68[rbp], edi
	mov	QWORD PTR -80[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -52[rbp], 1
	mov	DWORD PTR -48[rbp], 0
	mov	DWORD PTR -56[rbp], 0
	jmp	.L11
.L17:
	lea	rcx, -60[rbp]
	lea	rdx, -64[rbp]
	mov	esi, DWORD PTR -56[rbp]
	mov	rax, QWORD PTR -80[rbp]
	mov	rdi, rax
	call	get_chunk_range
	mov	eax, DWORD PTR -60[rbp]
	mov	edx, DWORD PTR -64[rbp]
	sub	eax, edx
	mov	eax, eax
	mov	QWORD PTR -32[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	eax, DWORD PTR -64[rbp]
	mov	esi, eax
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, 7
	mov	rdi, rax
	call	marker_fill
	mov	rdx, QWORD PTR -32[rbp]
	mov	rcx, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR -68[rbp]
	mov	rsi, rcx
	mov	edi, eax
	call	read@PLT
	test	rax, rax
	jg	.L12
	lea	rdi, .LC1[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L12:
	mov	DWORD PTR -44[rbp], 0
	jmp	.L13
.L16:
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	sal	eax, 3
	mov	DWORD PTR -40[rbp], eax
	mov	edx, DWORD PTR -64[rbp]
	mov	eax, DWORD PTR -40[rbp]
	add	eax, edx
	mov	DWORD PTR -36[rbp], eax
	cmp	DWORD PTR -52[rbp], 0
	je	.L14
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	cmp	rdx, rax
	je	.L14
	mov	rax, QWORD PTR stderr[rip]
	mov	esi, DWORD PTR -36[rbp]
	mov	ecx, DWORD PTR -40[rbp]
	mov	edx, DWORD PTR -56[rbp]
	mov	r8d, esi
	lea	rsi, .LC2[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	mov	rcx, QWORD PTR [rax]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	DWORD PTR -48[rbp], 1
	mov	DWORD PTR -52[rbp], 0
	jmp	.L15
.L14:
	cmp	DWORD PTR -52[rbp], 0
	jne	.L15
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	mov	rax, QWORD PTR -16[rbp]
	add	rax, rdx
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	lea	rcx, 0[0+rax*8]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rcx
	mov	rax, QWORD PTR [rax]
	cmp	rdx, rax
	jne	.L15
	mov	rax, QWORD PTR stderr[rip]
	mov	esi, DWORD PTR -36[rbp]
	mov	ecx, DWORD PTR -40[rbp]
	mov	edx, DWORD PTR -56[rbp]
	mov	r8d, esi
	lea	rsi, .LC4[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	DWORD PTR -52[rbp], 1
.L15:
	add	DWORD PTR -44[rbp], 1
.L13:
	mov	eax, DWORD PTR -44[rbp]
	cdqe
	mov	rdx, QWORD PTR -32[rbp]
	shr	rdx, 3
	cmp	rax, rdx
	jb	.L16
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	free@PLT
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	free@PLT
	add	DWORD PTR -56[rbp], 1
.L11:
	cmp	DWORD PTR -56[rbp], 63
	jle	.L17
	mov	eax, DWORD PTR -48[rbp]
	mov	rdi, QWORD PTR -8[rbp]
	sub	rdi, QWORD PTR fs:40
	je	.L19
	call	__stack_chk_fail@PLT
.L19:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	verify_file, .-verify_file
	.type	write_chunk, @function
write_chunk:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	DWORD PTR -44[rbp], esi
	mov	DWORD PTR -48[rbp], edx
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	lea	rcx, -28[rbp]
	lea	rdx, -32[rbp]
	mov	esi, DWORD PTR -44[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	rdi, rax
	call	get_chunk_range
	mov	eax, DWORD PTR -28[rbp]
	mov	edx, DWORD PTR -32[rbp]
	sub	eax, edx
	mov	eax, eax
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -24[rbp]
	mov	rdi, rax
	call	malloc@PLT
	mov	QWORD PTR -16[rbp], rax
	mov	eax, DWORD PTR -32[rbp]
	mov	esi, eax
	mov	ecx, DWORD PTR -48[rbp]
	mov	rdx, QWORD PTR -24[rbp]
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	marker_fill
	mov	eax, DWORD PTR -32[rbp]
	mov	ecx, eax
	mov	eax, DWORD PTR outfd[rip]
	mov	rdx, QWORD PTR -24[rbp]
	mov	rsi, QWORD PTR -16[rbp]
	mov	edi, eax
	call	pwrite@PLT
	mov	rax, QWORD PTR -16[rbp]
	mov	rdi, rax
	call	free@PLT
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L21
	call	__stack_chk_fail@PLT
.L21:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	write_chunk, .-write_chunk
	.section	.rodata
.LC5:
	.string	"fsync"
	.text
	.type	my_sync, @function
my_sync:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	edi, eax
	call	fsync@PLT
	test	eax, eax
	je	.L24
	lea	rdi, .LC5[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L24:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	my_sync, .-my_sync
	.section	.rodata
.LC6:
	.string	"sem_wait"
.LC7:
	.string	"sem_post"
	.text
	.type	worker, @function
worker:
.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, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR -8[rbp], rax
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -16[rbp], eax
	mov	DWORD PTR -20[rbp], 0
	jmp	.L26
.L30:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	edx, DWORD PTR -20[rbp]
	movsx	rdx, edx
	add	rdx, 64
	mov	eax, DWORD PTR [rax+rdx*4]
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -16[rbp], 0
	jle	.L27
	mov	eax, DWORD PTR -16[rbp]
	lea	edx, -1[rax]
	mov	eax, DWORD PTR -12[rbp]
	movsx	rcx, eax
	movsx	rax, edx
	sal	rax, 6
	add	rax, rcx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, chunk_sems[rip]
	add	rax, rdx
	mov	rdi, rax
	call	sem_wait@PLT
	cmp	eax, -1
	jne	.L27
	lea	rdi, .LC6[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L27:
	mov	rax, QWORD PTR -8[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	edx, DWORD PTR -16[rbp]
	mov	ecx, DWORD PTR -12[rbp]
	mov	esi, ecx
	mov	rdi, rax
	call	write_chunk
	mov	eax, DWORD PTR -16[rbp]
	and	eax, 1
	test	eax, eax
	jne	.L28
	mov	eax, DWORD PTR outfd[rip]
	mov	edi, eax
	call	my_sync
.L28:
	cmp	DWORD PTR -16[rbp], 6
	jg	.L29
	mov	eax, DWORD PTR -12[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -16[rbp]
	cdqe
	sal	rax, 6
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, chunk_sems[rip]
	add	rax, rdx
	mov	rdi, rax
	call	sem_post@PLT
	cmp	eax, -1
	jne	.L29
	lea	rdi, .LC7[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L29:
	add	DWORD PTR -20[rbp], 1
.L26:
	cmp	DWORD PTR -20[rbp], 63
	jle	.L30
	mov	eax, 0
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	worker, .-worker
	.section	.rodata
.LC8:
	.string	"Starting repetition %d\n"
.LC9:
	.string	"open"
.LC10:
	.string	"ftruncate"
.LC11:
	.string	"write"
.LC12:
	.string	"lseek"
.LC13:
	.string	"sem_init"
.LC14:
	.string	"pthread_create"
.LC15:
	.string	"pthread_join"
.LC16:
	.string	"sem_destory"
.LC17:
	.string	"close"
	.text
	.globl	main
	.type	main, @function
main:
.LFB13:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	r11, -131072[rsp]
.LPSRL0:
	sub	rsp, 4096
	or	DWORD PTR [rsp], 0
	cmp	rsp, r11
	jne	.LPSRL0
	sub	rsp, 256
	mov	DWORD PTR -131316[rbp], edi
	mov	QWORD PTR -131328[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	cmp	DWORD PTR -131316[rbp], 2
	je	.L33
	mov	eax, 0
	call	usage
.L33:
	mov	DWORD PTR -131308[rbp], 0
	jmp	.L34
.L61:
	mov	eax, DWORD PTR -131308[rbp]
	mov	esi, eax
	lea	rdi, .LC8[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR -131304[rbp], 0
	jmp	.L35
.L60:
	mov	eax, DWORD PTR -131304[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, patterns[rip]
	mov	rax, QWORD PTR [rdx+rax]
	mov	QWORD PTR -131288[rbp], rax
	mov	DWORD PTR -131292[rbp], 0
	mov	rax, QWORD PTR -131328[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	mov	edx, 420
	mov	esi, 578
	mov	rdi, rax
	mov	eax, 0
	call	open@PLT
	mov	DWORD PTR outfd[rip], eax
	mov	eax, DWORD PTR outfd[rip]
	cmp	eax, -1
	jne	.L36
	lea	rdi, .LC9[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L36:
	mov	eax, DWORD PTR outfd[rip]
	mov	esi, 8388608
	mov	edi, eax
	call	ftruncate@PLT
	test	eax, eax
	je	.L37
	lea	rdi, .LC10[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L37:
	mov	DWORD PTR -131292[rbp], 0
	jmp	.L38
.L40:
	lea	rax, -131088[rbp]
	mov	edx, 131072
	mov	esi, 0
	mov	rdi, rax
	call	memset@PLT
	mov	eax, DWORD PTR outfd[rip]
	lea	rcx, -131088[rbp]
	mov	edx, 131072
	mov	rsi, rcx
	mov	edi, eax
	call	write@PLT
	cmp	rax, -1
	jne	.L39
	lea	rdi, .LC11[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L39:
	add	DWORD PTR -131292[rbp], 131072
.L38:
	cmp	DWORD PTR -131292[rbp], 8388607
	jle	.L40
	mov	eax, DWORD PTR outfd[rip]
	mov	edx, 0
	mov	esi, 0
	mov	edi, eax
	call	lseek@PLT
	cmp	rax, -1
	jne	.L41
	lea	rdi, .LC12[rip]
	call	perror@PLT
.L41:
	mov	DWORD PTR -131300[rbp], 0
	jmp	.L42
.L46:
	mov	DWORD PTR -131296[rbp], 0
	jmp	.L43
.L45:
	mov	eax, DWORD PTR -131296[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -131300[rbp]
	cdqe
	sal	rax, 6
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, chunk_sems[rip]
	add	rax, rdx
	mov	edx, 0
	mov	esi, 0
	mov	rdi, rax
	call	sem_init@PLT
	test	eax, eax
	je	.L44
	lea	rdi, .LC13[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L44:
	add	DWORD PTR -131296[rbp], 1
.L43:
	cmp	DWORD PTR -131296[rbp], 63
	jle	.L45
	add	DWORD PTR -131300[rbp], 1
.L42:
	cmp	DWORD PTR -131300[rbp], 6
	jle	.L46
	mov	DWORD PTR -131300[rbp], 0
	jmp	.L47
.L49:
	mov	eax, DWORD PTR -131300[rbp]
	cdqe
	sal	rax, 4
	add	rax, rbp
	lea	rdx, -131208[rax]
	mov	rax, QWORD PTR -131288[rbp]
	mov	QWORD PTR [rdx], rax
	mov	eax, DWORD PTR -131300[rbp]
	cdqe
	sal	rax, 4
	add	rax, rbp
	lea	rdx, -131216[rax]
	mov	eax, DWORD PTR -131300[rbp]
	mov	DWORD PTR [rdx], eax
	lea	rdx, -131216[rbp]
	mov	eax, DWORD PTR -131300[rbp]
	cdqe
	sal	rax, 4
	add	rdx, rax
	lea	rcx, -131280[rbp]
	mov	eax, DWORD PTR -131300[rbp]
	cdqe
	sal	rax, 3
	add	rax, rcx
	mov	rcx, rdx
	lea	rdx, worker[rip]
	mov	esi, 0
	mov	rdi, rax
	call	pthread_create@PLT
	test	eax, eax
	je	.L48
	lea	rdi, .LC14[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L48:
	add	DWORD PTR -131300[rbp], 1
.L47:
	cmp	DWORD PTR -131300[rbp], 7
	jle	.L49
	mov	DWORD PTR -131300[rbp], 0
	jmp	.L50
.L52:
	mov	eax, DWORD PTR -131300[rbp]
	cdqe
	mov	rax, QWORD PTR -131280[rbp+rax*8]
	mov	esi, 0
	mov	rdi, rax
	call	pthread_join@PLT
	test	eax, eax
	je	.L51
	lea	rdi, .LC15[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L51:
	add	DWORD PTR -131300[rbp], 1
.L50:
	cmp	DWORD PTR -131300[rbp], 7
	jle	.L52
	mov	DWORD PTR -131300[rbp], 0
	jmp	.L53
.L57:
	mov	DWORD PTR -131296[rbp], 0
	jmp	.L54
.L56:
	mov	eax, DWORD PTR -131296[rbp]
	movsx	rdx, eax
	mov	eax, DWORD PTR -131300[rbp]
	cdqe
	sal	rax, 6
	add	rax, rdx
	sal	rax, 5
	mov	rdx, rax
	lea	rax, chunk_sems[rip]
	add	rax, rdx
	mov	rdi, rax
	call	sem_destroy@PLT
	test	eax, eax
	je	.L55
	lea	rdi, .LC16[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L55:
	add	DWORD PTR -131296[rbp], 1
.L54:
	cmp	DWORD PTR -131296[rbp], 63
	jle	.L56
	add	DWORD PTR -131300[rbp], 1
.L53:
	cmp	DWORD PTR -131300[rbp], 6
	jle	.L57
	mov	eax, DWORD PTR -131304[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, patterns[rip]
	mov	rdx, QWORD PTR [rdx+rax]
	mov	eax, DWORD PTR outfd[rip]
	mov	rsi, rdx
	mov	edi, eax
	call	verify_file
	test	eax, eax
	je	.L58
	mov	edi, 1
	call	exit@PLT
.L58:
	mov	eax, DWORD PTR outfd[rip]
	mov	edi, eax
	call	close@PLT
	test	eax, eax
	je	.L59
	lea	rdi, .LC17[rip]
	call	perror@PLT
	mov	edi, 1
	call	exit@PLT
.L59:
	add	DWORD PTR -131304[rbp], 1
.L35:
	mov	eax, DWORD PTR -131304[rbp]
	cmp	eax, 32
	jbe	.L60
	add	DWORD PTR -131308[rbp], 1
.L34:
	cmp	DWORD PTR -131308[rbp], 15
	jle	.L61
	mov	eax, 0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L63
	call	__stack_chk_fail@PLT
.L63:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	main, .-main
	.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	"770805.c"
	.text
	.align	2
	.global	get_chunk_range
	.syntax unified
	.arm
	.fpu softvfp
	.type	get_chunk_range, %function
get_chunk_range:
	@ 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, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L2
	ldr	r3, [fp, #-16]
	mov	r2, #0
	str	r2, [r3]
	b	.L3
.L2:
	ldr	r3, [fp, #-12]
	sub	r2, r3, #1
	ldr	r3, [fp, #-8]
	ldr	r3, [r3, r2, lsl #2]
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #23
	orr	r3, r3, r0, lsr #9
	lsl	r2, r0, #23
	mov	r0, #0
	mov	r1, #0
	lsr	r0, r2, #31
	orr	r0, r0, r3, lsl #1
	lsr	r1, r3, #31
	mov	r2, r0
	ldr	r3, [fp, #-16]
	str	r2, [r3]
.L3:
	ldr	r3, [fp, #-8]
	ldr	r2, [fp, #-12]
	ldr	r3, [r3, r2, lsl #2]
	mov	r0, r3
	mov	r1, #0
	mov	r2, #0
	mov	r3, #0
	lsl	r3, r1, #23
	orr	r3, r3, r0, lsr #9
	lsl	r2, r0, #23
	mov	r0, #0
	mov	r1, #0
	lsr	r0, r2, #31
	orr	r0, r0, r3, lsl #1
	lsr	r1, r3, #31
	mov	r2, r0
	ldr	r3, [fp, #-20]
	str	r2, [r3]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
	.size	get_chunk_range, .-get_chunk_range
	.global	trivial_pattern
	.section	.rodata
	.align	2
	.type	trivial_pattern, %object
	.size	trivial_pattern, 512
trivial_pattern:
	.word	33554432
	.word	67108864
	.word	100663296
	.word	134217728
	.word	167772160
	.word	201326592
	.word	234881024
	.word	268435456
	.word	301989888
	.word	335544320
	.word	369098752
	.word	402653184
	.word	436207616
	.word	469762048
	.word	503316480
	.word	536870912
	.word	570425344
	.word	603979776
	.word	637534208
	.word	671088640
	.word	704643072
	.word	738197504
	.word	771751936
	.word	805306368
	.word	838860800
	.word	872415232
	.word	905969664
	.word	939524096
	.word	973078528
	.word	1006632960
	.word	1040187392
	.word	1073741824
	.word	1107296256
	.word	1140850688
	.word	1174405120
	.word	1207959552
	.word	1241513984
	.word	1275068416
	.word	1308622848
	.word	1342177280
	.word	1375731712
	.word	1409286144
	.word	1442840576
	.word	1476395008
	.word	1509949440
	.word	1543503872
	.word	1577058304
	.word	1610612736
	.word	1644167168
	.word	1677721600
	.word	1711276032
	.word	1744830464
	.word	1778384896
	.word	1811939328
	.word	1845493760
	.word	1879048192
	.word	1912602624
	.word	1946157056
	.word	1979711488
	.word	2013265920
	.word	2046820352
	.word	2080374784
	.word	2113929216
	.word	-2147483648
	.word	0
	.word	1
	.word	2
	.word	3
	.word	4
	.word	5
	.word	6
	.word	7
	.word	8
	.word	9
	.word	10
	.word	11
	.word	12
	.word	13
	.word	14
	.word	15
	.word	16
	.word	17
	.word	18
	.word	19
	.word	20
	.word	21
	.word	22
	.word	23
	.word	24
	.word	25
	.word	26
	.word	27
	.word	28
	.word	29
	.word	30
	.word	31
	.word	32
	.word	33
	.word	34
	.word	35
	.word	36
	.word	37
	.word	38
	.word	39
	.word	40
	.word	41
	.word	42
	.word	43
	.word	44
	.word	45
	.word	46
	.word	47
	.word	48
	.word	49
	.word	50
	.word	51
	.word	52
	.word	53
	.word	54
	.word	55
	.word	56
	.word	57
	.word	58
	.word	59
	.word	60
	.word	61
	.word	62
	.word	63
	.global	pat0
	.align	2
	.type	pat0, %object
	.size	pat0, 512
pat0:
	.word	32161792
	.word	143278080
	.word	184541184
	.word	215707648
	.word	221073408
	.word	236384256
	.word	239702016
	.word	301404160
	.word	306368512
	.word	314601472
	.word	339460096
	.word	341876736
	.word	366833664
	.word	385933312
	.word	468180992
	.word	504680448
	.word	510312448
	.word	554266624
	.word	615989248
	.word	655777792
	.word	661032960
	.word	810782720
	.word	840478720
	.word	928583680
	.word	934674432
	.word	964788224
	.word	969965568
	.word	1016127488
	.word	1045753856
	.word	1069125632
	.word	1120460800
	.word	1134960640
	.word	1140129792
	.word	1275891712
	.word	1279401984
	.word	1282633728
	.word	1296162816
	.word	1299415040
	.word	1302794240
	.word	1330544640
	.word	1351495680
	.word	1362714624
	.word	1370181632
	.word	1386225664
	.word	1411612672
	.word	1423351808
	.word	1426231296
	.word	1434759168
	.word	1547878400
	.word	1548382208
	.word	1571573760
	.word	1608830976
	.word	1677221888
	.word	1722613760
	.word	1739837440
	.word	1775128576
	.word	1813483520
	.word	1853480960
	.word	1870917632
	.word	1897287680
	.word	1925025792
	.word	2059898880
	.word	2110341120
	.word	-2147483648
	.word	57
	.word	16
	.word	28
	.word	25
	.word	10
	.word	59
	.word	52
	.word	46
	.word	30
	.word	6
	.word	40
	.word	36
	.word	39
	.word	9
	.word	21
	.word	51
	.word	33
	.word	45
	.word	44
	.word	19
	.word	2
	.word	50
	.word	55
	.word	5
	.word	58
	.word	13
	.word	23
	.word	0
	.word	12
	.word	53
	.word	42
	.word	32
	.word	31
	.word	48
	.word	35
	.word	61
	.word	49
	.word	54
	.word	18
	.word	24
	.word	8
	.word	41
	.word	62
	.word	4
	.word	47
	.word	17
	.word	1
	.word	3
	.word	34
	.word	14
	.word	63
	.word	22
	.word	15
	.word	26
	.word	38
	.word	56
	.word	27
	.word	60
	.word	29
	.word	11
	.word	7
	.word	43
	.word	20
	.word	37
	.global	pat1
	.align	2
	.type	pat1, %object
	.size	pat1, 512
pat1:
	.word	2838528
	.word	23965696
	.word	99307520
	.word	154796032
	.word	175943680
	.word	178163712
	.word	219430912
	.word	243015680
	.word	246927360
	.word	277975040
	.word	281792512
	.word	301486080
	.word	389414912
	.word	392208384
	.word	418033664
	.word	451325952
	.word	476012544
	.word	502497280
	.word	566149120
	.word	597495808
	.word	649596928
	.word	659009536
	.word	664809472
	.word	725401600
	.word	750751744
	.word	784396288
	.word	816218112
	.word	817799168
	.word	818298880
	.word	823848960
	.word	897724416
	.word	902967296
	.word	992010240
	.word	1079869440
	.word	1095532544
	.word	1135153152
	.word	1141149696
	.word	1253367808
	.word	1256329216
	.word	1294544896
	.word	1360941056
	.word	1366278144
	.word	1389850624
	.word	1461882880
	.word	1571123200
	.word	1572757504
	.word	1618010112
	.word	1627127808
	.word	1689403392
	.word	1734565888
	.word	1734705152
	.word	1795424256
	.word	1797844992
	.word	1851068416
	.word	1887174656
	.word	1907736576
	.word	1913004032
	.word	1982468096
	.word	2022309888
	.word	2048790528
	.word	2064031744
	.word	2114240512
	.word	2135748608
	.word	-2147483648
	.word	45
	.word	8
	.word	55
	.word	9
	.word	21
	.word	54
	.word	41
	.word	7
	.word	6
	.word	22
	.word	31
	.word	47
	.word	23
	.word	11
	.word	48
	.word	53
	.word	0
	.word	61
	.word	63
	.word	50
	.word	17
	.word	27
	.word	12
	.word	19
	.word	10
	.word	40
	.word	14
	.word	51
	.word	39
	.word	59
	.word	2
	.word	43
	.word	18
	.word	42
	.word	52
	.word	28
	.word	16
	.word	44
	.word	3
	.word	5
	.word	15
	.word	35
	.word	58
	.word	33
	.word	57
	.word	49
	.word	34
	.word	30
	.word	46
	.word	4
	.word	37
	.word	60
	.word	32
	.word	36
	.word	25
	.word	56
	.word	24
	.word	13
	.word	20
	.word	38
	.word	29
	.word	26
	.word	62
	.word	1
	.global	pat2
	.align	2
	.type	pat2, %object
	.size	pat2, 512
pat2:
	.word	152227840
	.word	241238016
	.word	259346432
	.word	292417536
	.word	311316480
	.word	466948096
	.word	619290624
	.word	660877312
	.word	684670976
	.word	690786304
	.word	747663360
	.word	758681600
	.word	764678144
	.word	783544320
	.word	820592640
	.word	829652992
	.word	860073984
	.word	875356160
	.word	886120448
	.word	892784640
	.word	903979008
	.word	904187904
	.word	905793536
	.word	910340096
	.word	958713856
	.word	959074304
	.word	1045630976
	.word	1057939456
	.word	1071611904
	.word	1096364032
	.word	1103626240
	.word	1133875200
	.word	1136394240
	.word	1176272896
	.word	1217536000
	.word	1230082048
	.word	1332715520
	.word	1344749568
	.word	1351278592
	.word	1399771136
	.word	1410678784
	.word	1502167040
	.word	1516658688
	.word	1527406592
	.word	1537208320
	.word	1544589312
	.word	1569521664
	.word	1574719488
	.word	1607225344
	.word	1664507904
	.word	1672331264
	.word	1683709952
	.word	1729015808
	.word	1796935680
	.word	1821990912
	.word	1859297280
	.word	1860497408
	.word	1912393728
	.word	1934241792
	.word	1992159232
	.word	2008281088
	.word	2087034880
	.word	2099249152
	.word	-2147483648
	.word	31
	.word	35
	.word	36
	.word	52
	.word	27
	.word	56
	.word	40
	.word	13
	.word	51
	.word	49
	.word	43
	.word	37
	.word	62
	.word	42
	.word	24
	.word	29
	.word	48
	.word	25
	.word	7
	.word	61
	.word	22
	.word	57
	.word	11
	.word	32
	.word	2
	.word	54
	.word	41
	.word	6
	.word	55
	.word	15
	.word	20
	.word	26
	.word	63
	.word	44
	.word	12
	.word	4
	.word	19
	.word	58
	.word	60
	.word	59
	.word	47
	.word	23
	.word	30
	.word	50
	.word	53
	.word	34
	.word	9
	.word	38
	.word	45
	.word	8
	.word	28
	.word	3
	.word	16
	.word	33
	.word	5
	.word	21
	.word	1
	.word	10
	.word	46
	.word	18
	.word	0
	.word	14
	.word	39
	.word	17
	.global	pat3
	.align	2
	.type	pat3, %object
	.size	pat3, 512
pat3:
	.word	5582848
	.word	27123712
	.word	111280128
	.word	145043456
	.word	149917696
	.word	204623872
	.word	288546816
	.word	329228288
	.word	338079744
	.word	353366016
	.word	465309696
	.word	512016384
	.word	524541952
	.word	527634432
	.word	569147392
	.word	589250560
	.word	591659008
	.word	591814656
	.word	638279680
	.word	678064128
	.word	693207040
	.word	702763008
	.word	802910208
	.word	814338048
	.word	908984320
	.word	1008701440
	.word	1039323136
	.word	1070489600
	.word	1076834304
	.word	1092087808
	.word	1105223680
	.word	1131737088
	.word	1159614464
	.word	1168478208
	.word	1230417920
	.word	1231089664
	.word	1251164160
	.word	1271328768
	.word	1296441344
	.word	1324318720
	.word	1331728384
	.word	1356599296
	.word	1359093760
	.word	1413046272
	.word	1447145472
	.word	1468993536
	.word	1486680064
	.word	1493774336
	.word	1571205120
	.word	1606352896
	.word	1616519168
	.word	1698856960
	.word	1699938304
	.word	1728421888
	.word	1840664576
	.word	1909387264
	.word	1918509056
	.word	1941917696
	.word	1974251520
	.word	1980125184
	.word	1981071360
	.word	2007674880
	.word	2029453312
	.word	-2147483648
	.word	15
	.word	30
	.word	31
	.word	16
	.word	49
	.word	13
	.word	55
	.word	59
	.word	4
	.word	24
	.word	26
	.word	44
	.word	17
	.word	0
	.word	18
	.word	54
	.word	10
	.word	3
	.word	46
	.word	34
	.word	29
	.word	22
	.word	45
	.word	5
	.word	38
	.word	32
	.word	39
	.word	50
	.word	48
	.word	53
	.word	12
	.word	25
	.word	35
	.word	56
	.word	51
	.word	52
	.word	1
	.word	33
	.word	43
	.word	63
	.word	47
	.word	37
	.word	23
	.word	20
	.word	60
	.word	14
	.word	11
	.word	21
	.word	8
	.word	57
	.word	27
	.word	41
	.word	6
	.word	58
	.word	62
	.word	2
	.word	19
	.word	61
	.word	28
	.word	36
	.word	40
	.word	7
	.word	9
	.word	42
	.global	pat4
	.align	2
	.type	pat4, %object
	.size	pat4, 512
pat4:
	.word	4345856
	.word	9338880
	.word	79233024
	.word	142852096
	.word	157868032
	.word	195870720
	.word	283480064
	.word	307892224
	.word	317718528
	.word	350732288
	.word	359522304
	.word	422187008
	.word	439062528
	.word	457834496
	.word	468303872
	.word	490459136
	.word	606347264
	.word	622243840
	.word	730386432
	.word	731291648
	.word	734867456
	.word	744132608
	.word	765935616
	.word	767168512
	.word	815263744
	.word	858714112
	.word	877809664
	.word	907620352
	.word	925220864
	.word	937844736
	.word	1026641920
	.word	1048653824
	.word	1078648832
	.word	1086750720
	.word	1123627008
	.word	1152466944
	.word	1152471040
	.word	1195057152
	.word	1225031680
	.word	1283014656
	.word	1354104832
	.word	1387515904
	.word	1489375232
	.word	1534935040
	.word	1558646784
	.word	1562497024
	.word	1566826496
	.word	1577119744
	.word	1625862144
	.word	1714950144
	.word	1724317696
	.word	1749221376
	.word	1887182848
	.word	1905758208
	.word	1919422464
	.word	1946251264
	.word	1998704640
	.word	2048647168
	.word	2049757184
	.word	2065846272
	.word	2083590144
	.word	2114166784
	.word	2118131712
	.word	-2147483648
	.word	52
	.word	62
	.word	28
	.word	47
	.word	51
	.word	37
	.word	31
	.word	36
	.word	4
	.word	58
	.word	26
	.word	29
	.word	16
	.word	59
	.word	57
	.word	33
	.word	22
	.word	27
	.word	49
	.word	44
	.word	19
	.word	56
	.word	34
	.word	23
	.word	5
	.word	14
	.word	45
	.word	48
	.word	21
	.word	25
	.word	18
	.word	12
	.word	43
	.word	53
	.word	60
	.word	17
	.word	46
	.word	15
	.word	63
	.word	30
	.word	42
	.word	38
	.word	41
	.word	8
	.word	39
	.word	20
	.word	1
	.word	10
	.word	54
	.word	40
	.word	32
	.word	24
	.word	9
	.word	2
	.word	35
	.word	3
	.word	7
	.word	0
	.word	61
	.word	11
	.word	13
	.word	55
	.word	6
	.word	50
	.global	pat5
	.align	2
	.type	pat5, %object
	.size	pat5, 512
pat5:
	.word	11431936
	.word	70705152
	.word	136187904
	.word	187129856
	.word	260829184
	.word	263348224
	.word	266854400
	.word	326815744
	.word	347660288
	.word	360357888
	.word	427925504
	.word	439545856
	.word	466214912
	.word	502222848
	.word	512684032
	.word	543748096
	.word	577314816
	.word	581353472
	.word	626782208
	.word	647458816
	.word	660705280
	.word	695713792
	.word	752926720
	.word	773767168
	.word	774291456
	.word	835616768
	.word	887537664
	.word	912052224
	.word	937979904
	.word	945696768
	.word	981344256
	.word	983330816
	.word	1096380416
	.word	1122541568
	.word	1161609216
	.word	1162604544
	.word	1260699648
	.word	1269121024
	.word	1311797248
	.word	1325764608
	.word	1440063488
	.word	1445425152
	.word	1454964736
	.word	1484967936
	.word	1512853504
	.word	1530302464
	.word	1564745728
	.word	1567035392
	.word	1608318976
	.word	1624113152
	.word	1668362240
	.word	1678966784
	.word	1704407040
	.word	1739427840
	.word	1752580096
	.word	1757093888
	.word	1762463744
	.word	1781301248
	.word	1944711168
	.word	1961316352
	.word	2005274624
	.word	2012106752
	.word	2094903296
	.word	-2147483648
	.word	42
	.word	25
	.word	15
	.word	58
	.word	32
	.word	61
	.word	30
	.word	56
	.word	48
	.word	62
	.word	38
	.word	50
	.word	7
	.word	45
	.word	16
	.word	29
	.word	12
	.word	4
	.word	41
	.word	3
	.word	27
	.word	18
	.word	57
	.word	10
	.word	51
	.word	17
	.word	21
	.word	14
	.word	35
	.word	19
	.word	44
	.word	47
	.word	49
	.word	26
	.word	59
	.word	63
	.word	28
	.word	55
	.word	20
	.word	13
	.word	5
	.word	6
	.word	37
	.word	54
	.word	40
	.word	22
	.word	23
	.word	46
	.word	11
	.word	36
	.word	34
	.word	31
	.word	2
	.word	60
	.word	9
	.word	52
	.word	24
	.word	1
	.word	53
	.word	0
	.word	39
	.word	43
	.word	8
	.word	33
	.global	pat6
	.align	2
	.type	pat6, %object
	.size	pat6, 512
pat6:
	.word	11345920
	.word	35844096
	.word	105594880
	.word	113664000
	.word	116609024
	.word	166002688
	.word	242499584
	.word	252874752
	.word	270249984
	.word	297762816
	.word	347639808
	.word	378650624
	.word	396414976
	.word	404201472
	.word	429367296
	.word	494100480
	.word	498282496
	.word	534609920
	.word	568680448
	.word	577159168
	.word	579293184
	.word	582500352
	.word	588173312
	.word	597446656
	.word	618766336
	.word	660557824
	.word	688087040
	.word	704024576
	.word	777224192
	.word	788307968
	.word	789299200
	.word	790360064
	.word	811380736
	.word	835612672
	.word	878460928
	.word	903147520
	.word	921001984
	.word	988405760
	.word	1019375616
	.word	1074884608
	.word	1117384704
	.word	1129066496
	.word	1144864768
	.word	1163055104
	.word	1250590720
	.word	1289658368
	.word	1371361280
	.word	1477197824
	.word	1480069120
	.word	1507590144
	.word	1537732608
	.word	1569239040
	.word	1577861120
	.word	1592094720
	.word	1643376640
	.word	1671733248
	.word	1755881472
	.word	1760317440
	.word	1765257216
	.word	1913380864
	.word	1926189056
	.word	1962704896
	.word	1984315392
	.word	-2147483648
	.word	31
	.word	46
	.word	36
	.word	22
	.word	63
	.word	12
	.word	51
	.word	60
	.word	13
	.word	44
	.word	41
	.word	6
	.word	11
	.word	17
	.word	42
	.word	24
	.word	16
	.word	61
	.word	20
	.word	26
	.word	35
	.word	21
	.word	29
	.word	55
	.word	50
	.word	45
	.word	62
	.word	19
	.word	54
	.word	9
	.word	30
	.word	34
	.word	53
	.word	52
	.word	10
	.word	39
	.word	0
	.word	49
	.word	48
	.word	38
	.word	40
	.word	28
	.word	23
	.word	56
	.word	2
	.word	5
	.word	4
	.word	59
	.word	14
	.word	57
	.word	3
	.word	25
	.word	43
	.word	32
	.word	27
	.word	47
	.word	8
	.word	7
	.word	37
	.word	33
	.word	1
	.word	18
	.word	58
	.word	15
	.global	pat7
	.align	2
	.type	pat7, %object
	.size	pat7, 512
pat7:
	.word	14168064
	.word	22638592
	.word	38121472
	.word	111628288
	.word	150839296
	.word	157343744
	.word	221315072
	.word	242012160
	.word	336175104
	.word	354553856
	.word	369463296
	.word	456802304
	.word	485400576
	.word	517054464
	.word	519106560
	.word	561131520
	.word	569360384
	.word	609828864
	.word	651685888
	.word	683995136
	.word	799576064
	.word	810483712
	.word	819703808
	.word	819867648
	.word	862310400
	.word	920371200
	.word	986390528
	.word	1042878464
	.word	1065197568
	.word	1094000640
	.word	1101066240
	.word	1130135552
	.word	1148559360
	.word	1196646400
	.word	1198678016
	.word	1250029568
	.word	1273290752
	.word	1274040320
	.word	1276489728
	.word	1364934656
	.word	1391415296
	.word	1418510336
	.word	1452449792
	.word	1508843520
	.word	1536671744
	.word	1548681216
	.word	1562087424
	.word	1636749312
	.word	1639759872
	.word	1642098688
	.word	1671049216
	.word	1697652736
	.word	1745096704
	.word	1810194432
	.word	1914318848
	.word	1925812224
	.word	1946914816
	.word	1971769344
	.word	1978441728
	.word	1983930368
	.word	2070454272
	.word	2110939136
	.word	2127908864
	.word	-2147483648
	.word	44
	.word	57
	.word	22
	.word	35
	.word	63
	.word	11
	.word	15
	.word	49
	.word	61
	.word	40
	.word	29
	.word	20
	.word	19
	.word	42
	.word	32
	.word	12
	.word	41
	.word	6
	.word	46
	.word	60
	.word	52
	.word	5
	.word	36
	.word	10
	.word	2
	.word	8
	.word	3
	.word	33
	.word	54
	.word	39
	.word	58
	.word	48
	.word	62
	.word	7
	.word	51
	.word	34
	.word	0
	.word	1
	.word	18
	.word	9
	.word	55
	.word	31
	.word	23
	.word	38
	.word	25
	.word	21
	.word	17
	.word	24
	.word	13
	.word	50
	.word	16
	.word	14
	.word	43
	.word	53
	.word	45
	.word	28
	.word	59
	.word	37
	.word	26
	.word	30
	.word	47
	.word	27
	.word	56
	.word	4
	.global	pat8
	.align	2
	.type	pat8, %object
	.size	pat8, 512
pat8:
	.word	1802240
	.word	41857024
	.word	94687232
	.word	116178944
	.word	189980672
	.word	191946752
	.word	208515072
	.word	226742272
	.word	248844288
	.word	331714560
	.word	335474688
	.word	338563072
	.word	422379520
	.word	447098880
	.word	505610240
	.word	524697600
	.word	551436288
	.word	573878272
	.word	625315840
	.word	654409728
	.word	673591296
	.word	701263872
	.word	841117696
	.word	851849216
	.word	883884032
	.word	937586688
	.word	989630464
	.word	1008099328
	.word	1039269888
	.word	1079758848
	.word	1093087232
	.word	1170444288
	.word	1193009152
	.word	1197006848
	.word	1262469120
	.word	1282088960
	.word	1283518464
	.word	1288527872
	.word	1302200320
	.word	1309143040
	.word	1324195840
	.word	1411047424
	.word	1487564800
	.word	1512857600
	.word	1516404736
	.word	1522089984
	.word	1541259264
	.word	1562198016
	.word	1583624192
	.word	1601368064
	.word	1685524480
	.word	1740455936
	.word	1781055488
	.word	1821863936
	.word	1824841728
	.word	1896628224
	.word	1958240256
	.word	1976528896
	.word	2010427392
	.word	2020663296
	.word	2085076992
	.word	2125799424
	.word	2143199232
	.word	-2147483648
	.word	7
	.word	29
	.word	62
	.word	8
	.word	54
	.word	38
	.word	35
	.word	45
	.word	60
	.word	55
	.word	1
	.word	40
	.word	4
	.word	19
	.word	50
	.word	63
	.word	48
	.word	51
	.word	13
	.word	27
	.word	33
	.word	39
	.word	52
	.word	46
	.word	10
	.word	9
	.word	56
	.word	2
	.word	42
	.word	43
	.word	47
	.word	44
	.word	17
	.word	5
	.word	25
	.word	6
	.word	57
	.word	23
	.word	15
	.word	58
	.word	59
	.word	22
	.word	14
	.word	26
	.word	32
	.word	61
	.word	30
	.word	0
	.word	11
	.word	12
	.word	36
	.word	24
	.word	53
	.word	49
	.word	3
	.word	20
	.word	31
	.word	28
	.word	34
	.word	18
	.word	41
	.word	21
	.word	16
	.word	37
	.global	pat9
	.align	2
	.type	pat9, %object
	.size	pat9, 512
pat9:
	.word	95784960
	.word	174944256
	.word	195899392
	.word	234426368
	.word	291164160
	.word	335405056
	.word	392265728
	.word	462327808
	.word	505114624
	.word	513265664
	.word	561213440
	.word	564518912
	.word	605290496
	.word	626585600
	.word	642228224
	.word	673542144
	.word	677339136
	.word	750231552
	.word	784011264
	.word	816742400
	.word	827600896
	.word	828157952
	.word	828465152
	.word	861642752
	.word	871194624
	.word	902770688
	.word	1096986624
	.word	1141485568
	.word	1177133056
	.word	1265913856
	.word	1275830272
	.word	1287409664
	.word	1306095616
	.word	1328852992
	.word	1331916800
	.word	1402822656
	.word	1408487424
	.word	1446522880
	.word	1447211008
	.word	1517416448
	.word	1526702080
	.word	1531469824
	.word	1536094208
	.word	1624801280
	.word	1633849344
	.word	1650249728
	.word	1664245760
	.word	1731584000
	.word	1731694592
	.word	1780916224
	.word	1781010432
	.word	1805217792
	.word	1817235456
	.word	1824964608
	.word	1867079680
	.word	1903874048
	.word	1932443648
	.word	1951252480
	.word	1998487552
	.word	2010054656
	.word	2043334656
	.word	2075267072
	.word	2122006528
	.word	-2147483648
	.word	35
	.word	9
	.word	46
	.word	6
	.word	29
	.word	2
	.word	3
	.word	54
	.word	55
	.word	57
	.word	41
	.word	16
	.word	44
	.word	5
	.word	0
	.word	59
	.word	10
	.word	61
	.word	22
	.word	42
	.word	47
	.word	12
	.word	14
	.word	50
	.word	39
	.word	34
	.word	21
	.word	32
	.word	25
	.word	15
	.word	26
	.word	8
	.word	38
	.word	60
	.word	28
	.word	53
	.word	62
	.word	49
	.word	58
	.word	43
	.word	36
	.word	37
	.word	52
	.word	7
	.word	19
	.word	63
	.word	17
	.word	11
	.word	45
	.word	33
	.word	23
	.word	27
	.word	24
	.word	18
	.word	48
	.word	56
	.word	31
	.word	13
	.word	51
	.word	30
	.word	4
	.word	20
	.word	40
	.word	1
	.global	pat10
	.align	2
	.type	pat10, %object
	.size	pat10, 512
pat10:
	.word	10952704
	.word	25206784
	.word	104882176
	.word	107868160
	.word	138129408
	.word	177664000
	.word	219754496
	.word	330936320
	.word	333111296
	.word	370184192
	.word	408145920
	.word	411594752
	.word	435200000
	.word	571805696
	.word	580624384
	.word	649428992
	.word	716128256
	.word	737476608
	.word	832757760
	.word	836034560
	.word	840523776
	.word	890478592
	.word	916639744
	.word	927379456
	.word	949669888
	.word	970092544
	.word	1034760192
	.word	1038438400
	.word	1051308032
	.word	1052794880
	.word	1066536960
	.word	1127034880
	.word	1136574464
	.word	1138597888
	.word	1202892800
	.word	1216798720
	.word	1227415552
	.word	1236082688
	.word	1292759040
	.word	1329647616
	.word	1351979008
	.word	1425686528
	.word	1443434496
	.word	1451806720
	.word	1534951424
	.word	1601163264
	.word	1612595200
	.word	1693097984
	.word	1733484544
	.word	1744826368
	.word	1779974144
	.word	1792516096
	.word	1792786432
	.word	1816346624
	.word	1866797056
	.word	1878736896
	.word	1887363072
	.word	1897271296
	.word	1900457984
	.word	1977348096
	.word	1998950400
	.word	2060271616
	.word	2063011840
	.word	-2147483648
	.word	61
	.word	38
	.word	5
	.word	23
	.word	62
	.word	11
	.word	53
	.word	9
	.word	17
	.word	45
	.word	30
	.word	29
	.word	41
	.word	60
	.word	39
	.word	21
	.word	40
	.word	19
	.word	44
	.word	33
	.word	42
	.word	50
	.word	56
	.word	28
	.word	32
	.word	46
	.word	43
	.word	20
	.word	16
	.word	3
	.word	54
	.word	8
	.word	4
	.word	26
	.word	15
	.word	34
	.word	47
	.word	12
	.word	6
	.word	27
	.word	48
	.word	0
	.word	1
	.word	2
	.word	57
	.word	59
	.word	7
	.word	58
	.word	49
	.word	35
	.word	24
	.word	37
	.word	52
	.word	63
	.word	10
	.word	55
	.word	36
	.word	13
	.word	14
	.word	25
	.word	18
	.word	22
	.word	31
	.word	51
	.global	pat11
	.align	2
	.type	pat11, %object
	.size	pat11, 512
pat11:
	.word	10051584
	.word	11530240
	.word	26845184
	.word	74395648
	.word	122421248
	.word	123260928
	.word	214994944
	.word	239648768
	.word	244178944
	.word	252776448
	.word	260550656
	.word	280084480
	.word	366358528
	.word	397545472
	.word	405614592
	.word	420900864
	.word	428662784
	.word	466907136
	.word	503255040
	.word	517734400
	.word	529072128
	.word	545652736
	.word	589328384
	.word	700272640
	.word	717287424
	.word	775507968
	.word	779120640
	.word	849207296
	.word	882372608
	.word	940044288
	.word	950616064
	.word	1084329984
	.word	1097392128
	.word	1120534528
	.word	1121882112
	.word	1159282688
	.word	1179590656
	.word	1191243776
	.word	1205579776
	.word	1303277568
	.word	1348861952
	.word	1398439936
	.word	1430695936
	.word	1471500288
	.word	1482727424
	.word	1520361472
	.word	1536004096
	.word	1548349440
	.word	1555353600
	.word	1562951680
	.word	1625083904
	.word	1649766400
	.word	1689305088
	.word	1699524608
	.word	1702125568
	.word	1709346816
	.word	1716056064
	.word	1724211200
	.word	1771692032
	.word	1779548160
	.word	1822441472
	.word	2045116416
	.word	2128404480
	.word	-2147483648
	.word	16
	.word	28
	.word	2
	.word	38
	.word	10
	.word	57
	.word	21
	.word	26
	.word	61
	.word	43
	.word	46
	.word	31
	.word	56
	.word	7
	.word	47
	.word	48
	.word	58
	.word	25
	.word	63
	.word	4
	.word	59
	.word	15
	.word	32
	.word	50
	.word	1
	.word	40
	.word	53
	.word	18
	.word	17
	.word	24
	.word	29
	.word	30
	.word	55
	.word	36
	.word	49
	.word	42
	.word	41
	.word	37
	.word	23
	.word	39
	.word	6
	.word	51
	.word	33
	.word	9
	.word	45
	.word	5
	.word	35
	.word	19
	.word	44
	.word	11
	.word	34
	.word	0
	.word	27
	.word	12
	.word	60
	.word	62
	.word	20
	.word	13
	.word	22
	.word	8
	.word	14
	.word	54
	.word	3
	.word	52
	.global	pat12
	.align	2
	.type	pat12, %object
	.size	pat12, 512
pat12:
	.word	5320704
	.word	28778496
	.word	31617024
	.word	61222912
	.word	286638080
	.word	361447424
	.word	375713792
	.word	459698176
	.word	528711680
	.word	557907968
	.word	638349312
	.word	752414720
	.word	753102848
	.word	770793472
	.word	777641984
	.word	781103104
	.word	784146432
	.word	790437888
	.word	801382400
	.word	818937856
	.word	837750784
	.word	855744512
	.word	940142592
	.word	950132736
	.word	1031897088
	.word	1049198592
	.word	1066463232
	.word	1198587904
	.word	1200336896
	.word	1213902848
	.word	1222983680
	.word	1291718656
	.word	1403555840
	.word	1406205952
	.word	1446019072
	.word	1458810880
	.word	1467965440
	.word	1483948032
	.word	1485418496
	.word	1487761408
	.word	1495506944
	.word	1504636928
	.word	1571631104
	.word	1580396544
	.word	1672716288
	.word	1717342208
	.word	1758322688
	.word	1764040704
	.word	1786212352
	.word	1786355712
	.word	1813970944
	.word	1824104448
	.word	1831964672
	.word	1841831936
	.word	1842663424
	.word	1847099392
	.word	1904529408
	.word	1913053184
	.word	1939341312
	.word	1946865664
	.word	1967599616
	.word	1981075456
	.word	2041671680
	.word	-2147483648
	.word	4
	.word	60
	.word	10
	.word	35
	.word	6
	.word	31
	.word	5
	.word	18
	.word	53
	.word	17
	.word	20
	.word	8
	.word	56
	.word	29
	.word	7
	.word	48
	.word	40
	.word	0
	.word	12
	.word	39
	.word	2
	.word	43
	.word	15
	.word	61
	.word	42
	.word	30
	.word	50
	.word	14
	.word	49
	.word	38
	.word	34
	.word	58
	.word	24
	.word	55
	.word	33
	.word	63
	.word	28
	.word	51
	.word	59
	.word	46
	.word	11
	.word	22
	.word	45
	.word	41
	.word	13
	.word	44
	.word	23
	.word	47
	.word	3
	.word	32
	.word	16
	.word	54
	.word	26
	.word	19
	.word	25
	.word	52
	.word	27
	.word	57
	.word	36
	.word	9
	.word	37
	.word	21
	.word	62
	.word	1
	.global	pat13
	.align	2
	.type	pat13, %object
	.size	pat13, 512
pat13:
	.word	55697408
	.word	93417472
	.word	177807360
	.word	205983744
	.word	208257024
	.word	208588800
	.word	210866176
	.word	225521664
	.word	247545856
	.word	262344704
	.word	391540736
	.word	495034368
	.word	524058624
	.word	559632384
	.word	652480512
	.word	707608576
	.word	729088000
	.word	736755712
	.word	744153088
	.word	748863488
	.word	816398336
	.word	822558720
	.word	827142144
	.word	833740800
	.word	836640768
	.word	839262208
	.word	869945344
	.word	931364864
	.word	945733632
	.word	947126272
	.word	947884032
	.word	952000512
	.word	1026519040
	.word	1051676672
	.word	1076256768
	.word	1076834304
	.word	1090363392
	.word	1246482432
	.word	1266880512
	.word	1274843136
	.word	1288347648
	.word	1319383040
	.word	1343815680
	.word	1417445376
	.word	1489788928
	.word	1491750912
	.word	1507725312
	.word	1551831040
	.word	1601253376
	.word	1677303808
	.word	1720111104
	.word	1734086656
	.word	1825357824
	.word	1849724928
	.word	1874251776
	.word	1906769920
	.word	1928724480
	.word	2008911872
	.word	2030120960
	.word	2056073216
	.word	2067009536
	.word	2106552320
	.word	2145660928
	.word	-2147483648
	.word	10
	.word	52
	.word	48
	.word	8
	.word	34
	.word	4
	.word	35
	.word	19
	.word	3
	.word	17
	.word	54
	.word	45
	.word	31
	.word	38
	.word	24
	.word	44
	.word	21
	.word	36
	.word	22
	.word	11
	.word	43
	.word	40
	.word	39
	.word	26
	.word	5
	.word	30
	.word	2
	.word	7
	.word	57
	.word	12
	.word	20
	.word	32
	.word	62
	.word	15
	.word	55
	.word	14
	.word	25
	.word	58
	.word	6
	.word	33
	.word	49
	.word	9
	.word	59
	.word	27
	.word	13
	.word	63
	.word	42
	.word	61
	.word	1
	.word	51
	.word	0
	.word	50
	.word	37
	.word	47
	.word	16
	.word	18
	.word	41
	.word	56
	.word	60
	.word	46
	.word	23
	.word	28
	.word	53
	.word	29
	.global	pat14
	.align	2
	.type	pat14, %object
	.size	pat14, 512
pat14:
	.word	16310272
	.word	23699456
	.word	58810368
	.word	108695552
	.word	144650240
	.word	180973568
	.word	210608128
	.word	252145664
	.word	295636992
	.word	328212480
	.word	427315200
	.word	480768000
	.word	529891328
	.word	539480064
	.word	575795200
	.word	610668544
	.word	627064832
	.word	731004928
	.word	736489472
	.word	784494592
	.word	856313856
	.word	860479488
	.word	866664448
	.word	877633536
	.word	877740032
	.word	932601856
	.word	938520576
	.word	939315200
	.word	946667520
	.word	962592768
	.word	970866688
	.word	1046482944
	.word	1048514560
	.word	1120276480
	.word	1216372736
	.word	1295843328
	.word	1331687424
	.word	1361842176
	.word	1409105920
	.word	1497628672
	.word	1530421248
	.word	1586102272
	.word	1607086080
	.word	1612103680
	.word	1640660992
	.word	1687244800
	.word	1723437056
	.word	1730306048
	.word	1773334528
	.word	1783050240
	.word	1784217600
	.word	1820606464
	.word	1824047104
	.word	1899712512
	.word	1968742400
	.word	1978314752
	.word	1993428992
	.word	2012209152
	.word	2021007360
	.word	2078130176
	.word	2095652864
	.word	2110013440
	.word	2136256512
	.word	-2147483648
	.word	54
	.word	31
	.word	48
	.word	10
	.word	51
	.word	49
	.word	55
	.word	19
	.word	38
	.word	18
	.word	44
	.word	5
	.word	17
	.word	20
	.word	16
	.word	11
	.word	9
	.word	3
	.word	42
	.word	59
	.word	63
	.word	45
	.word	25
	.word	60
	.word	57
	.word	21
	.word	40
	.word	29
	.word	0
	.word	39
	.word	26
	.word	7
	.word	53
	.word	12
	.word	13
	.word	2
	.word	58
	.word	41
	.word	22
	.word	8
	.word	14
	.word	28
	.word	46
	.word	24
	.word	27
	.word	6
	.word	52
	.word	32
	.word	56
	.word	4
	.word	30
	.word	36
	.word	15
	.word	47
	.word	23
	.word	37
	.word	43
	.word	35
	.word	50
	.word	33
	.word	61
	.word	34
	.word	1
	.word	62
	.global	pat15
	.align	2
	.type	pat15, %object
	.size	pat15, 512
pat15:
	.word	14770176
	.word	15491072
	.word	16166912
	.word	104116224
	.word	109666304
	.word	152940544
	.word	204242944
	.word	235417600
	.word	265809920
	.word	273125376
	.word	393478144
	.word	405348352
	.word	447520768
	.word	481644544
	.word	489414656
	.word	573239296
	.word	749744128
	.word	799784960
	.word	839073792
	.word	901836800
	.word	1012842496
	.word	1083211776
	.word	1093197824
	.word	1145114624
	.word	1153224704
	.word	1326104576
	.word	1365749760
	.word	1430372352
	.word	1478213632
	.word	1481527296
	.word	1485811712
	.word	1497182208
	.word	1529204736
	.word	1573490688
	.word	1622364160
	.word	1627373568
	.word	1670283264
	.word	1674543104
	.word	1693323264
	.word	1696841728
	.word	1699352576
	.word	1752952832
	.word	1757343744
	.word	1770151936
	.word	1775828992
	.word	1784815616
	.word	1830522880
	.word	1830686720
	.word	1837654016
	.word	1877254144
	.word	1877655552
	.word	1913331712
	.word	1934475264
	.word	1934819328
	.word	1945231360
	.word	1954136064
	.word	1994600448
	.word	2020458496
	.word	2041839616
	.word	2045022208
	.word	2070331392
	.word	2073051136
	.word	2089836544
	.word	-2147483648
	.word	6
	.word	17
	.word	62
	.word	20
	.word	61
	.word	32
	.word	22
	.word	14
	.word	28
	.word	18
	.word	3
	.word	42
	.word	63
	.word	43
	.word	46
	.word	34
	.word	29
	.word	30
	.word	35
	.word	1
	.word	37
	.word	40
	.word	10
	.word	26
	.word	5
	.word	31
	.word	15
	.word	54
	.word	8
	.word	33
	.word	9
	.word	4
	.word	39
	.word	53
	.word	23
	.word	25
	.word	41
	.word	59
	.word	12
	.word	13
	.word	60
	.word	2
	.word	7
	.word	56
	.word	58
	.word	27
	.word	11
	.word	38
	.word	36
	.word	45
	.word	47
	.word	0
	.word	57
	.word	50
	.word	48
	.word	16
	.word	51
	.word	49
	.word	55
	.word	52
	.word	44
	.word	24
	.word	19
	.word	21
	.global	pat16
	.align	2
	.type	pat16, %object
	.size	pat16, 512
pat16:
	.word	93757440
	.word	140787712
	.word	177483776
	.word	223993856
	.word	274919424
	.word	276996096
	.word	281128960
	.word	284811264
	.word	300302336
	.word	317140992
	.word	365850624
	.word	369324032
	.word	382918656
	.word	386093056
	.word	408604672
	.word	416919552
	.word	430731264
	.word	456105984
	.word	483835904
	.word	492765184
	.word	527613952
	.word	545853440
	.word	616538112
	.word	633458688
	.word	685916160
	.word	710901760
	.word	772464640
	.word	803074048
	.word	823775232
	.word	858710016
	.word	880844800
	.word	887771136
	.word	892657664
	.word	892907520
	.word	908992512
	.word	955613184
	.word	967507968
	.word	978423808
	.word	979546112
	.word	989880320
	.word	1028796416
	.word	1041199104
	.word	1110859776
	.word	1123987456
	.word	1140928512
	.word	1186562048
	.word	1232683008
	.word	1305374720
	.word	1327443968
	.word	1475137536
	.word	1521098752
	.word	1598132224
	.word	1632727040
	.word	1738002432
	.word	1772224512
	.word	1778843648
	.word	1884770304
	.word	1966219264
	.word	1974067200
	.word	2030317568
	.word	2038910976
	.word	2061352960
	.word	2112389120
	.word	-2147483648
	.word	26
	.word	25
	.word	6
	.word	50
	.word	32
	.word	53
	.word	34
	.word	27
	.word	3
	.word	16
	.word	49
	.word	28
	.word	46
	.word	38
	.word	56
	.word	4
	.word	18
	.word	24
	.word	51
	.word	36
	.word	63
	.word	5
	.word	48
	.word	13
	.word	43
	.word	55
	.word	0
	.word	62
	.word	35
	.word	7
	.word	41
	.word	21
	.word	44
	.word	60
	.word	31
	.word	39
	.word	14
	.word	8
	.word	61
	.word	58
	.word	52
	.word	23
	.word	59
	.word	33
	.word	10
	.word	37
	.word	20
	.word	30
	.word	40
	.word	22
	.word	11
	.word	54
	.word	57
	.word	1
	.word	29
	.word	47
	.word	2
	.word	17
	.word	19
	.word	45
	.word	15
	.word	9
	.word	12
	.word	42
	.global	pat17
	.align	2
	.type	pat17, %object
	.size	pat17, 512
pat17:
	.word	42643456
	.word	61636608
	.word	66981888
	.word	104493056
	.word	152027136
	.word	188686336
	.word	221192192
	.word	235085824
	.word	315932672
	.word	320032768
	.word	342171648
	.word	355667968
	.word	359710720
	.word	378068992
	.word	381431808
	.word	482226176
	.word	534835200
	.word	622325760
	.word	650555392
	.word	707280896
	.word	709763072
	.word	719147008
	.word	735076352
	.word	748920832
	.word	783355904
	.word	843911168
	.word	895885312
	.word	946425856
	.word	953053184
	.word	958054400
	.word	965709824
	.word	966037504
	.word	1075785728
	.word	1165950976
	.word	1170657280
	.word	1263931392
	.word	1378861056
	.word	1424949248
	.word	1436516352
	.word	1445621760
	.word	1453342720
	.word	1471578112
	.word	1500520448
	.word	1610387456
	.word	1671913472
	.word	1673752576
	.word	1708384256
	.word	1729298432
	.word	1778622464
	.word	1808621568
	.word	1810456576
	.word	1811226624
	.word	1875742720
	.word	1882767360
	.word	1889824768
	.word	1921519616
	.word	1928134656
	.word	1963151360
	.word	1975586816
	.word	2012893184
	.word	2038206464
	.word	2038509568
	.word	2075897856
	.word	-2147483648
	.word	18
	.word	15
	.word	56
	.word	5
	.word	25
	.word	47
	.word	39
	.word	55
	.word	12
	.word	14
	.word	51
	.word	33
	.word	0
	.word	7
	.word	9
	.word	44
	.word	50
	.word	31
	.word	62
	.word	59
	.word	3
	.word	35
	.word	23
	.word	17
	.word	30
	.word	60
	.word	11
	.word	24
	.word	40
	.word	20
	.word	52
	.word	2
	.word	22
	.word	8
	.word	57
	.word	42
	.word	32
	.word	54
	.word	36
	.word	48
	.word	49
	.word	13
	.word	58
	.word	10
	.word	28
	.word	63
	.word	16
	.word	41
	.word	27
	.word	21
	.word	37
	.word	4
	.word	1
	.word	29
	.word	19
	.word	6
	.word	53
	.word	45
	.word	46
	.word	38
	.word	34
	.word	43
	.word	61
	.word	26
	.global	pat18
	.align	2
	.type	pat18, %object
	.size	pat18, 512
pat18:
	.word	59596800
	.word	87527424
	.word	97181696
	.word	97648640
	.word	170164224
	.word	189595648
	.word	226230272
	.word	259198976
	.word	292216832
	.word	354230272
	.word	390582272
	.word	469458944
	.word	494239744
	.word	542363648
	.word	618504192
	.word	623329280
	.word	647757824
	.word	658407424
	.word	710737920
	.word	718487552
	.word	806793216
	.word	819044352
	.word	848691200
	.word	884191232
	.word	920973312
	.word	932397056
	.word	952377344
	.word	1009590272
	.word	1025757184
	.word	1032429568
	.word	1036537856
	.word	1050308608
	.word	1059434496
	.word	1170018304
	.word	1222197248
	.word	1259495424
	.word	1310179328
	.word	1329033216
	.word	1351647232
	.word	1368748032
	.word	1396768768
	.word	1410514944
	.word	1428512768
	.word	1454469120
	.word	1460121600
	.word	1539198976
	.word	1560702976
	.word	1578897408
	.word	1669378048
	.word	1711312896
	.word	1747189760
	.word	1778139136
	.word	1815244800
	.word	1818042368
	.word	1869205504
	.word	1939632128
	.word	1951121408
	.word	1959624704
	.word	2021359616
	.word	2026246144
	.word	2036977664
	.word	2041241600
	.word	2063802368
	.word	-2147483648
	.word	16
	.word	48
	.word	50
	.word	60
	.word	13
	.word	39
	.word	20
	.word	4
	.word	63
	.word	18
	.word	14
	.word	30
	.word	55
	.word	8
	.word	62
	.word	37
	.word	43
	.word	41
	.word	11
	.word	0
	.word	36
	.word	33
	.word	34
	.word	49
	.word	17
	.word	58
	.word	38
	.word	22
	.word	19
	.word	5
	.word	21
	.word	12
	.word	47
	.word	25
	.word	57
	.word	61
	.word	7
	.word	3
	.word	10
	.word	23
	.word	52
	.word	24
	.word	6
	.word	53
	.word	2
	.word	26
	.word	1
	.word	31
	.word	28
	.word	46
	.word	42
	.word	9
	.word	45
	.word	29
	.word	27
	.word	54
	.word	32
	.word	56
	.word	51
	.word	44
	.word	35
	.word	59
	.word	40
	.word	15
	.global	pat19
	.align	2
	.type	pat19, %object
	.size	pat19, 512
pat19:
	.word	43503616
	.word	55443456
	.word	125833216
	.word	157696000
	.word	158310400
	.word	196734976
	.word	202973184
	.word	206196736
	.word	212287488
	.word	214859776
	.word	389906432
	.word	445480960
	.word	455708672
	.word	458412032
	.word	511782912
	.word	562421760
	.word	564912128
	.word	731529216
	.word	743137280
	.word	799174656
	.word	876322816
	.word	896520192
	.word	935780352
	.word	943083520
	.word	983449600
	.word	995725312
	.word	1117171712
	.word	1125736448
	.word	1132584960
	.word	1148727296
	.word	1202147328
	.word	1272414208
	.word	1292226560
	.word	1322983424
	.word	1324339200
	.word	1340915712
	.word	1375109120
	.word	1381150720
	.word	1413079040
	.word	1442525184
	.word	1477767168
	.word	1496961024
	.word	1621590016
	.word	1655201792
	.word	1664811008
	.word	1688633344
	.word	1689657344
	.word	1713401856
	.word	1716781056
	.word	1744371712
	.word	1757360128
	.word	1778814976
	.word	1831518208
	.word	1892282368
	.word	1908060160
	.word	1917566976
	.word	2017296384
	.word	2030100480
	.word	2033815552
	.word	2037788672
	.word	2089451520
	.word	2120744960
	.word	2137907200
	.word	-2147483648
	.word	14
	.word	59
	.word	60
	.word	24
	.word	18
	.word	22
	.word	62
	.word	12
	.word	45
	.word	2
	.word	32
	.word	11
	.word	25
	.word	37
	.word	13
	.word	7
	.word	50
	.word	39
	.word	56
	.word	17
	.word	47
	.word	40
	.word	29
	.word	43
	.word	15
	.word	34
	.word	4
	.word	57
	.word	31
	.word	38
	.word	21
	.word	28
	.word	36
	.word	27
	.word	42
	.word	1
	.word	23
	.word	33
	.word	5
	.word	61
	.word	44
	.word	55
	.word	8
	.word	30
	.word	10
	.word	41
	.word	19
	.word	48
	.word	16
	.word	52
	.word	49
	.word	46
	.word	54
	.word	58
	.word	6
	.word	0
	.word	51
	.word	3
	.word	26
	.word	20
	.word	53
	.word	9
	.word	35
	.word	63
	.global	pat20
	.align	2
	.type	pat20, %object
	.size	pat20, 512
pat20:
	.word	9400320
	.word	10489856
	.word	59650048
	.word	86609920
	.word	109531136
	.word	133423104
	.word	136835072
	.word	155267072
	.word	212275200
	.word	263262208
	.word	280932352
	.word	392945664
	.word	421851136
	.word	486367232
	.word	488689664
	.word	515600384
	.word	583610368
	.word	593498112
	.word	754425856
	.word	758837248
	.word	775491584
	.word	791232512
	.word	831180800
	.word	886951936
	.word	912146432
	.word	999104512
	.word	1007648768
	.word	1026543616
	.word	1044582400
	.word	1058004992
	.word	1081401344
	.word	1087488000
	.word	1100177408
	.word	1128771584
	.word	1160605696
	.word	1215115264
	.word	1263001600
	.word	1265668096
	.word	1278513152
	.word	1341206528
	.word	1358602240
	.word	1369468928
	.word	1391656960
	.word	1441959936
	.word	1470971904
	.word	1493823488
	.word	1510957056
	.word	1575317504
	.word	1624436736
	.word	1650454528
	.word	1653137408
	.word	1694986240
	.word	1785753600
	.word	1785982976
	.word	1836187648
	.word	1849229312
	.word	1859948544
	.word	1860665344
	.word	2007769088
	.word	2007838720
	.word	2020143104
	.word	2040639488
	.word	2062311424
	.word	-2147483648
	.word	21
	.word	56
	.word	38
	.word	11
	.word	62
	.word	9
	.word	30
	.word	47
	.word	34
	.word	23
	.word	37
	.word	16
	.word	5
	.word	49
	.word	10
	.word	43
	.word	4
	.word	45
	.word	36
	.word	7
	.word	42
	.word	1
	.word	53
	.word	57
	.word	20
	.word	59
	.word	55
	.word	50
	.word	46
	.word	39
	.word	60
	.word	27
	.word	12
	.word	31
	.word	48
	.word	25
	.word	15
	.word	22
	.word	44
	.word	52
	.word	14
	.word	33
	.word	0
	.word	29
	.word	17
	.word	18
	.word	2
	.word	32
	.word	24
	.word	19
	.word	6
	.word	41
	.word	54
	.word	8
	.word	35
	.word	26
	.word	61
	.word	3
	.word	51
	.word	13
	.word	63
	.word	28
	.word	40
	.word	58
	.global	pat21
	.align	2
	.type	pat21, %object
	.size	pat21, 512
pat21:
	.word	44621824
	.word	172740608
	.word	177426432
	.word	213929984
	.word	234766336
	.word	234962944
	.word	267673600
	.word	415809536
	.word	429834240
	.word	432930816
	.word	526925824
	.word	536199168
	.word	584417280
	.word	660934656
	.word	672026624
	.word	774520832
	.word	776151040
	.word	798416896
	.word	798765056
	.word	860082176
	.word	864792576
	.word	872620032
	.word	873467904
	.word	915152896
	.word	934891520
	.word	961093632
	.word	965943296
	.word	996216832
	.word	1015668736
	.word	1084919808
	.word	1110802432
	.word	1217454080
	.word	1230802944
	.word	1249497088
	.word	1280892928
	.word	1308205056
	.word	1328562176
	.word	1336197120
	.word	1423036416
	.word	1480986624
	.word	1492398080
	.word	1513951232
	.word	1517703168
	.word	1549533184
	.word	1615364096
	.word	1627049984
	.word	1631473664
	.word	1641418752
	.word	1657892864
	.word	1679814656
	.word	1744351232
	.word	1774571520
	.word	1804800000
	.word	1862090752
	.word	1882402816
	.word	1887793152
	.word	1914658816
	.word	1928671232
	.word	1950679040
	.word	1953460224
	.word	1980133376
	.word	2004131840
	.word	2011848704
	.word	-2147483648
	.word	28
	.word	51
	.word	33
	.word	2
	.word	30
	.word	55
	.word	29
	.word	17
	.word	40
	.word	48
	.word	32
	.word	9
	.word	39
	.word	1
	.word	49
	.word	50
	.word	37
	.word	43
	.word	62
	.word	11
	.word	10
	.word	26
	.word	22
	.word	6
	.word	8
	.word	7
	.word	45
	.word	47
	.word	46
	.word	42
	.word	60
	.word	5
	.word	12
	.word	56
	.word	4
	.word	23
	.word	35
	.word	25
	.word	13
	.word	16
	.word	61
	.word	54
	.word	31
	.word	63
	.word	34
	.word	19
	.word	41
	.word	59
	.word	38
	.word	24
	.word	0
	.word	58
	.word	53
	.word	44
	.word	3
	.word	18
	.word	52
	.word	20
	.word	36
	.word	27
	.word	14
	.word	21
	.word	57
	.word	15
	.global	pat22
	.align	2
	.type	pat22, %object
	.size	pat22, 512
pat22:
	.word	51695616
	.word	71639040
	.word	107425792
	.word	179343360
	.word	209768448
	.word	284008448
	.word	312221696
	.word	317845504
	.word	334082048
	.word	340836352
	.word	363769856
	.word	375898112
	.word	420159488
	.word	430723072
	.word	470466560
	.word	472027136
	.word	516849664
	.word	532971520
	.word	581685248
	.word	606502912
	.word	719118336
	.word	729845760
	.word	815861760
	.word	835747840
	.word	913309696
	.word	971415552
	.word	998551552
	.word	1105739776
	.word	1177554944
	.word	1244815360
	.word	1358798848
	.word	1385799680
	.word	1454174208
	.word	1475764224
	.word	1483386880
	.word	1491030016
	.word	1495056384
	.word	1505300480
	.word	1506529280
	.word	1531772928
	.word	1556770816
	.word	1560076288
	.word	1561460736
	.word	1565630464
	.word	1588199424
	.word	1589297152
	.word	1594757120
	.word	1596477440
	.word	1598894080
	.word	1609961472
	.word	1622478848
	.word	1631801344
	.word	1696583680
	.word	1804943360
	.word	1884987392
	.word	1906577408
	.word	1944875008
	.word	1979260928
	.word	1988444160
	.word	2009829376
	.word	2016190464
	.word	2049634304
	.word	2125094912
	.word	-2147483648
	.word	16
	.word	8
	.word	5
	.word	59
	.word	4
	.word	18
	.word	26
	.word	43
	.word	33
	.word	57
	.word	6
	.word	47
	.word	56
	.word	46
	.word	10
	.word	54
	.word	52
	.word	0
	.word	50
	.word	30
	.word	39
	.word	24
	.word	38
	.word	63
	.word	28
	.word	25
	.word	49
	.word	31
	.word	55
	.word	62
	.word	3
	.word	17
	.word	23
	.word	13
	.word	37
	.word	53
	.word	34
	.word	14
	.word	44
	.word	12
	.word	19
	.word	36
	.word	27
	.word	61
	.word	51
	.word	42
	.word	41
	.word	60
	.word	45
	.word	1
	.word	7
	.word	35
	.word	21
	.word	58
	.word	20
	.word	15
	.word	2
	.word	9
	.word	22
	.word	29
	.word	48
	.word	32
	.word	40
	.word	11
	.global	pat23
	.align	2
	.type	pat23, %object
	.size	pat23, 512
pat23:
	.word	290816
	.word	6815744
	.word	24551424
	.word	31162368
	.word	100720640
	.word	134791168
	.word	166035456
	.word	176353280
	.word	183218176
	.word	210993152
	.word	219066368
	.word	231071744
	.word	240136192
	.word	300244992
	.word	316395520
	.word	342364160
	.word	354418688
	.word	405102592
	.word	468144128
	.word	489291776
	.word	517369856
	.word	669556736
	.word	734236672
	.word	737456128
	.word	747958272
	.word	760696832
	.word	763551744
	.word	776208384
	.word	785227776
	.word	800858112
	.word	866844672
	.word	906723328
	.word	962789376
	.word	979714048
	.word	1026252800
	.word	1055911936
	.word	1096351744
	.word	1098817536
	.word	1124044800
	.word	1271545856
	.word	1346043904
	.word	1351499776
	.word	1386405888
	.word	1398497280
	.word	1412648960
	.word	1463885824
	.word	1474060288
	.word	1494061056
	.word	1606459392
	.word	1616191488
	.word	1617317888
	.word	1634258944
	.word	1706123264
	.word	1731362816
	.word	1732431872
	.word	1757970432
	.word	1803558912
	.word	1869422592
	.word	1883299840
	.word	2011369472
	.word	2043088896
	.word	2107940864
	.word	2116464640
	.word	-2147483648
	.word	63
	.word	50
	.word	51
	.word	33
	.word	28
	.word	35
	.word	24
	.word	14
	.word	4
	.word	23
	.word	47
	.word	11
	.word	37
	.word	41
	.word	12
	.word	55
	.word	62
	.word	32
	.word	34
	.word	30
	.word	25
	.word	43
	.word	16
	.word	0
	.word	3
	.word	49
	.word	61
	.word	15
	.word	57
	.word	46
	.word	59
	.word	44
	.word	31
	.word	27
	.word	21
	.word	53
	.word	5
	.word	2
	.word	8
	.word	56
	.word	52
	.word	22
	.word	60
	.word	40
	.word	20
	.word	1
	.word	48
	.word	18
	.word	17
	.word	19
	.word	54
	.word	29
	.word	9
	.word	38
	.word	42
	.word	6
	.word	39
	.word	45
	.word	13
	.word	10
	.word	26
	.word	58
	.word	36
	.word	7
	.global	pat24
	.align	2
	.type	pat24, %object
	.size	pat24, 512
pat24:
	.word	59310080
	.word	66949120
	.word	103636992
	.word	132055040
	.word	144031744
	.word	179703808
	.word	203665408
	.word	279654400
	.word	306692096
	.word	334495744
	.word	375406592
	.word	440680448
	.word	472678400
	.word	474378240
	.word	490299392
	.word	510144512
	.word	554172416
	.word	608346112
	.word	670998528
	.word	674148352
	.word	685948928
	.word	711086080
	.word	725295104
	.word	733827072
	.word	747134976
	.word	750682112
	.word	827424768
	.word	893538304
	.word	895434752
	.word	903323648
	.word	944885760
	.word	963272704
	.word	1024520192
	.word	1032388608
	.word	1227063296
	.word	1253564416
	.word	1336799232
	.word	1348481024
	.word	1379115008
	.word	1395101696
	.word	1434894336
	.word	1452703744
	.word	1477447680
	.word	1485529088
	.word	1539411968
	.word	1556152320
	.word	1648320512
	.word	1654603776
	.word	1662476288
	.word	1675411456
	.word	1746731008
	.word	1774247936
	.word	1788846080
	.word	1793449984
	.word	1831575552
	.word	1849827328
	.word	1945714688
	.word	2006130688
	.word	2024947712
	.word	2035027968
	.word	2036146176
	.word	2061533184
	.word	2067587072
	.word	-2147483648
	.word	56
	.word	47
	.word	54
	.word	62
	.word	29
	.word	43
	.word	25
	.word	59
	.word	41
	.word	7
	.word	52
	.word	63
	.word	15
	.word	21
	.word	16
	.word	14
	.word	39
	.word	17
	.word	45
	.word	11
	.word	27
	.word	24
	.word	55
	.word	31
	.word	53
	.word	4
	.word	6
	.word	2
	.word	20
	.word	23
	.word	5
	.word	37
	.word	32
	.word	58
	.word	13
	.word	51
	.word	1
	.word	8
	.word	3
	.word	57
	.word	46
	.word	30
	.word	35
	.word	49
	.word	18
	.word	40
	.word	9
	.word	22
	.word	42
	.word	38
	.word	34
	.word	0
	.word	19
	.word	33
	.word	26
	.word	60
	.word	10
	.word	48
	.word	36
	.word	61
	.word	44
	.word	12
	.word	50
	.word	28
	.global	pat25
	.align	2
	.type	pat25, %object
	.size	pat25, 512
pat25:
	.word	831488
	.word	36433920
	.word	38146048
	.word	38187008
	.word	96923648
	.word	100352000
	.word	110792704
	.word	119062528
	.word	154034176
	.word	196272128
	.word	227631104
	.word	255705088
	.word	257327104
	.word	270819328
	.word	315961344
	.word	350212096
	.word	362323968
	.word	425107456
	.word	453095424
	.word	456884224
	.word	484466688
	.word	549212160
	.word	557125632
	.word	591069184
	.word	603107328
	.word	618926080
	.word	701276160
	.word	727437312
	.word	732332032
	.word	737669120
	.word	832929792
	.word	878116864
	.word	966004736
	.word	997609472
	.word	1020342272
	.word	1025839104
	.word	1067470848
	.word	1081364480
	.word	1170636800
	.word	1244143616
	.word	1255247872
	.word	1263181824
	.word	1285652480
	.word	1309376512
	.word	1320775680
	.word	1332260864
	.word	1338646528
	.word	1380343808
	.word	1391325184
	.word	1443012608
	.word	1475739648
	.word	1556185088
	.word	1559113728
	.word	1570992128
	.word	1572487168
	.word	1689743360
	.word	1726607360
	.word	1757007872
	.word	1789693952
	.word	1837576192
	.word	1870553088
	.word	1896046592
	.word	1973764096
	.word	-2147483648
	.word	1
	.word	58
	.word	13
	.word	5
	.word	62
	.word	10
	.word	49
	.word	48
	.word	19
	.word	24
	.word	54
	.word	57
	.word	20
	.word	39
	.word	35
	.word	41
	.word	28
	.word	42
	.word	6
	.word	44
	.word	34
	.word	45
	.word	55
	.word	3
	.word	2
	.word	60
	.word	38
	.word	36
	.word	30
	.word	25
	.word	7
	.word	23
	.word	53
	.word	50
	.word	61
	.word	29
	.word	40
	.word	47
	.word	22
	.word	12
	.word	27
	.word	0
	.word	52
	.word	31
	.word	8
	.word	15
	.word	37
	.word	11
	.word	46
	.word	32
	.word	4
	.word	56
	.word	17
	.word	33
	.word	26
	.word	43
	.word	51
	.word	16
	.word	9
	.word	59
	.word	63
	.word	21
	.word	14
	.word	18
	.global	pat26
	.align	2
	.type	pat26, %object
	.size	pat26, 512
pat26:
	.word	32825344
	.word	74412032
	.word	151678976
	.word	184430592
	.word	187334656
	.word	193658880
	.word	206045184
	.word	206442496
	.word	251904000
	.word	252137472
	.word	349949952
	.word	393379840
	.word	437542912
	.word	447750144
	.word	452235264
	.word	468164608
	.word	499621888
	.word	501604352
	.word	525307904
	.word	546484224
	.word	547762176
	.word	580087808
	.word	587083776
	.word	601997312
	.word	683958272
	.word	692936704
	.word	718376960
	.word	723038208
	.word	723726336
	.word	728256512
	.word	746135552
	.word	778838016
	.word	799563776
	.word	857796608
	.word	921792512
	.word	943742976
	.word	951169024
	.word	974331904
	.word	992382976
	.word	1019490304
	.word	1042948096
	.word	1044099072
	.word	1048817664
	.word	1050755072
	.word	1077268480
	.word	1094184960
	.word	1175826432
	.word	1347620864
	.word	1367113728
	.word	1369333760
	.word	1441513472
	.word	1498382336
	.word	1517494272
	.word	1563209728
	.word	1581289472
	.word	1597587456
	.word	1597669376
	.word	1625055232
	.word	1631006720
	.word	1857904640
	.word	1876299776
	.word	1997934592
	.word	2095583232
	.word	-2147483648
	.word	61
	.word	48
	.word	12
	.word	55
	.word	3
	.word	58
	.word	51
	.word	56
	.word	15
	.word	29
	.word	54
	.word	11
	.word	31
	.word	49
	.word	40
	.word	37
	.word	7
	.word	4
	.word	23
	.word	35
	.word	25
	.word	18
	.word	27
	.word	43
	.word	6
	.word	41
	.word	17
	.word	45
	.word	52
	.word	53
	.word	47
	.word	16
	.word	42
	.word	0
	.word	30
	.word	13
	.word	38
	.word	62
	.word	1
	.word	8
	.word	21
	.word	28
	.word	57
	.word	9
	.word	60
	.word	19
	.word	44
	.word	50
	.word	14
	.word	36
	.word	22
	.word	2
	.word	32
	.word	59
	.word	34
	.word	10
	.word	63
	.word	39
	.word	5
	.word	24
	.word	33
	.word	20
	.word	46
	.word	26
	.global	pat27
	.align	2
	.type	pat27, %object
	.size	pat27, 512
pat27:
	.word	10919936
	.word	80191488
	.word	85471232
	.word	148742144
	.word	164352000
	.word	193331200
	.word	281165824
	.word	316514304
	.word	343584768
	.word	346701824
	.word	382267392
	.word	399880192
	.word	414564352
	.word	437661696
	.word	453644288
	.word	606212096
	.word	636452864
	.word	645861376
	.word	646672384
	.word	649097216
	.word	658165760
	.word	666640384
	.word	676773888
	.word	696868864
	.word	788443136
	.word	857370624
	.word	881754112
	.word	923267072
	.word	1061437440
	.word	1071816704
	.word	1127952384
	.word	1130180608
	.word	1188569088
	.word	1251815424
	.word	1282207744
	.word	1285775360
	.word	1321476096
	.word	1333379072
	.word	1405956096
	.word	1489469440
	.word	1569783808
	.word	1634516992
	.word	1652555776
	.word	1709101056
	.word	1753419776
	.word	1798443008
	.word	1825857536
	.word	1829740544
	.word	1831833600
	.word	1848979456
	.word	1876287488
	.word	1886146560
	.word	1917448192
	.word	1977008128
	.word	2001895424
	.word	2017120256
	.word	2037612544
	.word	2042617856
	.word	2045677568
	.word	2071240704
	.word	2075398144
	.word	2076094464
	.word	2076160000
	.word	-2147483648
	.word	61
	.word	53
	.word	12
	.word	15
	.word	26
	.word	30
	.word	32
	.word	2
	.word	16
	.word	5
	.word	39
	.word	43
	.word	20
	.word	21
	.word	49
	.word	37
	.word	11
	.word	51
	.word	18
	.word	44
	.word	31
	.word	19
	.word	24
	.word	40
	.word	1
	.word	35
	.word	50
	.word	6
	.word	57
	.word	14
	.word	46
	.word	17
	.word	22
	.word	48
	.word	29
	.word	7
	.word	34
	.word	45
	.word	10
	.word	63
	.word	23
	.word	41
	.word	54
	.word	38
	.word	4
	.word	25
	.word	42
	.word	13
	.word	56
	.word	62
	.word	36
	.word	28
	.word	33
	.word	59
	.word	55
	.word	3
	.word	9
	.word	0
	.word	58
	.word	60
	.word	47
	.word	8
	.word	52
	.word	27
	.global	pat28
	.align	2
	.type	pat28, %object
	.size	pat28, 512
pat28:
	.word	70885376
	.word	109445120
	.word	220536832
	.word	285589504
	.word	289177600
	.word	338272256
	.word	345120768
	.word	368254976
	.word	429060096
	.word	438153216
	.word	445104128
	.word	455475200
	.word	455680000
	.word	472199168
	.word	514011136
	.word	549175296
	.word	559603712
	.word	623153152
	.word	667455488
	.word	669212672
	.word	683614208
	.word	700608512
	.word	710365184
	.word	745512960
	.word	828608512
	.word	830775296
	.word	832319488
	.word	881487872
	.word	950697984
	.word	970805248
	.word	973500416
	.word	1007538176
	.word	1023229952
	.word	1052467200
	.word	1126535168
	.word	1179205632
	.word	1190965248
	.word	1241841664
	.word	1264336896
	.word	1291792384
	.word	1322950656
	.word	1325551616
	.word	1412304896
	.word	1429618688
	.word	1446215680
	.word	1458536448
	.word	1460776960
	.word	1463619584
	.word	1497608192
	.word	1536237568
	.word	1640898560
	.word	1696665600
	.word	1708957696
	.word	1844322304
	.word	1844641792
	.word	1932840960
	.word	1944543232
	.word	1953734656
	.word	1971609600
	.word	1979514880
	.word	1998012416
	.word	2000588800
	.word	2056105984
	.word	-2147483648
	.word	43
	.word	11
	.word	8
	.word	56
	.word	5
	.word	22
	.word	42
	.word	55
	.word	14
	.word	32
	.word	2
	.word	47
	.word	24
	.word	51
	.word	35
	.word	25
	.word	15
	.word	58
	.word	41
	.word	27
	.word	33
	.word	37
	.word	4
	.word	36
	.word	7
	.word	53
	.word	26
	.word	48
	.word	38
	.word	19
	.word	29
	.word	28
	.word	40
	.word	10
	.word	1
	.word	46
	.word	59
	.word	63
	.word	61
	.word	62
	.word	60
	.word	30
	.word	21
	.word	39
	.word	44
	.word	57
	.word	20
	.word	18
	.word	17
	.word	54
	.word	49
	.word	52
	.word	3
	.word	12
	.word	45
	.word	13
	.word	50
	.word	9
	.word	16
	.word	23
	.word	0
	.word	6
	.word	31
	.word	34
	.global	pat29
	.align	2
	.type	pat29, %object
	.size	pat29, 512
pat29:
	.word	3551232
	.word	10207232
	.word	26243072
	.word	69029888
	.word	94822400
	.word	166944768
	.word	171892736
	.word	347701248
	.word	407224320
	.word	412000256
	.word	455700480
	.word	469909504
	.word	505327616
	.word	523911168
	.word	541585408
	.word	606117888
	.word	679940096
	.word	695062528
	.word	747814912
	.word	768876544
	.word	876933120
	.word	901316608
	.word	914604032
	.word	1032757248
	.word	1072082944
	.word	1107353600
	.word	1109192704
	.word	1118068736
	.word	1145450496
	.word	1155928064
	.word	1170743296
	.word	1214218240
	.word	1224638464
	.word	1246961664
	.word	1248841728
	.word	1284476928
	.word	1304260608
	.word	1347592192
	.word	1361817600
	.word	1384239104
	.word	1393938432
	.word	1512054784
	.word	1520418816
	.word	1544658944
	.word	1611706368
	.word	1655320576
	.word	1674596352
	.word	1735704576
	.word	1735839744
	.word	1745899520
	.word	1771917312
	.word	1773936640
	.word	1796968448
	.word	1884114944
	.word	1943388160
	.word	1943617536
	.word	2017996800
	.word	2026422272
	.word	2026655744
	.word	2059980800
	.word	2061500416
	.word	2069458944
	.word	2120921088
	.word	-2147483648
	.word	52
	.word	40
	.word	59
	.word	29
	.word	42
	.word	34
	.word	63
	.word	44
	.word	33
	.word	37
	.word	51
	.word	23
	.word	5
	.word	36
	.word	38
	.word	43
	.word	9
	.word	4
	.word	28
	.word	55
	.word	1
	.word	6
	.word	21
	.word	26
	.word	13
	.word	24
	.word	30
	.word	15
	.word	35
	.word	17
	.word	46
	.word	20
	.word	16
	.word	10
	.word	49
	.word	48
	.word	39
	.word	62
	.word	19
	.word	14
	.word	61
	.word	27
	.word	53
	.word	2
	.word	57
	.word	58
	.word	45
	.word	7
	.word	56
	.word	50
	.word	54
	.word	25
	.word	31
	.word	11
	.word	22
	.word	47
	.word	3
	.word	0
	.word	32
	.word	12
	.word	8
	.word	41
	.word	60
	.word	18
	.global	pat30
	.align	2
	.type	pat30, %object
	.size	pat30, 512
pat30:
	.word	73158656
	.word	113192960
	.word	204025856
	.word	239534080
	.word	240873472
	.word	307675136
	.word	340054016
	.word	359239680
	.word	384327680
	.word	441274368
	.word	461385728
	.word	500142080
	.word	500625408
	.word	525856768
	.word	579309568
	.word	641634304
	.word	692203520
	.word	706383872
	.word	711561216
	.word	747614208
	.word	757989376
	.word	784719872
	.word	830095360
	.word	900087808
	.word	915828736
	.word	925470720
	.word	935358464
	.word	1000058880
	.word	1006977024
	.word	1019985920
	.word	1033150464
	.word	1043238912
	.word	1048199168
	.word	1085898752
	.word	1147502592
	.word	1148420096
	.word	1157509120
	.word	1159565312
	.word	1161216000
	.word	1189027840
	.word	1216696320
	.word	1346166784
	.word	1393573888
	.word	1394589696
	.word	1421979648
	.word	1443389440
	.word	1447211008
	.word	1463435264
	.word	1485303808
	.word	1518800896
	.word	1553399808
	.word	1582718976
	.word	1656287232
	.word	1680662528
	.word	1710116864
	.word	1725640704
	.word	1730658304
	.word	1788485632
	.word	1957228544
	.word	2083102720
	.word	2093314048
	.word	2132938752
	.word	2133389312
	.word	-2147483648
	.word	29
	.word	35
	.word	8
	.word	49
	.word	30
	.word	55
	.word	27
	.word	38
	.word	58
	.word	61
	.word	0
	.word	28
	.word	15
	.word	39
	.word	5
	.word	37
	.word	32
	.word	42
	.word	46
	.word	54
	.word	12
	.word	14
	.word	1
	.word	31
	.word	59
	.word	11
	.word	47
	.word	9
	.word	13
	.word	50
	.word	2
	.word	62
	.word	60
	.word	18
	.word	20
	.word	51
	.word	23
	.word	24
	.word	53
	.word	6
	.word	25
	.word	48
	.word	41
	.word	3
	.word	33
	.word	57
	.word	44
	.word	19
	.word	22
	.word	52
	.word	4
	.word	45
	.word	10
	.word	21
	.word	56
	.word	36
	.word	17
	.word	43
	.word	7
	.word	63
	.word	16
	.word	34
	.word	26
	.word	40
	.global	pat31
	.align	2
	.type	pat31, %object
	.size	pat31, 512
pat31:
	.word	21229568
	.word	33980416
	.word	53002240
	.word	118120448
	.word	153776128
	.word	155045888
	.word	171606016
	.word	199561216
	.word	201097216
	.word	238366720
	.word	309522432
	.word	339361792
	.word	377638912
	.word	549421056
	.word	551153664
	.word	568532992
	.word	574775296
	.word	575057920
	.word	583966720
	.word	635183104
	.word	691159040
	.word	701304832
	.word	715407360
	.word	752369664
	.word	766488576
	.word	779399168
	.word	794497024
	.word	981110784
	.word	1001619456
	.word	1007788032
	.word	1009819648
	.word	1043271680
	.word	1099411456
	.word	1108934656
	.word	1155743744
	.word	1300561920
	.word	1406054400
	.word	1410183168
	.word	1418948608
	.word	1429250048
	.word	1511067648
	.word	1546125312
	.word	1592881152
	.word	1607266304
	.word	1682128896
	.word	1687740416
	.word	1714176000
	.word	1786650624
	.word	1801064448
	.word	1813114880
	.word	1842966528
	.word	1861332992
	.word	1866784768
	.word	1887760384
	.word	1941254144
	.word	2020786176
	.word	2028826624
	.word	2033561600
	.word	2042597376
	.word	2053828608
	.word	2070925312
	.word	2077499392
	.word	2133012480
	.word	-2147483648
	.word	6
	.word	25
	.word	28
	.word	44
	.word	27
	.word	43
	.word	58
	.word	33
	.word	23
	.word	21
	.word	16
	.word	48
	.word	30
	.word	26
	.word	5
	.word	20
	.word	49
	.word	38
	.word	2
	.word	45
	.word	11
	.word	61
	.word	17
	.word	0
	.word	53
	.word	13
	.word	7
	.word	52
	.word	40
	.word	31
	.word	36
	.word	4
	.word	10
	.word	8
	.word	24
	.word	22
	.word	42
	.word	63
	.word	35
	.word	60
	.word	47
	.word	29
	.word	46
	.word	19
	.word	1
	.word	3
	.word	34
	.word	55
	.word	59
	.word	14
	.word	39
	.word	12
	.word	32
	.word	50
	.word	62
	.word	54
	.word	56
	.word	51
	.word	57
	.word	15
	.word	41
	.word	18
	.word	37
	.word	9
	.global	patterns
	.data
	.align	2
	.type	patterns, %object
	.size	patterns, 132
patterns:
	.word	trivial_pattern
	.word	pat0
	.word	pat1
	.word	pat2
	.word	pat3
	.word	pat4
	.word	pat5
	.word	pat6
	.word	pat7
	.word	pat8
	.word	pat9
	.word	pat10
	.word	pat11
	.word	pat12
	.word	pat13
	.word	pat14
	.word	pat15
	.word	pat16
	.word	pat17
	.word	pat18
	.word	pat19
	.word	pat20
	.word	pat21
	.word	pat22
	.word	pat23
	.word	pat24
	.word	pat25
	.word	pat26
	.word	pat27
	.word	pat28
	.word	pat29
	.word	pat30
	.word	pat31
	.local	outfd
	.comm	outfd,4,4
	.local	chunk_sems
	.comm	chunk_sems,7168,4
	.section	.rodata
	.align	2
.LC0:
	.ascii	"usage: fsync_integrity <file name>\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	usage, %function
usage:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L5
	ldr	r3, [r3]
	mov	r2, #35
	mov	r1, #1
	ldr	r0, .L5+4
	bl	fwrite
	mov	r0, #2
	bl	exit
.L6:
	.align	2
.L5:
	.word	stderr
	.word	.LC0
	.size	usage, .-usage
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	marker_fill, %function
marker_fill:
	@ 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
	str	r0, [fp, #-48]
	str	r1, [fp, #-52]
	str	r2, [fp, #-56]
	str	r3, [fp, #-60]
	ldr	r3, [fp, #-60]
	str	r3, [fp, #-40]
	ldr	r3, .L12
	str	r3, [fp, #-36]
	ldr	r3, [fp, #-52]
	str	r3, [fp, #-44]
	b	.L8
.L11:
	ldr	r3, [fp, #-60]
	cmp	r3, #7
	bne	.L9
	ldr	r3, [fp, #-36]
	mov	r2, r3
	mov	r3, #0
	mov	r4, #0
	mov	r5, #0
	mov	r5, r2
	mov	r4, #0
	b	.L10
.L9:
	ldr	r3, [fp, #-40]
	mov	r2, r3
	mov	r3, #0
	mov	r4, #0
	mov	r5, #0
	mov	r5, r2
	mov	r4, #0
.L10:
	ldr	r3, [fp, #-44]
	mov	r0, r3
	bl	htonl
	mov	r3, r0
	mov	r2, r3
	mov	r3, #0
	orr	r6, r4, r2
	orr	r7, r5, r3
	str	r6, [fp, #-28]
	str	r7, [fp, #-24]
	ldr	r2, [fp, #-44]
	ldr	r3, [fp, #-52]
	sub	r3, r2, r3
	lsr	r3, r3, #3
	str	r3, [fp, #-32]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-48]
	add	r1, r2, r3
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
	ldr	r3, [fp, #-44]
	add	r3, r3, #8
	str	r3, [fp, #-44]
.L8:
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-56]
	add	r2, r2, r3
	ldr	r3, [fp, #-44]
	cmp	r2, r3
	bhi	.L11
	nop
	nop
	sub	sp, fp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, fp, pc}
.L13:
	.align	2
.L12:
	.word	-536497974
	.size	marker_fill, .-marker_fill
	.section	.rodata
	.align	2
.LC1:
	.ascii	"read\000"
	.align	2
.LC2:
	.ascii	"fsync_integrity: miscompare at chunk %i, chunk offs"
	.ascii	"et %lx, file offset %lx\012\000"
	.align	2
.LC3:
	.ascii	"Expected %016lx, got %016lx\012\000"
	.align	2
.LC4:
	.ascii	"fsync_integrity: miscompare ends at chunk %i, chunk"
	.ascii	" offset %lx, file offset %lx\012\000"
	.align	2
.LC5:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	verify_file, %function
verify_file:
	@ args = 0, pretend = 0, frame = 56
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #64
	str	r0, [fp, #-56]
	str	r1, [fp, #-60]
	ldr	r3, .L24
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #1
	str	r3, [fp, #-40]
	mov	r3, #0
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-44]
	b	.L15
.L21:
	sub	r3, fp, #48
	sub	r2, fp, #52
	ldr	r1, [fp, #-44]
	ldr	r0, [fp, #-60]
	bl	get_chunk_range
	ldr	r2, [fp, #-48]
	ldr	r3, [fp, #-52]
	sub	r3, r2, r3
	str	r3, [fp, #-28]
	ldr	r0, [fp, #-28]
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-24]
	ldr	r0, [fp, #-28]
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-52]
	mov	r1, r3
	mov	r3, #7
	ldr	r2, [fp, #-28]
	ldr	r0, [fp, #-24]
	bl	marker_fill
	ldr	r2, [fp, #-28]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-56]
	bl	read
	mov	r3, r0
	cmp	r3, #0
	bgt	.L16
	ldr	r0, .L24+4
	bl	perror
	mov	r0, #1
	bl	exit
.L16:
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L17
.L20:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	str	r3, [fp, #-16]
	ldr	r2, [fp, #-52]
	ldr	r3, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	beq	.L18
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	cmp	r1, r3
	cmpeq	r0, r2
	beq	.L18
	ldr	r3, .L24+8
	ldr	r0, [r3]
	ldr	r3, [fp, #-12]
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-44]
	ldr	r1, .L24+12
	bl	fprintf
	ldr	r3, .L24+8
	ldr	ip, [r3]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	stm	sp, {r2-r3}
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L24+16
	mov	r0, ip
	bl	fprintf
	mov	r3, #1
	str	r3, [fp, #-36]
	mov	r3, #0
	str	r3, [fp, #-40]
	b	.L19
.L18:
	ldr	r3, [fp, #-40]
	cmp	r3, #0
	bne	.L19
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-20]
	add	r3, r2, r3
	ldmia	r3, {r0-r1}
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #3
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
	cmp	r1, r3
	cmpeq	r0, r2
	bne	.L19
	ldr	r3, .L24+8
	ldr	r0, [r3]
	ldr	r3, [fp, #-12]
	str	r3, [sp]
	ldr	r3, [fp, #-16]
	ldr	r2, [fp, #-44]
	ldr	r1, .L24+20
	bl	fprintf
	mov	r3, #1
	str	r3, [fp, #-40]
.L19:
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L17:
	ldr	r3, [fp, #-28]
	lsr	r2, r3, #3
	ldr	r3, [fp, #-32]
	cmp	r2, r3
	bhi	.L20
	ldr	r0, [fp, #-24]
	bl	free
	ldr	r0, [fp, #-20]
	bl	free
	ldr	r3, [fp, #-44]
	add	r3, r3, #1
	str	r3, [fp, #-44]
.L15:
	ldr	r3, [fp, #-44]
	cmp	r3, #63
	ble	.L21
	ldr	r3, [fp, #-36]
	ldr	r2, .L24
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L23
	bl	__stack_chk_fail
.L23:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L25:
	.align	2
.L24:
	.word	.LC5
	.word	.LC1
	.word	stderr
	.word	.LC2
	.word	.LC3
	.word	.LC4
	.size	verify_file, .-verify_file
	.section	.rodata
	.align	2
.LC6:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	write_chunk, %function
write_chunk:
	@ 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]
	ldr	r3, .L28
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #20
	sub	r2, fp, #24
	ldr	r1, [fp, #-36]
	ldr	r0, [fp, #-32]
	bl	get_chunk_range
	ldr	r2, [fp, #-20]
	ldr	r3, [fp, #-24]
	sub	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-16]
	bl	malloc
	mov	r3, r0
	str	r3, [fp, #-12]
	ldr	r3, [fp, #-24]
	mov	r1, r3
	ldr	r3, [fp, #-40]
	ldr	r2, [fp, #-16]
	ldr	r0, [fp, #-12]
	bl	marker_fill
	ldr	r3, .L28+4
	ldr	r0, [r3]
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-16]
	ldr	r1, [fp, #-12]
	bl	pwrite
	ldr	r0, [fp, #-12]
	bl	free
	nop
	ldr	r3, .L28
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L27
	bl	__stack_chk_fail
.L27:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L29:
	.align	2
.L28:
	.word	.LC6
	.word	outfd
	.size	write_chunk, .-write_chunk
	.section	.rodata
	.align	2
.LC7:
	.ascii	"fsync\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	my_sync, %function
my_sync:
	@ 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	fsync
	mov	r3, r0
	cmp	r3, #0
	beq	.L32
	ldr	r0, .L33
	bl	perror
	mov	r0, #1
	bl	exit
.L32:
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L34:
	.align	2
.L33:
	.word	.LC7
	.size	my_sync, .-my_sync
	.section	.rodata
	.align	2
.LC8:
	.ascii	"sem_wait\000"
	.align	2
.LC9:
	.ascii	"sem_post\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	worker, %function
worker:
	@ 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	r3, [fp, #-16]
	ldr	r3, [r3]
	str	r3, [fp, #-12]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L36
.L40:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-20]
	add	r2, r2, #64
	ldr	r3, [r3, r2, lsl #2]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	ble	.L37
	ldr	r3, [fp, #-12]
	sub	r3, r3, #1
	lsl	r2, r3, #6
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L42
	add	r3, r3, r2
	mov	r0, r3
	bl	sem_wait
	mov	r3, r0
	cmn	r3, #1
	bne	.L37
	ldr	r0, .L42+4
	bl	perror
	mov	r0, #1
	bl	exit
.L37:
	ldr	r3, [fp, #-16]
	ldr	r3, [r3, #4]
	ldr	r2, [fp, #-12]
	ldr	r1, [fp, #-8]
	mov	r0, r3
	bl	write_chunk
	ldr	r3, [fp, #-12]
	and	r3, r3, #1
	cmp	r3, #0
	bne	.L38
	ldr	r3, .L42+8
	ldr	r3, [r3]
	mov	r0, r3
	bl	my_sync
.L38:
	ldr	r3, [fp, #-12]
	cmp	r3, #6
	bgt	.L39
	ldr	r3, [fp, #-12]
	lsl	r2, r3, #6
	ldr	r3, [fp, #-8]
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L42
	add	r3, r3, r2
	mov	r0, r3
	bl	sem_post
	mov	r3, r0
	cmn	r3, #1
	bne	.L39
	ldr	r0, .L42+12
	bl	perror
	mov	r0, #1
	bl	exit
.L39:
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L36:
	ldr	r3, [fp, #-20]
	cmp	r3, #63
	ble	.L40
	mov	r3, #0
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L43:
	.align	2
.L42:
	.word	chunk_sems
	.word	.LC8
	.word	outfd
	.word	.LC9
	.size	worker, .-worker
	.section	.rodata
	.align	2
.LC10:
	.ascii	"Starting repetition %d\012\000"
	.align	2
.LC11:
	.ascii	"open\000"
	.align	2
.LC12:
	.ascii	"ftruncate\000"
	.align	2
.LC13:
	.ascii	"write\000"
	.align	2
.LC14:
	.ascii	"lseek\000"
	.align	2
.LC15:
	.ascii	"sem_init\000"
	.align	2
.LC16:
	.ascii	"pthread_create\000"
	.align	2
.LC17:
	.ascii	"pthread_join\000"
	.align	2
.LC18:
	.ascii	"sem_destory\000"
	.align	2
.LC19:
	.ascii	"close\000"
	.align	2
.LC20:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 131208
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #131072
	sub	sp, sp, #136
	sub	r3, fp, #131072
	sub	r3, r3, #4
	str	r0, [r3, #-132]
	sub	r3, fp, #131072
	sub	r3, r3, #4
	str	r1, [r3, #-136]
	ldr	r3, .L76
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-132]
	cmp	r3, #2
	beq	.L45
	bl	usage
.L45:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-124]
	b	.L46
.L73:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r1, [r3, #-124]
	ldr	r0, .L76+4
	bl	printf
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-120]
	b	.L47
.L72:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r1, r3
	ldr	r2, .L76+8
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-120]
	ldr	r3, [r2, r3, lsl #2]
	str	r3, [r1, #-104]
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-108]
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-136]
	add	r3, r3, #4
	ldr	r3, [r3]
	mov	r2, #420
	ldr	r1, .L76+12
	mov	r0, r3
	bl	open
	mov	r3, r0
	ldr	r2, .L76+16
	str	r3, [r2]
	ldr	r3, .L76+16
	ldr	r3, [r3]
	cmn	r3, #1
	bne	.L48
	ldr	r0, .L76+20
	bl	perror
	mov	r0, #1
	bl	exit
.L48:
	ldr	r3, .L76+16
	ldr	r3, [r3]
	mov	r1, #8388608
	mov	r0, r3
	bl	ftruncate
	mov	r3, r0
	cmp	r3, #0
	beq	.L49
	ldr	r0, .L76+24
	bl	perror
	mov	r0, #1
	bl	exit
.L49:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-108]
	b	.L50
.L52:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r0, r3
	mov	r3, #131072
	mov	r2, r3
	mov	r1, #0
	bl	memset
	ldr	r3, .L76+16
	ldr	r0, [r3]
	sub	r3, fp, #131072
	sub	r3, r3, #4
	sub	r3, r3, #4
	mov	r2, #131072
	mov	r1, r3
	bl	write
	mov	r3, r0
	cmn	r3, #1
	bne	.L51
	ldr	r0, .L76+28
	bl	perror
	mov	r0, #1
	bl	exit
.L51:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-108]
	add	r3, r3, #131072
	str	r3, [r2, #-108]
.L50:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-108]
	cmp	r3, #8388608
	blt	.L52
	ldr	r3, .L76+16
	ldr	r3, [r3]
	mov	r2, #0
	mov	r1, #0
	mov	r0, r3
	bl	lseek
	mov	r3, r0
	cmn	r3, #1
	bne	.L53
	ldr	r0, .L76+32
	bl	perror
.L53:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-116]
	b	.L54
.L58:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-112]
	b	.L55
.L57:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	lsl	r2, r3, #6
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L76+36
	add	r3, r3, r2
	mov	r2, #0
	mov	r1, #0
	mov	r0, r3
	bl	sem_init
	mov	r3, r0
	cmp	r3, #0
	beq	.L56
	ldr	r0, .L76+40
	bl	perror
	mov	r0, #1
	bl	exit
.L56:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-112]
	add	r3, r3, #1
	str	r3, [r2, #-112]
.L55:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-112]
	cmp	r3, #63
	ble	.L57
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	add	r3, r3, #1
	str	r3, [r2, #-116]
.L54:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	cmp	r3, #6
	ble	.L58
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-116]
	b	.L59
.L61:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	lsl	r3, r3, #3
	add	r3, r2, r3
	sub	r2, fp, #131072
	sub	r2, r2, #4
	ldr	r2, [r2, #-104]
	str	r2, [r3, #-64]
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	lsl	r3, r3, #3
	add	r3, r2, r3
	sub	r2, fp, #131072
	sub	r2, r2, #4
	ldr	r2, [r2, #-116]
	str	r2, [r3, #-68]
	sub	r3, fp, #131072
	sub	r3, r3, #4
	sub	r3, r3, #100
	sub	r2, fp, #131072
	sub	r2, r2, #4
	ldr	r2, [r2, #-116]
	lsl	r2, r2, #2
	add	r0, r3, r2
	sub	r3, fp, #131072
	sub	r3, r3, #4
	sub	r3, r3, #68
	sub	r2, fp, #131072
	sub	r2, r2, #4
	ldr	r2, [r2, #-116]
	lsl	r2, r2, #3
	add	r3, r3, r2
	ldr	r2, .L76+44
	mov	r1, #0
	bl	pthread_create
	mov	r3, r0
	cmp	r3, #0
	beq	.L60
	ldr	r0, .L76+48
	bl	perror
	mov	r0, #1
	bl	exit
.L60:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	add	r3, r3, #1
	str	r3, [r2, #-116]
.L59:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	cmp	r3, #7
	ble	.L61
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-116]
	b	.L62
.L64:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3, #-100]
	mov	r1, #0
	mov	r0, r3
	bl	pthread_join
	mov	r3, r0
	cmp	r3, #0
	beq	.L63
	ldr	r0, .L76+52
	bl	perror
	mov	r0, #1
	bl	exit
.L63:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	add	r3, r3, #1
	str	r3, [r2, #-116]
.L62:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	cmp	r3, #7
	ble	.L64
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-116]
	b	.L65
.L69:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	mov	r3, #0
	str	r3, [r2, #-112]
	b	.L66
.L68:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	lsl	r2, r3, #6
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-112]
	add	r3, r2, r3
	lsl	r3, r3, #4
	ldr	r2, .L76+36
	add	r3, r3, r2
	mov	r0, r3
	bl	sem_destroy
	mov	r3, r0
	cmp	r3, #0
	beq	.L67
	ldr	r0, .L76+56
	bl	perror
	mov	r0, #1
	bl	exit
.L67:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-112]
	add	r3, r3, #1
	str	r3, [r2, #-112]
.L66:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-112]
	cmp	r3, #63
	ble	.L68
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	add	r3, r3, #1
	str	r3, [r2, #-116]
.L65:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-116]
	cmp	r3, #6
	ble	.L69
	ldr	r3, .L76+16
	ldr	r2, [r3]
	ldr	r1, .L76+8
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-120]
	ldr	r3, [r1, r3, lsl #2]
	mov	r1, r3
	mov	r0, r2
	bl	verify_file
	mov	r3, r0
	cmp	r3, #0
	beq	.L70
	mov	r0, #1
	bl	exit
.L70:
	ldr	r3, .L76+16
	ldr	r3, [r3]
	mov	r0, r3
	bl	close
	mov	r3, r0
	cmp	r3, #0
	beq	.L71
	ldr	r0, .L76+60
	bl	perror
	mov	r0, #1
	bl	exit
.L71:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-120]
	add	r3, r3, #1
	str	r3, [r2, #-120]
.L47:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-120]
	cmp	r3, #32
	bls	.L72
	sub	r3, fp, #131072
	sub	r3, r3, #4
	mov	r2, r3
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-124]
	add	r3, r3, #1
	str	r3, [r2, #-124]
.L46:
	sub	r3, fp, #131072
	sub	r3, r3, #4
	ldr	r3, [r3, #-124]
	cmp	r3, #15
	ble	.L73
	mov	r3, #0
	ldr	r2, .L76
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L75
	bl	__stack_chk_fail
.L75:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L77:
	.align	2
.L76:
	.word	.LC20
	.word	.LC10
	.word	patterns
	.word	578
	.word	outfd
	.word	.LC11
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	chunk_sems
	.word	.LC15
	.word	worker
	.word	.LC16
	.word	.LC17
	.word	.LC18
	.word	.LC19
	.size	main, .-main
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
