Browse code

ajout de video2d.py, script applatissant une séquence vidéo en 1 bitmap très large

rep authored on 24/11/2015 22:19:20
Showing 4 changed files
... ...
@@ -1,2 +1,5 @@
1
+pln
1 2
 pylone3
3
+screen
2 4
 test
5
+tth
... ...
@@ -6,6 +6,14 @@
6 6
 # image source : pln.jpg
7 7
 # image obtenue : pln..20150910-11h59m53s.jpg
8 8
 
9
+# pln.png 3936x1024 pix
10
+
11
+'''
12
+image input puredata : 16384 width x 768 height
13
+donc par exemple, pour 3 images :
14
+3 x 16384 = 49152 pixels en tout
15
+'''
16
+
9 17
 import sys
10 18
 import Image
11 19
 import random
... ...
@@ -16,19 +24,25 @@ import ImageFilter
16 16
 from time import gmtime, strftime
17 17
 import time
18 18
 
19
+
20
+if not len(sys.argv) > 1:
21
+    raise SystemExit("Usage: %s image_source" % sys.argv[0])
22
+
19 23
 # modifs du 30/10/2013
20 24
 import ImageEnhance
21 25
 
22
-#ouvertrure de l'image source et conversion en mode couleur 1bit
26
+#ouverture de l'image source et conversion en mode couleur 1bit
23 27
 im1 = Image.open(str(sys.argv[1])).convert('1')
24 28
 #im1 = Image.open(str(sys.argv[1])).convert('L')
29
+#im1 = Image.open(str(sys.argv[1]))
25 30
 im2 = im1.copy()
26 31
 
27 32
 #rapport d'allongement de la nouvelle image par rapport à la largeur de l'image originale
28
-allongement = 4
33
+allongement = 8
29 34
 
30 35
 im3 = Image.new("RGBA",(im1.size[0], im1.size[1]))
31 36
 im4 = Image.new("RGBA",(im1.size[0]*allongement, im1.size[1]))
37
+#im4 = Image.new("RGBA",(49152, im1.size[1]))
32 38
 
33 39
 Larg = im1.size[0]
34 40
 Haut = im1.size[1]
... ...
@@ -48,30 +62,30 @@ class Sequence:
48 48
 """
49 49
 seq = dict()
50 50
 seq["randomCoupeHauteur"] = []
51
-seq["randomCopyPosi"] = [] 
51
+seq["randomCopyPosi"] = []
52 52
 seq["proportions"] = []
53 53
 seq["choix"] = []
54 54
 seq["sizeOutput"]= im4.size
55 55
 seq["sizeInput"] = im1.size
56 56
 """
57
+
57 58
 if loadfile:
58 59
 	seq=pickle.load(open("test.pickle"))
59 60
 
60 61
 else :
61 62
 	seq=Sequence()
62 63
 	
63
-for i in range(4):
64
+for i in range(1):
64 65
 	
65
-		
66 66
 	# constitution de la liste des tranches horizontales
67 67
 	# genre comme si qu'on avait un 16 pistes :)
68 68
 	# nombre aleatoire compris dans les limites de l'image
69 69
 	def randHaut():
70 70
 		return random.randint(0, im1.size[1]/8)*8
71
-	
71
+
72 72
 	if loadfile:
73 73
 		randomCoupeHauteur = seq.randomCoupeHauteur
74
-		
74
+
75 75
 	else:
