-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathworkbook.py
More file actions
1357 lines (966 loc) · 69.1 KB
/
workbook.py
File metadata and controls
1357 lines (966 loc) · 69.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
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
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
import os
import shutil
import numpy as np
import obonet
import pandas as pd
import torch
import torch_geometric.datasets as datasets
import torch_geometric.data as data
import torch_geometric.transforms as transforms
import networkx as nx
from torch_geometric.utils.convert import to_networkx
import CONSTANTS
from Classes.Diamond import Diamond
from Classes.Fasta import Fasta
from Classes.Interpro import Interpro, create_indicies
from Classes.STRING import STRING
from Utils import count_proteins, get_proteins_from_fasta, pickle_load, pickle_save
import urllib.request
from Bio import SeqIO
train_fasta = "/home/fbqc9/Workspace/DATA/uniprot/train_sequences.fasta"
query = "/home/fbqc9/Workspace/DATA/uniprot/test_fasta.fasta"
def get_proteins_from_fasta(fasta_file):
proteins = list(SeqIO.parse(fasta_file, "fasta"))
proteins = [i.id for i in proteins]
return proteins
test = set(get_proteins_from_fasta(query))
seqs = []
input_seq_iterator = SeqIO.parse(train_fasta, "fasta")
for pos, record in enumerate(input_seq_iterator):
if record.id in test:
pass
else:
seqs.append(record)
SeqIO.write(seqs, "test_fasta", "fasta")
exit()
for i in test:
print(i)
exit()
exit()
x = sorted_terms = pickle_load(CONSTANTS.ROOT_DIR+"/mf/sorted_terms")
print(x[1794])
exit()
data = pickle_load(CONSTANTS.ROOT_DIR+"/{}/terms_stats".format("bp"))
max_threshold = 5 # 30 # 100 #70000
min_threshold = 0 # 0 #30 #100
crew = []
for i in data:
if data[i][0] > min_threshold and data[i][0] <= max_threshold:
crew.append(i)
print(len(crew))
exit()
'''print(count_proteins("/home/fbqc9/Workspace/DATA/uniprot/test_fasta.fasta"))
exit()
x = pickle_load("/home/fbqc9/Workspace/DATA/test/t3/test_proteins")
keep = set()
for i in x:
keep.update(x[i])
print(i, len(x[i]))
print(len(keep))
exit()
x = torch.load("/bmlfast/frimpong/shared_function_data/esm2_t48/A1Z9J1.pt")
print(x['representations_48'].shape)
exit()
input_seq_iterator = SeqIO.parse("/home/fbqc9/Workspace/DATA/uniprot/train_sequences.fasta", "fasta")
for pos, record in enumerate(input_seq_iterator):
if len(record.seq) > 4000:
print(record.id)
exit
exit()'''
prediction = torch.tensor([[0.1, 0.5, 1.0, 1, 0, 1, 1, 1, 1, 1], [0, 1, 1, 0, 0, 0, 1, 0, 1, 1]])
truth = torch.tensor([[1, 0, 1, 0, 1, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 0, 1, 0, 1]])
prediction = prediction > 0.5
print(prediction)
conf = prediction/truth
print(conf)
exit()
c = prediction / truth
poi = torch.tensor([[0.8, 0.5, 1.3, 1.5, 2.0, 1.1, 1.2, 1.3, 1.4, 1.5],
[0.6, 1.2, 1.4, 0.7, 0.1, 0.9, 1.0, 0.4, 1.2, 1.7]])
true_positives_indicies = (c == 1)
a = torch.masked_select(poi, true_positives_indicies)
print(a)
print(true_positives_indicies)
exit()
true_positives = torch.sum(c == 1).item()
false_positives = torch.sum(c == float('inf')).item()
true_negatives = torch.sum(torch.isnan(c)).item()
false_negatives = torch.sum(c == 0).item()
recall = true_positives / (1.0 * (true_positives + false_negatives))
precision = true_positives / (1.0 * (true_positives + false_positives))
fscore = 2 * precision * recall / (precision + recall)
print(precision, recall, fscore)
exit()
diff = real-predicted
print('diff: ',diff)
# Correct is 0
# FP is -1
# FN is 1
print('Correctly classified: ', np.where(diff == 0)[0])
print('Incorrectly classified: ', np.where(diff != 0)[0])
print('False positives: ', np.where(diff == -1)[0])
print('False negatives: ', np.where(diff == 1)[0])
exit()
train = list(pickle_load(CONSTANTS.ROOT_DIR + "{}/{}_proteins".format("bp", "train")))
valid = list(pickle_load(CONSTANTS.ROOT_DIR + "{}/{}_proteins".format("bp", "validation")))
tot = set(train + valid)
print(len(tot))
test_group1 = pickle_load(CONSTANTS.ROOT_DIR + "test/test_proteins")['LK_bp']
test_group2 = pickle_load(CONSTANTS.ROOT_DIR + "test/test_proteins")['NK_bp']
test_group = set(test_group1+ test_group2)
print(len(test_group1 + test_group2))
print(len(test_group.intersection(tot)))
exit()
x = torch.randn(3, 4)
mask = x.ge(0.5)
print(x)
print(mask)
a = torch.masked_select(x, mask, dim=1)
print(a)
exit()
x = pickle_load("tst_labesl")
for i in x:
for j in x[i]:
assert(sum(x[i][j]) > 0)
exit()
onts = ['bp', 'cc', 'mf']
print("Generating labels")
labels = {}
test_groundtruth = pickle_load(CONSTANTS.ROOT_DIR + "test/groundtruth")
test_group = pickle_load(CONSTANTS.ROOT_DIR + "test/test_proteins")
all = {
'cc': test_group['LK_cc'] + test_group['NK_cc'],
'mf': test_group['LK_mf'] + test_group['NK_mf'],
'bp': test_group['LK_bp'] + test_group['NK_bp']
}
res = {}
for ont in onts:
res[ont] = {}
prots = all[ont]
for prot in prots:
prot_terms = test_groundtruth[prot]
terms = pickle_load(CONSTANTS.ROOT_DIR+"/{}/sorted_terms".format(ont))
tmp = []
for t in terms:
if t in prot_terms:
tmp.append(1)
else:
tmp.append(0)
res[ont][prot] = tmp
pickle_save(res, "tst_labesl")
exit()
x = pickle_load("evaluation/results/tale_out")
for i in x:
for j in x[i]:
print(i, j, x[i][j])
exit()
exit()
def format_input(fasta_file):
seqs = []
input_seq_iterator = SeqIO.parse(fasta_file, "fasta")
for pos, record in enumerate(input_seq_iterator):
if len(record.seq) < 30:
pass
else:
seqs.append(record)
SeqIO.write(seqs, "evaluation/predictions/atgo/test_fasta", "fasta")
format_input("evaluation/predictions/tale/test_fasta")
exit()
go_path=CONSTANTS.ROOT_DIR + "/obo/go-basic.obo"
go_graph = obonet.read_obo(open(go_path, 'r'))
exp = [(i, len(nx.ancestors(go_graph, i)), len(nx.descendants(go_graph, i))) for i in go_graph]
exp = [i[0] for i in exp if i[1] == 0]
print(exp)
exit()
shared = set(os.listdir("/bmlfast/frimpong/shared_function_data/esm_msa1b/"))
print(len(shared))
home = set(os.listdir("/home/fbqc9/esm_msa1b/"))
print(len(home))
diff = home.difference(shared)
print(len(diff))
for pos, i in enumerate(diff):
print("{}/{}".format(pos, len(diff)))
src = "/home/fbqc9/esm_msa1b/{}".format(i)
des = "/bmlfast/frimpong/shared_function_data/esm_msa1b/"
shutil.copy(src, des)
exit()
src = torch.arange(1, 16).reshape((3, 5))
index = torch.tensor([[3, 0, 1, 2]])
des = torch.zeros(3, 5, dtype=src.dtype)
final = des.scatter_(1, index, src)
print(src)
print(index)
print(final)
exit()
import torch, gc
gc.collect()
torch.cuda.empty_cache()
exit()
from Bio import SeqIO
from Bio.Seq import Seq
from Bio.SeqRecord import SeqRecord
data = {'A0A7P0Z4A0', 'A6JB73', 'A0A7U3JVZ2', 'Q7LYX6', 'Q1LW14', 'A0A7I2YQ95', 'A0A1X7SBU8', 'H0RND5', 'A1Z8K2',
'B6K6Z7', 'Q8JI29', 'Q6FY42', 'F1RCY7', 'A0A7P0T9I2', 'D6W8J5', 'A0A8M2BHQ8', 'A0A6Q8PGN5', 'D6W891', 'F1Q554',
'A0A8I5KRG4', 'A0A8I5KR98', 'A0A0R4IJ94', 'D6RCB1', 'P19931', 'A0A7P0TAS2', 'A0A804HLJ9', 'C9JGT8',
'A0A6Q8PFX2', 'A0A8I5KUP2', 'A0A7I2V3T6', 'Q7KUL3', 'A0A7I2V2H9', 'Q5A1D5', 'Q9I9N0', 'A0A8M1PAC4',
'A0A8M3B1J1', 'A8DYC4', 'D3Z6V5', 'P59773', 'A0A8M3AUU7', 'A0A1D8PTL5', 'Q9XB18', 'D2A5R8', 'F8W4I7', 'P32369',
'A0A7I2V307', 'A8WFS3', 'A5WUE8', 'P45524', 'A0A1D8PFG4', 'Q9VXK9', 'A0A8I5KXM7', 'B6K054', 'A0A7I2V5N2',
'E9PUN2', 'A0A8M9PX23', 'Q9VFB9', 'A0A804HLI8', 'Q59XB0', 'B6JUV7', 'O42926', 'A0A7P0T9N9', 'K7ERH5',
'A0A7I2V4J2', 'A0A2H0ZMV6', 'A0A0R4IZR5', 'P0C218', 'Q5AGM0', 'Q7KVC9', 'B1H1M3', 'A0A7I2V5W3', 'A0A8I5QKL1',
'A0A7P0Z4Q5', 'A0A0R4IBL7', 'A0A7I2PIU1', 'Q9CPZ1', 'A8KC22', 'Q6DGM9', 'A0A1W2PR02', 'A0A8I5QJW9',
'A0A8I5KXH8', 'A0A2R8Y705', 'A1B2F3', 'A0A8I5KYI5', 'A7MBU2', 'A0A7L8Y648', 'A6JLV3', 'A0A024R7K8', 'Q8SYA4',
'A0A023GQA5', 'A0A804HJV4', 'A3KPG7', 'Q59L72', 'A0A0A0MSG8', 'Q7ZVT2', 'A0A7P0TAJ0', 'Q46820', 'R4GRT4',
'A0A7G6J4N4', 'A0A804HKJ3', 'A0A286YEV3', 'Q59NP5', 'B0S6J3', 'A0A8M9PMS3', 'Q5ANA3', 'Q568T7', 'D6WHK0',
'A0A804HI51', 'A0A8I5KSV3', 'A0A7P0T870', 'Q1RM47', 'J3KSZ1', 'A0A6Q8PGI1', 'F1RC43', 'Q59KZ1', 'A0A804HIN4',
'A0A7I2V2E6', 'A0A7P0T8N5', 'Q5F0G5', 'B6K329', 'E9PNQ0', 'M0R1V3', 'A0A6Q8PFH6', 'P83722', 'Q6PIS1',
'A0A7I2V4X8', 'A0A087WZB5', 'A0A8I5KUB2', 'D6WQX0', 'Q54I20', 'B6K0R2', 'D6W7U6', 'A0A8I5KT73', 'A0A7I2V412',
'A0A7P0Z4K1', 'C9JP48', 'I3NI02', 'A0A1D6P520', 'A0A8I5KUM3', 'B6K4P1', 'Q873W7', 'Q5ABE2', 'G1UAZ9',
'A0A7P0T984', 'A3KMT2', 'A0A8I5KYV8', 'A0A804HL01', 'P71242', 'A0A7P0TAK3', 'E7EQB5', 'A0A7I2V4G5',
'A0A8I5KXU4', 'A0A804HIK6', 'E7ESK4', 'A0A7P0T975', 'A0A8I5KSY5', 'A0A8M2B975', 'Q5ADT1', 'A0A8V0YY16',
'A0A7P0T843', 'Q8R1T4', 'B3DND5', 'Q7K1D7', 'Q59NW5', 'Q6FKB1', 'A0A8M9PHR9', 'A0A087X033', 'A0A8I5KUC2',
'A0A7P0TA65', 'A0A8I5KQ45', 'B0R0T1', 'A0A7P0T922', 'B4FQV3', 'A0A804CC06', 'A0A142F121', 'A0A7P0TB51',
'Q6DGL0', 'A0A068CNX1', 'A0A0S2Z4R0', 'Q568K9', 'A0A7P0TA34', 'A0A7P0T9T8', 'A0A7P0Z489', 'C9IZ13',
'A0A804HJC4', 'A0A3Q7HJG4', 'B4F7D0', 'Q5A1Z5', 'A0A8M3AU53', 'A0A1B0GUL0', 'H3BMM2', 'B0EXP6', 'A0A804HJ20',
'E5KTA5', 'V5XKC3', 'H7C1L9', 'Q9D7H3', 'A0A1D8PHB8', 'A0A6Q8PGP3', 'Q9VJZ4', 'A0A8M2BBM0', 'Q9VP52', 'Q5FWI3',
'F6NRK1', 'M0QX13', 'A0A0R4IVC0', 'P26672', 'J2EKT7', 'H3BUS8', 'P64610', 'A0A8N7TE51', 'A0A7P0T9L0',
'A0A0A0MTM3', 'B6K141', 'P75977', 'H0Y765', 'A0A7I2V428', 'A0A8I5KXJ3', 'A0A804HIB8', 'A0A8I5KRE7', 'Q7ZW11',
'A0A804HLB3', 'A0A804HKA7', 'P37127', 'A0A6Q8PH24', 'A0A7P0TBF8', 'A6JM95', 'A7B1V0', 'Q9W0Q3', 'A0A8M3AZ07',
'A0A0D9SFF6', 'D3Z8L5', 'A0A0D1C8C8', 'A0A7I2V450', 'E9QG33', 'B7Z317', 'A0A7I2V3W8', 'A0A1L8I2C5', 'Q5AQ47',
'Q5QPQ1', 'K7ES00', 'A0A804CCZ3', 'A0A7P0Z437', 'Q59LY1', 'A0A5P3XKL4', 'A0A6Q8PHA5', 'A0A7I2PJZ2', 'I3L4Z6',
'Q4V3Y0', 'Q5A6U1', 'A0A8M1NDD8', 'A0A804HJD4', 'A0A7P0T895', 'A0A804HJH8', 'P30015', 'A0A2R8QCP0', 'Q9VNN7',
'A6K8N6', 'Q3U214', 'A0A7I2YQA4', 'A0A804HKT3', 'Q6DGQ8', 'Q8R123', 'A0A7P0T9U7', 'P73429', 'A0A7I2V3W6',
'B7Z0A0', 'A0A8M3B0U8', 'Q9DGJ3', 'A0A7P0TAE3', 'H0Y9T6', 'A0A8C8KBU6', 'Q1RLY5', 'A0A8I5KY07', 'A0A1W2PRP7',
'F6YB23', 'Q7T011', 'A0A7I2YQU0', 'A0A8I5KYP7', 'A0A0R4IVL9', 'T0S324', 'C9J8F8', 'P0ADK0', 'A0A804HIJ5',
'P07657', 'B3DI91', 'H0YJ45', 'A0A8V1APS5', 'B6K5G8', 'Q562E2', 'Q5AED0', 'E9PIZ0', 'A2R6H0', 'Q5AMH1',
'A0A8M2BJK9', 'A0A7P0T8G6', 'A0A804HK37', 'A1A5R1', 'Q802U2', 'A0A7I2V474', 'Q8N999', 'D2A1M9', 'A0A6Q8PFF6',
'P0CU04', 'A2AB23', 'H0YJQ1', 'K7EK07', 'A0A804CDA6', 'P31037', 'Q535D9', 'A0A087WZU3', 'A0A8I5KZC0',
'A0A7P0T8S8', 'P52496', 'A0A7P0Z4D9', 'A0A7I2V4R5', 'A0A8M9Q3K9', 'A0A804HJ96', 'Q5SZA1', 'Q9VYM2',
'A0A3P3ZKM0', 'Q9VB54', 'F1QRD8', 'Q5VJM5', 'B6K5C1', 'A1A5X3', 'A0A8M2B201', 'E5RFV8', 'A6HQ90', 'A0A804HJ75',
'A4QP04', 'Q9VE58', 'A0A7I2V4W4', 'A6IPG1', 'A0A2R8YCS4', 'A0A494C0H2', 'B6JZ25', 'A0A8I6AJI9', 'B7Z7V6',
'A0A7I2V2E0', 'J3QLP2', 'A0A7I2V5C6', 'Q9VXZ0', 'A0A7I2V2W5', 'Q1LVA5', 'P33354', 'P07908', 'Q5A1M4',
'A0A804HHU2', 'Q5AHB1', 'A0A7I2V370', 'A0A6Q8PH57', 'Q6PBS7', 'A0A804HKE7', 'A0A2H0ZD43', 'A0A6Q8PG59',
'A0A6Q8PGY4', 'Q7SZ56', 'K7EKW2', 'Q9WIK7', 'A0A804HIT3', 'A0A8M9PQ80', 'H3BU93', 'D6WX36', 'A0A8I5KVP8',
'A0A804HLC5', 'Q6ZM67', 'C9JY76', 'D6WYU0', 'Q76QY7', 'Q6NYB4', 'A0A7I2ST14', 'D6WRB8', 'Q5QPQ3', 'A0A7I2YQB2',
'A6I0Z0', 'E7EVN1', 'A0A286Y937', 'A6KKB6', 'A0A8M2B1Q3', 'Q59P88', 'A0A7P0T8X1', 'F1QL05', 'Q91X85', 'Q1ZXH9',
'A0A7I2V347', 'A0A8M9PN25', 'H0YCR2', 'Q567I9', 'A0A7P0TB54', 'A0A1D8PEB0', 'A0A7P0Z4A2', 'A0A6Q8PHQ1',
'Q9VUB1', 'A0A6Q8PFJ0', 'A0A219YHC2', 'Q9VL63', 'A0A0A8J9V7', 'B0BN92', 'A0A8I5KWR6', 'Q8YZR0', 'A0A8M9QPY5',
'A0A7I2V3Z1', 'A0A6P3HVI0', 'Q08CD0', 'A0A1D8PIP5', 'A0A8I5KT14', 'A0A7P0T937', 'A0A7I2V629', 'Q504N2',
'A0A6Q8PF02', 'B6JWS3', 'A0A8I5QJL1', 'E7FFG5', 'A6HV62', 'K7EJA3', 'A0A804HKH9', 'P26434', 'O67434', 'Q641M3',
'A0A2Z5QL08', 'A0A7I2V327', 'A0A7I2YQD9', 'H7C1B3', 'Q59UP6', 'A0A8M3AXB8', 'A0A2R8RYU9', 'A0A7I2V3H5',
'A0A7I2V3U5', 'A0A804HKJ9', 'Q6P5M3', 'C9J4U4', 'Q8BI22', 'Q9VGP1', 'B1AKM6', 'Q5JRP2', 'A0A7I2V4C8',
'A0A8I5KTR5', 'P22274', 'A0A8M2BEF6', 'Q9VNI4', 'A0A6Q8PGY7', 'A0A8I5KP10', 'A0A6Q8PH04', 'A6IKE5', 'Q7ZUQ1',
'Q59RR3', 'A0A7P0T9Z6', 'Q5A0L9', 'Q59XY9', 'E5RG18', 'E7F5V3', 'A0A1D5RMS5', 'Q5A5P9', 'Q8WPU1', 'P10035',
'F5H3P1', 'M0QXD1', 'A0A087WYQ1', 'Q5A985', 'Q5ANL6', 'Q54GY1', 'A0A6Q8PHP5', 'O92435', 'H0YJ05', 'Q5ZU83',
'A0A7P0Z4G8', 'A0A7P0TBG1', 'Q59FH4', 'Q9VF81', 'A0A7P0T868', 'A0A7P0Z4A4', 'P07385', 'A0A8I5QJI3',
'A0A804HJT1', 'A0A8M1RLP2', 'Q8JGS4', 'A0A7I2YQE9', 'A0A6Q8PG37', 'Q5AG97', 'A0A1W2PPJ0', 'B6K517', 'Q7SYM9',
'A0A8I5KQZ6', 'E7F6Z2', 'A0A7P0T8S7', 'D6RFX8', 'A0A804HJ25', 'A0A2R8Y4Y0', 'D6RBK7', 'Q20754', 'Q7K1C0',
'Q803W6', 'Q8WPU2', 'A0A6Q8PHB3', 'A0A7I2V649', 'Q9VNM9', 'E7FDV8', 'A0A8I5KSD7', 'A0A7I2V4Y9', 'K7EP01',
'A0A7I2YQD1', 'Q6FY28', 'A0A7P0TBH8', 'A0A7I2YQ90', 'A0A8I5KRB8', 'A0A804HJG1', 'A0A8I5KYU4', 'Q95ST0',
'A6HL67', 'F1QMN6', 'A0A8I5KQX1', 'P21839', 'A0A7I2V461', 'A0A8M9Q8W7', 'A0A8M9QGN3', 'H7C0M7', 'B9NAE4',
'A0A8N7TD97', 'A0A6Q8PHC0', 'B6K1D4', 'E9PR18', 'Q6DHQ4', 'A0A8M3B3Q2', 'A6HU01', 'B6K5C2', 'A0A7I2V2W2',
'A0A384MR27', 'E9PSF2', 'A0A7I2YQK6', 'A0A8M3AX14', 'A0A087WUE2', 'A0A8I5QKW7', 'A0A7I2PK44', 'A0A804HL95',
'A6IZN2', 'D6R964', 'A0A7P0T997', 'A0A8M3AZ17', 'Q7ZXP8', 'Q1ZXB8', 'A0A8M1P379', 'Q9VBQ3', 'Q80UP8',
'A0A8I5KPV0', 'F5HGQ8', 'A0A6Q8PH88', 'Q59U81', 'H2J4R4', 'J3KRR1', 'A0A0R4IBX9', 'A0A8I5KVA2', 'A0A7P0Z497',
'P54192', 'D7ELL9', 'F1QSJ2', 'A0A8I5QL21', 'A0A0G2L7I0', 'C0HM65', 'A0A7I2V2Y6', 'A0A8I5KVV1', 'Q96SJ8',
'P23906', 'A0A7P0T9Y7', 'A0A8J9GB59', 'A0A0A0MTP0', 'A0A8I5KTN1', 'A0A6Q8PGZ3', 'A0A804HL40', 'Q9Y7W4',
'A0A8V0ZLT4', 'D6X2L8', 'S5RVW8', 'A0A3S5IBH4', 'B5DFC7', 'A0A7I2YQN9', 'F1QDA5', 'O44989', 'A6JFC1',
'A0A8D1U8F1', 'B3DGJ7', 'O28126', 'S4R3L2', 'A0A6Q8PHK3', 'P77509', 'A0A7I2V5M7', 'A0A7I2YQI1', 'Q6DG11',
'F1QSZ7', 'D4AB34', 'A0A7P0TAQ3', 'A0A7I2V2S7', 'A6HTM5', 'E7F662', 'Q9VJG4', 'B0EXP7', 'A0A7I2YQN6', 'O33125',
'Q7Z6Q0', 'D6RGK3', 'P39368', 'A0A8V0YWD3', 'K7EPZ6', 'A0A6F7R657', 'A0A6Q8PH84', 'A0A7I2V466', 'B6JUY9',
'E5KTA6', 'H0Y948', 'Q6IAT7', 'Q59S64', 'A0A804HKX1', 'O13861', 'Q1K615', 'Q5XJA5', 'A0A8I5KV27', 'A0A1D8PQ54',
'A0A024R1K5', 'D3ZQE3', 'A0A8I5KVK5', 'A0A8I5KQ63', 'A0A8M2B1L0', 'A0A8M9PCJ8', 'O13813', 'A0A8I5KX72',
'Q6FNR9', 'A0A8I5KRN0', 'A0A6M8YDW1', 'A2A369', 'A0A8M1P5N0', 'P18095', 'D6RC99', 'D6W7H3', 'Q9VMQ7', 'H3BNS0',
'A0A7P0TBI4', 'Q6IQL5', 'X1WCS6', 'A8WFS8', 'A0A7P0Z4M0', 'A0A804HKL7', 'Q9VJ85', 'A0A8I5KRM5', 'D1L2X1',
'A0A7P0TBB5', 'K7ENW4', 'A6NDI8', 'K7EN65', 'A0A7I2V643', 'Q5ABU8', 'A0A7I2V5Y5', 'A0A8C8L3F5', 'B0R1C4',
'C9JX88', 'A0A1W2PRE6', 'A0A804HKY8', 'A0A076VC28', 'A0A8I5KRF5', 'H7C2V8', 'S5S833', 'Q3UI66', 'A0A7P0Z3Z5',
'A0A804HJC1', 'A0A7P0T9K6', 'H0Y465', 'Q8BS35', 'A0A804HKG2', 'P24768', 'A9JRD6', 'A0A7I2PK40', 'A6JEF6',
'Q6DC00', 'A0A7I2V5Z6', 'A0A0R4ITP2', 'A0A7I2V2M2', 'G3V2W9', 'A0A1D8PH78', 'B1AKI6', 'A0A8M1NUS6', 'Q80HY2',
'Q9VBW0', 'A6K2U1', 'A0A0S2Z5L7', 'A0A804HID7', 'Q6FTW5', 'X6RLK1', 'A0A7P0TAK7', 'H7C096', 'P19409',
'A0A140LG23', 'B5RHS5', 'Q9VEP0', 'A0A8M9Q925', 'A0A6Q8PHN7', 'K7ES72', 'A6I9J0', 'A0A7P0T7Z8', 'Q4V9P0',
'A0A7M6UUR2', 'A0A8I5KVZ4', 'E7ENJ6', 'A0A7I2V5B9', 'Q54FB9', 'A0A6Q8PGE6', 'A6NL82', 'A0A8I5ZPQ6', 'G3V2S6',
'A0A0R4IDA7', 'D6X430', 'A0A8I5KW72', 'A0A7P0T9D9', 'C9J6I8', 'A0A7P0Z4N5', 'A0A7P0T9D6', 'Q59VH7',
'A0A7I2PLE3', 'A0A7P0T947', 'A0A804HJS0', 'P18378', 'B6JZ12', 'D6WYW3', 'Q2LGG1', 'Q9FNQ4', 'Q8K4L3',
'A0A8M1NB54', 'A0A804HKR3', 'A0A7I2V4B6', 'Q5JU00', 'A0A7P0T9J0', 'A0A7I2V3F3', 'B6JVQ6', 'A0A8I5QKP7',
'A0A7I2V5Y9', 'A0A024R531', 'Q6FIR8', 'A0A6Q8PGC1', 'A0A024RDH4', 'A0A7P0TB15', 'A0A8I5KS71', 'Q7ZW77',
'J7SZ64', 'Q4JK02', 'A0A6Q8PF61', 'A0A8M2BKT2', 'P0DO61', 'Q9CX34', 'A0A7P0TAL3', 'A0A7P0T9K8', 'A0A804F729',
'Q9DA80', 'A0A7P0Z4N7', 'A0A0B5AC19', 'C9J6Z6', 'E7F1E4', 'P27247', 'Q9BY89', 'A0A8M3ASM3', 'B7Z2R1',
'A0A7I2V3Z9', 'A0A6Q8PFU3', 'H0YC46', 'Q96C95', 'A0A7I2V2M5', 'Q92047', 'Q9VL93', 'C9JHH5', 'Q9NPR2',
'A0A6Q8PH20', 'A0A7P0PJI2', 'Q6YBR5', 'A0A7P0TA78', 'A0A8I5KST1', 'A0A8I5QJC1', 'A0A8I5KQK1', 'Q59PF9',
'Q9CQ82', 'Q59L12', 'Q8C5T8', 'A0A8M1QKZ2', 'A0A494C1B9', 'Q3U1U6', 'A0A024R4U3', 'Q59N20', 'A0A8M9PPG9',
'A0A8I5KWA8', 'A0A7I2V4K0', 'A0A286YD83', 'A0A6Q8PH28', 'A0A7I2PHE7', 'A0A286YF53', 'A0A6Q8PGA4', 'Q5AHA0',
'C9JB29', 'A0A8I5QJ96', 'A0A8I5KVG8', 'A0A0C4DGL0', 'Q54PW2', 'A0A8I5KZ05', 'Q8JGW2', 'Q5ABR2', 'A0A1D8PEY6',
'A0A804HHT6', 'A0A804HID9', 'A0A6Q8PGK3', 'A0A7P0TAX3', 'A6IA08', 'Q9QYC7', 'A0A0R4IM47', 'A0A7I2YQT2',
'Q55DR2', 'A0A7P0TAG1', 'Q9V3W2', 'B6K811', 'Q5AA09', 'C4M1G6', 'A0A7P0TB21', 'F1R5W5', 'D6RBA7', 'A0A8M2B939',
'A0A0S2Z5P1', 'A0A7P0T7Z2', 'Q8N8Q9', 'B6JV95', 'A6KDM5', 'A0A7P0TAQ0', 'A0A8I5KW33', 'Q8T0D9', 'Q9VLL5',
'A0A2R8PV55', 'A0A7P0T9Y9', 'A0A7P0TB99', 'A0A7I2V2G1', 'A0A804HHV2', 'Q8MST5', 'A0A0D9SGD6', 'Q7ZXG3',
'A6IRJ8', 'A0A6Q8PGB2', 'Q91Y09', 'Q6DHN8', 'E9QIR4', 'A0A087X0I0', 'Q9JI46', 'A0A8I5KNZ0', 'A0A804HID8',
'P0DO60', 'A0A8C8KJZ9', 'Q1L8T5', 'P08298', 'P0DPQ6', 'Q63695', 'A0A7I2YQG2', 'Q6DBR5', 'A0A139WH71', 'Q6FUF4',
'A0A6Q8PFF8', 'Q5QPQ0', 'O94342', 'Q5AC48', 'A0A8I5QJB7', 'A0A6Q8PF70', 'A0A8I5KT29', 'A0A8I5KZ68', 'Q59XU5',
'Q5ADW3', 'Q51487', 'Q9VL00', 'A0A8M1P7F8', 'D6WYQ8', 'A0A6Q8PGR9', 'P0DO62', 'A0A8I5QKL4', 'A0A7P0T8E1',
'Q5T1B0', 'A0A7I2RW32', 'Q5D018', 'A0A6Q8PGG1', 'A0A087WUY7', 'Q3UFY4', 'B3DJV5', 'Q59Y46', 'A0A8M1P6B6',
'E7EPL9', 'A1A6S5', 'Q5ANB7', 'A0A7I2V2K3', 'F8W3K6', 'G3MTW7', 'E7FA10', 'A0A139WEP4', 'P0AA99', 'A0A804HJD7',
'A0A7P0TAR9', 'Q6P9K8', 'A0A8I5KVE2', 'A0A7P0TA31', 'E9PBG3', 'E7FE11', 'P19413', 'P76402', 'A0A8I5KSF9',
'A0A8I5KPE6', 'A6KTC8', 'A0A139WBI8', 'A0A7P0TBI9', 'Q6NMX3', 'A0A8I5QKK6', 'Q80XH4', 'A0A6Q8PHN8',
'A0A7I2V539', 'P37766', 'D2A2P0', 'A0A7P0Z4F5', 'Q5AJH3', 'B6K496', 'A0FKN5', 'A0A8I5KQW2', 'A0A7P0TAF4',
'A0A654IDC0', 'A0A6Q8PFY3', 'Q504C1', 'A0A2R8YFR0', 'D6WWN7', 'A0A1M5A5Z8', 'Q5VJM7', 'Q6DH28', 'A0A804HHY2',
'Q6KCM7', 'C9JST7', 'A0A0R4IMX7', 'A0A7P0TA47', 'A0A7I2V5L4', 'Q5A8T7', 'A0A8I5KPJ6', 'Q54IX6', 'A0A0G2K8F9',
'A0A8I5KXV0', 'A0A024R6W8', 'A0A7P0P2U7', 'A0A6Q8PG17', 'Q5U300', 'A0A8M2B5I7', 'Q20303', 'A0A7P0MKV3',
'A0A8I5KYN5', 'Q9VTU9', 'E7FF10', 'A0A8I5KXN1', 'D5SHU5', 'A0A087WX60', 'A0A8I5QKM3', 'P21334', 'K7ERA6',
'P37325', 'D3YZZ4', 'A0A139WK05', 'A0A8M2BJ69', 'B0I1T6', 'A0A7P0TBE7', 'G3C7W6', 'A0A7P0T8X2', 'B8ZZE3',
'A6KF70', 'Q9D1K7', 'A6IZR3', 'A0A8I5KSJ4', 'Q9CR89', 'A6HQE1', 'A0A1D8PCM7', 'P33483', 'Q80ZD3', 'A0A7P0TA35',
'A0A7P0T965', 'H0Y3U6', 'D6WQP0', 'H0YJQ7', 'Q0P3Y5', 'Q5AFE4', 'H0Y5H9', 'A0A8I5KQ98', 'A0A7P0Z462',
'A0A7P0Z484', 'F6NPK9', 'A0A8M3AXL2', 'A0A1B0GW95', 'Q63702', 'A0A8I5QKV0', 'B2R4P9', 'I3L1K7', 'A0A6Q8PFM0',
'A0A7P0TAS6', 'C9JRX0', 'A6HPE0', 'A0A8I6ACZ2', 'A0A7P0TB39', 'A0A6Q8PFM9', 'A0A7P0TA44', 'A0A8I5KXK0',
'A1LUY1', 'A0A8I5QL06', 'Q59QT3', 'P0AFQ2', 'A0A6Q8PH19', 'C0PDE0', 'A0A8I5KQQ6', 'L5KLU7', 'Q9W308',
'A0A8M9QC46', 'B8A5Y1', 'A0A8J8YL86', 'Q5AAU5', 'P0DX19', 'A0A7P0TAX2', 'Q9W125', 'A0A8N7UYZ0', 'A0A7I2YQY3',
'Q4V6A8', 'A0A7I2V4K5', 'Q59FU8', 'A0A024QZE7', 'A0A1D8PFB8', 'M0R2G6', 'Q9CYC5', 'A0A2K1ZPK4', 'Q3TCX6',
'P0DP21', 'A0A087WXA6', 'A2ID96', 'A0A7I2V444', 'B5DE36', 'A0A7I2YQQ9', 'A0A7P0T7Z1', 'A0A8M9Q9E7',
'A0A8I5ZNK2', 'A0A7N4YH79', 'A0A8I5KT00', 'C9IZD2', 'A0A8I5KRP2', 'A0A8I5KUA9', 'B6JXC3', 'H0Y7V7', 'Q9D9J2',
'A0A7I2V4I5', 'A0A804CD06', 'A0A7I2YQR5', 'A0A286YFA7', 'A0A8M1QHE8', 'A0A494BZZ1', 'A0A8I5KZ07', 'B5MCP9',
'A0A1D8PSB9', 'A0A8I5KY05', 'A0A8C8KWW5', 'A6JJP8', 'P12461', 'A0A2H1A643', 'A0A804HIK3', 'A0A8M2B4G6',
'Q46798', 'B7Z9X4', 'E7EQN8', 'A0A8N7V0N6', 'A0A0A0MR87', 'Q90YC5', 'A0A7P0Z4G4', 'A0A6Q8PH01', 'K4C8Q3',
'A0A7I2YQD8', 'Q8SZ63', 'A0A8I5KS72', 'D7PC76', 'Q0P4F1', 'A0A8I5KW00', 'Q3TIT8', 'A0A804HL74', 'A0A7I2V5Y6',
'A0A804HHW6', 'A0A1W2PRL0', 'A0A8C8MUD1', 'Q9RDS6', 'A0A8I5KXR3', 'D6W9D8', 'D6RC45', 'Q71PD7', 'E5RGP4',
'J3KTC0', 'A0A8I5KRP1', 'A0A7I2V5A3', 'A0A8N7T6T7', 'A6HE60', 'D2A4R5', 'Q54FK7', 'K7ESL1', 'A0A8I5KSH0',
'A0A804CL36', 'A0A7P0T9H8', 'A0A804HKI2', 'A0A7I2V2Y9', 'A0A7P0TBI0', 'Q6PAC3', 'A0A7P0T914', 'A0A6Q8PHC3',
'E2RTQ7', 'D6W4U4', 'B6K3L1', 'D6WK03', 'Q8IQG3', 'A0A139WIH2', 'Q54PQ5', 'A0A8M9QA29', 'P72932', 'Q59ZC8',
'A0A8N7UZN6', 'A0A2I4KBP1', 'A0A7I2Y1C3', 'P0DTF1', 'A0A6Q8PHC9', 'A0A0R4IJV5', 'A0A0R4ILX9', 'Q5AK62',
'A6J285', 'A0A804HIS2', 'A0A7P0TBP2', 'A6ITW6', 'A0A7P0T932', 'E7EX23', 'A0A8I5KS03', 'E5RJB8', 'P76909',
'A0A6Q8PFS4', 'A0A8I5KXC3', 'Q9BVG4', 'D6WN58', 'Q14CH1', 'A0A8I5KY43', 'Q7ZVY9', 'A0A7G6KN55', 'F1QA79',
'P38505', 'Q8SXU5', 'A6HIV9', 'A0A7I2V3A9', 'A0A6Q8PGT6', 'A6IWT6', 'K7DYB6', 'Q5A2J7', 'A0A2H1A2D9',
'A0A1D8PGT0', 'A0A8J8Z3C6', 'D3YUE4', 'A0A024R4J8', 'A0A0G2K8T6', 'A6IJB5', 'W5VXH5', 'A0A8I5KW10',
'A0A8I5KVM3', 'A0A7I2V3X1', 'A0A0B4U9L8', 'F8VZ52', 'A0A7N4I394', 'F5HF44', 'Q5AL24', 'A0JME1', 'A0A8I5KW38',
'A0A5H1ZRP6', 'Q5AME2', 'A6JX44', 'Q9VA10', 'A0A8M2B5N2', 'A0A8I6ALN0', 'A0A804HLJ5', 'A0A8M1N7Q2',
'A0A7P0Z4L6', 'Q59QD6', 'A0A7P0TB19', 'E5RGR0', 'F8W1V5', 'Q6FPT2', 'D4A039', 'B6K4R3', 'A0A087X1K9', 'Q5ZEW1',
'F1Q968', 'I1H0V9', 'A6JJ35', 'A0A804HKW9', 'A6JBB6', 'Q6TH18', 'A0A6Q8PG00', 'H0YDR7', 'A6JI19', 'A0A0Q3PY21',
'A0A8M9PHF0', 'A0A7P0Z4K4', 'A0A804HJ46', 'A0A804HKE8', 'D6WG51', 'A0A8I5KNN2', 'A6KA58', 'A0A8M2BIF4',
'E5RH72', 'A0A7I2V413', 'A0A8M2B4U7', 'A0A2R8YET2', 'A0A024R528', 'H7BY37', 'Q4V643', 'I3IT45', 'O46178',
'A0A8I5KYZ8', 'E9PWZ3', 'Q6GMG3', 'A0A7I2V3F2', 'Q9I6M7', 'Q59PE4', 'A0A6Q8PH91', 'P0DKB6', 'A0A7I2YQK0',
'A0A7P0TBD9', 'A4WYU7', 'B6JYV6', 'A0A7P0T943', 'A5PL98', 'B6JZV3', 'A0A6Q8PGS3', 'A0A7I2V5J9', 'A0A8I5KUC3',
'A0A7I2YQ77', 'A0A8M1P9G4', 'A0A0U3C9T3', 'A0A286YF85', 'A0A8J9C7E3', 'B8A417', 'Q5U403', 'Q5ADX2',
'A0A7P0T917', 'R4GE71', 'B4E1K5', 'Q9M7I2', 'D0NPN8', 'I3L0K1', 'A0A6Q8PGA8', 'A0A8I5KUM4', 'O74254',
'A0A6Q8PGG5', 'A0A286YEX7', 'Q6FVN2', 'A0A0A8JBR2', 'Q9VI06', 'A0A7I2V4I7', 'Q7SYD6', 'A0A7P0Z4J6', 'Q8IG84',
'A0A8M1P8J0', 'Q9H819', 'B4E227', 'A0A804HIW6', 'A1L1A6', 'A0A1D5RMD1', 'Q559R2', 'A0A7P0T840', 'A0A8I5KXG0',
'M0R145', 'A0A096MJE9', 'A0A8I5KWT8', 'A0A7I2V637', 'Q568L5', 'A0A8I5KWJ9', 'A0A8X8M4W6', 'A0A8I5QJI2',
'A0A8I5KQX5', 'A0A7P0TBB8', 'A0A590UJ78', 'A0A0U1RVK6', 'Q3UHR0', 'Q80VM7', 'Q7JYH3', 'A0A7P0Z4C3',
'A0A804HKT1', 'A1Z6X0', 'Q0P433', 'A0A804HKG3', 'Q59NH8', 'Q8BFW4', 'A6KTE6', 'A6J8V8', 'A0A6Q8PG52',
'A0A7P0Z448', 'A6JDN3', 'Q9D2H1', 'H7BZ57', 'Q59N74', 'A0A804HJA4', 'A0A7I2YQL3', 'A0A8I5KVG7', 'A0A8I5KYF1',
'A0A804HK30', 'P73183', 'A0A6Q8PFG4', 'Q6NYP6', 'A0A6Q8PF27', 'A0A8I5KSV6', 'A0A8M6YV52', 'Q9NZG9',
'A0A6Q8PFA6', 'C9JEH2', 'A0A2R8QJ79', 'E5RFH7', 'Q8BYC5', 'D6WH34', 'Q59QH6', 'D3Z120', 'A0A8I5KRC7',
'A0A6Q8PFQ8', 'A0A804HJ08', 'O55777', 'A0A8M2BE23', 'P0ADX5', 'A0A6Q8NVI4', 'Q59TP1', 'A0A7P0T8L3', 'Q6FK25',
'A0A8I5KR71', 'A0A804HIM1', 'F8VUX9', 'Q9D8F3', 'Q5AJV5', 'Q5T2X4', 'A0A6Q8PGH7', 'K9L8K6', 'A0A8M2BK40',
'A0A7I2YQD6', 'E5RJK5', 'A0A804HJ07', 'H0Y343', 'A0A7P0T904', 'A0A8I5QKT2', 'A0A1W2PQP2', 'H0Y9U4', 'E4Q361',
'Q5ZU30', 'B6JYE1', 'Q9VTE6', 'F1QYC4', 'A0A2R8Q9D0', 'A0A7I2YQS1', 'U3KQ69', 'A0A024R683', 'Q7ZVR6', 'Q5T848',
'A0A804HKW5', 'A0A1D8PI44', 'B3DJI9', 'Q59KI4', 'A0A7P0TAE9', 'A0A7I2V5Y3', 'C9J6S5', 'A0A7I2V4F0', 'B8A5U2',
'Q6FNY1', 'A0A8I5QJJ5', 'A0A8I5KYZ4', 'A0A8I5KXH5', 'A6KSI7', 'B1AKM8', 'A0A8M1P6L4', 'F1DAL2', 'Q7ZTX0',
'A0A8I5KVL5', 'Q3T921', 'A0A096MK92', 'Q0GH74', 'Q9W043', 'F9XMT4', 'A0A7P0T838', 'B6JVU8', 'B6K881', 'Q9VQE9',
'A0A8I5KRX9', 'A0A8R1XGR4', 'A0A7I2V5L8', 'Q78AM7', 'P50482', 'A0A1W2PRC2', 'A0A6Q8PFH1', 'P45769', 'Q5A7S7',
'A0A1W2PQS3', 'A0A6Q8PF47', 'A0A8I5KRR0', 'E9QCF0', 'A0A8I5QJC9', 'A6I691', 'A0A7P0T8A3', 'A0A7P0Z4A1',
'Q8INY5', 'E7EVE9', 'A0A7P0TB55', 'P39165', 'A0A1D8PRK7', 'A0A7I2V3F7', 'O49163', 'Q5AF56', 'B5MDW0', 'P48762',
'Q845T3', 'A0A7P0TAN7', 'Q9V3L7', 'A0A8M2B990', 'Q9VHF4', 'A0A804HHU9', 'A0A8M2B5V6', 'A0A6Q8PHC6',
'A0A8M1P258', 'P0AAW1', 'A0A804HJB3', 'I6L8L7', 'A0A6Q8PGM6', 'A0A8I5KZ49', 'E9PNT5', 'A0A8X8M501',
'A0A8I5KT40', 'A0A8I6ARG5', 'F8W5U2', 'A0A7I2YQ92', 'A0A7P0T931', 'B6K491', 'A4FVM4', 'A0A7P0T9W6',
'A0A8M3B2S1', 'A0A8M2BLV8', 'A0A139WPL4', 'A0A804HIG4', 'A0A0A0MS90', 'A0A8I5KWY9', 'A0A1D8PT90', 'Q5W7F4',
'Q8K183', 'Q95J06', 'H0YI55', 'E5RIN7', 'A0A1D8PTU7', 'Q6TGX7', 'A0A804HJ77', 'Q1L990', 'A0A8M3ASR9',
'A0A8W4FQE3', 'M0RCI4', 'Q5A3K3', 'A0A804HJG7', 'A0A7I2V5W9', 'A0A8I5KRU7', 'A0A139WM83', 'D6RAF8', 'Q59XL0',
'C9J8B8', 'Q9ZHC5', 'A0A7P0T9E5', 'B6K6I0', 'A0A7I2V5Z5', 'F1R366', 'E7ENI1', 'A0A804HHT7', 'A0A7I2V3H0',
'Q5A220', 'Q7S834', 'A6KDZ8', 'A0A7P0TAC5', 'A0A286YF62', 'A0A8M9QKN6', 'I1GN76', 'A0A7I2V5N5', 'K4DIA4',
'J9JIC5', 'E7F8D4', 'P19410', 'A0A804HIR9', 'A0A7P0Q1F0', 'A0A8I5ZSK1', 'A6KRS3', 'Q9P7X8', 'Q5VJM3', 'D6RIY1',
'M0R2J2', 'A0A8M1PSN6', 'A0A7I2V4F7', 'Q6NYR9', 'A0A7P0T887', 'A0A8I5KX04', 'Q6TPQ4', 'A0A6Q8PG68',
'A0A1D8PHL7', 'Q8YQ14', 'A6NJY4', 'A6JY67', 'Q7K0F0', 'A6KNE7', 'A0A1W2PRI7', 'Q9VQM2', 'A0A8I5KUS0',
'A0A8I5KRC0', 'A0A8M3B0J4', 'A0A2H1A768', 'A0A804HK79', 'P0ACX9', 'P69831', 'P83773', 'A0A8I3NGV2', 'G1T469',
'A0A2R8Y5W7', 'A0A8I5KVQ4', 'Q59U10', 'Q59RW5', 'A0A8I5KPN6', 'A0A8M3B1D6', 'Q9VPN5', 'E9PQA2', 'F5H6U5',
'Q5AJ82', 'G3V7Y6', 'C0HLV2', 'A0A7I2V544', 'O60084', 'A0A0U1RR25', 'B7ZUU8', 'C9J2M4', 'A0A8M1NIE6', 'D6X3A1',
'Q6DGC4', 'Q54K69', 'Q869U2', 'A0A7P0T8Z2', 'A0A8M1NHC5', 'A0A0S2Z4L5', 'A0A8I5KRX5', 'A0A7P0MQS5', 'D3ZKA2',
'A0A8I5KQ62', 'P0DTD3', 'A0A804HKJ6', 'A0A7P0TAX8', 'A6ISI2', 'A0A7I2V6E0', 'Q59MQ0', 'Q306W6', 'C9JCX0',
'A0A7P0P278', 'F1QUT2', 'A0A286YEW9', 'E5RJW1', 'A0A8I3P7X4', 'A0A804HI83', 'A0A7I2V535', 'A0A804HJC6',
'A0A8I5KRF4', 'Q9VTB4', 'A6I2X9', 'A0A7P0MUT5', 'Q9VTY4', 'A0A7I2V3M9', 'Q2FWC5', 'A0A8I5QKX0', 'G1UBC2',
'B4DR62', 'B1AKI4', 'H0Y926', 'A0A590UJ84', 'A0A7I2V3F0', 'A0A1D8PQH1', 'A0A8I5KUZ1', 'C9JZJ1', 'K7EMV3',
'Q86XN7', 'B6K529', 'A0A8N7XJ92', 'A0A7I2V5B2', 'Q8TGB2', 'A0A0S2Z592', 'H7C456', 'A0A7P0TAH4', 'A0A7P0T8N8',
'P24251', 'P70266', 'A0A7N4I3A3', 'Q5A287', 'A0A024R6T8', 'A0A8M2B2P4', 'Q9I6M9', 'A0A8M1NCD8', 'D6WE73',
'Q14406', 'Q59MD2', 'A0A8I5KXC0', 'A0A804HIN1', 'Q8W3K0', 'A0A8I5KUR2', 'A6JQ21', 'A0A6Q8PGY1', 'A0A804HJI9',
'Q5I6L8', 'A0A6Q8PG30', 'A0A8C8KIA0', 'G3V3K1', 'C9JWV4', 'B6K2C4', 'A0A8I5KVH8', 'A0A7I2V5E1', 'A0A8M1NF66',
'Q99P65', 'A0A804HIH3', 'A0A8M1RL98', 'A0A8I5KRB0', 'A0A8I5KUY8', 'F1Q7U1', 'A0A7I2V457', 'A0A7P0TBC5',
'A0A139WGX8', 'Q8DQV8', 'A0A0R4ILA8', 'A0A8M9PQY4', 'A0A804HI25', 'A0A7P0TB81', 'X6RBZ7', 'A0A348GSI1',
'A0A8M1NYX9', 'J3KS30', 'A0A6Q8PGB1', 'E7F186', 'F1QNA7', 'A0A7I2V2V1', 'A0A7I2V451', 'P68707', 'A0A139WB84',
'Q86LF0', 'E7EQW7', 'A0A7P0TBQ3', 'A0A8I5QKQ5', 'G3V2V6', 'A0A8I5KXB1', 'A0A7I2V4H9', 'P56614', 'A0A7P0T9G7',
'A0A8I5KWH1', 'E9PS26', 'A0A804HJ27', 'A0A804HJ64', 'A0A8I5QKP8', 'Q46904', 'Q8BRC6', 'A2A2D0', 'A0A8I5KW26',
'F5H5J8', 'Q8C5Y2', 'P31021', 'A0A804HJ84', 'Q86JI5', 'Q59LF3', 'A0A8I5KU53', 'Q6NUT5', 'A0A6Q8PF34',
'A0A8I5KNX5', 'Q6DG54', 'Q31N05', 'O42772', 'P34141', 'Q59LV8', 'A0A7I2V4V6', 'A0A7I2V552', 'Q59KM8',
'A0A8I5KUE3', 'A0A8M3APY8', 'A0A1D8PEK3', 'B6JX17', 'Q5A950', 'A0A804HKC5', 'A0A804HK59', 'Q59RQ0', 'P0A1C1',
'A0A6Q8PFE1', 'O88909', 'A0A024QYV7', 'A0A8I5KUB8', 'A0A8I5KRU9', 'Q502G6', 'A0A8I5KT03', 'B6JXR3', 'P9WI05',
'E9Q3A7', 'A0A8M1P182', 'D6WR60', 'E9PMG1', 'A7Z033', 'A0A139WL43', 'B5DDU3', 'A0A8J9C4H3', 'A0A8M2BEU8',
'A0A804HJN6', 'P52119', 'A0A8I5KTU5', 'Q6PB22', 'A0A5P3XKL3', 'Q64146', 'Q2FVK1', 'Q803K3', 'A0A804HHY9',
'A0A8I5KXX8', 'A0A6Q8PG83', 'A0A804HKZ1', 'A0A1D8PDS9', 'D2A3Y2', 'A0A7P0TBJ1', 'A0A7P0T9A7', 'A0A7I2V2V3',
'A0A7P0T8H6', 'A0A804CAZ4', 'Q6TLH9', 'Q9USL1', 'A0A8M1NAV1', 'A2CEU2', 'Q5XLR3', 'A0A7I2V3I0', 'Q5W7F3',
'A4D299', 'A0A2Z2CIT2', 'F1QA15', 'P76206', 'A0A8M1NZ82', 'A0A7P0Z4F1', 'A0A1D8PPN6', 'P64474', 'Q7T298',
'A0A7I2V646', 'A0A1W7HCY1', 'Q8R4S4', 'Q5A5M7', 'A0A2I1BSW6', 'P27913', 'Q5A761', 'E7F6E8', 'Q8BV82',
'A0A087WZ71', 'A0A804HHU6', 'A0A804HL89', 'A0A7P0T808', 'A0A6M4C8G8', 'P03170', 'Q9VM83', 'A0A0S2Z5R7',
'A0A8M9Q3E7', 'Q68EF0', 'Q6TMJ9', 'A0A8J8Z1C3', 'A0A7I2V2F4', 'A0A8M2B3Q1', 'Q90YS5', 'A0A7P0T8F8', 'P52875',
'Q8CEL2', 'A5F661', 'A0A6Q8PF62', 'A0A7I2YQE4', 'A0A8I5KVB5', 'E9PCN2', 'B7Z9Y6', 'Q6PB30', 'F5H5B9',
'A0A7I2V359', 'A0A804HL02', 'A0A7P0T9N1', 'A0A8M1P8M4', 'A0A8I5KY88', 'A0A384MTR2', 'D6WLF1', 'A0A7P0Z3Z7',
'B0JYH7', 'Q9DCX7', 'U3JAT9', 'A0A384NYV7', 'A0A1W2PRV0', 'S4R467', 'A0A804HJ24', 'A0A804HLD5', 'D7ELK9',
'P74067', 'B6K719', 'C9J172', 'P52479', 'A0A7I2V2U6', 'A0A7I2V486', 'A0A1D8PHP6', 'D6RBQ9', 'E3Q1H1', 'A6ISV1',
'A0A7P0TBH9', 'Q5A948', 'A0A7I2YQ65', 'A0A7P0TAT8', 'A6JTV7', 'F7EK71', 'A0A8I5KQU6', 'Q4KME9', 'Q7JR80',
'A0A8J8YWN6', 'A0A804HHX5', 'A0A804HKW4', 'A8KBB1', 'A0A0R4IGM8', 'Q7ZVW0', 'A0A804HKE0', 'A0A8I5KSI3',
'H3BN63', 'M0R289', 'Q7PNL7', 'Q108P2', 'A0A6Q8PFY2', 'Q14T82', 'Q5WZW9', 'D6RIV9', 'I3L0S2', 'A0A7I2V648',
'A0A0R4IJU5', 'A9JRA8', 'A0A7I2V5T5', 'A0A7I2V3J3', 'A0A8I5KW93', 'H3BSN4', 'B8JMB1', 'A0A8I5KND9',
'A0A8M6YW51', 'E7EVA0', 'A0A8M9QGE3', 'K7ERG7', 'Q9W3X7', 'A0A6Q8PFI8', 'A0A7I2V598', 'Q8YQ15', 'E7EVK2',
'B4DEB1', 'A0A6Q8PGB5', 'A0A7P0TAE1', 'E7FC72', 'F1QJI9', 'A3KPH6', 'A0A8J8YW94', 'A6K100', 'A0A286YF19',
'A0A8I5KZ21', 'A0A7P0TBM7', 'A0A1D5RMP6', 'Q3U413', 'Q9V492', 'A0A8I5KXU9', 'C9JVB2', 'Q5R1I3', 'D6WIB6',
'Q5U4D8', 'A0A7P0TA25', 'A0A0Q3IBS1', 'Q9DC26', 'A6JXD6', 'A6KDY2', 'Q59RR0', 'E7FE97', 'A0A6Q8PHE3', 'Q59Z29',
'O91079', 'Q08BJ4', 'Q54NN4', 'A0A7P0Z4M7', 'A0A8M9Q9W6', 'Q7ZVA6', 'A0A8I5QJC6', 'B8QSK0', 'Q0P3X0', 'P17357',
'Q8C4X7', 'P43076', 'A0A7I2V3H7', 'A3KMU5', 'Q6FXJ5', 'E7F2L3', 'A0A8I5KTT0', 'P76117', 'A0A804HJC8',
'A0A804HJ91', 'Q91XF0', 'Q4V887', 'A0A1W2PQ77', 'A0A8I5KPY2', 'A0A7I2V516', 'A0A7P0T9A9', 'Q8AAD6', 'Q1LVV2',
'A0A8I5KQ52', 'C4B4C6', 'Q6NRY1', 'A0A6Q8PHC1', 'Q9VIB7', 'A0A7I2V5Y7', 'A0A804HK63', 'A0A8N7TEV4', 'D6X4I1',
'B0BLV6', 'Q5VTH2', 'A0A6Q8PF96', 'P76224', 'A0A096MJ06', 'A0A286YF97', 'Q9VGJ4', 'E9PNG3', 'Q5AP95', 'Q9DGB9',
'A0A7I2V3V5', 'Q1LYE4', 'A0A1D5NSS7', 'A0A8M3ANQ1', 'A0A1D8PJB0', 'P32370', 'A0A8I5KXN4', 'Q90XR0',
'A0A2R8QJQ5', 'Q6DEJ0', 'A0A804HJW4', 'A0A8I5KQH9', 'A0A804HKJ7', 'D6W6Q2', 'F1R5N2', 'A0A8J8YVX4', 'Q9V9A8',
'Q54KM9', 'A0A804HKM8', 'F4IYH6', 'A0A139WFB1', 'A0A7I2V3E2', 'K7EJL1', 'A0A8I5KYB4', 'A0A8I5KTX2', 'H7C505',
'F1Q4W9', 'A0A8I5KP93', 'A2RUX5', 'A0A7P0TAC8', 'A0A8J9ASZ5', 'Q9JJW0', 'H3BPJ2', 'E7ETB7', 'Q9VZ01', 'P42589',
'A0A7I2V438', 'A0A7I2V488', 'A0A8M6Z3Y2', 'A0A2R8QUC0', 'Q9D968', 'A6M9B7', 'A0A7P0T879', 'A0A8I5KU22',
'A0A024R546', 'E9PMS7', 'Q8SZ78', 'A0A7I2V416', 'A0A6Q8PGL8', 'A0A7I2V5P9', 'D6MUD3', 'A0A1D8PI73',
'A0A140VKC1', 'B6JZ41', 'P18933', 'Q6IYD1', 'Q8GU86', 'Q9W3T5', 'Q4G6A6', 'Q8VE19', 'A6JJK6', 'A0A1D8PCD2',
'A0A2R8PVI8', 'Q6GMK5', 'A0A8M1PIC7', 'E9PJ54', 'O49340', 'C9JHU5', 'A6HT97', 'A0A1D8PU37', 'A0A8I5KQY1',
'F8W8H5', 'P18934', 'F1QKR1', 'Q3B7D2', 'A0A7P0Z436', 'A0A3Q1LSX9', 'A0A8N7UZX7', 'A1B2F4', 'A0A8I5QL46',
'A0A140VJZ5', 'D4A352', 'A0A7P0TAI3', 'A0A286YFJ4', 'Q257B3', 'A0A8I5KXT2', 'B7Z757', 'D3ZVT0', 'A0A7I2V458',
'C9JJD3', 'A0A8I5KPC0', 'A0A7I2V3V0', 'Q8MRL2', 'A0A8I5KX65', 'B6JYK4', 'A0A024R9D1', 'H0YE96', 'Q5AB48',
'Q59X24', 'Q8R4S6', 'Q9DAI9', 'Q9VY20', 'A0A7I2V2L5', 'A0A0R4IRP5', 'Q9I6N0', 'A0A7I2V2D8', 'D6WYL1', 'Q7T3F3',
'Q9L9Z9', 'A0A0D9SET6', 'A0A7P0TA15', 'A0A8I5KUL7', 'Q5AHJ5', 'A0A8J8YUT9', 'A0A4P1SAA7', 'A0A8M9PLL4',
'F1Q5Z6', 'A0A6Q8PFY7', 'Q9AXI8', 'A0A6Q8PG15', 'A5D6T2', 'Q9VMC7', 'A0A804HK06', 'A0A024R6V8', 'Q59RQ2',
'A0A8J9BZL8', 'A0A0A0MTT8', 'H0YA20', 'A0A6Q8PH79', 'A8E4Z0', 'P0A6B4', 'H0YC95', 'A0A8I5KNP3', 'Q746M7',
'C6Y4C3', 'Q566C7', 'B8ZZC8', 'A0A7P0TB08', 'Q59XM0', 'F8W895', 'A0A7I2Y1J6', 'P39020', 'A0A8I5KTW5',
'A0A8I5KZ40', 'A0A7P0Z494', 'A0A0R4IKQ6', 'B7ZM61', 'A0A1D8PTJ0', 'A0A7P0T928', 'A0A8I5KW44', 'E9PFB5',
'A0A7P0T9I9', 'Q2KEJ2', 'A0A140VJC9', 'C1C3F8', 'A0A8I5QJR3', 'Q801K4', 'A0A8I5KRR9', 'A0A7P0MPN9', 'Q9FG13',
'A0A8I5KW96', 'H0Y721', 'Q6NX89', 'A0A8I5KTP5', 'F1LTP8', 'A0A7I2V2S3', 'Q9P243', 'A0A1D8PQ59', 'A0A8I5KR00',
'O15757', 'A0A5P3XKJ3', 'A0A5P1KKQ4', 'A0A7I2V5P5', 'A0A7P0T8U3', 'P0A6E9', 'A0A7I2YQX5', 'Q5AQ33', 'E7F2J4',
'A0A0R4IVK2', 'A0A087WT78', 'A0A6Q8PGL3', 'C9J7W4', 'P25997', 'A0A0R4IYF8', 'A0A8M2B4I2', 'Q5SP05', 'C9JAM8',
'K7EJC5', 'A0A286YFJ6', 'A0A1D8PHG1', 'O97418', 'E7ENF8', 'A0A7P0Z4B9', 'A0A7I2YQJ9', 'X1WBM4', 'A0A1D8PFL7',
'A0A8M9PJB1', 'A0A6M3Q7I6', 'Q9V9U1', 'A0A8I5KV85', 'A0A6Q8PH35', 'P24770', 'P14334', 'A0A8I5QL33',
'A0A0B4J215', 'Q6RUT7', 'A0A7I2V560', 'A0A087X1K7', 'A0A6Q8PHI8', 'Q2MD54', 'Q8R4S7', 'A0A1D8PDU3', 'A6HE59',
'A0A8I5QJP0', 'A0A1D8PF16', 'Q9BEG8', 'Q9DA18', 'Q6JSD8', 'C9JTK4', 'A0A6Q8PH97', 'A0A804HJK3', 'P0DTL5',
'P77978', 'D3Z3I0', 'A0A7P0T823', 'E9PMP8', 'A0A087WW92', 'B6K3V7', 'Q9FLI5', 'F8VWP4', 'Q9V3X5', 'B4E1C1',
'Q6FJB4', 'A0A2R8QN46', 'Q9VPE2', 'Q9Y112', 'A0A804HJQ7', 'Q54LT7', 'P23791', 'A8K340', 'A0A6Q8PGI6', 'P39347',
'F1QX13', 'A0A8M9PQI7', 'M9PE19', 'D6W8K4', 'Q4QPW4', 'Q9VE19', 'A6KKE5', 'Q53QE7', 'B8JHS7', 'Q5A312',
'A0A8M2BH38', 'A6JPV7', 'A0A7P0TBP9', 'F6VXN4', 'Q7SZY1', 'A0A8I5KRF7', 'A0A805TBS0', 'A2AFI6', 'A0A8M1NHT1',
'A0A8M1P8P5', 'A0A6Q8PF40', 'A0A7P0TAQ1', 'Q7K4B3', 'A0A8I5KW31', 'A6I4N6', 'A0A590UJD6', 'A0A804HI14',
'Q6P696', 'J3KSR1', 'A0A7I2YQU9', 'Q6PFI8', 'A0A6Q8PF81', 'Q7LYW7', 'D6W8D1', 'A0A5P3XKM0', 'A0A7P0TBA0',
'Q5T1S5', 'A0A804HK65', 'A0A7I2V4N8', 'Q9W3V2', 'A0A7P0Z400', 'Q6IBN6', 'A0A1D8PLL1', 'H0YN83', 'F5GYW0',
'B6K6W4', 'A0A7I2V5M3', 'K7EN36', 'A0A0C4DFT5', 'A0A7I2V4B4', 'A0A8M3AW15', 'A0A804HJY9', 'H0Y7P7', 'C9JLD7',
'C0HM55', 'Q5ADR3', 'A0A2H1A5W4', 'A0A8J9FM07', 'E9PIP9', 'A0A8M1P467', 'Q9U8P7', 'Q7ZTV2', 'A0A7I2SVS4',
'Q5A6T8', 'I1MRZ6', 'E9PTC3', 'A6K863', 'A0A1D8PMY6', 'A0A7P0T862', 'A0A7I2YQX0', 'A0A6Q8PGN6', 'D6WC61',
'Q7SYB2', 'A0A7P0TBE6', 'A0A7P0TAD6', 'A0A804HI47', 'A1ZB64', 'A0A8M9PKY4', 'B0UYL8', 'Q59G46', 'Q1RMA3',
'Q9VMU0', 'Q9JKQ2', 'A0A804HKA6', 'A0A804HKK3', 'Q6FUD7', 'A0A7P0Z4P5', 'A0A8M3AVX6', 'A0A2R8Y623',
'A0A7P0MRW0', 'A0A7I2V361', 'A0A7P0TB65', 'A5PLA4', 'A3KGQ1', 'A0A139WLW4', 'A0A8M3ASW3', 'D6WHG3', 'Q79FK4',
'F1RAK1', 'A0A1D8PDN9', 'A0A8I5KYH4', 'Q5A4K7', 'A0A804HIK0', 'D6RFZ5', 'Q9D8N3', 'A0A7I2V419', 'Q8R4S2',
'Q20263', 'Q58717', 'M1GUG5', 'A0A7P0Z492', 'M0QX10', 'A0A7P0TAR0', 'B4DJ75', 'A0A075D657', 'A0A8M1PJS2',
'Q5T1S4', 'A0A7I2V554', 'Q4W8A3', 'A0A8J9AK24', 'A0A7P0Z490', 'A0A8I6GES1', 'A0A8C8KX99', 'K5BJ73', 'F1QJ79',
'A0A2K3D1C8', 'Q54NB2', 'A0A1B0GVT7', 'E9PMV1', 'A0A8I5KX85', 'A0A7D9NKC8', 'B5MCC0', 'A0A7P0Z4B6', 'E7ESK6',
'A0A804HJ70', 'A2AB22', 'Q5AHK2', 'A0A0G2JXZ1', 'A0A804HKI4', 'X6RHX1', 'A0A7P0T9T4', 'A0A1D8PQR0', 'Q59VC6',
'A0A8V1A519', 'A0A8J8ZH50', 'A0A7P0Z4D7', 'A0A7P0T893', 'P18929', 'A0A0A8J8S8', 'Q6FRJ6', 'A0A7I2YQH8',
'A0A804HK53', 'E9PIC8', 'A0A804HK46', 'A0A8I5KVT2', 'A0A024R8A0', 'A0A804HII8', 'Q9N4U2', 'A0A6Q8PHM1',
'Q1LWW7', 'Q5M8T2', 'A0A7P0T8Y0', 'A0A8I5QKT8', 'A0A8I5KVF2', 'A0A804HI08', 'E7FE40', 'A0A1D8PE36', 'F1Q4W8',
'G3XAC1', 'A0A8I5KXI2', 'A0A2R9YJM5', 'Q94519', 'A0A0G2JHK5', 'A0A6Q8PHN3', 'Q8BT18', 'A0A7P0T907', 'E7EP63',
'Q8JI13', 'A0A7I2V3M3', 'Q01657', 'A0A087WVN8', 'Q6NWC6', 'A0A139W9S1', 'A0A8I6A027', 'I3ISS4', 'Q04802',
'F1Q9X6', 'A0A7P0Z445', 'A0A8I5KTT6', 'A0A8I6ALJ5', 'P61515', 'P9WI03', 'A0A7P0TA11', 'A6J8Q9', 'D6RA63',
'B0S7G2', 'F1R8G2', 'Q1ZXN6', 'B8ZZK0', 'A0A7P0T841', 'Q29RE3', 'A0A8I5KUS8', 'A0A7P0TA53', 'A0A8M3B730',
'Q058Z8', 'Q6FV20', 'A0A2R8Q924', 'Q7ZVR8', 'A0A7P0TAA6', 'A0A6Q8KRG2', 'A0A7I2V6B2', 'A0A8I5KU46',
'A0A8I5KTT1', 'A0A8M1P9L5', 'H7C498', 'A0A5P3XKQ1', 'Q54R67', 'H3BN98', 'A0A8J9BYE6', 'B0V3V9', 'Q8K3P6',
'Q95Y82', 'A0A8J9C2I7', 'A0A7P0T8J3', 'A0A6Q8PGG9', 'Q0VFZ6', 'F1QG70', 'A0A8M1Q769', 'A0A7I2V2Q8',
'A0A7I2V2H0', 'A0A0R4IW85', 'A0A1D8PIE8', 'A0A3B6RF20', 'A0A804HJS9', 'A0A7I2V3S3', 'A0A0R4IYV3', 'A0A7I2YQE1',
'A0A2R8YDL9', 'Q9HXE7', 'A0A804HIJ2', 'Q5AP97', 'F1QPV2', 'D4PHA7', 'Q5TYQ1', 'C9JSE3', 'A0A7I2V4L2',
'A0A8C8KAR0', 'P77354', 'A0A8I5QL44', 'A0A8M1P669', 'A2R6G7', 'A0A8I5KWH0', 'Q6ZN16', 'Q8GX93', 'D7EJ84',
'Q9WUE4', 'Q6GMI5', 'C9JYS6', 'A0A7I2V5H2', 'Q1RM11', 'A0A0A8JA06', 'A6KMA4', 'A0A7P0Z4E3', 'Q9VJS5', 'Q7ZW39',
'A0A8M9PXN4', 'A5WV16', 'A0A7P0TAS8', 'F2Z3L2', 'G1SW77', 'D6WFE4', 'B6K747', 'A0A804DAZ0', 'Q54SV1', 'Z4YIA7',
'Q9VFB3', 'A0A804HL99', 'A0A286Y999', 'A0A8J8ZTU4', 'A0A8I5KTI7', 'H3BPQ3', 'A0A7I2V514', 'A0A6Q8PGF4',
'E9QIM2', 'Q8HZQ5', 'A0A7I2V2G2', 'A0A0G2JVK0', 'A0A8M2BIL8', 'A0A7P0TBK2', 'F1QC46', 'Q6AYI5', 'H7BZH9',
'A0A0G2K363', 'A0A804HJ31', 'E5RJ48', 'H0YA82', 'D2A0J0', 'O34441', 'Q9LF06', 'Q9VRR2', 'Q24050', 'A0A8M1NF77',
'Q9ULF5', 'A0A7P0TB45', 'A0A7P0T8S1', 'A1ZB73', 'A0A7P0T9L1', 'A0A2H0ZP18', 'Q171S0', 'B0UYR0', 'B6K1A5',
'A3KFL5', 'P81073', 'A0A8M3AH42', 'A0JPQ4', 'A0A8I5KWN8', 'H0Y8J6', 'A0A1D8PF97', 'A0A8M2BDG6', 'E9PM00',
'P06965', 'X6RK18', 'E7F0M4', 'B6K2G2', 'A0A8J9FJK1', 'A0A7P0TAC9', 'Q7SXT2', 'G1FNI6', 'B0BNM9', 'H0Y956',
'A0A804HI30', 'A0A8I5QKQ8', 'F8VQ24', 'H3BRX2', 'Q3UZ57', 'K7ESM2', 'Q59Z57', 'A0A8I5KYZ1', 'A0A7P0T8F0',
'A0A8I5KTK5', 'D6WF89', 'A0A7I2V4B1', 'A0A8C8L8G4', 'A0A8I5QJP8', 'A0A7I2V508', 'A0A7I2V4A8', 'O49342',
'A0A8M6Z9L0', 'A0A8M1NG56', 'A0A6I8PMZ8', 'A0A8M9Q608', 'A0A0G2KAH3', 'A0A8I5KVT9', 'A0A0D9SG25', 'H7C4F3',
'Q6NV12', 'A0A7P0Z4P2', 'Q9MZT2', 'A0A7I2V487', 'K7EIM4', 'A0A8M3B365', 'A0A1W2PNV3', 'A0A7I2YQH9', 'A3KNM2',
'A0A7I2V2X6', 'C9JSF2', 'A0A8X8M4T9', 'A0A286YFA6', 'A0A1W2PQY5', 'F5H1P9', 'A0A2R8RMG6', 'A0A8I5KR46',
'F4K200', 'H3BMA2', 'A0A7I2V351', 'Q9VKF9', 'A0A8I5G938', 'Q59VR1', 'Q9P8V9', 'Q9GKY1', 'O35806', 'Q5QPQ2',
'A0A8I5KWP3', 'A0A7P0Z4D0', 'A0A8I5QJA3', 'Q54FK8', 'P76042', 'Q8TC26', 'D6RHW1', 'Q0IGU0', 'A0A0G2K2R3',
'A0A7P0T8C7', 'A0A7P0T9U6', 'H0Y459', 'A0A7P0TBG0', 'A0A8I5KUE4', 'P37648', 'A0A7P0T9K9', 'Q6DRL9', 'F1QK08',
'B6JVL2', 'A0A0S2Z471', 'A0A7P0T959', 'A0A7I2YQW9', 'Q6FQE0', 'A0A8M2BFB6', 'A0A7I2V2L7', 'A0A7I2V313',
'Q8N1D5', 'A0A8I5KRB5', 'A0A8I5KQV4', 'Q5AC33', 'M0QZF0', 'B6K7B6', 'Q9NVP4', 'A0A7P0S4R7', 'D6WYJ4', 'Q55AN3',
'X1WEL2', 'D6X2M7', 'A0A2H0ZNC5', 'A0A8M9Q3Z2', 'Q59VQ8', 'D6WGC4', 'A0A7I2YQX6', 'A6I4C9', 'A0A6Q8PHH5',
'Q3LGB0', 'Q1RM92', 'F1QHA4', 'H7C433', 'P37757', 'D2A036', 'Q54GB3', 'P0DSV7', 'A0A8M2BKX6', 'A0A7P0T9T1',
'A0A804HIF8', 'Q3TML4', 'P27294', 'Q6DRF3', 'Q8T051', 'A0A8I5QKM0', 'A0A2N6JFX7', 'P79727', 'D0NKT5',
'A0A8I5KU87', 'A0A8N7UV85', 'Q4KME3', 'A0A7P0TAG0', 'Q9V416', 'A0A804HIA1', 'A0A7P0T989', 'Q54X86', 'F5H0C6',
'A0A7I2V5K0', 'Q9Y2G8', 'Q5T0W7', 'A0A804HKC6', 'B6JYS7', 'Q8IQA0', 'A0A8M1P943', 'D2A389', 'Q4KLH7',
'A0A7P0TAW3', 'A0A7P0Z4I1', 'Q14BQ3', 'Q588C2', 'Q8R4S5', 'A0A7I2V540', 'A0A8I5KYP8', 'A0A7P0T8Z7',
'A0A6Q8PHL9', 'A0A7P0T952', 'Q9W380', 'G3XAG5', 'A0A6Q8PGE8', 'A0A1D8PFM7', 'A0A8I5KQQ5', 'D7EKF1',
'A0A7P0TA60', 'A0A7P0TA71', 'Q8WNR0', 'A0A7P0TAL9', 'C9J9S3', 'Q54ZH1', 'A0A7P0T8E4', 'A0A7I2V599',
'A0A7I2YQC0', 'A0A6Q8PGP6', 'P0DW64', 'D6RH30', 'A0A1P0B7D2', 'A6HTZ9', 'A0A7P0TBA9', 'A0A1W2PQ03',
'A0A7P0TAU8', 'Q20300', 'A6J9C6', 'F8W9R5', 'A0A2R8QP51', 'A0A6Q8PH68', 'A0A8J9FQ52', 'Q7Z4Q2', 'B6JY00',
'A0A8J8YV97', 'Q7K4J7', 'A0A804HLH2', 'A0A6Q8PGZ8', 'P19412', 'E7F2T9', 'E9PRV8', 'H7C561', 'A0A8M1NZG6',
'A0A7I2V3P9', 'A0A8I5KST0', 'Q8BXR1', 'A0A7I2V5U2', 'H3BLX4', 'A0A8I5KRK9', 'A0A6Q8PGW4', 'G2TRP5',
'A0A804HK22', 'A0A139WHK6', 'A0A8M2B359', 'Q5A9E6', 'Q6FVM6', 'A0A6Q8PGS2', 'Q9FNQ5', 'A0A7I2V6E3',
'A0A7I2V4X9', 'E7EMN2', 'D9ZHN9', 'A0A2Z5QKZ7', 'D6X0W5', 'B6JXI3', 'A0A6Q8PF33', 'P0AAL3', 'A0A8I5KT88',
'A0A8M2BJP0', 'A0A8I5KT93', 'A0A8I3NQW8', 'A0A1D8PCC8', 'H0Y9E9', 'Q6NYJ2', 'F1Q9W8', 'A0A8I5KR05',
'A0A7P0T8B5', 'Q5F2F2', 'A0A8N7T827', 'Q5AD56', 'A0A8I3MKU8', 'A0A8I5KUQ1', 'A0A7I2V430', 'A0A8M1Q7N6',
'A0A8I5KUI5', 'Q4V4P1', 'A0A8I5KSL3', 'A0A8I5QKL5', 'B4DTD8', 'A0A6Q8PHC7', 'Q6P3I5', 'Q7TMR7', 'A0A8C8KI72',
'A0A2R8Y4S6', 'E7FGT3', 'A0A286YFC0', 'K7ELS4', 'A0A6Q8PFM5', 'A0A7I2V673', 'A0A7P0T8D4', 'A0A804HHW9',
'D6WX85', 'Q8SXQ5', 'A6K122', 'Q5A029', 'A0A7I2V411', 'Q5AH02', 'P18931', 'A0A8M1N9G1', 'A1L1G1', 'Q59FU4',
'A0A8I5YC43', 'H7C5L9', 'P0DO58', 'A0A7I2V4L6', 'G1UB67', 'F8VRY0', 'Q9CY58', 'Q3UR78', 'K7END7', 'P49230',
'Q59YH3', 'A0A6Q8PFF2', 'A0A804HIC2', 'Q9VQD7', 'Q15JE7', 'A0A804HK35', 'Q9VW36', 'A0A8M2B7R9', 'A0A8I5KVX9',
'A0A7P0T8H0', 'B6K2P3', 'C7S6G4', 'P0DJ89', 'G3XCY8', 'B0QXZ6', 'A0A8M3B6F1', 'Q09019', 'A0A6Q8PF66',
'A0A7P0Z4K3', 'Q9H159', 'A5WV15', 'A0A7I2V3I8', 'A0A8I5QKZ3', 'A0A8I5KYW1', 'A0A6Q8PGW0', 'A0A087X1E4',
'Q8JGW1', 'B6K5E1', 'A6JHL8', 'Q04N63', 'A0A7I2YQJ3', 'H0YA04', 'Q9VEC2', 'O62667', 'Q9C0B2', 'D6RDG1',
'Q8T403', 'H3BNK9', 'B0QYP8', 'A0A7P0T9L3', 'A0A804HIV7', 'A6KGJ1', 'A0A8I5KPX7', 'Q5VJM4', 'A0A8I5KUG1',
'A0A7I2V398', 'A0A7I2V4K9', 'Q6PC64', 'A0A6Q8PH78', 'A0A8I5KU89', 'A0A8J8YTQ8', 'R4SCQ0', 'A0A7P0T9D7',
'Q9Y115', 'C9JPV8', 'D9ZGF1', 'A0A8I5KTA5', 'A0A6Q8PHQ0', 'Q6DH02', 'Q8BGQ4', 'A3KP58', 'A0A8I5KSM9', 'Q8BKI2',
'Q8CDN8', 'A0A7I2V594', 'A0A8I5KTS9', 'A0A8I5QJQ7', 'A0A8I5KNU9', 'Q6IDA6', 'C9JSD5', 'A0A1D8PM85', 'F5GXI7',
'A0A7P0Z472', 'K7EKN3', 'A0A8I5KVF8', 'Q5AG71', 'A0A7P0TAV2', 'E9PDC2', 'A0A8M6YW86', 'A0A8H6BWZ3',
'A0A8M6YTC4', 'E7F9U2', 'Q4V9P6', 'A0A6Q8PFE5', 'B6JX81', 'Q1RM09', 'A0A7I2V5Q1', 'B0QY64', 'O51924', 'C9J088',
'A0A1D8PN93', 'P05552', 'O70228', 'C9J196', 'F8W557', 'E7EWJ9', 'P02574', 'Q9CQD0', 'Q9SX62', 'Q3T9E4',
'A0A8I5KUA2', 'A0A7I2V5G7', 'A6JFZ3', 'K7ENA1', 'K7EL08', 'H0Y8P7', 'B1AKI2', 'P0A8B2', 'A0A6Q8PG72',
'A0A7P0RGV0', 'A0A7I2V484', 'A6HC54', 'A0A7I2V480', 'Q9LX34', 'B4DGW0', 'A0A7P0T8Y5', 'A0A8I5KZ76',
'A0A0A8JBQ8', 'B6JWB0', 'A1L2C3', 'X5D907', 'B6JXN5', 'A0A1D8PQI6', 'F8W187', 'A9JTH8', 'A0A7I2V5N9', 'D6RB08',
'Q1RKZ2', 'P0DTB6', 'I1HNB2', 'A0A804HIR3', 'A0A8I5KUL6', 'A0A7P0T8E8', 'A0A7I2V3F9', 'Q9BZZ2', 'A1MKQ8',
'A0A139WDX4', 'A0A139WHC7', 'A0A804HK02', 'A0A1D8PRX4', 'I3L0Z6', 'A0A8M2B2N3', 'Q9W2E8', 'Q99MX1',
'A0A140VJW2', 'A0A6Q8PFF7', 'A0A6Q8PGP4', 'E2QRP0', 'H7C4C3', 'A0A7P0T854', 'Q59LR2', 'D3ZHM5', 'H0YLK7',
'A0A8I5KS01', 'B3DG30', 'J3QLT3', 'A0A8C8L741', 'A0A8I6AV69', 'Q5AJB1', 'B3DGM0', 'D3ZUF4', 'A1L1Y0',
'A0A8I5KTC6', 'A0A6Q8PEZ7', 'A0A7P0SXD0', 'A1JVI8', 'A0A1B0GWD1', 'A0A7P0TAY5', 'A8MTJ6', 'Q5ALU4',
'A0A1W2PQ06', 'Q6FVN1', 'Q4V6I0', 'Q6NY18', 'Q3U4M0', 'A0A8M9PH95', 'A0A7I2V5I6', 'Q68FU0', 'A6IDY9',
'A0A804HI52', 'H3BS04', 'Q4W5P6', 'B6K4N4', 'A0A7I2YQA2', 'A0A1D8PHC3', 'Q9I9N1', 'A0A7P0T945', 'A0A7I2V420',
'A0A804HL87', 'Q59QC5', 'E2QRF0', 'B1AKN3', 'Q6NYW6', 'P75800', 'A8KBV0', 'A0A7P0T9I3', 'F5H1B0', 'A0A7P0Z451',
'A0A6Q8PFH9', 'A0A7P0T9B2', 'H3BQJ4', 'X1WHV8', 'A6K6N6', 'D1L302', 'A0A286YBK5', 'H0Y933', 'Q9W2A3', 'G5E9Z4',
'A0A8I5KP46', 'Q63732', 'A0A8M1NI50', 'B6K007', 'A0A804HKS0', 'A0A8I5KSQ4', 'Q9N390', 'A0A7P0T915',
'A0A804HK55', 'A0A8M9PFP2', 'H0YDT0', 'Q9Y312', 'Q9W402', 'A0A0S2Z5J9', 'A0A6Q8PGR8', 'Q8IZD6', 'F1QMV7',
'D6WD78', 'A0A8M9NZM6', 'A0A8I5KSR3', 'A0A991ENW0', 'A0A7P0TAJ5', 'A2R6G9', 'B6K0N4', 'E9PB98', 'A8K058',
'A0A0S2Z453', 'A0A804HJL2', 'Q54BK5', 'Q6NP72', 'A0A7P0T890', 'A0A6Q8PGW3', 'A0A8I5QJA6', 'A0A8I5KRK1',
'A0A8I5QKZ6', 'N0A5N4', 'Q32SK9', 'A0A7I2V5U7', 'B7Z0X7', 'P53705', 'A0A1D8PCL1', 'Q59MN2', 'A0A804HHW0',
'A0A8M9Q8Q6', 'Q9VYG7', 'Q23262', 'A0A8I5KYV3', 'A0A7I2V2K2', 'A0A8I5KUW8', 'A0A075D5I4', 'A0A8I5KT56',
'H0YJD1', 'E7ER52', 'A0A804HJ00', 'A0A8I5KXH7', 'E1JH61', 'A0A7I2V2P7', 'A0A6Q8PFQ9', 'Q9VMI3', 'A0A8I5KUD8',
'A0A8I5KRH9', 'A0A804HL44', 'A4IGF4', 'B6JWN9', 'A0A0C4DG07', 'Q54XV3', 'Q7SXY1', 'A0A8I5QKM8', 'A0A8M9PNY8',
'A0A8X8M505', 'A0A7P0TB30', 'A0A6Q8PGF7', 'Q9VMY2', 'A1XLE2', 'A0A8M9PXA7', 'A0A8I6AD36', 'G5EHQ6', 'Q7PL91',
'H0Y9Y2', 'L9ZES0', 'B7Z685', 'A0A7I2V650', 'A0A7I2V699', 'P59895', 'A0A8I5QJ69', 'A0A7I2V3K7', 'Q5A1W9',
'F1QEA1', 'A0A7I2V2R9', 'Q9NX78', 'B2RYI9', 'Q9W2I0', 'D3ZQL8', 'A0A7P0T8C0', 'Q6PFT2', 'A0A804HJH7',
'A0A7P0T9I6', 'E5RJE7', 'A0A7I2YQD7', 'A0A804CKL3', 'B6JYM0', 'D7EJH4', 'A0A1W2PRD0', 'A0A8M1NJX9', 'Q6W2N6',
'A0A7I2V4H4', 'P31636', 'M0QYA9', 'C9JXQ7', 'A0A1D8PCF1', 'A0A6Q8PHR8', 'Q94511', 'A0A7I2YQ88', 'A0A6Q8PGB0',
'A0A7I2YQT5', 'A0A7P0T8V3', 'A0A6Q8PGW5', 'A0A8M2BL09', 'Q9VX82', 'D6RBV3', 'A0A8M2B4R1', 'A0A7I2V340',
'A0A590UJJ6', 'Q59RN8', 'A0A7I2V5M5', 'P18932', 'G8JL96', 'A0A8I3S9V6', 'Q54G48', 'A0A7I2V575', 'A0A7I2V452',
'A0A7I2V6B9', 'A0A7P0Z4A5', 'A0A7I2V372', 'B4DUQ1', 'F6NUE1', 'A0A8M1PSA1', 'B1AKI5', 'A0A8I5KSD5',
'A0A6Q8PFT6', 'F8VUJ9', 'A0A0F7G352', 'A0A0S2Z4S3', 'A0A669KB80', 'A0A804HLG8', 'A0A8I5KS17', 'K7ER33',
'A0A2R8QD00', 'A6JJ30', 'A0A7P0Z444', 'P25213', 'A0A856PRE8', 'Q5NCM1', 'B8A4V4', 'A0A8M3AT57', 'A0A804HLI0',
'A0A804HJ37', 'A6KI11', 'A0A8I5KZ80', 'A0A7I2V3D1', 'S4R3V8', 'A0A7P0TBE2', 'B1AL12', 'A0A6Q8PHA1',
'A0A804HJ86', 'P9WI13', 'Q7T2V4', 'Q8CCP0', 'A0A7P0TAE0', 'A0A6Q8PFD2', 'Q9VW17', 'A0A2R8RJK5', 'P0DO59',
'A0A286Y912', 'D6WFR4', 'A4QN31', 'A0A1W2PQE0', 'A0A8I5KZ67', 'A0A8I5KPT4', 'Q5DTT8', 'A0A804HL12',
'A0A7I2V5Q5', 'A0A7I2V3J2', 'A0A7I2V2W0', 'A0A7I2V647', 'B0V2X9', 'O13146', 'A0A7P0T8Q5', 'A0A7I2YQM2',
'A0A804HJM6', 'E9QBZ7', 'A0A804HJZ4', 'A0A7P0T7D6', 'A0A804HJB7', 'Q59KI0', 'P73563', 'K7EQD6', 'E7FDQ1',
'A0A7I2PJA1', 'Q96HN5', 'H0YLC9', 'A0A2R8Y559', 'A0A804HL48', 'A0A804HKJ0', 'A0A024R9H7', 'G4MXR2',
'A0A8I6A742', 'E9PMX7', 'A0A7I2V5U5', 'B6JV57', 'B2REA4', 'A0A7P0TB26', 'A0A3B3ISX9', 'F1Q534', 'Q5AH01',
'Q86TY3', 'A0A8I3PI99', 'A0A139WJ27', 'A0A4X1W9X7', 'A0A7I2V380', 'A0A804HIY3', 'B7Z499', 'A6J6W0',
'A0A7P0T8K2', 'A0A8I5KPE0', 'Q59UZ0', 'Q4V9H6', 'F9XHX3', 'Q5T2X5', 'B3KX85', 'A0A8M2B481', 'A0A8I5KT86',
'A0A7I2V690', 'A0A3T0ZBX8', 'Q80WR1', 'A0A804HKH6', 'A0A8J8Z860', 'A0A8M2BLE8', 'Q9VFI7', 'D3ZHH1',
'A0A7P0T961', 'A0A7I2YQX2', 'A6IU83', 'Q566Y8', 'A0A8I5KYI8', 'B8A5J4', 'Q54FK5', 'P07374', 'A0A8I5KXF8',
'A0A8I5KNZ1', 'B8A509', 'A2VER2', 'B6K762', 'A0A8M2BL72', 'Q9D757', 'A0A7P0T954', 'A0A804HHX9', 'B6K892',
'A0A8I5KYQ0', 'I3NI20', 'H7BYW9', 'Q5A6R5', 'Q7T2V7', 'D6RAJ0', 'P09127', 'A0A0G2L0R2', 'P18930', 'A0A6Q8PH27',
'A0A219YHF3', 'A0A8I5ZL71', 'Q4V8S6', 'A6IE38', 'A0A0R4IGP6', 'D4AA91', 'Q9DFG8', 'A0A804HKS3', 'A0A8I5QKL9',
'A0A8I5KPC6', 'A0A8I5KVU2', 'Q4FZZ9', 'A0A2R8RMX4', 'Q7K4B6', 'A0A7P0T8N0', 'P13649', 'Q1LWP9', 'Q6NY85',
'A0A804HJN3', 'A0A8M6YTH1', 'A0A8M2BBE5', 'A0A7P0T9F7', 'A0A7I2V4F2', 'Q9W3N7', 'O35929', 'P9WHX3', 'Q59QW5',
'A0A6Q8PHH9', 'V9HW48', 'A0A3B3IU23', 'A0A8I6AIU7', 'E5RHU3', 'A0A8M1P8Y1', 'A0A7I2V2X3', 'D4A2E9', 'B6K4Y8',
'A0A8M1P874', 'B0QY60', 'A1Z7Z8', 'Q7ZTY5', 'Q55EX7', 'E9PBI9', 'A0A7P0T900', 'A0A8I5KRU1', 'A0A6Q8PG14',
'H0Y8U8', 'A0A8I5QL42', 'A0A499FJ41', 'O16787', 'A0A8I5KUS2', 'Q6FY41', 'Q54K33', 'A0A804HIF5', 'D6X1Z6',
'A6KSS8', 'A0A0G2JWY7', 'A0A8I5KR47', 'B6K4X5', 'A4QNW4', 'A0A6Q8PG02', 'Q8I942', 'A0A7I2V4N4', 'P12234',
'A0A804HJ61', 'A0A7I2V4X5', 'E7EXE0', 'E5RQL4', 'A0A6Q8PG75', 'Q5VJM6', 'A0A2R8QK81', 'Q8U3D2', 'A0A8I5KWA9',
'A0A0U2N547', 'P0DW65', 'Q8WWA1', 'A0A8I5KV76', 'A0A804HKQ1', 'A0A804HJZ1', 'F8VSJ1', 'A0A0A0MRK1',
'A0A8I5QJV9', 'Q9VWI0', 'A0A8I5KS87', 'A6IMJ6', 'A0A7I2V4X1', 'A0A8I5KZB7', 'Q9U4F8', 'B6ZIV2', 'A0A804HK76',
'Q553C0', 'A0A140VKA2', 'A0A804F6T5', 'A0A7I2V3E8', 'A0A0S2Z3M4', 'Q9VWS2', 'P37650', 'A0A7I2V5S2', 'F1QRC8',
'A0A7P0TAS3', 'A0A7I2V556', 'A0A8M9P612', 'Q59X67', 'A0A2R8QT05', 'A0A804HLD4', 'Q5T4E8', 'E9PAV9', 'R4GNC9',
'A0A8I5KY61', 'A0A7P0TBM9', 'A0A1D8PDM8', 'Q5T0C7', 'A0A1D8PIC1', 'A0A6Q8PHJ9', 'C9JS37', 'A0A6Q8PHK0',
'Q5BIV4', 'A0A096LP25', 'Q8R1G1', 'A0A7I2V4L7', 'A0A7P0Z4F9', 'A0A8I5KYZ5', 'A0A7P0T855', 'F1R833', 'Q5AL03',
'Q5A1E3'}
print(len(data))
def get_sequences(fasta_file):
collected = set()
for seq_record in SeqIO.parse(fasta_file, "fasta"):
if "|" in seq_record.id:
id = seq_record.id.split("|")[1]
else:
id = seq_record.id
if id in data:
collected.add(id)
return collected
collected = get_sequences(CONSTANTS.ROOT_DIR + "uniprot/{}".format('uniprot_sprot.fasta'))
data = data.difference(collected)
print(len(data))
collected = get_sequences(CONSTANTS.ROOT_DIR + "uniprot/down/{}".format('uniprot_sprot.fasta'))
data = data.difference(collected)
print(len(data))
collected = get_sequences(CONSTANTS.ROOT_DIR + "uniprot/{}".format('uniprot_gt_1022.fasta'))
data = data.difference(collected)
print(len(data))
collected = get_sequences(CONSTANTS.ROOT_DIR + "uniprot/{}".format('old.fasta'))
data = data.difference(collected)
print(len(data))
collected = get_sequences(CONSTANTS.ROOT_DIR + "uniprot/{}".format('train_sequences.fasta'))
data = data.difference(collected)
print(len(data))
exit()
_data = pickle_load("cc_string_comps").key_val
data = torch.load("cc_string_comp.pt")
data = data.cpu()
res = dict((v,k) for k,v in _data.items())
for i, j in enumerate(data):
print(i, res[i], j)
exit()
exit()
obsolete_terms = {'Q7T2I8', 'Q5BLG6', 'A0A0R4IWQ3', 'F1REJ2', 'Q6IQ94', 'F1RCG7', 'Q7T2I9'}
x = Fasta("/home/fbqc9/Workspace/DATA/uniprot/rem_trm/combined.fasta")
x.reformat(output="testerall/combined.fasta")
x.fastas_from_fasta(out_dir="testerall")
exit()
a = pickle_load(CONSTANTS.ROOT_DIR + "{}/all_proteins".format('mf'))
b = pickle_load(CONSTANTS.ROOT_DIR + "{}/all_proteins".format('cc'))
c = pickle_load(CONSTANTS.ROOT_DIR + "{}/all_proteins".format('bp'))
print(len(a))
print(len(b))
print(len(c))
exit()
for record in SeqIO.parse("Q54801.a3m", "fasta"):
print(record)
exit()
# return [(record.description, remove_insertions(str(record.seq))) ]
exit()
x = Diamond()
grp = x.create_pytorch_graph()
x = STRING()
strg = x.create_pytorch_graph()
exit()
# for i in strg:
# print(i, strg[i])
# exit()
# exit()
filt = pickle_load(CONSTANTS.ROOT_DIR+"/{}/terms_stats".format('cc'))
term_indicies = []
for i in filt:
term_indicies.append((i, filt[i][5]))
term_indicies.sort(key=lambda x: x[1])
terms = pickle_load(CONSTANTS.ROOT_DIR+"/{}/sorted_terms".format('cc'))
for i in zip(term_indicies, terms):
assert(i[0][0] == i[1])
exit()
x = Diamond()
grp = x.create_pytorch_graph()
exit()
nodes = torch.randn(1, 2, 4)
edges = torch.randn(1, 2, 4, 8)
# mask = torch.ones(1, 128).bool()
print(nodes)
print(edges)
exit()
all_fastas = os.listdir("/bmlfast/frimpong/fastas/")
all_fastas = set([i.split(".")[0] for i in all_fastas])
print(len(all_fastas))
exit()
from Classes.Fasta import Fasta
fasta_path = "/home/fbqc9/Workspace/TransFun2/DataGen/output_test"
x = Fasta(fasta_path=fasta_path)
x.fastas_from_fasta(out_dir="/bmlfast/frimpong/fastas")
exit()
# x = Interpro()
# features, categories, category_count = x.get_interpro_ohe_data()
# count_filter = {0:set(), 3:set(), 5: set(), 20:set(), 50:set(), 100:set()}
# for i in count_filter:
# for j in category_count:
# if category_count[j] >= i:
# count_filter[i].add(j)
# pickle_save(count_filter, CONSTANTS.ROOT_DIR + "interpro/count_filter")
# exit()
# x = pickle_load(CONSTANTS.ROOT_DIR + "interpro/count_filter")
# # for i in x:
# # print(i, len(x[i]))
# x = x[100]
# interpro_stats = pickle_load(CONSTANTS.ROOT_DIR + "interpro/int_stats_pos")
# indicies = []
# for i in x:
# indicies.append(interpro_stats[i][1])
# pickle_save(indicies, CONSTANTS.ROOT_DIR + "interpro/indicies")
# exit()
# rows = np.random.choice(100, 500)
# cols = np.random.choice(100, 500)
# edges = torch.tensor([rows, cols])
# graph = data.Data(edge_index=edges)
# cluster = data.ClusterData(graph, 5)
# clusterloader = data.ClusterLoader(cluster)
# for i in clusterloader:
# print(i)
# x = pickle_load(CONSTANTS.ROOT_DIR + "interpro/categories")
# pot = {}
# for i, j in enumerate(x):
# pot[j] = i
# x = pickle_load(CONSTANTS.ROOT_DIR + "interpro/int_stats_134359")
# tmp = {}
# for i in x:
# tmp[i] = (x[i], pot[i])
# pickle_save(tmp, CONSTANTS.ROOT_DIR + "interpro/int_stats_pos")
# interpro_stats = pickle_load(CONSTANTS.ROOT_DIR + "interpro/int_stats_pos")
# print(interpro_stats)
# levs = [3, 5, 10, 15, 20, 25, 30, 50, 100, 150, 200]
# interpro_indicies = {}
# for lev in levs:
# _tmp = [interpro_stats[i][1] for i in interpro_stats if interpro_stats[i][0] >= lev]
# interpro_indicies[lev] = _tmp
# print(lev, len(_tmp))
# pickle_save(interpro_indicies, CONSTANTS.ROOT_DIR + "interpro/interpro_indicies")
# interpro_indicies = pickle_load(CONSTANTS.ROOT_DIR + "interpro/interpro_indicies")
# # exit()
# ct = 0
# x = pickle_load(CONSTANTS.ROOT_DIR + "interpro/int_stats_pos")
# for i in x:
# print(i, x[i])
# ct = ct +1
# if ct > 100:
# break
# exit()
# # filtered_ip = {key: value for key, value in x.items() if value >=5}
# stats = {5:0, 10:0, 50:0, 100:0}
# for i in x:
# if x[i] < 5:
# stats[5] = stats[5] + 1
# elif x[i] < 10:
# stats[10] = stats[10] + 1
# elif x[i] < 50:
# stats[50] = stats[50] + 1
# else:
# stats[100] = stats[100] + 1
# for i in stats:
# print(i, stats[i])
# exit()
# # Interpro Data
# # interpro = Interpro()
# # interpro_data, interpro_sig = interpro.get_interpro_ohe_data()
# # x = pd.DataFrame.from_dict(interpro_data, orient='index', columns=interpro_sig)
# # writer = pd.ExcelWriter('output.xlsx', engine='openpyxl')
# # x.describe(percentiles=[.1, .2, .3, .4, .5, .6, .7, .8, .9]).to_excel(writer, sheet_name='interpro')
# # writer.save()
# # print(interpro_data.head())
# # exit()
# # filtered_interpro_indicies = []
# # for pos, key in enumerate(interpro_sig):
# # if key in filtered_ip: