mineru 2.5.3__py3-none-any.whl → 2.6.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. mineru/backend/pipeline/model_init.py +25 -3
  2. mineru/backend/pipeline/model_json_to_middle_json.py +2 -2
  3. mineru/backend/pipeline/model_list.py +0 -1
  4. mineru/backend/utils.py +24 -0
  5. mineru/backend/vlm/model_output_to_middle_json.py +2 -2
  6. mineru/backend/vlm/{custom_logits_processors.py → utils.py} +36 -2
  7. mineru/backend/vlm/vlm_analyze.py +43 -50
  8. mineru/backend/vlm/vlm_magic_model.py +155 -1
  9. mineru/cli/common.py +26 -23
  10. mineru/cli/fast_api.py +2 -8
  11. mineru/cli/gradio_app.py +104 -13
  12. mineru/cli/models_download.py +1 -0
  13. mineru/model/mfr/pp_formulanet_plus_m/predict_formula.py +152 -0
  14. mineru/model/mfr/pp_formulanet_plus_m/processors.py +657 -0
  15. mineru/model/mfr/unimernet/unimernet_hf/modeling_unimernet.py +1 -326
  16. mineru/model/mfr/utils.py +338 -0
  17. mineru/model/ocr/paddleocr2pytorch/pytorch_paddle.py +103 -16
  18. mineru/model/table/rec/unet_table/main.py +1 -1
  19. mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/data/imaug/operators.py +5 -5
  20. mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/backbones/__init__.py +2 -1
  21. mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/backbones/rec_lcnetv3.py +7 -7
  22. mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/backbones/rec_pphgnetv2.py +2 -2
  23. mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/heads/__init__.py +2 -0
  24. mineru/model/utils/pytorchocr/modeling/heads/rec_ppformulanet_head.py +1383 -0
  25. mineru/model/utils/pytorchocr/modeling/heads/rec_unimernet_head.py +2631 -0
  26. mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/postprocess/rec_postprocess.py +25 -28
  27. mineru/model/utils/pytorchocr/utils/__init__.py +0 -0
  28. mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/arch_config.yaml +130 -0
  29. mineru/model/utils/pytorchocr/utils/resources/dict/ppocrv5_arabic_dict.txt +747 -0
  30. mineru/model/utils/pytorchocr/utils/resources/dict/ppocrv5_cyrillic_dict.txt +850 -0
  31. mineru/model/utils/pytorchocr/utils/resources/dict/ppocrv5_devanagari_dict.txt +568 -0
  32. mineru/model/utils/pytorchocr/utils/resources/dict/ppocrv5_ta_dict.txt +513 -0
  33. mineru/model/utils/pytorchocr/utils/resources/dict/ppocrv5_te_dict.txt +540 -0
  34. mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/models_config.yml +15 -15
  35. mineru/model/utils/pytorchocr/utils/resources/pp_formulanet_arch_config.yaml +24 -0
  36. mineru/model/utils/tools/infer/__init__.py +1 -0
  37. mineru/model/{ocr/paddleocr2pytorch → utils}/tools/infer/predict_det.py +6 -3
  38. mineru/model/{ocr/paddleocr2pytorch → utils}/tools/infer/predict_rec.py +16 -25
  39. mineru/model/vlm_vllm_model/server.py +4 -1
  40. mineru/resources/header.html +2 -2
  41. mineru/utils/enum_class.py +1 -0
  42. mineru/utils/guess_suffix_or_lang.py +9 -1
  43. mineru/utils/llm_aided.py +4 -2
  44. mineru/utils/ocr_utils.py +16 -0
  45. mineru/utils/table_merge.py +102 -13
  46. mineru/version.py +1 -1
  47. {mineru-2.5.3.dist-info → mineru-2.6.0.dist-info}/METADATA +33 -6
  48. mineru-2.6.0.dist-info/RECORD +195 -0
  49. mineru-2.5.3.dist-info/RECORD +0 -181
  50. /mineru/model/{ocr/paddleocr2pytorch/pytorchocr → mfr/pp_formulanet_plus_m}/__init__.py +0 -0
  51. /mineru/model/{ocr/paddleocr2pytorch/tools/infer → utils}/__init__.py +0 -0
  52. /mineru/model/{ocr/paddleocr2pytorch/pytorchocr/modeling → utils/pytorchocr}/__init__.py +0 -0
  53. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/base_ocr_v20.py +0 -0
  54. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/data/__init__.py +0 -0
  55. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/data/imaug/__init__.py +0 -0
  56. /mineru/model/{ocr/paddleocr2pytorch/pytorchocr/utils → utils/pytorchocr/modeling}/__init__.py +0 -0
  57. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/architectures/__init__.py +0 -0
  58. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/architectures/base_model.py +0 -0
  59. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/backbones/det_mobilenet_v3.py +0 -0
  60. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/backbones/rec_donut_swin.py +0 -0
  61. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/backbones/rec_hgnet.py +0 -0
  62. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/backbones/rec_mobilenet_v3.py +0 -0
  63. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/backbones/rec_mv1_enhance.py +0 -0
  64. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/backbones/rec_svtrnet.py +0 -0
  65. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/common.py +0 -0
  66. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/heads/cls_head.py +0 -0
  67. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/heads/det_db_head.py +0 -0
  68. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/heads/rec_ctc_head.py +0 -0
  69. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/heads/rec_multi_head.py +0 -0
  70. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/necks/__init__.py +0 -0
  71. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/necks/db_fpn.py +0 -0
  72. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/necks/intracl.py +0 -0
  73. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/modeling/necks/rnn.py +0 -0
  74. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/postprocess/__init__.py +0 -0
  75. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/postprocess/cls_postprocess.py +0 -0
  76. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/postprocess/db_postprocess.py +0 -0
  77. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/arabic_dict.txt +0 -0
  78. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/chinese_cht_dict.txt +0 -0
  79. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/cyrillic_dict.txt +0 -0
  80. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/devanagari_dict.txt +0 -0
  81. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/en_dict.txt +0 -0
  82. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/japan_dict.txt +0 -0
  83. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ka_dict.txt +0 -0
  84. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/korean_dict.txt +0 -0
  85. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/latin_dict.txt +0 -0
  86. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ppocr_keys_v1.txt +0 -0
  87. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ppocrv4_doc_dict.txt +0 -0
  88. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ppocrv5_dict.txt +0 -0
  89. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ppocrv5_el_dict.txt +0 -0
  90. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ppocrv5_en_dict.txt +0 -0
  91. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ppocrv5_eslav_dict.txt +0 -0
  92. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ppocrv5_korean_dict.txt +0 -0
  93. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ppocrv5_latin_dict.txt +0 -0
  94. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ppocrv5_th_dict.txt +0 -0
  95. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/ta_dict.txt +0 -0
  96. /mineru/model/{ocr/paddleocr2pytorch → utils}/pytorchocr/utils/resources/dict/te_dict.txt +0 -0
  97. /mineru/model/{ocr/paddleocr2pytorch → utils}/tools/__init__.py +0 -0
  98. /mineru/model/{ocr/paddleocr2pytorch → utils}/tools/infer/predict_cls.py +0 -0
  99. /mineru/model/{ocr/paddleocr2pytorch → utils}/tools/infer/predict_system.py +0 -0
  100. /mineru/model/{ocr/paddleocr2pytorch → utils}/tools/infer/pytorchocr_utility.py +0 -0
  101. {mineru-2.5.3.dist-info → mineru-2.6.0.dist-info}/WHEEL +0 -0
  102. {mineru-2.5.3.dist-info → mineru-2.6.0.dist-info}/entry_points.txt +0 -0
  103. {mineru-2.5.3.dist-info → mineru-2.6.0.dist-info}/licenses/LICENSE.md +0 -0
  104. {mineru-2.5.3.dist-info → mineru-2.6.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,850 @@
1
+ !
2
+ "
3
+ #
4
+ $
5
+ %
6
+ &
7
+ '
8
+ (
9
+ )
10
+ *
11
+ +
12
+ ,
13
+ -
14
+ .
15
+ /
16
+ 0
17
+ 1
18
+ 2
19
+ 3
20
+ 4
21
+ 5
22
+ 6
23
+ 7
24
+ 8
25
+ 9
26
+ :
27
+ ;
28
+ <
29
+ =
30
+ >
31
+ ?
32
+ A
33
+ B
34
+ C
35
+ D
36
+ E
37
+ F
38
+ G
39
+ H
40
+ I
41
+ J
42
+ K
43
+ L
44
+ M
45
+ N
46
+ O
47
+ P
48
+ Q
49
+ R
50
+ S
51
+ T
52
+ U
53
+ V
54
+ W
55
+ X
56
+ Y
57
+ Z
58
+ [
59
+ ]
60
+ _
61
+ `
62
+ a
63
+ b
64
+ c
65
+ d
66
+ e
67
+ f
68
+ g
69
+ h
70
+ i
71
+ j
72
+ k
73
+ l
74
+ m
75
+ n
76
+ o
77
+ p
78
+ q
79
+ r
80
+ s
81
+ t
82
+ u
83
+ v
84
+ w
85
+ x
86
+ y
87
+ z
88
+ ©
89
+
90
+ {
91
+ }
92
+ \
93
+ |
94
+ @
95
+ ^
96
+ ~
97
+ ÷
98
+
99
+
100
+
101
+ ·
102
+ ±
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+
142
+
143
+
144
+
145
+
146
+
147
+ ®
148
+
149
+ Ω
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+ ¢
158
+
159
+ £
160
+ ¥
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+
205
+
206
+
207
+
208
+
209
+
210
+
211
+
212
+
213
+
214
+
215
+
216
+
217
+
218
+
219
+
220
+
221
+
222
+
223
+
224
+
225
+
226
+
227
+
228
+ 𝑢
229
+
230
+
231
+
232
+ 𝜓
233
+
234
+
235
+ ƒ
236
+
237
+
238
+
239
+
240
+
241
+
242
+
243
+ À
244
+ Á
245
+ Â
246
+ Ã
247
+ Ä
248
+ Å
249
+ Æ
250
+ Ç
251
+ È
252
+ É
253
+ Ê
254
+ Ë
255
+ Ì
256
+ Í
257
+ Î
258
+ Ï
259
+ Ð
260
+ Ñ
261
+ Ò
262
+ Ó
263
+ Ô
264
+ Õ
265
+ Ö
266
+ Ø
267
+ Ù
268
+ Ú
269
+ Û
270
+ Ü
271
+ Ý
272
+ Þ
273
+ à
274
+ á
275
+ â
276
+ ã
277
+ ä
278
+ å
279
+ æ
280
+ ç
281
+ è
282
+ é
283
+ ê
284
+ ë
285
+ ì
286
+ í
287
+ î
288
+ ï
289
+ ð
290
+ ñ
291
+ ò
292
+ ó
293
+ ô
294
+ õ
295
+ ö
296
+ ø
297
+ ù
298
+ ú
299
+ û
300
+ ü
301
+ ý
302
+ þ
303
+ ÿ
304
+ ¡
305
+ ¤
306
+ ¦
307
+ §
308
+ ¨
309
+ ª
310
+ «
311
+ ¬
312
+ ¯
313
+ °
314
+ ²
315
+ ³
316
+ ´
317
+ µ
318
+
319
+ ¸
320
+ ¹
321
+ º
322
+ »
323
+ ¼
324
+ ½
325
+ ¾
326
+ ¿
327
+ ×
328
+
329
+
330
+
331
+
332
+
333
+
334
+
335
+
336
+
337
+
338
+
339
+
340
+
341
+
342
+
343
+
344
+
345
+
346
+
347
+
348
+
349
+
350
+
351
+
352
+
353
+
354
+
355
+
356
+
357
+
358
+
359
+
360
+
361
+
362
+
363
+
364
+
365
+
366
+
367
+
368
+
369
+
370
+
371
+
372
+
373
+
374
+
375
+
376
+
377
+
378
+
379
+
380
+
381
+
382
+
383
+
384
+
385
+
386
+
387
+
388
+
389
+
390
+
391
+
392
+
393
+
394
+ Α
395
+ α
396
+ Β
397
+ β
398
+ Γ
399
+ γ
400
+ Δ
401
+ δ
402
+ Ε
403
+ ε
404
+ Ζ
405
+ ζ
406
+ Η
407
+ η
408
+ Θ
409
+ θ
410
+ Ι
411
+ ι
412
+ Κ
413
+ κ
414
+ Λ
415
+ λ
416
+ Μ
417
+ μ
418
+ Ν
419
+ ν
420
+ Ξ
421
+ ξ
422
+ Ο
423
+ ο
424
+ Π
425
+ π
426
+ Ρ
427
+ ρ
428
+ Σ
429
+ σ
430
+ ς
431
+ Τ
432
+ τ
433
+ Υ
434
+ υ
435
+ Φ
436
+ φ
437
+ Χ
438
+ χ
439
+ Ψ
440
+ ψ
441
+ ω
442
+ Ѐ
443
+ Ё
444
+ Ђ
445
+ Ѓ
446
+ Є
447
+ Ѕ
448
+ І
449
+ Ї
450
+ Ј
451
+ Љ
452
+ Њ
453
+ Ћ
454
+ Ќ
455
+ Ѝ
456
+ Ў
457
+ Џ
458
+ А
459
+ Б
460
+ В
461
+ Г
462
+ Д
463
+ Е
464
+ Ж
465
+ З
466
+ И
467
+ Й
468
+ К
469
+ Л
470
+ М
471
+ Н
472
+ О
473
+ П
474
+ Р
475
+ С
476
+ Т
477
+ У
478
+ Ф
479
+ Х
480
+ Ц
481
+ Ч
482
+ Ш
483
+ Щ
484
+ Ъ
485
+ Ы
486
+ Ь
487
+ Э
488
+ Ю
489
+ Я
490
+ а
491
+ б
492
+ в
493
+ г
494
+ д
495
+ е
496
+ ж
497
+ з
498
+ и
499
+ й
500
+ к
501
+ л
502
+ м
503
+ н
504
+ о
505
+ п
506
+ р
507
+ с
508
+ т
509
+ у
510
+ ф
511
+ х
512
+ ц
513
+ ч
514
+ ш
515
+ щ
516
+ ъ
517
+ ы
518
+ ь
519
+ э
520
+ ю
521
+ я
522
+ ѐ
523
+ ё
524
+ ђ
525
+ ѓ
526
+ є
527
+ ѕ
528
+ і
529
+ ї
530
+ ј
531
+ љ
532
+ њ
533
+ ћ
534
+ ќ
535
+ ѝ
536
+ ў
537
+ џ
538
+ Ѡ
539
+ ѡ
540
+ Ѣ
541
+ ѣ
542
+ Ѥ
543
+ ѥ
544
+ Ѧ
545
+ ѧ
546
+ Ѩ
547
+ ѩ
548
+ Ѫ
549
+ ѫ
550
+ Ѭ
551
+ ѭ
552
+ Ѯ
553
+ ѯ
554
+ Ѱ
555
+ ѱ
556
+ Ѳ
557
+ ѳ
558
+ Ѵ
559
+ ѵ
560
+ Ѷ
561
+ ѷ
562
+ Ѹ
563
+ ѹ
564
+ Ѻ
565
+ ѻ
566
+ Ѽ
567
+ ѽ
568
+ Ѿ
569
+ ѿ
570
+ Ҁ
571
+ ҁ
572
+ Ҋ
573
+ ҋ
574
+ Ҍ
575
+ ҍ
576
+ Ҏ
577
+ ҏ
578
+ Ґ
579
+ ґ
580
+ Ғ
581
+ ғ
582
+ Ҕ
583
+ ҕ
584
+ Җ
585
+ җ
586
+ Ҙ
587
+ ҙ
588
+ Қ
589
+ қ
590
+ Ҝ
591
+ ҝ
592
+ Ҟ
593
+ ҟ
594
+ Ҡ
595
+ ҡ
596
+ Ң
597
+ ң
598
+ Ҧ
599
+ ҧ
600
+ Ҩ
601
+ ҩ
602
+ Ҫ
603
+ ҫ
604
+ Ҭ
605
+ ҭ
606
+ Ү
607
+ ү
608
+ Ұ
609
+ ұ
610
+ Ҳ
611
+ ҳ
612
+ Ҷ
613
+ ҷ
614
+ Ҹ
615
+ ҹ
616
+ Һ
617
+ һ
618
+ Ҽ
619
+ ҽ
620
+ Ҿ
621
+ ҿ
622
+ Ӏ
623
+ Ӂ
624
+ ӂ
625
+ Ӄ
626
+ ӄ
627
+ Ӆ
628
+ ӆ
629
+ Ӈ
630
+ ӈ
631
+ Ӊ
632
+ ӊ
633
+ Ӌ
634
+ ӌ
635
+ Ӎ
636
+ ӎ
637
+ ӏ
638
+ Ӑ
639
+ ӑ
640
+ Ӓ
641
+ ӓ
642
+ Ӗ
643
+ ӗ
644
+ Ә
645
+ ә
646
+ Ӛ
647
+ ӛ
648
+ Ӝ
649
+ ӝ
650
+ Ӟ
651
+ ӟ
652
+ Ӡ
653
+ ӡ
654
+ Ӣ
655
+ ӣ
656
+ Ӥ
657
+ ӥ
658
+ Ӧ
659
+ ӧ
660
+ Ө
661
+ ө
662
+ Ӫ
663
+ ӫ
664
+ Ӭ
665
+ ӭ
666
+ Ӯ
667
+ ӯ
668
+ Ӱ
669
+ ӱ
670
+ Ӳ
671
+ ӳ
672
+ Ӵ
673
+ ӵ
674
+ Ӷ
675
+ ӷ
676
+ Ӹ
677
+ ӹ
678
+ Ӻ
679
+ ӻ
680
+ Ӽ
681
+ ӽ
682
+ Ӿ
683
+ ӿ
684
+ Ԁ
685
+ ԁ
686
+ Ԃ
687
+ ԃ
688
+ Ԅ
689
+ ԅ
690
+ Ԇ
691
+ ԇ
692
+ Ԉ
693
+ ԉ
694
+ Ԋ
695
+ ԋ
696
+ Ԍ
697
+ ԍ
698
+ Ԏ
699
+ ԏ
700
+ Ԑ
701
+ ԑ
702
+ Ԓ
703
+ ԓ
704
+ Ԕ
705
+ ԕ
706
+ Ԗ
707
+ ԗ
708
+ Ԙ
709
+ ԙ
710
+ Ԛ
711
+ ԛ
712
+ Ԝ
713
+ ԝ
714
+ Ԟ
715
+ ԟ
716
+ Ԡ
717
+ ԡ
718
+ Ԣ
719
+ ԣ
720
+ Ԥ
721
+ ԥ
722
+ Ԧ
723
+ ԧ
724
+ Ԩ
725
+ ԩ
726
+ Ԫ
727
+ ԫ
728
+ Ԭ
729
+ ԭ
730
+ Ԯ
731
+ ԯ
732
+
733
+
734
+
735
+
736
+
737
+
738
+
739
+
740
+
741
+
742
+
743
+
744
+
745
+
746
+
747
+
748
+
749
+
750
+
751
+
752
+
753
+
754
+
755
+
756
+
757
+
758
+
759
+
760
+
761
+
762
+
763
+ ⷿ
764
+
765
+
766
+
767
+
768
+
769
+
770
+
771
+
772
+
773
+
774
+
775
+
776
+
777
+
778
+
779
+
780
+
781
+
782
+
783
+
784
+
785
+
786
+
787
+
788
+
789
+
790
+
791
+
792
+
793
+
794
+
795
+
796
+
797
+
798
+
799
+
800
+
801
+
802
+
803
+
804
+
805
+
806
+
807
+
808
+
809
+
810
+
811
+
812
+
813
+
814
+
815
+
816
+
817
+
818
+
819
+
820
+
821
+
822
+
823
+
824
+
825
+
826
+
827
+
828
+
829
+
830
+
831
+
832
+
833
+
834
+
835
+
836
+
837
+
838
+
839
+
840
+
841
+
842
+
843
+
844
+
845
+
846
+
847
+
848
+
849
+
850
+