76 76
 		randomCoupeHauteur = [0, \
77 77
 		randHaut(),randHaut(),randHaut(),randHaut(), \
... ...
@@ -86,25 +100,44 @@ for i in range(4):
86 86
 		# rangement des valeurs des plus petites au plus grandes
87 87
 		randomCoupeHauteur.sort()
88 88
 		seq.randomCoupeHauteur = randomCoupeHauteur
89
-		
89
+
90 90
 	# les hachures
91 91
 	def Hacheur(haut, bas) :
92
-		
92
+
93 93
 		n=0
94 94
 		i=0
95 95
 		#!!!!!!!!!!
96 96
 		while n<im4.size[0] :
97
-			
98 97
 			if loadfile:
99 98
 				proportions = seq.proportions
100 99
 				choix_rnd = seq.choix[i]
101 100
 				randomCopyPosi = seq.randomCopyPosi[i]
102 101
 			else:
102
+
103 103
 				'''
104 104
 				8 16 24 32 40 48 56 64 72 80 88 96 104 112 120 128 136 144 152 160 168
105 105
 				'''
106
+
106 107
 				#proportions = [(160,6),(120,4),(120,8),(80,16),(60,16),(20,32),(8,24),(8,16),(5,64),(3,24),(2,24),(1,256),(1,128),(1,64),(1,32),(1,16),(1,8)]
107
-				proportions = [(160,6),(120,4),(120,8),(80,16),(64,16),(24,32),(8,24),(8,16)]
108
+				#proportions = [(160,6),(120,4),(120,8),(80,16),(60,16),(20,32),(8,24),(8,16),(5,64),(3,24),(2,24),(1,256),(1,128),(1,64),(1,32),(1,16),(1,8)]
109
+				#proportions = [(1280,1),(800,1),(800,2),(640,1),(640,2),(640,4),(320,4),(320,2),(320,1),(160,1),(120,2),(120,3),(80,6),(64,12),(64,6),(32,4),(32,8),(32,16),(32,32),(32,64)]
110
+
111
+				proportions = [(256,1),(160,1),(120,2),(120,3),(80,6),(64,12),(24,18),(8,24),(8,16)]
112
+
113
+				#proportion pln pour output final avec puredata/gem (decalage phase 32pix)
114
+				
115
+				'''
116
+				proportions = [	(768,2),\
117
+								(512,4),\
118
+								(256,8),\
119
+								(128,4),(128,16),\
120
+								(64,4),(64,8),(64,16),\
121
+								(32,8),(32,16),(32,32),(32,32),(32,64),(32,128),\
122
+								(16,1),(16,4),(16,16),(16,64)]
123
+				'''
124
+				#proportions = [(512,1),(256,2),(128,4),(64,8),(64,4),(32,16),(32,32),(32,8),(16,8),(16,32),(8,64),(8,32),(8,16)]
125
+				#proportions = [(32,1),(32,2),(32,3),(32,4),(32,5),(32,6),(32,8),(32,12),(32,16),(32,24),(32,32),(32,64)]
126
+				
108 127
 				seq.proportions = proportions
109 128
 				#proportions = seq.proportions[]
110 129
 				choix_rnd = random.randint(0, len(proportions)-1)
... ...
@@ -112,41 +145,42 @@ for i in range(4):
112 112
 				seq.choix.append(choix_rnd)
113 113
 				
114 114
 				largeur = proportions[choix_rnd][0]
115
-	
116 115
 				
117 116
 				# positionnement de la copie, aleatoirement, entre 0 et la largeur totale de l'image 
118 117
 				randomCopyPosi = random.randint(0, (im1.size[0]-largeur))
119 118
 				#randomCopyPosi = seq.randomCopyPosi
120 119
 				seq.randomCopyPosi.append(randomCopyPosi)
121
-			
122
-			i+=1
123 120
 
121
+			i+=1
122
+			
124 123
 			# tirage au sort
125 124
 
126
-			
127 125
 			#seq["choix"].append(choix_rnd)
128
-			
126
+
129 127
 			# assignation des valeurs (paires) finales choisies
130 128
 			largeur = proportions[choix_rnd][0]			
131 129
 			repeat = proportions[choix_rnd][1]
132
-	
133 130
 
134 131
 			#seq["randomCopyPosi"].append(randomCopyPosi)
135
-			
132
+
136 133
 			cx1 = randomCopyPosi
137 134
 			cx2 = randomCopyPosi + largeur
138 135
 			# decoupage du sample
139 136
 			im3 = im2.crop((cx1,haut,cx2,bas))
137
+						
140 138
 			print "im3 = im2.crop : "+str(im3.size)
141 139
 				
142 140
 			draw = ImageDraw.Draw(im4)
143 141
 					
144 142
 			loop = 0
145
-			pixelSizeIndex = random.randint(0,20)
146
-			pixelSizeList = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,4,8]
143
+			
144
+			pixelSizeList = [1,1,1,1,1,1,1,1,4,8]
145
+			#pixelSizeList = [1]
146
+			pixelSizeIndex = random.randint(0,len(pixelSizeList)-1)
147 147
 			pixelSize = pixelSizeList[pixelSizeIndex]
148
+			'''
148 149
 			print " pixelSize = "+str(pixelSize)
149
-			
150
+			'''
150 151
 			
151 152
 			''' COLLAGE DU SAMPLE
152 153
 			'''
