File size: 87,581 Bytes
d3fdb68
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
{
  "cells": [
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "1UhcygQ3Xvl0",
        "outputId": "ef65d3a7-2758-4345-8da8-ae899d2a73c1"
      },
      "outputs": [
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "Collecting zipfile36\n",
            "  Downloading zipfile36-0.1.3-py3-none-any.whl.metadata (736 bytes)\n",
            "Downloading zipfile36-0.1.3-py3-none-any.whl (20 kB)\n",
            "Installing collected packages: zipfile36\n",
            "Successfully installed zipfile36-0.1.3\n"
          ]
        }
      ],
      "source": [
        "!pip install zipfile36"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "ktv3__0PVhvW",
        "outputId": "59911ce3-7b6b-4ca1-b518-536d2676fdaa"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "                                             context  \\\n",
            "0  Super Bowl 50 was an American football game to...   \n",
            "1  One of the most famous people born in Warsaw w...   \n",
            "2  The Normans (Norman: Nourmands; French: Norman...   \n",
            "3  Nikola Tesla (Serbian Cyrillic: Никола Тесла; ...   \n",
            "4  Computational complexity theory is a branch of...   \n",
            "\n",
            "                                            question  \\\n",
            "0  Which NFL team represented the AFC at Super Bo...   \n",
            "1  What was Maria Curie the first female recipien...   \n",
            "2               In what country is Normandy located?   \n",
            "3               In what year was Nikola Tesla born?    \n",
            "4  What branch of theoretical computer science de...   \n",
            "\n",
            "                            answer  \n",
            "0                   Denver Broncos  \n",
            "1                      Nobel Prize  \n",
            "2                           France  \n",
            "3                             1856  \n",
            "4  Computational complexity theory  \n"
          ]
        }
      ],
      "source": [
        "import pandas as pd\n",
        "import zipfile\n",
        "\n",
        "# Load the dataset\n",
        "def load_data(file_path):\n",
        "    with zipfile.ZipFile(file_path, 'r') as zip_ref:\n",
        "        # Get the first JSON file in the archive\n",
        "        json_file = [f for f in zip_ref.namelist() if f.endswith('.json')][0]\n",
        "        # Extract the JSON file to memory and load it as a DataFrame\n",
        "        with zip_ref.open(json_file) as f:\n",
        "            df = pd.read_json(f)\n",
        "    return df\n",
        "\n",
        "\n",
        "# Preprocess the dataset\n",
        "def preprocess_data(df):\n",
        "    df['context'] = df['data'].apply(lambda x: x['paragraphs'][0]['context'])\n",
        "    df['question'] = df['data'].apply(lambda x: x['paragraphs'][0]['qas'][0]['question'])\n",
        "    df['answer'] = df['data'].apply(lambda x: x['paragraphs'][0]['qas'][0]['answers'][0]['text'])\n",
        "    return df[['context', 'question', 'answer']]\n",
        "\n",
        "# Main function for loading and preprocessing\n",
        "if __name__ == '__main__':\n",
        "    file_path = '/content/drive/MyDrive/archive (22).zip'\n",
        "    df = load_data(file_path)\n",
        "    df = preprocess_data(df)\n",
        "    print(df.head())"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "s9iEqWHygwd2",
        "outputId": "4b6c523d-8b6c-455b-ad2a-6a44f43854de"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Available topics in the dataset:\n",
            "- Roman_Republic\n",
            "- Prime_minister\n",
            "- Daylight_saving_time\n",
            "- Xbox_360\n",
            "- Post-punk\n",
            "- Database\n",
            "- Beer\n",
            "- ASCII\n",
            "- Southeast_Asia\n",
            "- Time\n",
            "- Software_testing\n",
            "- Classical_music\n",
            "- Sumer\n",
            "- Race_(human_categorization)\n",
            "- Computer\n",
            "- Himachal_Pradesh\n",
            "- Hindu_philosophy\n",
            "- Boston\n",
            "- Cubism\n",
            "- Pope_John_XXIII\n",
            "- Seattle\n",
            "- Alsace\n",
            "- Ashkenazi_Jews\n",
            "- Idealism\n",
            "- Edmund_Burke\n",
            "- Franco-Prussian_War\n",
            "- Pope_Paul_VI\n",
            "- Republic_of_the_Congo\n",
            "- Montevideo\n",
            "- Alexander_Graham_Bell\n",
            "- CBC_Television\n",
            "- MP3\n",
            "- States_of_Germany\n",
            "- Mammal\n",
            "- 51st_state\n",
            "- Hokkien\n",
            "- Digestion\n",
            "- Cyprus\n",
            "- Southampton\n",
            "- Russian_Soviet_Federative_Socialist_Republic\n",
            "- British_Isles\n",
            "- Digimon\n",
            "- Anthropology\n",
            "- Web_browser\n",
            "- Green\n",
            "- Mexico_City\n",
            "- Slavs\n",
            "- Communications_in_Somalia\n",
            "- Insect\n",
            "- Child_labour\n",
            "- Orthodox_Judaism\n",
            "- The_Sun_(United_Kingdom)\n",
            "- Red\n",
            "- Presbyterianism\n",
            "- Elevator\n",
            "- Punjab,_Pakistan\n",
            "- Cardinal_(Catholicism)\n",
            "- 2008_Sichuan_earthquake\n",
            "- Samurai\n",
            "- Association_football\n",
            "- Identity_(social_science)\n",
            "- Aircraft_carrier\n",
            "- Group_(mathematics)\n",
            "- United_States_dollar\n",
            "- Political_philosophy\n",
            "- Airport\n",
            "- General_Electric\n",
            "- Virgil\n",
            "- Flowering_plant\n",
            "- Circadian_rhythm\n",
            "- Nonprofit_organization\n",
            "- Comics\n",
            "- The_Blitz\n",
            "- Marvel_Comics\n",
            "- Gymnastics\n",
            "- United_States_Army\n",
            "- The_Legend_of_Zelda:_Twilight_Princess\n",
            "- Tuvalu\n",
            "- Somalis\n",
            "- Paris\n",
            "- Antibiotics\n",
            "- Neolithic\n",
            "- Napoleon\n",
            "- Treaty\n",
            "- Raleigh,_North_Carolina\n",
            "- Palermo\n",
            "- Central_Intelligence_Agency\n",
            "- Miami\n",
            "- Pub\n",
            "- Southern_Europe\n",
            "- Szlachta\n",
            "- Internet_service_provider\n",
            "- Capacitor\n",
            "- Military_history_of_the_United_States\n",
            "- Spectre_(2015_film)\n",
            "- Biodiversity\n",
            "- Houston\n",
            "- Arena_Football_League\n",
            "- Guinea-Bissau\n",
            "- Mary_(mother_of_Jesus)\n",
            "- Switzerland\n",
            "- Renewable_energy_commercialization\n",
            "- Dutch_Republic\n",
            "- Namibia\n",
            "- Intellectual_property\n",
            "- Videoconferencing\n",
            "- Jehovah%27s_Witnesses\n",
            "- Arsenal_F.C.\n",
            "- London\n",
            "- Atlantic_City,_New_Jersey\n",
            "- Greeks\n",
            "- Gamal_Abdel_Nasser\n",
            "- YouTube\n",
            "- Molotov%E2%80%93Ribbentrop_Pact\n",
            "- St._John%27s,_Newfoundland_and_Labrador\n",
            "- Hellenistic_period\n",
            "- USB\n",
            "- Hydrogen\n",
            "- Late_Middle_Ages\n",
            "- Neoclassical_architecture\n",
            "- Somerset\n",
            "- Westminster_Abbey\n",
            "- Federal_Aviation_Administration\n",
            "- Mali\n",
            "- Uranium\n",
            "- Oklahoma\n",
            "- Chinese_characters\n",
            "- Alfred_North_Whitehead\n",
            "- Multiracial_American\n",
            "- The_Bronx\n",
            "- Protestantism\n",
            "- Nanjing\n",
            "- Royal_assent\n",
            "- Near_East\n",
            "- Adolescence\n",
            "- Separation_of_church_and_state_in_the_United_States\n",
            "- Infection\n",
            "- Data_compression\n",
            "- Glass\n",
            "- BeiDou_Navigation_Satellite_System\n",
            "- IPod\n",
            "- Film_speed\n",
            "- Estonian_language\n",
            "- Universal_Studios\n",
            "- Buckingham_Palace\n",
            "- United_States_presidential_election,_2004\n",
            "- History_of_India\n",
            "- Aspirated_consonant\n",
            "- Economy_of_Greece\n",
            "- Matter\n",
            "- Human_Development_Index\n",
            "- History_of_science\n",
            "- Royal_Institute_of_British_Architects\n",
            "- Hunter-gatherer\n",
            "- Iranian_languages\n",
            "- Thuringia\n",
            "- Financial_crisis_of_2007%E2%80%9308\n",
            "- LaserDisc\n",
            "- Dell\n",
            "- Letter_case\n",
            "- East_Prussia\n",
            "- John_von_Neumann\n",
            "- Crucifixion_of_Jesus\n",
            "- Carnival\n",
            "- Avicenna\n",
            "- Northwestern_University\n",
            "- Royal_Dutch_Shell\n",
            "- Gene\n",
            "- Crimean_War\n",
            "- Pitch_(music)\n",
            "- Materialism\n",
            "- Vacuum\n",
            "- Antarctica\n",
            "- Race_and_ethnicity_in_the_United_States_Census\n",
            "- Kathmandu\n",
            "- Immaculate_Conception\n",
            "- Copyright_infringement\n",
            "- Liberal_Party_of_Australia\n",
            "- Hunting\n",
            "- Translation\n",
            "- Elizabeth_II\n",
            "- Czech_language\n",
            "- Central_African_Republic\n",
            "- Humanism\n",
            "- Geography_of_the_United_States\n",
            "- Rule_of_law\n",
            "- Egypt\n",
            "- Communication\n",
            "- Transistor\n",
            "- United_States_Air_Force\n",
            "- Saint_Helena\n",
            "- Greece\n",
            "- San_Diego\n",
            "- Mandolin\n",
            "- Beyoncé\n",
            "- Ottoman_Empire\n",
            "- Bern\n",
            "- Everton_F.C.\n",
            "- Hanover\n",
            "- Galicia_(Spain)\n",
            "- Great_power\n",
            "- Catalan_language\n",
            "- Madonna_(entertainer)\n",
            "- Brigham_Young_University\n",
            "- PlayStation_3\n",
            "- Madrasa\n",
            "- Great_Plains\n",
            "- Israel\n",
            "- Pacific_War\n",
            "- Cotton\n",
            "- Nigeria\n",
            "- Ann_Arbor,_Michigan\n",
            "- Geological_history_of_Earth\n",
            "- Hard_rock\n",
            "- Umayyad_Caliphate\n",
            "- Oklahoma_City\n",
            "- Myanmar\n",
            "- Norfolk_Island\n",
            "- Florida\n",
            "- Dwight_D._Eisenhower\n",
            "- Swaziland\n",
            "- Annelid\n",
            "- Apollo\n",
            "- American_Idol\n",
            "- Nutrition\n",
            "- Ministry_of_Defence_(United_Kingdom)\n",
            "- Neptune\n",
            "- Hyderabad\n",
            "- Animal\n",
            "- Valencia\n",
            "- Wayback_Machine\n",
            "- Exhibition_game\n",
            "- Light-emitting_diode\n",
            "- Modern_history\n",
            "- University_of_Kansas\n",
            "- Bird\n",
            "- Richard_Feynman\n",
            "- Tennessee\n",
            "- Party_leaders_of_the_United_States_House_of_Representatives\n",
            "- United_Nations_Population_Fund\n",
            "- Estonia\n",
            "- Sexual_orientation\n",
            "- Copper\n",
            "- IBM\n",
            "- Washington_University_in_St._Louis\n",
            "- Imperial_College_London\n",
            "- Empiricism\n",
            "- Separation_of_powers_under_the_United_States_Constitution\n",
            "- Samoa\n",
            "- Liberia\n",
            "- Muammar_Gaddafi\n",
            "- Imamah_(Shia_doctrine)\n",
            "- Jews\n",
            "- List_of_numbered_streets_in_Manhattan\n",
            "- Tibet\n",
            "- Serbo-Croatian\n",
            "- Railway_electrification_system\n",
            "- Pain\n",
            "- Alloy\n",
            "- Lancashire\n",
            "- Law_of_the_United_States\n",
            "- Infrared\n",
            "- Tuberculosis\n",
            "- Tristan_da_Cunha\n",
            "- Buddhism\n",
            "- John,_King_of_England\n",
            "- Premier_League\n",
            "- Frédéric_Chopin\n",
            "- Phonology\n",
            "- Solar_energy\n",
            "- Steven_Spielberg\n",
            "- Department_store\n",
            "- Armenia\n",
            "- Genocide\n",
            "- Heian_period\n",
            "- House_music\n",
            "- Strasbourg\n",
            "- BBC_Television\n",
            "- Incandescent_light_bulb\n",
            "- Muslim_world\n",
            "- Tucson,_Arizona\n",
            "- Nintendo_Entertainment_System\n",
            "- Utrecht\n",
            "- Bird_migration\n",
            "- Arnold_Schwarzenegger\n",
            "- Bacteria\n",
            "- Melbourne\n",
            "- Charleston,_South_Carolina\n",
            "- Printed_circuit_board\n",
            "- Affirmative_action_in_the_United_States\n",
            "- Philadelphia\n",
            "- Old_English\n",
            "- Sino-Tibetan_relations_during_the_Ming_dynasty\n",
            "- Adult_contemporary_music\n",
            "- Saint_Barth%C3%A9lemy\n",
            "- Eritrea\n",
            "- Yale_University\n",
            "- Super_Nintendo_Entertainment_System\n",
            "- Federalism\n",
            "- Rajasthan\n",
            "- The_Times\n",
            "- Political_party\n",
            "- Diarrhea\n",
            "- Wood\n",
            "- Santa_Monica,_California\n",
            "- Zinc\n",
            "- Unicode\n",
            "- On_the_Origin_of_Species\n",
            "- Guam\n",
            "- Black_people\n",
            "- Richmond,_Virginia\n",
            "- 2008_Summer_Olympics_torch_relay\n",
            "- Friedrich_Hayek\n",
            "- Indigenous_peoples_of_the_Americas\n",
            "- Gothic_architecture\n",
            "- Institute_of_technology\n",
            "- Grape\n",
            "- Bermuda\n",
            "- Middle_Ages\n",
            "- Christian\n",
            "- Asthma\n",
            "- Bill_%26_Melinda_Gates_Foundation\n",
            "- Heresy\n",
            "- Chicago_Cubs\n",
            "- Mosaic\n",
            "- FA_Cup\n",
            "- Queen_(band)\n",
            "- FC_Barcelona\n",
            "- Appalachian_Mountains\n",
            "- Dialect\n",
            "- Korean_War\n",
            "- British_Empire\n",
            "- God\n",
            "- Georgian_architecture\n",
            "- A_cappella\n",
            "- Karl_Popper\n",
            "- Seven_Years%27_War\n",
            "- Kanye_West\n",
            "- Predation\n",
            "- Josip_Broz_Tito\n",
            "- Textual_criticism\n",
            "- University\n",
            "- Electric_motor\n",
            "- New_Delhi\n",
            "- England_national_football_team\n",
            "- University_of_Notre_Dame\n",
            "- Sony_Music_Entertainment\n",
            "- Portugal\n",
            "- George_VI\n",
            "- Asphalt\n",
            "- Energy\n",
            "- Immunology\n",
            "- Pesticide\n",
            "- European_Central_Bank\n",
            "- Emotion\n",
            "- Windows_8\n",
            "- Memory\n",
            "- North_Carolina\n",
            "- Freemasonry\n",
            "- Philosophy_of_space_and_time\n",
            "- Police\n",
            "- Canadian_football\n",
            "- Symbiosis\n",
            "- Gramophone_record\n",
            "- Clothing\n",
            "- Poultry\n",
            "- Armenians\n",
            "- Dog\n",
            "- Planck_constant\n",
            "- High-definition_television\n",
            "- Germans\n",
            "- Capital_punishment_in_the_United_States\n",
            "- Professional_wrestling\n",
            "- Political_corruption\n",
            "- Dominican_Order\n",
            "- Endangered_Species_Act\n",
            "- Zhejiang\n",
            "- Canadian_Armed_Forces\n",
            "- Pharmaceutical_industry\n",
            "- Alaska\n",
            "- New_York_City\n",
            "- Macintosh\n",
            "- Botany\n",
            "- Tajikistan\n",
            "- Federal_Bureau_of_Investigation\n",
            "- Cork_(city)\n",
            "- Dissolution_of_the_Soviet_Union\n",
            "- Comcast\n",
            "- Labour_Party_(UK)\n",
            "- New_Haven,_Connecticut\n",
            "- Order_of_the_British_Empire\n",
            "- Dutch_language\n",
            "- Compact_disc\n",
            "- Bras%C3%ADlia\n",
            "- To_Kill_a_Mockingbird\n",
            "- Sichuan\n",
            "- John_Kerry\n",
            "- Computer_security\n",
            "- Sanskrit\n",
            "- Detroit\n",
            "- Athanasius_of_Alexandria\n",
            "- Space_Race\n",
            "- Anti-aircraft_warfare\n",
            "- Baptists\n",
            "- Quran\n",
            "- Architecture\n",
            "- Myocardial_infarction\n",
            "- Eton_College\n",
            "- Mesozoic\n",
            "- Qing_dynasty\n",
            "- Montana\n",
            "- Education\n",
            "- Literature\n",
            "- Comprehensive_school\n",
            "- Plymouth\n",
            "- Glacier\n",
            "- Lighting\n",
            "- Turner_Classic_Movies\n",
            "- Queen_Victoria\n",
            "- Paper\n",
            "- East_India_Company\n",
            "- Spanish_language_in_the_United_States\n",
            "- Han_dynasty\n",
            "- Gregorian_calendar\n",
            "- Supreme_court\n",
            "- Sahara\n",
            "- Culture\n",
            "- Religion_in_ancient_Rome\n",
            "- Chihuahua_(state)\n",
            "- Canon_law\n",
            "- Kievan_Rus%27\n",
            "- National_Archives_and_Records_Administration\n",
            "- Marshall_Islands\n",
            "- Alps\n",
            "- Age_of_Enlightenment\n",
            "- War_on_Terror\n",
            "- Russian_language\n",
            "- Iran\n",
            "- Genome\n",
            "- Antenna_(radio)\n",
            "- Brain\n",
            "- Warsaw_Pact\n"
          ]
        }
      ],
      "source": [
        "import pandas as pd\n",
        "import zipfile\n",
        "\n",
        "def extract_topics():\n",
        "    # Load the dataset\n",
        "    # Instead of directly reading the zip file, extract the relevant JSON file first.\n",
        "    with zipfile.ZipFile('/content/drive/MyDrive/archive (22).zip', 'r') as zip_ref:\n",
        "        # Assuming you want to use 'train-v1.1.json', change this if needed.\n",
        "        json_file = 'train-v1.1.json'\n",
        "        with zip_ref.open(json_file) as f:\n",
        "            data = pd.read_json(f)\n",
        "    topics = set()\n",
        "\n",
        "    # Extract unique topic names from the dataset\n",
        "    for item in data['data']:\n",
        "        for paragraph in item['paragraphs']:\n",
        "            topics.add(item['title'])  # Assuming 'title' represents the topic\n",
        "\n",
        "    return topics\n",
        "\n",
        "if __name__ == \"__main__\":\n",
        "    topics = extract_topics()\n",
        "    print(\"Available topics in the dataset:\")\n",
        "    for topic in topics:\n",
        "        print(f\"- {topic}\")"
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "import pandas as pd\n",
        "import random\n",
        "import zipfile\n",
        "\n",
        "def generate_incorrect_options(data, correct_answer, topic):\n",
        "    \"\"\"Generate plausible incorrect options based on the dataset and the topic context.\"\"\"\n",
        "    incorrect_options = set()\n",
        "\n",
        "    # Collect all possible answers from the dataset that are related to the topic\n",
        "    all_answers = []\n",
        "    for item in data['data']:\n",
        "        for paragraph in item['paragraphs']:\n",
        "            for qa in paragraph['qas']:\n",
        "                if qa['answers']:\n",
        "                    for ans in qa['answers']:\n",
        "                        if topic.lower() in ans['text'].lower():  # Check if the answer is related to the topic\n",
        "                            all_answers.append(ans['text'])\n",
        "\n",
        "    # Remove the correct answer from the list of possible incorrect options\n",
        "    all_answers = list(set(all_answers))  # Remove duplicates\n",
        "    if correct_answer in all_answers:\n",
        "        all_answers.remove(correct_answer)\n",
        "\n",
        "    # Randomly select three unique incorrect options\n",
        "    while len(incorrect_options) < 3 and all_answers:\n",
        "        incorrect_option = random.choice(all_answers)\n",
        "        incorrect_options.add(incorrect_option)\n",
        "\n",
        "    return list(incorrect_options)\n",
        "\n",
        "def generate_fill_in_the_blank(question, correct_answer):\n",
        "    \"\"\"Generate a fill-in-the-blank question with a placeholder.\"\"\"\n",
        "    return question.replace(correct_answer, \"______\")\n",
        "\n",
        "def generate_true_false_question(question, correct_answer):\n",
        "    \"\"\"Generate a true/false question.\"\"\"\n",
        "    return f\"True or False: {question} (Answer: {'True' if correct_answer else 'False'})\"\n",
        "\n",
        "def generate_quiz_from_dataset(topic, num_questions, question_type):\n",
        "    # Extract and load the dataset from the zip file\n",
        "    with zipfile.ZipFile('/content/drive/MyDrive/archive (22).zip', 'r') as zip_ref:\n",
        "        # Use the 'train-v1.1.json' file within the zip archive\n",
        "        json_file = 'train-v1.1.json'\n",
        "        with zip_ref.open(json_file) as f:\n",
        "            data = pd.read_json(f)\n",
        "\n",
        "    questions = []\n",
        "\n",
        "    # Filter questions based on the topic\n",
        "    for item in data['data']:\n",
        "        for paragraph in item['paragraphs']:\n",
        "            for qa in paragraph['qas']:\n",
        "                question = qa['question']\n",
        "                answer = qa['answers'][0]['text'] if qa['answers'] else \"No answer available\"\n",
        "                if topic.lower() in question.lower():\n",
        "                    questions.append((question, answer))\n",
        "\n",
        "    if not questions:\n",
        "        print(\"No questions found for this topic.\")\n",
        "        return\n",
        "\n",
        "    # Shuffle questions and select the specified number\n",
        "    random.shuffle(questions)\n",
        "    selected_questions = questions[:num_questions]\n",
        "\n",
        "    for index, (question, answer) in enumerate(selected_questions, start=1):\n",
        "        if question_type == 'mcq':\n",
        "            print(f\"Question {index}: {question}\")\n",
        "\n",
        "            # Generate plausible incorrect options based on the dataset and topic context\n",
        "            incorrect_options = generate_incorrect_options(data, answer, topic)\n",
        "\n",
        "            # Combine correct answer with incorrect options\n",
        "            options = [answer] + incorrect_options\n",
        "            random.shuffle(options)\n",
        "\n",
        "            # Format options as A, B, C, D\n",
        "            for i, option in enumerate(options):\n",
        "                print(f\"{chr(65 + i)}) {option}\")\n",
        "\n",
        "            # Find the correct answer's position\n",
        "            correct_index = options.index(answer)\n",
        "            print(f\"Answer: {chr(65 + correct_index)}) {answer}\")\n",
        "            print(\"=\" * 50)\n",
        "\n",
        "        elif question_type == 'fill-in-the-blank':\n",
        "            fill_in_question = generate_fill_in_the_blank(question, answer)\n",
        "            print(f\"Fill in the blank {index}: {fill_in_question}\")\n",
        "            print(f\"Answer: {answer}\")\n",
        "            print(\"=\" * 50)\n",
        "\n",
        "        elif question_type == 'true/false':\n",
        "            true_false_question = generate_true_false_question(question, answer)\n",
        "            print(f\"True/False Question {index}: {true_false_question}\")\n",
        "            print(\"=\" * 50)\n",
        "\n",
        "if __name__ == \"__main__\":\n",
        "    topic = input(\"Enter the topic for the quiz: \")\n",
        "    num_questions = int(input(\"Enter the number of questions to generate: \"))\n",
        "    question_type = input(\"Enter question type (mcq/fill-in-the-blank/true/false): \").lower()\n",
        "    generate_quiz_from_dataset(topic, num_questions, question_type)\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "xklEl5W_jqYM",
        "outputId": "35b6b061-037a-4936-aa43-de77cbd6ef77"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Enter the topic for the quiz: Database\n",
            "Enter the number of questions to generate: 5\n",
            "Enter question type (mcq/fill-in-the-blank/true/false): mcq\n",
            "Question 1: What was the name of the database product created by IBM?\n",
            "A) SQL/DS, and, later, Database 2 (DB2)\n",
            "B) not be placed in the database\n",
            "C) unauthorized users from viewing or updating the database\n",
            "D) Database Task Group\n",
            "Answer: A) SQL/DS, and, later, Database 2 (DB2)\n",
            "==================================================\n",
            "Question 2: The IANA database works by connecting names to what information about the location?\n",
            "A) database is found corrupted\n",
            "B) managing personal databases\n",
            "C) database related application\n",
            "D) historical and predicted clock shifts\n",
            "Answer: D) historical and predicted clock shifts\n",
            "==================================================\n",
            "Question 3: How are today's database systems run?\n",
            "A) structured document-oriented database\n",
            "B) general-purpose hardware\n",
            "C) database technology\n",
            "D) SQL/DS, and, later, Database 2 (DB2)\n",
            "Answer: B) general-purpose hardware\n",
            "==================================================\n",
            "Question 4: What database language is the most prominent?\n",
            "A) unauthorized users from viewing or updating the database\n",
            "B) SQL\n",
            "C) relational database management system\n",
            "D) database technology\n",
            "Answer: B) SQL\n",
            "==================================================\n",
            "Question 5: What does database access limit?\n",
            "A) by a \"database management system\" (DBMS)\n",
            "B) who (a person or a certain computer program) is allowed to access what information\n",
            "C) database technology\n",
            "D) database is found corrupted\n",
            "Answer: B) who (a person or a certain computer program) is allowed to access what information\n",
            "==================================================\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "import pandas as pd\n",
        "import seaborn as sns\n",
        "import matplotlib.pyplot as plt\n",
        "import zipfile\n",
        "\n",
        "# Load dataset from a URL (replace with your link)\n",
        "dataset_url = '/content/drive/MyDrive/archive (22).zip'\n",
        "\n",
        "json_file = 'train-v1.1.json'\n",
        "\n",
        "# Extract the JSON file from the zip archive\n",
        "with zipfile.ZipFile(dataset_url, 'r') as zip_ref:\n",
        "    with zip_ref.open(json_file) as f:\n",
        "        df = pd.read_json(f)\n",
        "\n",
        "# Preview the dataset\n",
        "print(df.head())\n",
        "\n",
        "\n",
        "numerical_df = df[['version']].copy()\n",
        "if not numerical_df.empty:\n",
        "    plt.figure(figsize=(8, 6))\n",
        "    sns.heatmap(numerical_df.corr(), annot=True, cmap='coolwarm')\n",
        "    plt.title('Heatmap of Quiz Data Correlations (Numerical Columns)')\n",
        "    plt.show()\n",
        "else:\n",
        "    print(\"No numerical columns found for correlation analysis.\")\n",
        "\n",
        "\n",
        "plt.figure(figsize=(8, 6))\n",
        "question_counts = df['data'].apply(lambda x: len(x['paragraphs'][0]['qas'])).value_counts()\n",
        "question_counts.plot(kind='bar')\n",
        "plt.title('Bar Plot of Question Frequency')\n",
        "plt.xlabel('Number of Questions')\n",
        "plt.ylabel('Frequency')\n",
        "plt.xticks(rotation=0)\n",
        "plt.show()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        },
        "id": "x1TC97wS2zJq",
        "outputId": "35056826-a310-4873-d048-c77929416a13"
      },
      "execution_count": 5,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "                                                data  version\n",
            "0  {'title': 'University_of_Notre_Dame', 'paragra...      1.1\n",
            "1  {'title': 'Beyoncé', 'paragraphs': [{'context'...      1.1\n",
            "2  {'title': 'Montana', 'paragraphs': [{'context'...      1.1\n",
            "3  {'title': 'Genocide', 'paragraphs': [{'context...      1.1\n",
            "4  {'title': 'Antibiotics', 'paragraphs': [{'cont...      1.1\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "/usr/local/lib/python3.11/dist-packages/seaborn/matrix.py:202: RuntimeWarning: All-NaN slice encountered\n",
            "  vmin = np.nanmin(calc_data)\n",
            "/usr/local/lib/python3.11/dist-packages/seaborn/matrix.py:207: RuntimeWarning: All-NaN slice encountered\n",
            "  vmax = np.nanmax(calc_data)\n"
          ]
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 800x600 with 2 Axes>"
            ],
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAo4AAAIQCAYAAAAPYu/TAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAUPNJREFUeJzt3XlclOX+//H3gAImAqIIaq5pormgmIh1ciPxWJlHzCU6arm0uGOptLi10GnTSs08uVWaZpYVecy9OsZxQc00JSuXNMEF0dRkce7fH/6YryMj3qPM6F2v5+NxP4rrvu7rvu6LmfHicy1jMwzDEAAAAHAZPte6AgAAALAGOo4AAAAwhY4jAAAATKHjCAAAAFPoOAIAAMAUOo4AAAAwhY4jAAAATKHjCAAAAFPoOAIAAMAUOo5wy8svv6zatWvL19dXUVFR16QOe/fulc1m05w5c67J/eG+vn37qmbNmiVa5pw5c2Sz2bR3794SLbckbdiwQX5+ftq3b9+1rorXePr3Mn78eNlsNo+UbYbNZtP48eOv2f1LyvTp01W9enXl5uZe66rAYizdcSz8gNq0aZPL823atFHDhg09WoelS5f+KT5EzFi+fLlGjRql2267TbNnz9YLL7xw2WtSU1PVsWNHVahQQQEBAbr55pv1xBNPKDs72ws1vrzCf4QKjxtuuEHVq1fXPffco9mzZ1/Vh6qnXxtr165V165dFRERIT8/P1WqVEn33HOPPv74Y4/d81p44YUXtGTJkmtdjSvy1FNPqVevXqpRo4YjrU2bNrLZbLrnnnuK5C/8o+iVV17xZjX/1P4q7xN39e3bV3l5eXr77bevdVVgMZbuOF4Pli5dqgkTJlzranjF6tWr5ePjo5kzZ6p3797q1KlTsfkff/xx3XPPPcrMzNTo0aM1ZcoUxcXF6c0331RUVJR27959RfWoUaOG/vjjD/3zn/+8outdeeutt/Tee+/pzTffVP/+/ZWdna2HHnpILVq00K+//npFZXrytTFu3Di1bdtW27dv18MPP6zp06friSee0KlTp5SQkKD58+d75L7XwqU6jv/85z/1xx9/OHXKridbt27VypUr9cgjj7g8n5qaqvT0dC/XyvOup9/LX+l94q6AgAD16dNHr732mgzDuNbVgYWUutYVgHUcPnxYZcqUkZ+f32XzfvDBB3r11VfVo0cPzZs3T76+vo5zffv2Vdu2bXXfffdp06ZNKlXKvZehzWZTQECA2/UvTrdu3VSxYkXHz2PHjtW8efPUu3dv3Xffffrf//5Xove7Gh999JEmTpyobt26af78+SpdurTj3BNPPKEvv/xS+fn5V32fgoIC2e12l7/v06dPq2zZsld9j6vh6+vr9Lq63syePVvVq1dXy5Yti5yrXr26fv/9d02YMEGfffbZNahdySt8TVwvvxdvvU+srHv37nrppZe0Zs0atWvX7lpXB1ZhWNjs2bMNScbGjRtdnm/durVxyy23FEl/7733jGbNmhkBAQFG+fLljR49ehj79+93yvP1118b3bp1M6pVq2b4+fkZN954ozF8+HDjzJkzjjx9+vQxJBU5DMMw9uzZY0gyXn75ZWPKlClGrVq1jDJlyhh33nmnsX//fsNutxsTJ040qlatagQEBBidO3c2jh075lSHJUuWGJ06dTIqV65s+Pn5GbVr1zYmTpxoFBQUuHzOTZs2GbGxsUZAQIBRs2ZN46233jLVjvn5+cbEiRON2rVrG35+fkaNGjWM5ORk4+zZs448rp5z9uzZlyyzXr16Rvny5Y0TJ064PD9hwgRDkrFw4UJHWo0aNYw+ffoUydu6dWujdevWjp8L27bw/mvWrHFZP0lGjRo1in32cePGGZKMI0eOuDw/cOBAQ5KxfPlyR9rVvjYMwzBefvllIzY21ggNDTUCAgKMZs2aGYsWLSq2roUiIyON0NBQ4+TJk6byZ2VlGQ899JBRqVIlw9/f32jcuLExZ84cpzwXvl4nTZpk1K5d2/Dx8TG2bNniaKMdO3YYvXr1MkJCQoyoqCjHtWbeT3369CnyuzDTBq7asPA1Uvj+37Nnj9M1U6dONRo0aGD4+fkZlStXNh577DHj+PHjTnkK3zM7duww2rRpY5QpU8aoUqWK8a9//atI+73xxhtGgwYNjDJlyhghISFGdHS0MW/evMu2e/Xq1Y2+ffsWSS+898SJEw1JRnp6uuPchb+HQoXtfzFXz1+jRg3jrrvuMtasWWNER0cbAQEBRsOGDY01a9YYhmEYixcvNho2bGj4+/sbzZo1MzZv3lyk3J07dxoJCQlG+fLlDX9/fyM6Otr49NNPXd577dq1xqOPPmqEhYUZISEhl6yXYRjG0qVLjTvuuMMIDAw0ypUrZzRv3typHc28r4prj4t54n1iGOdfk+PGjXP87Oq1fal6SjIGDRpkfPjhh0b9+vWNgIAAo2XLlsa2bdsMwzCM6dOnGzfddJPh7+9vtG7dukgbeuJ1GxoaagwdOtRECwHn/SkijidOnNDRo0eLpLv6a/L555/XM888o+7du6t///46cuSI3nzzTd1xxx3asmWLQkJCJEmLFi3SmTNn9Oijj6pChQrasGGD3nzzTR04cECLFi2SJD388MP67bfftGLFCr333nsu6zZv3jzl5eVpyJAhys7O1ksvvaTu3burXbt2Wrt2rUaPHq2ffvpJb775ph5//HHNmjXLce2cOXMUGBiopKQkBQYGavXq1Ro7dqxOnjypl19+2ek+x48fV6dOndS9e3f16tVLH374oR599FH5+fnpoYceKrb9+vfvr7lz56pbt24aOXKk1q9fr5SUFO3cuVOffPKJJOm9997TjBkztGHDBr3zzjuSpFatWrksb/fu3crIyFDfvn0VFBTkMk/v3r01btw4ff755+revXux9buc+vXrF2n/nJwcJSUlqVKlSldV9j//+U/NmDFDy5cv15133impZF4br7/+ujp37qzExETl5eVpwYIFuu+++5Samqq77rrrkvXZvXu3du3apYceekjlypW7bP3/+OMPtWnTRj/99JMGDx6sWrVqadGiRerbt69ycnI0bNgwp/yzZ8/W2bNnNXDgQPn7+ys0NNRx7r777lPdunX1wgsvOIa2zL6fXDHTBu+995769++vFi1aaODAgZKkm2666ZJljh8/XhMmTFBcXJweffRRZWRk6K233tLGjRu1bt06p6jT8ePH1bFjR3Xt2lXdu3fXRx99pNGjR6tRo0b6+9//Lkn697//raFDh6pbt24aNmyYzp49q23btmn9+vW6//77L1mPgwcPav/+/WrWrNkl8wwbNkyTJk3S+PHjSzTq+NNPP+n+++/Xww8/rAceeECvvPKK7rnnHk2fPl1PPvmkHnvsMUlSSkqKunfvroyMDPn4nJ+1tGPHDt12222qWrWqxowZo7Jly+rDDz9Uly5dtHjxYv3jH/9wutdjjz2msLAwjR07VqdPn75knebMmaOHHnpIt9xyi5KTkxUSEqItW7Zo2bJljnY0874yy9Pvk6vxzTff6LPPPtOgQYMknf893H333Ro1apSmTZumxx57TMePH9dLL72khx56SKtXr3a6vqRft82aNdO6detK7PnwF3Cte65Xo/Av2+KOCyOOe/fuNXx9fY3nn3/eqZzvv//eKFWqlFP6xX/lGoZhpKSkGDabzdi3b58jbdCgQS7/+i2MHISFhRk5OTmO9OTkZEOS0aRJEyM/P9+R3qtXL8PPz88pyueqDg8//LBxww03OOVr3bq1Icl49dVXHWm5ublGVFSUUalSJSMvL69o4/1/W7duNSQZ/fv3d0p//PHHDUnG6tWrHWl9+vQxypYte8myCi1ZssSQZEyaNKnYfEFBQUazZs0cP19pxPFidrvduPvuu43AwEBjx44dxdbhchHH48ePG5KMf/zjH460q31tuCojLy/PaNiwodGuXbti6/vpp5+aattCkydPNiQZ77//vtO9YmNjjcDAQEc0prBNg4KCjMOHDzuVUdhGvXr1ckp35/3kKipjtg3Kli3r8nVxcWTr8OHDhp+fn9GhQwfj3LlzjnxTpkwxJBmzZs1ypBW+Z959911HWm5urhEREWEkJCQ40u69916XoxaXs3LlSkOS8fnnnxc5d+FISGHkvTDqWBIRR0nGt99+60j78ssvDUlGmTJlnF6fb7/9tiHJEY00DMNo37690ahRI6fPF7vdbrRq1cqoW7dukXvffvvtRUZALq5XTk6OUa5cOSMmJsb4448/nPLa7XbH/5t9X5mJOHrqfWIYVx9x9Pf3d/qdFf4eIiIinO5T+G/FhXk98bodOHCgUaZMGVN5AcMwjD/F4pipU6dqxYoVRY7GjRs75fv4449lt9vVvXt3HT161HFERESobt26WrNmjSNvmTJlHP9/+vRpHT16VK1atZJhGNqyZYvput13330KDg52/BwTEyNJeuCBB5zm9sXExCgvL08HDx50WYfff/9dR48e1d/+9jedOXNGu3btcrpPqVKl9PDDDzt+9vPz08MPP6zDhw8XOwF/6dKlkqSkpCSn9JEjR0qSvvjiC9PPemFdJV32L/1y5co58pakZ599VqmpqZozZ44aNGhwVWUFBgZKklM9S+K1cWEZx48f14kTJ/S3v/1NmzdvLva6kydPSrp82xZaunSpIiIi1KtXL0da6dKlNXToUJ06dUpfffWVU/6EhASFhYW5LOviRR7uvJ9cudI2uJSVK1cqLy9Pw4cPd0TQJGnAgAEKCgoq8loODAzUAw884PjZz89PLVq00C+//OJICwkJ0YEDB7Rx40a36nLs2DFJUvny5YvNN2zYMJUvX75EF1E1aNBAsbGxjp8LP3PatWun6tWrF0kvfN7s7GytXr1a3bt3d3zeHD16VMeOHVN8fLx2797t9PkknW/by81nXLFihX7//XeNGTOmyNzkC7fVKanPXMnz75Or0b59e6etqQp/DwkJCU71vfj3U6ikX7fly5fXH3/8oTNnzlzR8+Cv508xVN2iRQs1b968SHr58uWdhrB3794twzBUt25dl+VcOIy1f/9+jR07Vp999pmOHz/ulO/EiROm63bhB7UkRyeyWrVqLtMvvNeOHTv09NNPa/Xq1Y4PwkvVoUqVKkUWK9x8882Szm/x4WqCviTt27dPPj4+qlOnjlN6RESEQkJCrmj/ucIPv8t1Cn///fcS39tv2bJlmjBhgpKTk5WQkHDV5Z06dUqS8z9AJfHaSE1N1XPPPaetW7c6bflzuf3pCof+zXa49+3bp7p16zp1pKTzw/uF5y9Uq1atS5Z18Tl33k+uXGkbXErhs9SrV88p3c/PT7Vr1y7yrDfeeGORe5UvX17btm1z/Dx69GitXLlSLVq0UJ06ddShQwfdf//9uu2220zVybjMatXg4GANHz5c48aN05YtWy7b0TTjSj9zfvrpJxmGoWeeeUbPPPOMy7IPHz6sqlWrOn4u7vVS6Oeff5aky26NVlKfuZLn3ydX42r+TZBK/nVb+Bq9lntjwlr+FB1Hs+x2u2w2m/7zn/+4/Cu5MLp07tw53XnnncrOztbo0aMVGRmpsmXL6uDBg+rbt6/sdrvpe17qr/FLpRe+iXNyctS6dWsFBQVp4sSJuummmxQQEKDNmzdr9OjRbtXBjJL80CiM8l34QXaxffv26eTJk6pdu/Zl63Du3DlTqzT37NmjxMRE3XnnnXruuefcrLVr27dvlyRHx7okXhvffPONOnfurDvuuEPTpk1T5cqVVbp0ac2ePfuy24NERkZKkr7//vurfDLXLoz6XO6c2feTK1fTBiXlcu9B6XzHISMjQ6mpqVq2bJkWL16sadOmaezYscVGCStUqCCp6D/6rhTOdZwwYYImT55c5Hxx7wtXrvQzp/C1+/jjjys+Pt5l3ov/wCzu9eKOkvzMlTz/PrmQt34/7uRz53V7/Phx3XDDDSX2u8Sf31+q43jTTTfJMAzVqlXLEY1z5fvvv9ePP/6ouXPnqnfv3o70FStWFMnrqb/S1q5dq2PHjunjjz/WHXfc4Ujfs2ePy/y//fZbkS1SfvzxR0kqNqpXo0YN2e127d692/HXtSRlZWUpJyfnivZiq1u3rurVq6clS5bo9ddfdzlc9O6770o6P5RfqHz58srJySmSd9++fU4dTFf++OMPde3aVSEhIfrggw+KRA6uVOHClsJ/SEvitbF48WIFBAToyy+/lL+/vyN99uzZl63PzTffrHr16unTTz/V66+/XmznTDr/+922bZvsdrtTmxROdbiavfbMvp9ccacNzL7HCp8lIyPD6fWSl5enPXv2KC4uzq06Fipbtqx69OihHj16KC8vT127dtXzzz+v5OTkS24LVdhxudT79UKFUcfx48erT58+Rc4XRiFzcnKcFhuV9LfRFLZZ6dKlr7itXClczLR9+/YiHc9C7ryvzPDm+6S4z61ryezrds+ePU6f/cDl/CnmOJrVtWtX+fr6asKECUX+ijMMwzEvqfAvugvzGIah119/vUiZhR01Vx8cV8NVHfLy8jRt2jSX+QsKCpy+AaDwGwHCwsIUHR19yfsUbuJ9caTjtddek6RiV/gWZ9y4cTp+/LgeeeSRIn95p6en61//+peaNm3qWAUonf8H5n//+5/y8vIcaampqaY24H7kkUf0448/6pNPPimR4T5Jmj9/vt555x3Fxsaqffv2kkrmteHr6yubzebULnv37jX97SgTJkzQsWPH1L9/fxUUFBQ5v3z5cqWmpko6//vNzMzUwoULHecLCgr05ptvKjAwUK1btzZ1T1fMvp9ccacNypYta+r9FRcXJz8/P73xxhtO9Zk5c6ZOnDhxRa/li5/Bz89PDRo0kGEYxe4BWLVqVVWrVu2S32p1seHDhyskJEQTJ04scq6w4/X111870k6fPq25c+eaKtusSpUqqU2bNnr77bd16NChIuePHDlyReV26NBB5cqVU0pKis6ePet0rvD35M77yixvvU9uuukmnThxwmmE5dChQ44dKa4Fd163mzdvvuQOGYArf7mI43PPPafk5GTt3btXXbp0Ubly5bRnzx598sknGjhwoB5//HFFRkbqpptu0uOPP66DBw8qKChIixcvdjnsVNgpGzp0qOLj4+Xr66uePXtedV1btWql8uXLq0+fPho6dKhsNpvee++9S86ZqlKliv71r39p7969uvnmm7Vw4UJt3bpVM2bMKHauWZMmTdSnTx/NmDHDMTy+YcMGzZ07V126dFHbtm2vqP69evXSpk2b9Nprr+mHH35QYmKiypcvr82bN2vWrFkKCwvTRx995LRAqH///vroo4/UsWNHde/eXT///LPef//9Yrdfkc4v4Hn33XeVkJCgbdu2OX2ABwYGqkuXLpet70cffaTAwEDHAqUvv/xS69atU5MmTZy2AimJ18Zdd92l1157TR07dtT999+vw4cPa+rUqapTp06xw/uFevTooe+//17PP/+8tmzZ4vhKu2PHjmnZsmVatWqVY7h34MCBevvtt9W3b1+lp6erZs2a+uijj7Ru3TpNnjzZ9OIBV8y+n1xxpw2io6O1cuVKvfbaa6pSpYpq1arlWDhwobCwMCUnJ2vChAnq2LGjOnfurIyMDE2bNk233nqr04ICszp06KCIiAjddtttCg8P186dOzVlyhTdddddl227e++9V5988okMw7hs1DQ4OFjDhg1zOfzdoUMHVa9eXf369dMTTzwhX19fx3to//79bj9TcaZOnarbb79djRo10oABA1S7dm1lZWUpLS1NBw4c0Hfffed2mUFBQZo0aZL69++vW2+9Vffff7/Kly+v7777TmfOnNHcuXPdel+Z5a33Sc+ePTV69Gj94x//0NChQ3XmzBm99dZbuvnmm694odfVMvu6TU9PV3Z2tu69995rUk9YlOcXbnvOlW4AvnjxYuP22283ypYta5QtW9aIjIw0Bg0aZGRkZDjy/PDDD0ZcXJwRGBhoVKxY0RgwYIDx3XffFdkGpqCgwBgyZIgRFhZm2Gw2x/YLrrbVMIz/26z64o2OXT3LunXrjJYtWzo2eR01apRja40Lt9BwtQF4jRo1jClTpphqx/z8fGPChAlGrVq1jNKlSxvVqlUrsgG4YZjfjudCn332mREXF2eEhIQ4bZF0qY3BX331VaNq1aqGv7+/cdtttxmbNm267HY8xW3LZHYD8MIjICDAuPHGG427777bmDVrVpE2MIyrf20YhmHMnDnTqFu3ruHv729ERkYas2fPNr2xcaFVq1YZ9957r1GpUiWjVKlSRlhYmHHPPfcU2aw5KyvLePDBB42KFSsafn5+RqNGjYpsZXSp1+uFbXSpLYvMvJ9cbVlitg127dpl3HHHHUaZMmUMmdgAfMqU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AEtiOx7vI+IIAAAAU4g4AgAAS2KOo/cRcQQAAIApRBwBAIAlMcfR+4g4AgAAwBQijgAAwJLsxrWuwV8PHUcAAGBJDFV7H0PVAAAAMIWIIwAAsCS24/E+Io4AAAAwhYgjAACwJIPFMV5HxBEAAACmEHEEAACWZGdVtdcRcQQAAIApRBwBAIAlsara+4g4AgAASzIMzx2ekp2drcTERAUFBSkkJET9+vXTqVOnir3m7NmzGjRokCpUqKDAwEAlJCQoKyvLcf67775Tr169VK1aNZUpU0b169fX66+/7lTG2rVrZbPZihyZmZlu1Z+IIwAAgJckJibq0KFDWrFihfLz8/Xggw9q4MCBmj9//iWvGTFihL744gstWrRIwcHBGjx4sLp27ap169ZJktLT01WpUiW9//77qlatmr799lsNHDhQvr6+Gjx4sFNZGRkZCgoKcvxcqVIlt+pvMwwWswMAAOtZ/l2ex8ru0MSvxMvcuXOnGjRooI0bN6p58+aSpGXLlqlTp046cOCAqlSpUuSaEydOKCwsTPPnz1e3bt0kSbt27VL9+vWVlpamli1burzXoEGDtHPnTq1evVrS+Yhj27Ztdfz4cYWEhFzxMzBUDQAAcJHc3FydPHnS6cjNzb2qMtPS0hQSEuLoNEpSXFycfHx8tH79epfXpKenKz8/X3FxcY60yMhIVa9eXWlpaZe814kTJxQaGlokPSoqSpUrV9add97piFi6g44jAACwJLvhuSMlJUXBwcFOR0pKylXVNzMzs8jQcKlSpRQaGnrJuYaZmZny8/MrEiUMDw+/5DXffvutFi5cqIEDBzrSKleurOnTp2vx4sVavHixqlWrpjZt2mjz5s1uPQNzHAEAAC6SnJyspKQkpzR/f3+XeceMGaN//etfxZa3c+fOEqtbcbZv3657771X48aNU4cOHRzp9erVU7169Rw/t2rVSj///LMmTZqk9957z3T5dBwBAIAleXI7Hn9/v0t2FC82cuRI9e3bt9g8tWvXVkREhA4fPuyUXlBQoOzsbEVERLi8LiIiQnl5ecrJyXGKOmZlZRW55ocfflD79u01cOBAPf3005etd4sWLfTf//73svkuRMcRAADgKoSFhSksLOyy+WJjY5WTk6P09HRFR0dLklavXi273a6YmBiX10RHR6t06dJatWqVEhISJJ1fGb1//37FxsY6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vffqoYcekiR9+umnatasmQICAlS7dm1NmDBBBQUFjrw2m01vvfWWOnfurLJly+r555/X8ePHlZiYqLCwMJUpU0Z169bV7NmzJbkeqv7qq6/UokUL+fv7q3LlyhozZozTPdq0aaOhQ4dq1KhRCg0NVUREhMaPH++5hgEAFEHHEfiLu++++3Ts2DGtWbPGkZadna1ly5YpMTFR33zzjXr37q1hw4bphx9+0Ntvv605c+bo+eefdypn/Pjx+sc//qHvv/9eDz30kJ555hn98MMP+s9//qOdO3fqrbfeUsWKFV3W4eDBg+rUqZNuvfVWfffdd3rrrbc0c+ZMPffcc0755s6dq7Jly2r9+vV66aWXNHHiRK1YsaLkGwUA4BJD1QDUpUsXVahQQTNnzpR0Pgo5YcIE/frrr+rQoYPat2+v5ORkR/73339fo0aN0m+//SbpfMRx+PDhmjRpkiNP586dVbFiRc2aNavI/fbu3atatWppy5YtioqK0lNPPaXFixdr586dstlskqRp06Zp9OjROnHihHx8fNSmTRudO3dO33zzjaOcFi1aqF27dnrxxRc90i4AAGdEHAEoMTFRixcvVm5urqTzX13Vs2dP+fj46LvvvtPEiRMVGBjoOAYMGKBDhw45fSVW8+bNncp89NFHtWDBAkVFRWnUqFH69ttvL3n/nTt3KjY21tFplKTbbrtNp06d0oEDBxxpjRs3drqucuXKOnz48FU9OwDAPDqOAHTPPffIMAx98cUX+vXXX/XNN98oMTFRknTq1ClNmDBBW7dudRzff/+9du/erYCAAEcZZcuWdSrz73//u/bt26cRI0bot99+U/v27fX4449fVT0vXnBjs9mKzM0EAHgO+2AAUEBAgLp27ap58+bpp59+Ur169dSsWTNJUrNmzZSRkaE6deq4XW5YWJj69OmjPn366G9/+5ueeOIJvfLKK0Xy1a9fX4sXL5ZhGI6o47p161SuXDndeOONV/dwAIASQ8cRgKTzw9V33323duzYoQceeMCRPnbsWN19992qXr26unXr5hi+3r59e5HFKxcaO3asoqOjdcsttyg3N1epqamqX7++y7yPPfaYJk+erCFDhmjw4MHKyMjQuHHjlJSUJB8fBkYA4HrBJzIASVK7du0UGhqqjIwM3X///Y70+Ph4paamavny5br11lvVsmVLTZo0STVq1Ci2PD8/PyUnJ6tx48a644475OvrqwULFrjMW7VqVS1dulQbNmxQkyZN9Mgjj6hfv356+umnS/QZAQBXh1XVAAAAMIWIIwAAAEyh4wgAAABT6DgCAADAFDqOAAAAMIWOIwAAAEyh4wgAAABT6DgCAADAFDqOAAAAMIWOIwAAAEyh4wgAAABT6DgCAADAFDqOAAAAMOX/AYJcRUCKMPKsAAAAAElFTkSuQmCC\n"
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 800x600 with 1 Axes>"
            ],
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAArcAAAIjCAYAAAAZajMiAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAATrFJREFUeJzt3XlYFXX///HXAdlEAUEQSMV938o9yz0RzSWt3HJJyha43b3LX3dptrhUpplLdhdqqZV3ZWmJuWKLmWtqKS65C2qaIJiI8Pn90cX5egQ3OICOz8d1zXVxZubM+z1zBngxfM4cmzHGCAAAALAAl8JuAAAAAHAWwi0AAAAsg3ALAAAAyyDcAgAAwDIItwAAALAMwi0AAAAsg3ALAAAAyyDcAgAAwDIItwAAALAMwi2AW8aAAQNUrly5wm7DQUpKip544gkFBwfLZrNp6NChhd1SvipXrpwGDBhQ2G0AQK4RbgELmzNnjmw2m8MUFBSkVq1aadmyZQXWR8uWLR168Pf3V8OGDfXhhx8qMzPTKTVef/11LV682CnbunK7c+bM0TPPPKOPPvpIffv2veb66enpeuedd9SwYUMVL15cxYoVU8OGDTVt2jRdunTJ6f3lxk8//aSxY8fq7Nmzhd2KXU7natb0/PPPF3Z7AG4jRQq7AQD5b9y4cSpfvryMMTpx4oTmzJmjDh06aMmSJXrwwQcLpIfSpUtr/PjxkqRTp05p3rx5ioyM1J49ezRhwoQ8b//111/Xww8/rK5du+Z5W5dbvXq1mjRpojFjxlx33dTUVHXs2FFxcXF68MEHNWDAALm4uCg2NlaDBw/W4sWLtWTJEhUtWtSpPd6sn376SS+//LIGDBggPz8/h2Xx8fFycSm86x5Z5+rlatWqVUjdALgdEW6BO0BERIQaNGhgfxwZGalSpUpp4cKFTgm3mZmZunjxojw9Pa+6jq+vrx577DH746eeekpVq1bVu+++q1deeUVubm557iM/nDx5UjVq1LihdYcPH664uDhNmzZN0dHR9vnPPPOMpk+frujoaI0aNUrTp0/Pr3bzzMPDo1DrX3muXsuFCxfk7u5eqGEcwK2HnwjAHcjPz09eXl4qUsTx79s333xT9957rwICAuTl5aX69evrf//7X7bn22w2RUdHa/78+apZs6Y8PDwUGxt7Uz0ULVpUTZo0UWpqqk6dOnXV9VJTUzVixAiVKVNGHh4eqlq1qt58800ZYxz6SU1N1dy5c+3/yr7euNGTJ0/aQ76np6fq1q2ruXPn2pevXbtWNptNBw4c0DfffGPf7sGDB3Pc3tGjR/XBBx+odevWDsE2S1RUlFq1aqXZs2fr2LFjkqSDBw/KZrNpzpw52da32WwaO3asw7xjx45p4MCBKlWqlDw8PFSzZk19+OGH2Z47bdo01axZU0WLFlWJEiXUoEEDLViwQJI0duxYjRo1SpJUvnz5bPuV05jbP/74Q4888oj8/f3tr9s333zjsE7W8frss8/02muvqXTp0vL09FSbNm20b9++HI/Zzcja/ieffKL//Oc/uuuuu1S0aFElJydLkjZs2KD27dvL19dXRYsWVYsWLfTjjz9m284PP/yghg0bytPTUxUrVtR7772nsWPHymaz2dfJj9flZo/Phg0b1KFDB5UoUULe3t6qU6eOpk6dKkmKiYmRzWbT1q1bsz3v9ddfl6urq/0cA+5EXLkF7gBJSUn6888/ZYzRyZMnNW3aNKWkpDhcSZWkqVOnqnPnzurTp48uXryoTz75RI888oiWLl2qjh07Oqy7evVqffbZZ4qOjlbJkiVz9UawP/74Q66urtn+NZ7FGKPOnTtrzZo1ioyMVL169bR8+XKNGjVKx44d09tvvy1J+uijj/TEE0+oUaNGGjRokCSpYsWKV637999/q2XLltq3b5+io6NVvnx5LVq0SAMGDNDZs2c1ZMgQVa9eXR999JGGDRum0qVLa8SIEZKkwMDAHLe5bNkyZWRkqF+/flet269fP61Zs0axsbGKjIy8kUNkd+LECTVp0sT+h0VgYKCWLVumyMhIJScn29/o9v7772vw4MF6+OGHNWTIEF24cEHbt2/Xhg0b1Lt3b3Xr1k179uzRwoUL9fbbb6tkyZLX3K8TJ07o3nvv1fnz5zV48GAFBARo7ty56ty5s/73v//poYceclh/woQJcnFx0ciRI5WUlKRJkyapT58+2rBhww3tZ9a5ermsHiXplVdekbu7u0aOHKm0tDS5u7tr9erVioiIUP369TVmzBi5uLgoJiZGrVu31vfff69GjRpJknbs2KF27dopMDBQY8eO1aVLlzRmzBiVKlXqhnq72vG5kdflZo7PihUr9OCDDyokJERDhgxRcHCwdu3apaVLl2rIkCF6+OGH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vvmm/Q+1y2UdG1dXV4WHh2vx4sU6fPiwffmuXbu0fPlyh+fkx+tyo+655x6VL19eU6ZMyfb6XHl1t06dOqpTp47++9//6vPPP1fPnj2z3d4PuBPxXQDcAZYtW2a/0nby5EktWLBAe/fu1fPPPy8fHx9JUseOHTV58mS1b99evXv31smTJzV9+nRVqlTJ/u/0gtapUye1atVKL7zwgg4ePKi6devqu+++01dffaWhQ4c63O6rfv36WrlypSZPnqzQ0FCVL18+x7GikjRo0CC99957GjBggDZv3qxy5crpf//7n3788UdNmTIl12MWJ0+erN27d+vZZ59VbGys2rdvL0lavny5vvrqK7Vu3VpvvPGGw3OeeOIJTZgwQU888YQaNGigdevWac+ePdm2PWHCBK1Zs0aNGzfWk08+qRo1aujMmTPasmWLVq5cqTNnzkiS2rVrp+DgYDVr1kylSpXSrl279O6776pjx472/apfv74k6YUXXlDPnj3l5uamTp062UPv5Z5//nktXLhQERERGjx4sPz9/TV37lwdOHBAn3/+eaF/gIKLi4v++9//KiIiQjVr1tTjjz+uu+66S8eOHdOaNWvk4+OjJUuWSJJefvllxcbG6v7779ezzz5r/4OmZs2a2c5xZ78uN7M/M2fOVKdOnVSvXj09/vjjCgkJ0e7du/Xbb79lC+L9+vXTyJEjJYkhCUCWQrtPA4B8l9PtlTw9PU29evXMzJkzHW4tZIwxH3zwgalcubLx8PAw1apVMzExMWbMmDHmyh8VkkxUVNQN99GiRYvr3p7KmOy3AjPmn9tODRs2zISGhho3NzdTuXJl88Ybb2Trfffu3aZ58+bGy8vLSLrubcFOnDhhHn/8cVOyZEnj7u5uateuneMtlG70VmBZLl68aKZMmWLq169vihYtaj/u/fv3d7htU5bz58+byMhI4+vra4oXL24effRRc/LkyWy3nMrqOSoqypQpU8a4ubmZ4OBg06ZNGzN79mz7Ou+9955p3ry5CQgIMB4eHqZixYpm1KhRJikpyWFbr7zyirnrrruMi4uLw23BrrwVmDHG7N+/3zz88MPGz8/PeHp6mkaNGpmlS5c6rJN1q6tFixY5zL/WbbUul3Wubty4McflV9t+lq1bt5pu3brZ9zssLMw8+uijZtWqVQ7rxcXFmfr16xt3d3dToUIFM2vWrBzPcWe/Ljd7fH744QfzwAMPmOLFixtvb29Tp04dM23atGz7nZCQYFxdXU2VKlVyPC7AnchmjJNG+QMAsklOTlaLFi20f/9+rVu37qpvekLhGTt2rF5++WWnvemtIP35558KCQnRSy+9pBdffLGw2wFuCYy5BYB85OPjo2XLlqlkyZLq0KFDrm9fBuRkzpw5ysjIUN++fQu7FeCWwZhbAMhnwcHBN/whBsCNWL16tX7//Xe99tpr6tq1a64+/hqwKsItAAC3mXHjxumnn35Ss2bNNG3atMJuB7ilMOYWAAAAlsGYWwAAAFgG4RYAAACWwZhb/fP54MePH1fx4sVv6mMpAQAAUDCMMTp37pxCQ0Ov+QEyhFtJx48fV5kyZQq7DQAAAFzHkSNHVLp06asuJ9xK9o+kPHLkiP2jSAEAAHDrSE5OVpkyZa77EemEW8k+FMHHx4dwCwAAcAu73hBS3lAGAAAAyyDcAgAAwDIItwAAALAMwi0AAAAsg3ALAAAAyyDcAgAAwDIItwAAALAMwi0AAAAsg3ALAAAAyyDcAgAAwDIItwAAALAMwi0AAAAsg3ALAAAAyyDcAgAAwDIItwAAALAMwi0AAAAsg3ALAAAAyyjUcDt+/Hg1bNhQxYsXV1BQkLp27ar4+HiHdVq2bCmbzeYwPf300w7rHD58WB07dlTRokUVFBSkUaNG6dKlSwW5KwAAALgFFCnM4nFxcYqKilLDhg116dIl/b//9//Url07/f777/L29rav9+STT2rcuHH2x0WLFrV/nZGRoY4dOyo4OFg//fSTEhIS1K9fP7m5uen1118v0P0BAABA4bIZY0xhN5Hl1KlTCgoKUlxcnJo3by7pnyu39erV05QpU3J8zrJly/Tggw/q+PHjKlWqlCRp1qxZeu6553Tq1Cm5u7tne05aWprS0tLsj5OTk1WmTBklJSXJx8cn2/rlnv8mT/t1cELHPD0fAADgTpecnCxfX9+r5rUst9SY26SkJEmSv7+/w/z58+erZMmSqlWrlkaPHq3z58/bl61fv161a9e2B1tJCg8PV3Jysn777bcc64wfP16+vr72qUyZMvmwNwAAAChohTos4XKZmZkaOnSomjVrplq1atnn9+7dW2FhYQoNDdX27dv13HPPKT4+Xl988YUkKTEx0SHYSrI/TkxMzLHW6NGjNXz4cPvjrCu3AAAAuL3dMuE2KipKO3fu1A8//OAwf9CgQfava9eurZCQELVp00b79+9XxYoVc1XLw8NDHh4eeeoXAAAAt55bYlhCdHS0li5dqjVr1qh06dLXXLdx48aSpH379kmSgoODdeLECYd1sh4HBwfnQ7cAAAC4VRVquDXGKDo6Wl9++aVWr16t8uXLX/c527ZtkySFhIRIkpo2baodO3bo5MmT9nVWrFghHx8f1ahRI1/6BgAAwK2pUIclREVFacGCBfrqq69UvHhx+xhZX19feXl5af/+/VqwYIE6dOiggIAAbd++XcOGDVPz5s1Vp04dSVK7du1Uo0YN9e3bV5MmTVJiYqL+85//KCoqiqEHAAAAd5hCvXI7c+ZMJSUlqWXLlgoJCbFPn376qSTJ3d1dK1euVLt27VStWjWNGDFC3bt315IlS+zbcHV11dKlS+Xq6qqmTZvqscceU79+/RzuiwsAAIA7Q6Feub3eLXbLlCmjuLi4624nLCxM3377rbPaAgAAwG3qlnhDGQAAAOAMhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUQbgEAAGAZhFsAAABYBuEWAAAAlkG4BQAAgGUUargdP368GjZsqOLFiysoKEhdu3ZVfHy8wzoXLlxQVFSUAgICVKxYMXXv3l0nTpxwWOfw4cPq2LGjihYtqqCgII0aNUqXLl0qyF0BAADALaBQw21cXJyioqL0888/a8WKFUpPT1e7du2UmppqX2fYsGFasmSJFi1apLi4OB0/flzdunWzL8/IyFDHjh118eJF/fTTT5o7d67mzJmjl156qTB2CQAAAIXIZowxhd1EllOnTikoKEhxcXFq3ry5kpKSFBgYqAULFujhhx+WJO3evVvVq1fX+vXr1aRJEy1btkwPPvigjh8/rlKlSkmSZs2apeeee06nTp2Su7v7desmJyfL19dXSUlJ8vHxyba83PPf5Gm/Dk7omKfnAwAA3Omul9ey3FJjbpOSkiRJ/v7+kqTNmzcrPT1dbdu2ta9TrVo1lS1bVuvXr5ckrV+/XrVr17YHW0kKDw9XcnKyfvvttxzrpKWlKTk52WECAADA7e+WCbeZmZkaOnSomjVrplq1akmSEhMT5e7uLj8/P4d1S5UqpcTERPs6lwfbrOVZy3Iyfvx4+fr62qcyZco4eW8AAABQGG6ZcBsVFaWdO3fqk08+yfdao0ePVlJSkn06cuRIvtcEAABA/itS2A1IUnR0tJYuXap169apdOnS9vnBwcG6ePGizp4963D19sSJEwoODrav88svvzhsL+tuClnrXMnDw0MeHh5O3gsAAAAUtkK9cmuMUXR0tL788kutXr1a5cuXd1hev359ubm5adWqVfZ58fHxOnz4sJo2bSpJatq0qXbs2KGTJ0/a11mxYoV8fHxUo0aNgtkRAAAA3BIK9cptVFSUFixYoK+++krFixe3j5H19fWVl5eXfH19FRkZqeHDh8vf318+Pj7617/+paZNm6pJkyaSpHbt2qlGjRrq27evJk2apMTERP3nP/9RVFQUV2cBAADuMIUabmfOnClJatmypcP8mJgYDRgwQJL09ttvy8XFRd27d1daWprCw8M1Y8YM+7qurq5aunSpnnnmGTVt2lTe3t7q37+/xo0bV1C7AQAAgFvELXWf28LCfW4BAABubbflfW4BAACAvCDcAgAAwDIItwAAALAMwi0AAAAsg3ALAAAAyyDcAgAAwDIItwAAALAMwi0AAAAsg3ALAAAAyyDcAgAAwDIItwAAALAMwi0AAAAsg3ALAAAA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0eDBgzV37lyn17oV5HReJSYmyt3dPdsfD/n1M/VK06ZNU40aNVS6dGm5u7urffv2mj59upo3b56vdU+ePKmUlBRNmDBB7du313fffaeHHnpI3bp1U1xcnNPqXO17uXfv3vr444+1Zs0ajR49Wh999JEee+wxp9W9mqw/XEaPHq2//vpLFy9e1MSJE3X06NF8/52WZenSpSpWrJg8PT319ttva8WKFSpZsqRTtm2Jj98tDJdfNatTp44aN26ssLAwffbZZ4qMjMy3ukeOHNGQIUO0YsWKPI8Hyq2qVatq27ZtSkpK0v/+9z/1799fcXFxBR5wC9pHH32kgQMH6q677pKrq6vuuece9erVS5s3b87Xup999pnmz5+vBQsWqGbNmtq2bZuGDh2q0NBQ9e/fP19rX+6DDz5QRESEU8e63qjNmzdr6tSp2rJlS6FcNS4sUVFR2rlzZ4FfScnSs2dP+9e1a9dWnTp1VLFiRa1du1Zt2rQpkB7S09P16KOPyhijmTNn5kuNzMxMNWjQQK+//rok6e6779bOnTs1a9asAv0eKyiFfV7lZNq0afr555/19ddfKywsTOvWrVNUVJRCQ0Pz9T+UmZmZkqQuXbpo2LBhkqR69erpp59+0qxZs9SiRQun1LnaMR80aJD969q1ayskJERt2rTR/v37VbFiRafUzombm5u++OILRUZGyt/fX66urmrbtq0iIiIK5M3KktSqVStt27ZNf/75p95//309+uij2rBhg4KCgvK8ba7cOomfn5+qVKmiffv25WudzZs36+TJk7rnnntUpEgRFSlSRHFxcXrnnXdUpEiRArmi4u7urkqVKql+/foaP3686tatq6lTp+Z73csFBwdLUrZ38p44ccK+zNkqVqyouLg4paSk6MiRI/rll1+Unp6uChUq5Eu9LKNGjbJfva1du7b69u2rYcOGFeiV+0OHDmnlypV64oknCqzm5b7//nudPHlSZcuWtZ/3hw4d0ogRI1SuXLlC6Sm/RUdHa+nSpVqzZo1Kly5d2O1IkipUqKCSJUvm+8+5LFnB9tChQ1qxYkW+XLWVpJCQkGx/nFevXr1Ah5oVlKudV8HBwbp48aLOnj3rsH5+/kzN8vfff+v//b//p8mTJ6tTp06qU6eOoqOj1aNHD7355pv5WrtkyZIqUqRIvr7+N/O93LhxY0kqkO+x+vXra9u2bTp79qwSEhIUGxur06dP5/vvtCze3t6qVKmSmjRpog8++EBFihTRBx984JRtE26dJCUlRfv371dISEi+1mnTpo127Nihbdu22acGDRqoT58+2rZtm1xdXfO1fk4yMzPt43cKSvny5RUcHKxVq1bZ5yUnJ2vDhg35Pv7X29tbISEh+uuvv7R8+XJ16dIlX+udP39eLi6O36qurq72Kw4FISYmRkFBQerYsWOB1bxc3759tX37dofzPjQ0VKNGjdLy5csLpaf8YoxRdHS0vvzyS61evVrly5cv7Jbsjh49qtOnT+f7zznp/4Lt3r17tXLlSgUEBORbrWbNmmW7RdOePXsUFhaWbzUL2vXOq/r168vNzc3hZ2p8fLwOHz6c7z9T09PTlZ6eXig/59zd3dWwYcN8ef1z872cdZvBgvgey+Lr66vAwEDt3btXmzZtyvffaVfjzCzBsIRcGjlypDp16qSwsDAdP35cY8aMkaurq3r16pWvdYsXL55t7J23t7cCAgIKZEze6NGjFRERobJly+rcuXNasGCB1q5dmy8BIyUlxeGv1wMHDmjbtm3y9/dX2bJlNXToUL366quqXLmyypcvrxdffFGhoaHq2rWr03uRpOXLl8sYo6pVq2rfvn0aNWqUqlWrpscffzxf6mXp1KmTXnvtNZUtW1Y1a9bU1q1bNXnyZA0cODBf62bJzMxUTEyM+vfvryJF8u9HxvVe7yvDjZubm4KDg1W1atV8r33mzBkdPnzYfp/VrF+EwcHBTr+qFRUVpQULFuirr75S8eLF7eMdfX195eXl5dRa19pvf39/vfzyy+revbuCg4O1f/9+/fvf/1alSpUUHh6er7VDQkL08MMPa8uWLVq6dKkyMjLsx8Hf31/u7u55rn+5YcOG6d5779Xrr7+uRx99VL/88otmz56t2bNnO7VOTq537jnL9c4rX19fRUZGavjw4fL395ePj4/+9a9/qWnTpmrSpEme619vP1u0aKFRo0bJy8tLYWFhiouL07x58zR58uR8rz1q1Cj16NFDzZs3V6tWrRQbG6slS5Zo7dq1eap7vWO+f/9+LViwQB06dFBAQIC2b9+uYcOGqXnz5k65xef19nvRokUKDAxU2bJltWPHDg0ZMkRdu3Z1ypv4rlU7ICBAr732mjp37qyQkBD9+eefmj59uo4dO+a820w65Z4L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165cb6NmzZpycfm/H4mlSpVS7dq17Y9dXV0VEBCgkydPOjyvadOm9q+LFCmiBg0a2Pv49ddftWbNGhUrVsw+VatWTdI/42Oz1K9f/5q9JScn6/jx42rWrJnD/GbNmuVqn811rsy6u7vf0HZ+/fVX7du3T8WLF7fvn7+/vy5cuKD9+/fL399fAwYMUHh4uDp16qSpU6cqISHhpnrdtWuX6tatK29vb/u8Zs2aKTMzU/Hx8fZ5NWvWlKurq/1xSEiI/bV64IEHFBYWpgoVKqhv376aP3++zp8/f1N9ALh9EG4B3PaaN2+u8PBwjR49OtsyFxeXbGHu8rGYWdzc3Bwe22y2HOdlZmbecF8pKSnq1KmTtm3b5jDt3bvX4d/ilwe3/FSpUiXZbLarBuJdu3YpMDBQfn5+kv7Z32sdu5SUFNWvXz/b/u3Zs0e9e/eWJMXExGj9+vW699579emnn6pKlSr6+eefnb5v13qtihcvri1btmjhwoUKCQnRSy+9pLp16+rs2bNO7wNA4SPcArCECRMmaMmSJVq/fr3D/MDAQCUmJjqENGfem/byoHbp0iVt3rxZ1atXlyTdc889+u2331SuXDlVqlTJYbqZQOvj46PQ0FD9+OOPDvN//PFH1ahR44a3ExAQoAceeEAzZszQ33//7bAsMTFR8+fP14ABA+zzAgMDHa607t271+GK5z333KO9e/cqKCgo2/75+vra17v77rs1evRo/fTTT6pVq5YWLFgg6Z8rxBkZGdfsuXr16vr111+VmprqsN8uLi6qWrXqDe97kSJF1LZtW02aNEnbt2/XwYMHtXr16ht+PoDbB+EWgCXUrl1bffr00TvvvOMwv2XLljp16pQmTZqk/fv3a/r06Vq2bJnT6k6fPl1ffvmldu/eraioKP31118aOHCgpH/uTHDmzBn16tVLGzdu1P79+7V8+XI9/vjj1w11Vxo1apQmTpyoTz/9VPHx8Xr++ee1bds2DRky5Ka28+677yotLU3h4eFat26djhw5otjYWD3wwAOqUqWKXnrpJfu6rVu31rvvvqutW7dq06ZNevrppx2ukPbp00clS5ZUly5d9P333+vAgQNau3atBg8erKNHj+rAgQMaPXq01q9fr0OHDum7777T3r177eG/XLlyOnDggLZt26Y///xTaWlp2frt06ePPD091b9/f+3cuVNr1qzRv/71L/Xt21elSpW6oX1eunSp3nnnHW3btk2HDh3SvHnzlJmZeVPhGMDtg3ALwDLGjRuXbdhA9erVNWPGDE2fPl1169bVL7/8kuOdBHJrwoQJmjBhgurWrasffvhBX3/9tUqWLClJ9qutGRkZateunWrXrq2hQ4fKz8/PYXzvjRg8eLCGDx+uESNGqHbt2oqNjdXXX3+typUr39R2KleurI0bN6pChQp69NFHFRYWpoiICFWpUsV+t4Msb731lsqUKaP7779fvXv31siRI1W0aFH78qJFi2rdunUqW7asunXrpurVqysyMlIXLlyQj4+PihYtqt27d6t79+6qUqWKBg0apKioKD311FOSpO7du6t9+/Zq1aqVAgMDtXDhwmz9Fi1aVMuXL9eZM2fUsGFDPfzww2rTpo3efffdG95nPz8/ffHFF2rdurWqV6+uWbNmaeHChapZs+ZNHTsAtwebud47CwAAljZmzBhNnjxZK1asUJMmTQq7HQDIE8ItAEAxMTFKSkrS4MGDb/qqMgDcSgi3AAAAsAz+PAcAAIBlEG4BAABgGYRbAAAAWAbhFgAAAJZBuAUAAIBlEG4BAABgGYRbAAAAWAbhFgAAAJZBuAUAAIBl/H+cadoeLKFw0wAAAABJRU5ErkJggg==\n"
          },
          "metadata": {}
        }
      ]
    }
  ],
  "metadata": {
    "colab": {
      "provenance": []
    },
    "kernelspec": {
      "display_name": "Python 3",
      "name": "python3"
    },
    "language_info": {
      "name": "python"
    }
  },
  "nbformat": 4,
  "nbformat_minor": 0
}