... ...
@@ -162,9 +196,11 @@ for i in range(4):
162 162
 				im3 = im3.resize((im3.size[0]/pixelSize, im3.size[1]/pixelSize), Image.NEAREST)
163 163
 				im3 = im3.resize((im3.size[0]*pixelSize, im3.size[1]*pixelSize), Image.NEAREST)
164 164
 				
165
+				'''
165 166
 				print "im3.size="+str(im3.size)
166 167
 				print "im4.size="+str(im4.size)
167
-
168
+				'''
169
+				
168 170
 				#lignes colorées de 1 pix
169 171
 				draw.line((im3.size[0]-1, 0, im3.size[0]-1, im3.size[1]-1), fill="rgb(255,255,255)")
170 172
 				
... ...
@@ -193,8 +229,9 @@ for i in range(4):
193 193
 	for j in range(len(randomCoupeHauteur)-1):
194 194
 		Hacheur(randomCoupeHauteur[j], randomCoupeHauteur[j+1])
195 195
 	
196
-	''' SAUVEGARDE
196
+	''' SAUVEGARDE	
197 197
 	'''
198
+	
198 199
 	# CTRL + S
199 200
 	#chemin du script	: scriptpy = sys.argv[0]
200 201
 	#chemin de l'image	: str(sys.argv[1])
... ...
@@ -207,4 +244,27 @@ for i in range(4):
207 207
 	#print script+"."+str(i)+"_"+strftime("%Y%m%d-%Hh%Mm%Ss", gmtime())+".jpg"
208 208
 	#millis = int(round(time.time() * 1000))
209 209
 	#print "millis-secondes : "+str(millis)
210
-	
210
+
211
+
212
+#obtenir les valeurs RGB des pixels de l'image
213
+'''
214
+from PIL import Image
215
+
216
+im = Image.open('test.png')
217
+pixels = list(im.getdata())
218
+width, height = im.size
219
+
220
+pixels = [pixels[i * width:(i + 1) * width] for i in xrange(height)]
221
+
222
+for r in range(0, height-⁠1) :
223
+        print "pixels = "+str(pixels[r])
224
+
225
+print " "
226
+print "len(pixels) = "+str(len(pixels))
227
+print "width = "+str(width)
228
+print "height = "+str(height)
229
+print " "
230
+
231
+#tintin = im.tostring( "raw", "RGBA", 0, -⁠1)
232
+#print "tostring = "+tintin
233
+'''
... ...
@@ -7,3257 +7,12014 @@ p2
7 7
 NsS'proportions'
8 8
 p3
9 9
 (lp4
10
-(I160
11
-I6
10
+(I256
11
+I1
12 12
 tp5
13
-a(I120
14
-I4
13
+a(I160
14
+I1
15 15
 tp6
16 16
 a(I120
17
-I8
17
+I2
18 18
 tp7
19
-a(I80
20
-I16
19
+a(I120
20
+I3
21 21
 tp8
22
-a(I64
23
-I16
22
+a(I80
23
+I6
24 24
 tp9
25
-a(I24
26
-I32
25
+a(I64
26
+I12
27 27
 tp10
28
+a(I24
29
+I18
30
+tp11
28 31
 a(I8
29 32
 I24
30
-tp11
33
+tp12
31 34
 a(I8
32 35
 I16
33
-tp12
36
+tp13
34 37
 asS'randomCopyPosi'
35
-p13
36
-(lp14
37
-I1894
38
-aI1083
39
-aI74
40
-aI1381
41
-aI1333
42
-aI96
43
-aI1484
44
-aI1211
45
-aI35
46
-aI1911
47
-aI1016
48
-aI707
49
-aI1631
50
-aI773
51
-aI159
52
-aI1754
53
-aI852
54
-aI1512
55
-aI1859
56
-aI1215
57
-aI1479
58
-aI712
59
-aI1402
60
-aI1485
61
-aI594
62
-aI75
63
-aI284
64
-aI663
65
-aI1992
66
-aI1898
67
-aI970
38
+p14
39
+(lp15
40
+I5918
41
+aI2055
42
+aI4819
43
+aI3121
44
+aI4658
45
+aI4546
46
+aI3689
47
+aI3041
48
+aI2197
49
+aI1862
50
+aI2904
51
+aI6690
52
+aI4717
53
+aI5076
68 54
 aI69
69
-aI1361
70
-aI1500
71
-aI333
72
-aI1704
73
-aI659
74
-aI569
75
-aI246
76
-aI780
77
-aI1368
78
-aI800
79
-aI126
80
-aI542
81
-aI1522
82
-aI1399
83
-aI372
84
-aI1727
85
-aI27
86
-aI1898
87
-aI299
88
-aI1934
89
-aI998
90
-aI291
91
-aI1374
92
-aI1508
93
-aI624
94
-aI386
95
-aI738
96
-aI596
97
-aI1003
98
-aI327
99
-aI516
100
-aI1083
101
-aI1439
102
-aI1579
103
-aI1985
104
-aI1471
105
-aI568
106
-aI968
107
-aI738
108
-aI202
109
-aI1988
110
-aI230
111
-aI1453
112
-aI1339
113
-aI659
114
-aI864
115
-aI901
116
-aI659
117
-aI1524
118
-aI4
119
-aI1363
120
-aI564
121
-aI1460
122
-aI543
123
-aI1585
124
-aI320
125
-aI262
126
-aI210
127
-aI958
128
-aI1908
129
-aI967
130
-aI208
131
-aI1636
132
-aI1970
133
-aI424
134
-aI689
135
-aI1054
136
-aI854
137
-aI649
138
-aI1014
139
-aI1813
55
+aI2963
56
+aI4417
57
+aI6964
58
+aI1531
59
+aI856
60
+aI6946
61
+aI3842
62
+aI6925
63
+aI4325
64
+aI5911
65
+aI4737
66
+aI1403
67
+aI3077
68
+aI2786
69
+aI7407
70
+aI4853
71
+aI6759
72
+aI6933
73
+aI4318
74
+aI2678
75
+aI6492
76
+aI186
140 77
 aI1752
141
-aI173
142
-aI1706
143
-aI1197
144
-aI260
145
-aI826
146
-aI1775
147
-aI615
148
-aI480
149
-aI1040
150
-aI1148
151
-aI1168
152
-aI202
153
-aI987
154
-aI2014
155
-aI1415
156
-aI17
157
-aI584
158
-aI417
159
-aI704
160
-aI28
161
-aI691
162
-aI1419
163
-aI292
164
-aI1036
165
-aI1362
166
-aI1774
167
-aI1689
168
-aI1112
169
-aI519
170
-aI1782
171
-aI467
172
-aI1817
173
-aI559
174
-aI268
175
-aI1494
176
-aI1750
177
-aI1387
178
-aI964
179
-aI1869
180
-aI188
181
-aI191
182
-aI931
78
+aI4745
79
+aI2481
80
+aI3008
81
+aI1598
82
+aI6227
83
+aI3969
84
+aI2075
85
+aI409
86
+aI184
87
+aI1733
88
+aI2277
89
+aI5803
90
+aI5199
91
+aI6278
92
+aI2800
93
+aI5369
94
+aI902
95
+aI3788
96
+aI6796
97
+aI3427
98
+aI1598
99
+aI5411
100
+aI1860
101
+aI773
102
+aI5989
103
+aI3518
104
+aI7200
105
+aI6604
106
+aI3037
107
+aI368
108
+aI278
109
+aI4564
110
+aI5112
111
+aI5095
112
+aI4379
113
+aI3318
114
+aI479
115
+aI7206
116
+aI3871
117
+aI1660
118
+aI3407
119
+aI3888
120
+aI5369
121
+aI6119
122
+aI696
123
+aI5596
124
+aI6578
125
+aI4384
126
+aI6352
127
+aI5407
128
+aI5852
129
+aI2016
130
+aI5666
131
+aI654
132
+aI2016
133
+aI5253
134
+aI5871
135
+aI5515
136
+aI6357
137
+aI4986
138
+aI4125
139
+aI3831
140
+aI6976
141
+aI5409
142
+aI6700
143
+aI6876
144
+aI15
145
+aI2426
146
+aI2721
147
+aI2598
148
+aI4030
149
+aI6541
150
+aI3185
151
+aI2544
152
+aI6659
183 153
 aI639
184
-aI1481
185
-aI1977
186
-aI1197
187
-aI1691
188
-aI1210
189
-aI396
190
-aI1435
191
-aI351
192
-aI705
193
-aI291
154
+aI811
155
+aI5109
156
+aI6112
157
+aI5310
158
+aI7083
159
+aI3080
160
+aI6916
161
+aI2585
162
+aI3436
163
+aI3870
164
+aI2953
165
+aI5095
166
+aI6090
167
+aI6581
168
+aI1520
169
+aI1610
170
+aI1949
171
+aI618
172
+aI4199
173
+aI1674
174
+aI3038
175
+aI6897
176
+aI6895
177
+aI4577
178
+aI761
179
+aI5209
180
+aI3282
181
+aI1963
182
+aI5715
183
+aI229
184
+aI4556
185
+aI2199
186
+aI5533
187
+aI2987
188
+aI6558
189
+aI28
190
+aI192
191
+aI4794
192
+aI6068
193
+aI1968
194
+aI6486
195
+aI1772
196
+aI1276
197
+aI7097
198
+aI1056
199
+aI86
200
+aI5361
201
+aI4642
202
+aI2386
203
+aI3525
204
+aI4630
205
+aI4394
206
+aI3190
207
+aI3778
208
+aI6586
209
+aI2426
210
+aI6796
211
+aI2671
212
+aI6038
213
+aI3308
214
+aI321
215
+aI5451
216
+aI5272
217
+aI4370
218
+aI2776
219
+aI1694
220
+aI4171
221
+aI930
222
+aI2850
223
+aI7515
224
+aI3077
225
+aI3558
226
+aI3534
227
+aI1304
228
+aI2250
229
+aI4695
230
+aI2173
231
+aI3012
232
+aI4134
233
+aI2680
234
+aI2196
235
+aI2635
236
+aI6360
237
+aI1844
238
+aI5973
239
+aI5835
240
+aI5579
241
+aI3889
242
+aI1584
243
+aI4892
244
+aI6047
245
+aI990
246
+aI1876
247
+aI2284
248
+aI283
249
+aI5674
250
+aI7185
251
+aI5647
252
+aI5882
253
+aI6302
254
+aI2701
255
+aI4151
256
+aI6013
257
+aI5010
258
+aI4370
259
+aI161
260
+aI4268
261
+aI902
262
+aI7262
263
+aI4160
264
+aI5046
265
+aI1178
266
+aI4357
267
+aI1265
268
+aI7132
269
+aI4334
270
+aI7071
271
+aI6754
272
+aI3254
273
+aI3404
274
+aI2444
275
+aI5169
276
+aI636
277
+aI4339
278
+aI1918
279
+aI4109
280
+aI6639
281
+aI3852
282
+aI5976
283
+aI4142
284
+aI7205
285
+aI6286
286
+aI6472
287
+aI6326
288
+aI1037
289
+aI4071
290
+aI6136
291
+aI1537
292
+aI81
293
+aI7240
294
+aI3935
295
+aI6361
296
+aI1455
297
+aI4595
194 298
 aI1637
195
-aI1106
196
-aI1593
197
-aI1718
198
-aI1140
199
-aI270
299
+aI7038
300
+aI1062
301
+aI811
302
+aI633
303
+aI3964
304
+aI7082
305
+aI3192
306
+aI4060
307
+aI1747
308
+aI1406
200 309
 aI848
201
-aI1620
202
-aI415
203
-aI1845
204
-aI1334
205
-aI1760
206
-aI1294
207
-aI1009
208
-aI838
209
-aI1765
210
-aI477
211
-aI1300
212
-aI402
213
-aI281
214
-aI1247
215
-aI1163
216
-aI1048
217
-aI908
218
-aI158
219
-aI981
220
-aI591
221
-aI380
222
-aI232
223
-aI793
224
-aI394
225
-aI329
226
-aI275
227
-aI236
228
-aI1180
229
-aI259
230
-aI727
231
-aI1818
232
-aI63
233
-aI152
234
-aI1052
235
-aI614
236
-aI1583
237
-aI921
238
-aI1687
239
-aI854
240
-aI1235
241
-aI1576
242
-aI399
243
-aI1071
244
-aI697
245
-aI1717
246
-aI1102
247
-aI1787
248
-aI692
249
-aI1868
250
-aI1793
251
-aI246
310
+aI4473
311
+aI1901
312
+aI2560
313
+aI4725
314
+aI1462
315
+aI753
316
+aI1682
317
+aI4330
318
+aI1115
319
+aI6525
320
+aI3571
321
+aI6506
322
+aI4230
323
+aI3203
324
+aI2838
325
+aI7127
326
+aI2244
327
+aI2070
328
+aI5626
329
+aI4712
330
+aI7383
331
+aI555
332
+aI3925
333
+aI5355
334
+aI429
335
+aI3963
336
+aI6114
337
+aI1714
338
+aI6317
339
+aI1357
340
+aI2324
341
+aI6427
342
+aI3562
343
+aI6071
344
+aI3131
345
+aI2166
346
+aI532
347
+aI4743
348
+aI5118
349
+aI5043
350
+aI3964
351
+aI1021
352
+aI3751
353
+aI6401
354
+aI244
355
+aI4541
356
+aI612
357
+aI1780
358
+aI749
359
+aI1395
360
+aI557
361
+aI413
362
+aI7008
363
+aI4506
364
+aI6938
365
+aI1101
366
+aI1245
367
+aI5333
368
+aI6496
369
+aI5380
370
+aI4230
371
+aI4975
372
+aI2389
373
+aI89
374
+aI5268
375
+aI7179
376
+aI6565
377
+aI4657
378
+aI2442
379
+aI5393
380
+aI1082
381
+aI1942
382
+aI3379
383
+aI1514
384
+aI4261
385
+aI1788
386
+aI5487
387
+aI1348
388
+aI3515
389
+aI1498
390
+aI766
391
+aI648
392
+aI4241
393
+aI2106
394
+aI2833
395
+aI3726
396
+aI4180
397
+aI917
398
+aI4585
399
+aI7103
400
+aI3617
401
+aI3600
402
+aI4732
403
+aI1731
404
+aI4577
405
+aI5848
406
+aI6666
407
+aI555
408
+aI4374
409
+aI2480
410
+aI5114
411
+aI136
412
+aI6742
413
+aI3445
414
+aI1701
415
+aI6499
416
+aI2238
417
+aI2960
418
+aI969
419
+aI6261
420
+aI10
421
+aI5858
422
+aI4479
423
+aI311
424
+aI3222
425
+aI4166
426
+aI6667
427
+aI3110
428
+aI3246
429
+aI2124
430
+aI5402
431
+aI730
432
+aI4882
433
+aI429
434
+aI4438
435
+aI3927
436
+aI5384
437
+aI5754
438
+aI5852
439
+aI5537
440
+aI6658
441
+aI2040
442
+aI1340
443
+aI4070
444
+aI1786
445
+aI276
446
+aI1461
447
+aI2911
448
+aI2688
449
+aI7006
450
+aI7168
451
+aI6476
452
+aI5198
453
+aI7463
454
+aI3441
455
+aI5984
456
+aI527
457
+aI1933
458
+aI5037
459
+aI4206
460
+aI4791
461
+aI4599
462
+aI5776
463
+aI1455
464
+aI5630
465
+aI5742
466
+aI5345
467
+aI1652
468
+aI6891
469
+aI1561
470
+aI6551
471
+aI5309
472
+aI6214
473
+aI4807
474
+aI2881
475
+aI5255
476
+aI3844
477
+aI7415
478
+aI1702
479
+aI2874
480
+aI6813
481
+aI1864
482
+aI260
483
+aI3094
484
+aI6264
485
+aI6947
486
+aI4458
487
+aI6381
488
+aI1307
489
+aI1362
490
+aI897
491
+aI4829
492
+aI7187
493
+aI1456
494
+aI3495
495
+aI3168
496
+aI3230
497
+aI1757
498
+aI473
499
+aI4238
500
+aI7207
501
+aI2193
502
+aI4239
503
+aI1104
504
+aI7376
505
+aI3623
506
+aI5674
507
+aI2775
508
+aI734
509
+aI6900
510
+aI1640
511
+aI4253
512
+aI5278
513
+aI1451
514
+aI88
515
+aI4784
516
+aI3076
517
+aI858
518
+aI3726
519
+aI5417
520
+aI1365
521
+aI1135
522
+aI5611
523
+aI3861
524
+aI5304
525
+aI3830
526
+aI2544
527
+aI6557
528
+aI2609
529
+aI4225
530
+aI1570
531
+aI4878
532
+aI3756
533
+aI6107
534
+aI5830
535
+aI744
536
+aI758
537
+aI5839
538
+aI4305
539
+aI6874
540
+aI6668
541
+aI6404
542
+aI5587
543
+aI4507
544
+aI2199
545
+aI135
546
+aI5340
547
+aI6250
548
+aI6262
549
+aI385
550
+aI3144
551
+aI7372
552
+aI5928
553
+aI566
554
+aI228
555
+aI1826
556
+aI1342
557
+aI3491
558
+aI631
559
+aI422
560
+aI6067
561
+aI814
562
+aI3400
563
+aI2392
564
+aI2665
565
+aI5237
566
+aI5090
567
+aI4410
568
+aI5044
569
+aI1612
570
+aI1936
571
+aI7090
572
+aI1141
573
+aI6682
574
+aI3692
575
+aI7117
576
+aI1829
577
+aI2447
578
+aI2914
579
+aI3354
580
+aI6462
581
+aI2560
582
+aI5184
583
+aI1428
584
+aI1341
585
+aI6553
586
+aI6756
587
+aI169
588
+aI3888
589
+aI1469
590
+aI4106
591
+aI3267
592
+aI1287
593
+aI4290
594
+aI2681
595
+aI93
596
+aI4504
597
+aI2416
598
+aI4744
599
+aI3709
600
+aI1108
601
+aI4008
602
+aI3657
603
+aI2578
604
+aI4242
605
+aI2096
606
+aI6722
607
+aI1545
608
+aI5456
609
+aI2144
610
+aI1274
611
+aI410
612
+aI5552
613
+aI6320
614
+aI5771
615
+aI1099
616
+aI1488
617
+aI7199
618
+aI5308
252 619
 aI403
253
-aI679
254
-aI1707
255
-aI1368
256
-aI1010
257
-aI588
620
+aI5727
621
+aI4333
622
+aI116
623
+aI39
624
+aI2474
625
+aI2491
258 626
 aI488
259
-aI320
260
-aI998
261
-aI1687
262
-aI1385
263
-aI1829
264
-aI1244
265
-aI358
266
-aI393
267
-aI988
268
-aI1620
269
-aI303
270
-aI859
271
-aI1842
272
-aI2030
273
-aI273
274
-aI1139
275
-aI1858
276
-aI1276
277
-aI127
278
-aI1446
279
-aI1282
280
-aI1831
281
-aI1136
282
-aI507
283
-aI1091
284
-aI1018
285
-aI363
286
-aI427
287
-aI294
288
-aI782
289
-aI441
290
-aI988
291
-aI314
292
-aI1991
293
-aI1882
294
-aI1440
295
-aI1797
296
-aI478
297
-aI556
298
-aI391
627
+aI5722
628
+aI3893
629
+aI3573
630
+aI2943
631
+aI3459
632
+aI1532
633
+aI7026
634
+aI6709
635
+aI6867
636
+aI154
637
+aI4009
638
+aI6508
639
+aI3451
640
+aI3680
641
+aI3679
642
+aI6210
299 643
 aI729
300
-aI794
301
-aI833
302
-aI1505
303
-aI859
304
-aI199
305
-aI1023
306
-aI1446
307
-aI485
308
-aI1852
309
-aI1755
310
-aI794
311
-aI1843
312
-aI593
313
-aI453
314
-aI1807
644
+aI2071
645
+aI3765
646
+aI2629
647
+aI4920
648
+aI7373
649
+aI2013
650
+aI7135
651
+aI7118
652
+aI411
653
+aI237
654
+aI4351
655
+aI4429
656
+aI6873
657
+aI1839
658
+aI4391
659
+aI3621
660
+aI4194
661
+aI2697
662
+aI1992
663
+aI7175
664
+aI6843
665
+aI3733
666
+aI2989
667
+aI7252
668
+aI2329
669
+aI133
670
+aI529
671
+aI1017
672
+aI3606
673
+aI78
674
+aI2630
675
+aI4743
676
+aI5606
677
+aI6143
678
+aI5015
679
+aI6198
680
+aI6710
681
+aI513
682
+aI7237
683
+aI6363
684
+aI6607
685
+aI311
686
+aI813
687
+aI1069
688
+aI3138
689
+aI4505
690
+aI4383
691
+aI6102
692
+aI6291
693
+aI6082
694
+aI700
695
+aI3697
696
+aI976
697
+aI4865
698
+aI3076
699
+aI4934
700
+aI3586
701
+aI5240
702
+aI399
703
+aI3119
704
+aI5041
705
+aI791
706
+aI5644
707
+aI4508
708
+aI176
709
+aI4505
710
+aI5534
711
+aI3401
712
+aI5284
713
+aI5163
714
+aI3425
715
+aI2681
716
+aI7005
717
+aI6087
718
+aI6985
719
+aI487
720
+aI1787
721
+aI2677
722
+aI5253
723
+aI2120
724
+aI3961
725
+aI4984
726
+aI2079
727
+aI883
728
+aI386
729
+aI6438
730
+aI4560
731
+aI7417
732
+aI4389
733
+aI3981
734
+aI3231
735
+aI5407
736
+aI4054
737
+aI5008
738
+aI1973
739
+aI2747
740
+aI3186
741
+aI1880
742
+aI6889
743
+aI3101
744
+aI5165
745
+aI6938
746
+aI6931
747
+aI4350
748
+aI4467
749
+aI4090
750
+aI3627
751
+aI514
752
+aI7415
753
+aI1006
754
+aI2977
755
+aI1380
756
+aI6147
757
+aI5853
758
+aI4903
759
+aI1089
760
+aI1978
761
+aI2619
762
+aI49
763
+aI4074
764
+aI1516
765
+aI1771
766
+aI7252
767
+aI6220
768
+aI5192
769
+aI1232
770
+aI5748
771
+aI422
772
+aI1689
773
+aI6062
774
+aI4735
775
+aI4199
776
+aI1874
777
+aI4101
778
+aI5402
779
+aI5151
315 780
 aI1021
316
-aI326
317
-aI375
318
-aI1513
319
-aI854
320
-aI1868
321
-aI591
322
-aI930
323
-aI1670
324
-aI973
325
-aI159
326
-aI1082
327
-aI241
328
-aI216
329
-aI174
781
+aI3745
782
+aI4188
783
+aI1955
784
+aI741
785
+aI2429
786
+aI4891
787
+aI5588
788
+aI134
789
+aI689
790
+aI59
791
+aI5297
792
+aI5784
793
+aI4518
794
+aI3671
795
+aI3393
796
+aI6531
797
+aI1772
798
+aI6296
799
+aI1840
800
+aI6906
801
+aI3010
802
+aI6656
803
+aI4134
804
+aI3719
805
+aI3361
806
+aI6519
807
+aI7280
808
+aI6254
809
+aI945
810
+aI4810
811
+aI5830
812
+aI5582
813
+aI1029
814
+aI7117
815
+aI188
816
+aI1751
817
+aI1000
818
+aI6204
819
+aI5117
820
+aI1032
821
+aI4052
822
+aI5421
823
+aI4835
824
+aI7165
825
+aI4613
826
+aI6973
827
+aI1544
828
+aI6743
829
+aI297
830
+aI3372
831
+aI1816
832
+aI6499
833
+aI3986
834
+aI6499
835
+aI2629
836
+aI5210
837
+aI2104
838
+aI6596
839
+aI5525
840
+aI6061
841
+aI4309
842
+aI4881
843
+aI4716
844
+aI547
845
+aI6014
846
+aI2705
847
+aI470
848
+aI6952
849
+aI22
850
+aI954
851
+aI503
852
+aI6889
853
+aI1263
854
+aI339
855
+aI20
856
+aI6887
857
+aI6405
858
+aI666
859
+aI39
860
+aI6682
861
+aI1868
862
+aI6259
863
+aI182
864
+aI2070
865
+aI5953
866
+aI3893
867
+aI6354
868
+aI3953
869
+aI911
870
+aI2646
871
+aI1807
872
+aI2667
873
+aI7501
874
+aI5486
875
+aI1655
876
+aI111
877
+aI6063
330 878
 aI1370
331
-aI1057
879
+aI223
880
+aI5527
881
+aI1117
882
+aI6482
883
+aI6226
884
+aI4742
885
+aI5498
886
+aI1192
887
+aI6711
888
+aI5700
889
+aI5485
890
+aI1092
891
+aI3901
892
+aI4309
893
+aI4799
894
+aI2764
895
+aI1540
332 896
 aI378
333
-aI715
334
-aI1066
335
-aI1570
336
-aI1386
337
-aI1212
338
-aI888
339
-aI51
340
-aI786
341
-aI1562
342
-aI624
343
-aI837
897
+aI3473
898
+aI7435
899
+aI5972
900
+aI3004
901
+aI1511
902
+aI1839
903
+aI1128
904
+aI3984
905
+aI91
906
+aI6757
907
+aI4580
908
+aI1699
909
+aI4331
910