summaryrefslogblamecommitdiffstats
path: root/analiza/zvezek.ipynb
blob: 55a192354f273794203d1bb293a14090d566baf8 (plain) (tree)
1
2
3
4
5
6
7
8
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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088



                       
                        

                    
                     






                             

                                                                                 
                                      



              
                                   
                             

                                                              
                                 

                            
                                              










                                                                                              
                        






                             
                                                                                                                                                                                                                              























                                                                                                                                                                                                                                                             
                         





                     









































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   






                                           




                             
                                                        
      



                        
                                            














                                                                                         









                                                           
                                                                 
                                                     


                                      




                                                                                                                                    

                                                                    



                       
                        
                    
                














































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
     




                             
                                                                                                                   












































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        






                                           




                             




















































































































































































































































































































































































































































































































































































































































































































































































































































































                                                                                                                                                                                                                                                                                                                                               
      



                        




                                                                        
                      

                                      







                                                                             

                                                                       










                                                         
                                                                        

                                                                      
                                                                                                                                                             





                                                                    
                                      


                                                                     



                       
                         
                    
                  





                             
                                                                                                 


      

                        















































                                                                                                                      
                                                                                                 
                                                                                                                             



                       
                         













































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       








                                           









































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           


















































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               






                                           















                                                                                                                                                                                                                                            







                           























                                          
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "7e32a042",
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "......\n",
      "fixed bad single file torrent 4f269d8aefd647ee270842d53ec98aebd23a4afe\n",
      "fixed bad single file torrent 7b09ae0b612dafc1744562dccbbe4becf4d633c3\n",
      "47843 @ 413.21088907518424 s\n"
     ]
    }
   ],
   "source": [
    "from time import monotonic\n",
    "from sys import path\n",
    "from os import getenv\n",
    "path.append(getenv(\"HOME\") + \"/projects/travnik\")\n",
    "from travnik import glob\n",
    "print(\"......\")\n",
    "start = monotonic()\n",
    "torrents = glob(\"/var/opt/travnik\")\n",
    "print(len(torrents), \"@\", monotonic()-start, \"s\")\n",
    "# t = Torrent()\n",
    "# t.file(\"/root/projects/travnik/449a38ef7e042bd2d75e8921aa02f6f244165d9d.torrent\")\n",
    "# print(t.sha1.hex())\n",
    "# for path, length in t.paths():\n",
    "#     print(path, length)\n",
    "# print(t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "a4419e5e",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "5.202414946863428 torrenti so se zbirali 16.265196759259258 dni. en torrent je bil najden v povprečju na 29.373429759839475 sekund, v 47843 so metapodatki 3084321 datotek v skupni velikosti 259.2602232018344 TiB\n"
     ]
    }
   ],
   "source": [
    "s = monotonic()\n",
    "prej = None\n",
    "skup = 0\n",
    "dat = 0\n",
    "vel = 0\n",
    "for torrent in sorted([torrent for sha1, torrent in torrents.items()], key=lambda x:x.dict.get(b'creation date')):\n",
    "    č = torrent.dict.get(b'creation date')\n",
    "    dat += sum(1 for path, size in torrent.paths())\n",
    "    vel += sum(size for path, size in torrent.paths())\n",
    "    if not prej:\n",
    "        prej = č\n",
    "        continue\n",
    "    if prej + 60*10 > č:\n",
    "        skup += č-prej\n",
    "    prej = č\n",
    "print(monotonic()-s, \"torrenti so se zbirali\", skup/86400, \"dni. en torrent je bil najden v povprečju na\", skup/len(torrents), \"sekund, v\", len(torrents), \"so metapodatki\", dat, \"datotek\", \"v skupni velikosti\", vel/(1024**4), \"TiB\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "e170de45",
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "/* Put everything inside the global mpl namespace */\n",
       "/* global mpl */\n",
       "window.mpl = {};\n",
       "\n",
       "mpl.get_websocket_type = function () {\n",
       "    if (typeof WebSocket !== 'undefined') {\n",
       "        return WebSocket;\n",
       "    } else if (typeof MozWebSocket !== 'undefined') {\n",
       "        return MozWebSocket;\n",
       "    } else {\n",
       "        alert(\n",
       "            'Your browser does not have WebSocket support. ' +\n",
       "                'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
       "                'Firefox 4 and 5 are also supported but you ' +\n",
       "                'have to enable WebSockets in about:config.'\n",
       "        );\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure = function (figure_id, websocket, ondownload, parent_element) {\n",
       "    this.id = figure_id;\n",
       "\n",
       "    this.ws = websocket;\n",
       "\n",
       "    this.supports_binary = this.ws.binaryType !== undefined;\n",
       "\n",
       "    if (!this.supports_binary) {\n",
       "        var warnings = document.getElementById('mpl-warnings');\n",
       "        if (warnings) {\n",
       "            warnings.style.display = 'block';\n",
       "            warnings.textContent =\n",
       "                'This browser does not support binary websocket messages. ' +\n",
       "                'Performance may be slow.';\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.imageObj = new Image();\n",
       "\n",
       "    this.context = undefined;\n",
       "    this.message = undefined;\n",
       "    this.canvas = undefined;\n",
       "    this.rubberband_canvas = undefined;\n",
       "    this.rubberband_context = undefined;\n",
       "    this.format_dropdown = undefined;\n",
       "\n",
       "    this.image_mode = 'full';\n",
       "\n",
       "    this.root = document.createElement('div');\n",
       "    this.root.setAttribute('style', 'display: inline-block');\n",
       "    this._root_extra_style(this.root);\n",
       "\n",
       "    parent_element.appendChild(this.root);\n",
       "\n",
       "    this._init_header(this);\n",
       "    this._init_canvas(this);\n",
       "    this._init_toolbar(this);\n",
       "\n",
       "    var fig = this;\n",
       "\n",
       "    this.waiting = false;\n",
       "\n",
       "    this.ws.onopen = function () {\n",
       "        fig.send_message('supports_binary', { value: fig.supports_binary });\n",
       "        fig.send_message('send_image_mode', {});\n",
       "        if (fig.ratio !== 1) {\n",
       "            fig.send_message('set_device_pixel_ratio', {\n",
       "                device_pixel_ratio: fig.ratio,\n",
       "            });\n",
       "        }\n",
       "        fig.send_message('refresh', {});\n",
       "    };\n",
       "\n",
       "    this.imageObj.onload = function () {\n",
       "        if (fig.image_mode === 'full') {\n",
       "            // Full images could contain transparency (where diff images\n",
       "            // almost always do), so we need to clear the canvas so that\n",
       "            // there is no ghosting.\n",
       "            fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
       "        }\n",
       "        fig.context.drawImage(fig.imageObj, 0, 0);\n",
       "    };\n",
       "\n",
       "    this.imageObj.onunload = function () {\n",
       "        fig.ws.close();\n",
       "    };\n",
       "\n",
       "    this.ws.onmessage = this._make_on_message_function(this);\n",
       "\n",
       "    this.ondownload = ondownload;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_header = function () {\n",
       "    var titlebar = document.createElement('div');\n",
       "    titlebar.classList =\n",
       "        'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n",
       "    var titletext = document.createElement('div');\n",
       "    titletext.classList = 'ui-dialog-title';\n",
       "    titletext.setAttribute(\n",
       "        'style',\n",
       "        'width: 100%; text-align: center; padding: 3px;'\n",
       "    );\n",
       "    titlebar.appendChild(titletext);\n",
       "    this.root.appendChild(titlebar);\n",
       "    this.header = titletext;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._init_canvas = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var canvas_div = (this.canvas_div = document.createElement('div'));\n",
       "    canvas_div.setAttribute('tabindex', '0');\n",
       "    canvas_div.setAttribute(\n",
       "        'style',\n",
       "        'border: 1px solid #ddd;' +\n",
       "            'box-sizing: content-box;' +\n",
       "            'clear: both;' +\n",
       "            'min-height: 1px;' +\n",
       "            'min-width: 1px;' +\n",
       "            'outline: 0;' +\n",
       "            'overflow: hidden;' +\n",
       "            'position: relative;' +\n",
       "            'resize: both;' +\n",
       "            'z-index: 2;'\n",
       "    );\n",
       "\n",
       "    function on_keyboard_event_closure(name) {\n",
       "        return function (event) {\n",
       "            return fig.key_event(event, name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'keydown',\n",
       "        on_keyboard_event_closure('key_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'keyup',\n",
       "        on_keyboard_event_closure('key_release')\n",
       "    );\n",
       "\n",
       "    this._canvas_extra_style(canvas_div);\n",
       "    this.root.appendChild(canvas_div);\n",
       "\n",
       "    var canvas = (this.canvas = document.createElement('canvas'));\n",
       "    canvas.classList.add('mpl-canvas');\n",
       "    canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: relative;' +\n",
       "            'z-index: 0;'\n",
       "    );\n",
       "\n",
       "    this.context = canvas.getContext('2d');\n",
       "\n",
       "    var backingStore =\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        this.context.webkitBackingStorePixelRatio ||\n",
       "        this.context.mozBackingStorePixelRatio ||\n",
       "        this.context.msBackingStorePixelRatio ||\n",
       "        this.context.oBackingStorePixelRatio ||\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        1;\n",
       "\n",
       "    this.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
       "\n",
       "    var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n",
       "        'canvas'\n",
       "    ));\n",
       "    rubberband_canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'left: 0;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: absolute;' +\n",
       "            'top: 0;' +\n",
       "            'z-index: 1;'\n",
       "    );\n",
       "\n",
       "    // Apply a ponyfill if ResizeObserver is not implemented by browser.\n",
       "    if (this.ResizeObserver === undefined) {\n",
       "        if (window.ResizeObserver !== undefined) {\n",
       "            this.ResizeObserver = window.ResizeObserver;\n",
       "        } else {\n",
       "            var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n",
       "            this.ResizeObserver = obs.ResizeObserver;\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n",
       "        var nentries = entries.length;\n",
       "        for (var i = 0; i < nentries; i++) {\n",
       "            var entry = entries[i];\n",
       "            var width, height;\n",
       "            if (entry.contentBoxSize) {\n",
       "                if (entry.contentBoxSize instanceof Array) {\n",
       "                    // Chrome 84 implements new version of spec.\n",
       "                    width = entry.contentBoxSize[0].inlineSize;\n",
       "                    height = entry.contentBoxSize[0].blockSize;\n",
       "                } else {\n",
       "                    // Firefox implements old version of spec.\n",
       "                    width = entry.contentBoxSize.inlineSize;\n",
       "                    height = entry.contentBoxSize.blockSize;\n",
       "                }\n",
       "            } else {\n",
       "                // Chrome <84 implements even older version of spec.\n",
       "                width = entry.contentRect.width;\n",
       "                height = entry.contentRect.height;\n",
       "            }\n",
       "\n",
       "            // Keep the size of the canvas and rubber band canvas in sync with\n",
       "            // the canvas container.\n",
       "            if (entry.devicePixelContentBoxSize) {\n",
       "                // Chrome 84 implements new version of spec.\n",
       "                canvas.setAttribute(\n",
       "                    'width',\n",
       "                    entry.devicePixelContentBoxSize[0].inlineSize\n",
       "                );\n",
       "                canvas.setAttribute(\n",
       "                    'height',\n",
       "                    entry.devicePixelContentBoxSize[0].blockSize\n",
       "                );\n",
       "            } else {\n",
       "                canvas.setAttribute('width', width * fig.ratio);\n",
       "                canvas.setAttribute('height', height * fig.ratio);\n",
       "            }\n",
       "            /* This rescales the canvas back to display pixels, so that it\n",
       "             * appears correct on HiDPI screens. */\n",
       "            canvas.style.width = width + 'px';\n",
       "            canvas.style.height = height + 'px';\n",
       "\n",
       "            rubberband_canvas.setAttribute('width', width);\n",
       "            rubberband_canvas.setAttribute('height', height);\n",
       "\n",
       "            // And update the size in Python. We ignore the initial 0/0 size\n",
       "            // that occurs as the element is placed into the DOM, which should\n",
       "            // otherwise not happen due to the minimum size styling.\n",
       "            if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    this.resizeObserverInstance.observe(canvas_div);\n",
       "\n",
       "    function on_mouse_event_closure(name) {\n",
       "        /* User Agent sniffing is bad, but WebKit is busted:\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=144526\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=181818\n",
       "         * The worst that happens here is that they get an extra browser\n",
       "         * selection when dragging, if this check fails to catch them.\n",
       "         */\n",
       "        var UA = navigator.userAgent;\n",
       "        var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n",
       "        if(isWebKit) {\n",
       "            return function (event) {\n",
       "                /* This prevents the web browser from automatically changing to\n",
       "                 * the text insertion cursor when the button is pressed. We\n",
       "                 * want to control all of the cursor setting manually through\n",
       "                 * the 'cursor' event from matplotlib */\n",
       "                event.preventDefault()\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        } else {\n",
       "            return function (event) {\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        }\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mousedown',\n",
       "        on_mouse_event_closure('button_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseup',\n",
       "        on_mouse_event_closure('button_release')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'dblclick',\n",
       "        on_mouse_event_closure('dblclick')\n",
       "    );\n",
       "    // Throttle sequential mouse events to 1 every 20ms.\n",
       "    canvas_div.addEventListener(\n",
       "        'mousemove',\n",
       "        on_mouse_event_closure('motion_notify')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseenter',\n",
       "        on_mouse_event_closure('figure_enter')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseleave',\n",
       "        on_mouse_event_closure('figure_leave')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener('wheel', function (event) {\n",
       "        if (event.deltaY < 0) {\n",
       "            event.step = 1;\n",
       "        } else {\n",
       "            event.step = -1;\n",
       "        }\n",
       "        on_mouse_event_closure('scroll')(event);\n",
       "    });\n",
       "\n",
       "    canvas_div.appendChild(canvas);\n",
       "    canvas_div.appendChild(rubberband_canvas);\n",
       "\n",
       "    this.rubberband_context = rubberband_canvas.getContext('2d');\n",
       "    this.rubberband_context.strokeStyle = '#000000';\n",
       "\n",
       "    this._resize_canvas = function (width, height, forward) {\n",
       "        if (forward) {\n",
       "            canvas_div.style.width = width + 'px';\n",
       "            canvas_div.style.height = height + 'px';\n",
       "        }\n",
       "    };\n",
       "\n",
       "    // Disable right mouse context menu.\n",
       "    canvas_div.addEventListener('contextmenu', function (_e) {\n",
       "        event.preventDefault();\n",
       "        return false;\n",
       "    });\n",
       "\n",
       "    function set_focus() {\n",
       "        canvas.focus();\n",
       "        canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    window.setTimeout(set_focus, 100);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'mpl-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'mpl-button-group';\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'mpl-button-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        var button = (fig.buttons[name] = document.createElement('button'));\n",
       "        button.classList = 'mpl-widget';\n",
       "        button.setAttribute('role', 'button');\n",
       "        button.setAttribute('aria-disabled', 'false');\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "\n",
       "        var icon_img = document.createElement('img');\n",
       "        icon_img.src = '_images/' + image + '.png';\n",
       "        icon_img.srcset = '_images/' + image + '_large.png 2x';\n",
       "        icon_img.alt = tooltip;\n",
       "        button.appendChild(icon_img);\n",
       "\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    var fmt_picker = document.createElement('select');\n",
       "    fmt_picker.classList = 'mpl-widget';\n",
       "    toolbar.appendChild(fmt_picker);\n",
       "    this.format_dropdown = fmt_picker;\n",
       "\n",
       "    for (var ind in mpl.extensions) {\n",
       "        var fmt = mpl.extensions[ind];\n",
       "        var option = document.createElement('option');\n",
       "        option.selected = fmt === mpl.default_extension;\n",
       "        option.innerHTML = fmt;\n",
       "        fmt_picker.appendChild(option);\n",
       "    }\n",
       "\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.request_resize = function (x_pixels, y_pixels) {\n",
       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
       "    // which will in turn request a refresh of the image.\n",
       "    this.send_message('resize', { width: x_pixels, height: y_pixels });\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_message = function (type, properties) {\n",
       "    properties['type'] = type;\n",
       "    properties['figure_id'] = this.id;\n",
       "    this.ws.send(JSON.stringify(properties));\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_draw_message = function () {\n",
       "    if (!this.waiting) {\n",
       "        this.waiting = true;\n",
       "        this.ws.send(JSON.stringify({ type: 'draw', figure_id: this.id }));\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    var format_dropdown = fig.format_dropdown;\n",
       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
       "    fig.ondownload(fig, format);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_resize = function (fig, msg) {\n",
       "    var size = msg['size'];\n",
       "    if (size[0] !== fig.canvas.width || size[1] !== fig.canvas.height) {\n",
       "        fig._resize_canvas(size[0], size[1], msg['forward']);\n",
       "        fig.send_message('refresh', {});\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_rubberband = function (fig, msg) {\n",
       "    var x0 = msg['x0'] / fig.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n",
       "    var x1 = msg['x1'] / fig.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / fig.ratio;\n",
       "    x0 = Math.floor(x0) + 0.5;\n",
       "    y0 = Math.floor(y0) + 0.5;\n",
       "    x1 = Math.floor(x1) + 0.5;\n",
       "    y1 = Math.floor(y1) + 0.5;\n",
       "    var min_x = Math.min(x0, x1);\n",
       "    var min_y = Math.min(y0, y1);\n",
       "    var width = Math.abs(x1 - x0);\n",
       "    var height = Math.abs(y1 - y0);\n",
       "\n",
       "    fig.rubberband_context.clearRect(\n",
       "        0,\n",
       "        0,\n",
       "        fig.canvas.width / fig.ratio,\n",
       "        fig.canvas.height / fig.ratio\n",
       "    );\n",
       "\n",
       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_figure_label = function (fig, msg) {\n",
       "    // Updates the figure title.\n",
       "    fig.header.textContent = msg['label'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_cursor = function (fig, msg) {\n",
       "    fig.canvas_div.style.cursor = msg['cursor'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_message = function (fig, msg) {\n",
       "    fig.message.textContent = msg['message'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_draw = function (fig, _msg) {\n",
       "    // Request the server to send over a new figure.\n",
       "    fig.send_draw_message();\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_image_mode = function (fig, msg) {\n",
       "    fig.image_mode = msg['mode'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n",
       "    for (var key in msg) {\n",
       "        if (!(key in fig.buttons)) {\n",
       "            continue;\n",
       "        }\n",
       "        fig.buttons[key].disabled = !msg[key];\n",
       "        fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n",
       "    if (msg['mode'] === 'PAN') {\n",
       "        fig.buttons['Pan'].classList.add('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    } else if (msg['mode'] === 'ZOOM') {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.add('active');\n",
       "    } else {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Called whenever the canvas gets updated.\n",
       "    this.send_message('ack', {});\n",
       "};\n",
       "\n",
       "// A function to construct a web socket function for onmessage handling.\n",
       "// Called in the figure constructor.\n",
       "mpl.figure.prototype._make_on_message_function = function (fig) {\n",
       "    return function socket_on_message(evt) {\n",
       "        if (evt.data instanceof Blob) {\n",
       "            var img = evt.data;\n",
       "            if (img.type !== 'image/png') {\n",
       "                /* FIXME: We get \"Resource interpreted as Image but\n",
       "                 * transferred with MIME type text/plain:\" errors on\n",
       "                 * Chrome.  But how to set the MIME type?  It doesn't seem\n",
       "                 * to be part of the websocket stream */\n",
       "                img.type = 'image/png';\n",
       "            }\n",
       "\n",
       "            /* Free the memory for the previous frames */\n",
       "            if (fig.imageObj.src) {\n",
       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
       "                    fig.imageObj.src\n",
       "                );\n",
       "            }\n",
       "\n",
       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
       "                img\n",
       "            );\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        } else if (\n",
       "            typeof evt.data === 'string' &&\n",
       "            evt.data.slice(0, 21) === 'data:image/png;base64'\n",
       "        ) {\n",
       "            fig.imageObj.src = evt.data;\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        var msg = JSON.parse(evt.data);\n",
       "        var msg_type = msg['type'];\n",
       "\n",
       "        // Call the  \"handle_{type}\" callback, which takes\n",
       "        // the figure and JSON message as its only arguments.\n",
       "        try {\n",
       "            var callback = fig['handle_' + msg_type];\n",
       "        } catch (e) {\n",
       "            console.log(\n",
       "                \"No handler for the '\" + msg_type + \"' message type: \",\n",
       "                msg\n",
       "            );\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        if (callback) {\n",
       "            try {\n",
       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
       "                callback(fig, msg);\n",
       "            } catch (e) {\n",
       "                console.log(\n",
       "                    \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n",
       "                    e,\n",
       "                    e.stack,\n",
       "                    msg\n",
       "                );\n",
       "            }\n",
       "        }\n",
       "    };\n",
       "};\n",
       "\n",
       "\n",
       "/*\n",
       " * return a copy of an object with only non-object keys\n",
       " * we need this to avoid circular references\n",
       " * https://stackoverflow.com/a/24161582/3208463\n",
       " */\n",
       "function simpleKeys(original) {\n",
       "    return Object.keys(original).reduce(function (obj, key) {\n",
       "        if (typeof original[key] !== 'object') {\n",
       "            obj[key] = original[key];\n",
       "        }\n",
       "        return obj;\n",
       "    }, {});\n",
       "}\n",
       "\n",
       "mpl.figure.prototype.mouse_event = function (event, name) {\n",
       "    if (name === 'button_press') {\n",
       "        this.canvas.focus();\n",
       "        this.canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    // from https://stackoverflow.com/q/1114465\n",
       "    var boundingRect = this.canvas.getBoundingClientRect();\n",
       "    var x = (event.clientX - boundingRect.left) * this.ratio;\n",
       "    var y = (event.clientY - boundingRect.top) * this.ratio;\n",
       "\n",
       "    this.send_message(name, {\n",
       "        x: x,\n",
       "        y: y,\n",
       "        button: event.button,\n",
       "        step: event.step,\n",
       "        guiEvent: simpleKeys(event),\n",
       "    });\n",
       "\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (_event, _name) {\n",
       "    // Handle any extra behaviour associated with a key event\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.key_event = function (event, name) {\n",
       "    // Prevent repeat events\n",
       "    if (name === 'key_press') {\n",
       "        if (event.key === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.key;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.key !== 'Control') {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    else if (event.altKey && event.key !== 'Alt') {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    else if (event.shiftKey && event.key !== 'Shift') {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k' + event.key;\n",
       "\n",
       "    this._key_event_extra(event, name);\n",
       "\n",
       "    this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onclick = function (name) {\n",
       "    if (name === 'download') {\n",
       "        this.handle_save(this, null);\n",
       "    } else {\n",
       "        this.send_message('toolbar_button', { name: name });\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n",
       "    this.message.textContent = tooltip;\n",
       "};\n",
       "\n",
       "///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n",
       "// prettier-ignore\n",
       "var _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\n",
       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n",
       "\n",
       "mpl.default_extension = \"png\";/* global mpl */\n",
       "\n",
       "var comm_websocket_adapter = function (comm) {\n",
       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
       "    // object with the appropriate methods. Currently this is a non binary\n",
       "    // socket, so there is still some room for performance tuning.\n",
       "    var ws = {};\n",
       "\n",
       "    ws.binaryType = comm.kernel.ws.binaryType;\n",
       "    ws.readyState = comm.kernel.ws.readyState;\n",
       "    function updateReadyState(_event) {\n",
       "        if (comm.kernel.ws) {\n",
       "            ws.readyState = comm.kernel.ws.readyState;\n",
       "        } else {\n",
       "            ws.readyState = 3; // Closed state.\n",
       "        }\n",
       "    }\n",
       "    comm.kernel.ws.addEventListener('open', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('close', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('error', updateReadyState);\n",
       "\n",
       "    ws.close = function () {\n",
       "        comm.close();\n",
       "    };\n",
       "    ws.send = function (m) {\n",
       "        //console.log('sending', m);\n",
       "        comm.send(m);\n",
       "    };\n",
       "    // Register the callback with on_msg.\n",
       "    comm.on_msg(function (msg) {\n",
       "        //console.log('receiving', msg['content']['data'], msg);\n",
       "        var data = msg['content']['data'];\n",
       "        if (data['blob'] !== undefined) {\n",
       "            data = {\n",
       "                data: new Blob(msg['buffers'], { type: data['blob'] }),\n",
       "            };\n",
       "        }\n",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(data);\n",
       "    });\n",
       "    return ws;\n",
       "};\n",
       "\n",
       "mpl.mpl_figure_comm = function (comm, msg) {\n",
       "    // This is the function which gets called when the mpl process\n",
       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
       "\n",
       "    var id = msg.content.data.id;\n",
       "    // Get hold of the div created by the display call when the Comm\n",
       "    // socket was opened in Python.\n",
       "    var element = document.getElementById(id);\n",
       "    var ws_proxy = comm_websocket_adapter(comm);\n",
       "\n",
       "    function ondownload(figure, _format) {\n",
       "        window.open(figure.canvas.toDataURL());\n",
       "    }\n",
       "\n",
       "    var fig = new mpl.figure(id, ws_proxy, ondownload, element);\n",
       "\n",
       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
       "    // web socket which is closed, not our websocket->open comm proxy.\n",
       "    ws_proxy.onopen();\n",
       "\n",
       "    fig.parent_element = element;\n",
       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "    fig.cell_info[0].output_area.element.on(\n",
       "        'cleared',\n",
       "        { fig: fig },\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / fig.ratio;\n",
       "    fig.cell_info[0].output_area.element.off(\n",
       "        'cleared',\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "    fig.resizeObserverInstance.unobserve(fig.canvas_div);\n",
       "\n",
       "    // Update the output cell to use the data from the current canvas.\n",
       "    fig.push_to_output();\n",
       "    var dataURL = fig.canvas.toDataURL();\n",
       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
       "    // the notebook keyboard shortcuts fail.\n",
       "    IPython.keyboard_manager.enable();\n",
       "    fig.parent_element.innerHTML =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "    fig.close_ws(fig, msg);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.close_ws = function (fig, msg) {\n",
       "    fig.send_message('closing', msg);\n",
       "    // fig.ws.close()\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.push_to_output = function (_remove_interactive) {\n",
       "    // Turn the data on the canvas into data in the output cell.\n",
       "    var width = this.canvas.width / this.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Tell IPython that the notebook contents must change.\n",
       "    IPython.notebook.set_dirty(true);\n",
       "    this.send_message('ack', {});\n",
       "    var fig = this;\n",
       "    // Wait a second, then push the new image to the DOM so\n",
       "    // that it is saved nicely (might be nice to debounce this).\n",
       "    setTimeout(function () {\n",
       "        fig.push_to_output();\n",
       "    }, 1000);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'btn-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'btn-group';\n",
       "    var button;\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'btn-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        button = fig.buttons[name] = document.createElement('button');\n",
       "        button.classList = 'btn btn-default';\n",
       "        button.href = '#';\n",
       "        button.title = name;\n",
       "        button.innerHTML = '<i class=\"fa ' + image + ' fa-lg\"></i>';\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    // Add the status bar.\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message pull-right';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "\n",
       "    // Add the close button to the window.\n",
       "    var buttongrp = document.createElement('div');\n",
       "    buttongrp.classList = 'btn-group inline pull-right';\n",
       "    button = document.createElement('button');\n",
       "    button.classList = 'btn btn-mini btn-primary';\n",
       "    button.href = '#';\n",
       "    button.title = 'Stop Interaction';\n",
       "    button.innerHTML = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\n",
       "    button.addEventListener('click', function (_evt) {\n",
       "        fig.handle_close(fig, {});\n",
       "    });\n",
       "    button.addEventListener(\n",
       "        'mouseover',\n",
       "        on_mouseover_closure('Stop Interaction')\n",
       "    );\n",
       "    buttongrp.appendChild(button);\n",
       "    var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n",
       "    titlebar.insertBefore(buttongrp, titlebar.firstChild);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._remove_fig_handler = function (event) {\n",
       "    var fig = event.data.fig;\n",
       "    if (event.target !== this) {\n",
       "        // Ignore bubbled events from children.\n",
       "        return;\n",
       "    }\n",
       "    fig.close_ws(fig, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (el) {\n",
       "    // this is important to make the div 'focusable\n",
       "    el.setAttribute('tabindex', 0);\n",
       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
       "    // off when our div gets focus\n",
       "\n",
       "    // location in version 3\n",
       "    if (IPython.notebook.keyboard_manager) {\n",
       "        IPython.notebook.keyboard_manager.register_events(el);\n",
       "    } else {\n",
       "        // location in version 2\n",
       "        IPython.keyboard_manager.register_events(el);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (event, _name) {\n",
       "    // Check for shift+enter\n",
       "    if (event.shiftKey && event.which === 13) {\n",
       "        this.canvas_div.blur();\n",
       "        // select the cell after this one\n",
       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
       "        IPython.notebook.select(index + 1);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    fig.ondownload(fig, null);\n",
       "};\n",
       "\n",
       "mpl.find_output_cell = function (html_output) {\n",
       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
       "    // IPython event is triggered only after the cells have been serialised, which for\n",
       "    // our purposes (turning an active figure into a static one), is too late.\n",
       "    var cells = IPython.notebook.get_cells();\n",
       "    var ncells = cells.length;\n",
       "    for (var i = 0; i < ncells; i++) {\n",
       "        var cell = cells[i];\n",
       "        if (cell.cell_type === 'code') {\n",
       "            for (var j = 0; j < cell.output_area.outputs.length; j++) {\n",
       "                var data = cell.output_area.outputs[j];\n",
       "                if (data.data) {\n",
       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
       "                    data = data.data;\n",
       "                }\n",
       "                if (data['text/html'] === html_output) {\n",
       "                    return [cell, data, j];\n",
       "                }\n",
       "            }\n",
       "        }\n",
       "    }\n",
       "};\n",
       "\n",
       "// Register the function which deals with the matplotlib target/channel.\n",
       "// The kernel may be null if the page has been refreshed.\n",
       "if (IPython.notebook.kernel !== null) {\n",
       "    IPython.notebook.kernel.comm_manager.register_target(\n",
       "        'matplotlib',\n",
       "        mpl.mpl_figure_comm\n",
       "    );\n",
       "}\n"
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAgAElEQVR4Xu3dIW4QUQCE4fQAFQ2EoElwIMBxHqpIkFjugcBV4LkBqhdAoLBUoVFwAEzTZPInu58mGUGmZfZ7b5eLu+unP16/uPr16vuzt09+f/v08/m72w+XX26+Pr77+Ojz3z/vX1698ef+fvTDz4ffD34/+vfBv4/2wXH20YUBaOAa+Aa+gW/gG/gGvoF/roFvABJOwkvAnQA4AXEC5ATMCeDJTkANQAPQADQADUAD0AA0AA1AA/BcBOqOoyNwR+COwB2BOwJ3BO4I/GxH4ASQABJAAkgACSABJIAEkAASQG85HectJ8JLeAkv4SW8hJfw/i+8BJAAEkACSAAJIAEkgASQABJAAkgAfQfTd0B9B9V3YJ0gOEE48gkCASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASEkJCSAgJISEkJxMSA9AANAANQAPQADQADUAD0AC8dULkhOgoJ0TuALoD6A6gBxwPOB5wPOB4wPGAc7IHHAPQADQADUAD0AA0AA1AA9AA9BII4kf8RyF+d5jcYTryHSb91m/9fviH3gkgASSABJAAEkACSAAJIAEkgASQABJAn4HxGRifgSGMhPHIwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISEkBASQkJICMnJhMQANAANQAPQADQADUAD0AA0AH0I+tIJ0VFOiNwBdAfQHUAPOB5wPOB4wPGA4wHnZA84BqABaAAagAagAWgAGoAGoAHoJRAvgSD+oxC/O0zuMB35DpN+67d++xA0wSAYBINgEIyTCYYBaAAagAagAWgAGoAGoAFoAHpJw0saN05w7vcZL3cA3QF0B9AdQA9QHqA8QHmA8gB1sgcoA9AANAANQAPQADQADUAD0AD0EoiXQLwE4gjhfkcI7mC5g+UO1sPvYPn58fNT/vwQQAJIAAkgASSABJAAEkACSAAJIAEkgATQ/wXs/wImdISuFLp1/wggASSABJAAEkACSAAJIAEkgASQABJAAkgACeBaYOQTxlIYCSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIKEjdKXQrftHAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgA1wIjnzCWwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJHaErhW7dPwJIAAkgASSABJAAEkACSAAJIAEkgASQABJAArgWGPmEsRRGAkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSOgIXSl06/4RQAJIAAkgASSABJAAEkACSAAJIAEkgASQABLAtcDIJ4ylMBJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEkBCR+hKoVv3jwASQAJIAAkgASSABJAAEkACSAAJIAEkgASQAK4FRj5hLIWRABJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEjpCVwrdun8EkAASQAJIAAkgASSABJAAEkACSAAJIAEkgARwLTDyCWMpjASQABJAAkgACSABJIAEkAASQAJIAAkgASSABJDQEbpS6Nb9I4AEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgGuBkU8YS2EkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhI7QlUK37h8BJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAFcC4x8wlgKIwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASR0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoSuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df8IIAEkgASQABJAAkgACSABJIAEkAASQAJIAAngWmDkE8ZSGAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACSChI3Sl0K37RwAJIAEkgASQABJAAkgACSABJIAEkAASQAJIANcCI58wlsJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACR2hK4Vu3T8CSAAJIAEkgASQABJAAkgACSABJIAEkAASQAK4Fhj5hLEURgJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkjoCF0pdOv+EUACSAAJIAEkgASQABJAAkgACSABJIAEkAASwLXAyCeMpTASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABJAQkfoSqFb948AEkACSAAJIAEkgASQABJAAkgACSABJIAEkACuBUY+YSyFkQASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABI6QlcK3bp/BJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEcC0w8gljKYwEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQ0BG6UujW/SOABJAAEkACSAAJIAEkgASQABJAAkgACSABJIBrgZFPGEthJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISO0JVCt+4fASSABJAAEkACSAAJIAEkgASQABJAAkgACSABXAuMfMJYCiMBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkdISuFLp1/wggASSABJAAEkACSAAJIAEkgASQABJAAkgACeBaYOQTxlIYCSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIKEjdKXQrftHAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgA1wIjnzCWwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJHaErhW7dPwJIAAkgASSABJAAEkACSAAJIAEkgASQABJAArgWGPmEsRRGAkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSOgIXSl06/4RQAJIAAkgASSABJAAEkACSAAJIAEkgASQABLAtcDIJ4ylMBJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEkBCR+hKoVv3jwASQAJIAAkgASSABJAAEkACSAAJIAEkgASQAK4FRj5hLIWRABJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEjpCVwrdun8EkAASQAJIAAkgASSABJAAEkACSAAJIAEkgARwLTDyCWMpjASQABJAAkgACSABJIAEkAASQAJIAAkgASSABJDQEbpS6Nb9I4AEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgGuBkU8YS2EkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhI7QlUK37h8BJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAFcC4x8wlgKIwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASR0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoSuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df8IIAEkgASQABJAAkgACSABJIAEkAASQAJIAAngWmDkE8ZSGAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACSChI3Sl0K37RwAJIAEkgASQABJAAkgACSABJIAEkAASQAJIANcCI58wlsJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACR2hK4Vu3T8CSAAJIAEkgASQABJAAkgACSABJIAEkAASQAK4Fhj5hLEURgJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkjoCF0pdOv+EUACSAAJIAEkgASQABJAAkgACSABJIAEkAASwLXAyCeMpTASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABJAQkfoSqFb948AEkACSAAJIAEkgASQABJAAkgACSABJIAEkACuBUY+YSyFkQASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABI6QlcK3bp/BJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEcC0w8gljKYwEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQ0BG6UujW/SOABJAAEkACSAAJIAEkgASQABJAAkgACSABJIBrgZFPGEthJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISO0JVCt+4fASSABJAAEkACSAAJIAEkgASQABJAAkgACSABXAuMfMJYCiMBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkdISuFLp1/wggASSABJAAEkACSAAJIAEkgASQABJAAkgACeBaYOQTxlIYCSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIKEjdKXQrftHAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgA1wIjnzCWwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJHaErhW7dPwJIAAkgASSABJAAEkACSAAJIAEkgASQABJAArgWGPmEsRRGAkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSOgIXSl06/4RQAJIAAkgASSABJAAEkACSAAJIAEkgASQABLAtcDIJ4ylMBJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEkBCR+hKoVv3jwASQAJIAAkgASSABJAAEkACSAAJIAEkgASQAK4FRj5hLIWRABJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEjpCVwrdun8EkAASQAJIAAkgASSABJAAEkACSAAJIAEkgARwLTDyCWMpjASQABJAAkgACSABJIAEkAASQAJIAAkgASSABJDQEbpS6Nb9I4AEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgGuBkU8YS2EkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhI7QlUK37h8BJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAFcC4x8wlgKIwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASR0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoSuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df8IIAEkgASQABJAAkgACSABJIAEkAASQAJIAAngWmDkE8ZSGAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACSChI3Sl0K37RwAJIAEkgASQABJAAkgACSABJIAEkAASQAJIANcCI58wlsJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACR2hK4Vu3T8CSAAJIAEkgASQABJAAkgACSABJIAEkAASQAK4Fhj5hLEURgJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkjoCF0pdOv+EUACSAAJIAEkgASQABJAAkgACSABJIAEkAASwLXAyCeMpTASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABJAQkfoSqFb948AEkACSAAJIAEkgASQABJAAkgACSABJIAEkACuBUY+YSyFkQASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABI6QlcK3bp/BJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEcC0w8gljKYwEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQ0BG6UujW/SOABJAAEkACSAAJIAEkgASQABJAAkgACSABJIBrgZFPGEthJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISO0JVCt+4fASSABJAAEkACSAAJIAEkgASQABJAAkgACSABXAuMfMJYCiMBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkdISuFLp1/wggASSABJAAEkACSAAJIAEkgASQABJAAkgACeBaYOQTxlIYCSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIKEjdKXQrftHAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgA1wIjnzCWwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJHaErhW7dPwJIAAkgASSABJAAEkACSAAJIAEkgASQABJAArgWGPmEsRRGAkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSOgIXSl06/4RQAJIAAkgASSABJAAEkACSAAJIAEkgASQABLAtcDIJ4ylMBJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEkBCR+hKoVv3jwASQAJIAAkgASSABJAAEkACSAAJIAEkgASQAK4FRj5hLIWRABJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEjpCVwrdun8EkAASQAJIAAkgASSABJAAEkACSAAJIAEkgARwLTDyCWMpjASQABJAAkgACSABJIAEkAASQAJIAAkgASSABJDQEbpS6Nb9I4AEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgGuBkU8YS2EkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhI7QlUK37h8BJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAFcC4x8wlgKIwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASR0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoSuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df8IIAEkgASQABJAAkgACSABJIAEkAASQAJIAAngWmDkE8ZSGAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACSChI3Sl0K37RwAJIAEkgASQABJAAkgACSABJIAEkAASQAJIANcCI58wlsJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACR2hK4Vu3T8CSAAJIAEkgASQABJAAkgACSABJIAEkAASQAK4Fhj5hLEURgJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkjoCF0pdOv+EUACSAAJIAEkgASQABJAAkgACSABJIAEkAASwLXAyCeMpTASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABJAQkfoSqFb948AEkACSAAJIAEkgASQABJAAkgACSABJIAEkACuBUY+YSyFkQASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABI6QlcK3bp/BJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEcC0w8gljKYwEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQ0BG6UujW/SOABJAAEkACSAAJIAEkgASQABJAAkgACSABJIBrgZFPGEthJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISO0JVCt+4fASSABJAAEkACSAAJIAEkgASQABJAAkgACSABXAuMfMJYCiMBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkdISuFLp1/wggASSABJAAEkACSAAJIAEkgASQABJAAkgACeBaYOQTxlIYCSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIKEjdKXQrftHAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgA1wIjnzCWwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJHaErhW7dPwJIAAkgASSABJAAEkACSAAJIAEkgASQABJAArgWGPmEsRRGAkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSOgIXSl06/4RQAJIAAkgASSABJAAEkACSAAJIAEkgASQABLAtcDIJ4ylMBJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEkBCR+hKoVv3jwASQAJIAAkgASSABJAAEkACSAAJIAEkgASQAK4FRj5hLIWRABJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEjpCVwrdun8EkAASQAJIAAkgASSABJAAEkACSAAJIAEkgARwLTDyCWMpjASQABJAAkgACSABJIAEkAASQAJIAAkgASSABJDQEbpS6Nb9I4AEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgGuBkU8YS2EkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhI7QlUK37h8BJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAFcC4x8wlgKIwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASR0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoatP3xsAAAGxSURBVCuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df/+AQgPDqTcf0ajAAAAAElFTkSuQmCC\" width=\"640\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.2024434378836304 za 70 različnih odjemalcev\n"
     ]
    }
   ],
   "source": [
    "s = monotonic()\n",
    "def uas(normalize=True, minrepr=0):\n",
    "    odjemalci = {}\n",
    "    for sha1, torrent in torrents.items():\n",
    "        odjemalec = torrent.dict.get(b'source').get(b'v')\n",
    "        if normalize and odjemalec is not None:\n",
    "            if b'/' in odjemalec:\n",
    "                odjemalec = odjemalec.split(b'/')[0]\n",
    "            elif b' (' in odjemalec:\n",
    "                odjemalec = odjemalec.split(b' (')[0]\n",
    "            else:\n",
    "                odjemalec = odjemalec.split(b' ')[0]\n",
    "            odjemalec = odjemalec.replace(b'\\xc2\\xb5', b'\\xce\\xbc').decode()\n",
    "        if odjemalec not in odjemalci.keys():\n",
    "            odjemalci[odjemalec] = 1\n",
    "        else:\n",
    "            odjemalci[odjemalec] += 1\n",
    "    trueodj = {\"ostali\": 0}\n",
    "    count = 0\n",
    "    for key, value in odjemalci.items():\n",
    "        count += 1\n",
    "        if value < minrepr:\n",
    "            trueodj[\"ostali\"] += value\n",
    "        else:\n",
    "            trueodj[key] = value\n",
    "    trueodj = [(v, k) for k, v in trueodj.items()]\n",
    "    return trueodj, count\n",
    "odjemalci, count = uas(True, minrepr=0.01*len(torrents))\n",
    "odjemalci = sorted(odjemalci, reverse=False)\n",
    "from matplotlib import pyplot\n",
    "%matplotlib notebook\n",
    "fig, axes = pyplot.subplots()\n",
    "from math import log\n",
    "# axes.pie([log(sights) if sights else 0 for sights, name in odjemalci], labels=[name for sights, name in odjemalci])\n",
    "axes.barh([name if name is not None else \"neznan\" for sights, name in odjemalci], [sights for sights, name in odjemalci])\n",
    "axes.set_title(\"log skala odjemalcev\")\n",
    "pyplot.xscale(\"log\")\n",
    "fig.show()\n",
    "print(monotonic()-s, \"za\", count, \"različnih odjemalcev\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "52de34d6",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.26901687192730606 s 41\n"
     ]
    },
    {
     "data": {
      "application/javascript": [
       "/* Put everything inside the global mpl namespace */\n",
       "/* global mpl */\n",
       "window.mpl = {};\n",
       "\n",
       "mpl.get_websocket_type = function () {\n",
       "    if (typeof WebSocket !== 'undefined') {\n",
       "        return WebSocket;\n",
       "    } else if (typeof MozWebSocket !== 'undefined') {\n",
       "        return MozWebSocket;\n",
       "    } else {\n",
       "        alert(\n",
       "            'Your browser does not have WebSocket support. ' +\n",
       "                'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
       "                'Firefox 4 and 5 are also supported but you ' +\n",
       "                'have to enable WebSockets in about:config.'\n",
       "        );\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure = function (figure_id, websocket, ondownload, parent_element) {\n",
       "    this.id = figure_id;\n",
       "\n",
       "    this.ws = websocket;\n",
       "\n",
       "    this.supports_binary = this.ws.binaryType !== undefined;\n",
       "\n",
       "    if (!this.supports_binary) {\n",
       "        var warnings = document.getElementById('mpl-warnings');\n",
       "        if (warnings) {\n",
       "            warnings.style.display = 'block';\n",
       "            warnings.textContent =\n",
       "                'This browser does not support binary websocket messages. ' +\n",
       "                'Performance may be slow.';\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.imageObj = new Image();\n",
       "\n",
       "    this.context = undefined;\n",
       "    this.message = undefined;\n",
       "    this.canvas = undefined;\n",
       "    this.rubberband_canvas = undefined;\n",
       "    this.rubberband_context = undefined;\n",
       "    this.format_dropdown = undefined;\n",
       "\n",
       "    this.image_mode = 'full';\n",
       "\n",
       "    this.root = document.createElement('div');\n",
       "    this.root.setAttribute('style', 'display: inline-block');\n",
       "    this._root_extra_style(this.root);\n",
       "\n",
       "    parent_element.appendChild(this.root);\n",
       "\n",
       "    this._init_header(this);\n",
       "    this._init_canvas(this);\n",
       "    this._init_toolbar(this);\n",
       "\n",
       "    var fig = this;\n",
       "\n",
       "    this.waiting = false;\n",
       "\n",
       "    this.ws.onopen = function () {\n",
       "        fig.send_message('supports_binary', { value: fig.supports_binary });\n",
       "        fig.send_message('send_image_mode', {});\n",
       "        if (fig.ratio !== 1) {\n",
       "            fig.send_message('set_device_pixel_ratio', {\n",
       "                device_pixel_ratio: fig.ratio,\n",
       "            });\n",
       "        }\n",
       "        fig.send_message('refresh', {});\n",
       "    };\n",
       "\n",
       "    this.imageObj.onload = function () {\n",
       "        if (fig.image_mode === 'full') {\n",
       "            // Full images could contain transparency (where diff images\n",
       "            // almost always do), so we need to clear the canvas so that\n",
       "            // there is no ghosting.\n",
       "            fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
       "        }\n",
       "        fig.context.drawImage(fig.imageObj, 0, 0);\n",
       "    };\n",
       "\n",
       "    this.imageObj.onunload = function () {\n",
       "        fig.ws.close();\n",
       "    };\n",
       "\n",
       "    this.ws.onmessage = this._make_on_message_function(this);\n",
       "\n",
       "    this.ondownload = ondownload;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_header = function () {\n",
       "    var titlebar = document.createElement('div');\n",
       "    titlebar.classList =\n",
       "        'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n",
       "    var titletext = document.createElement('div');\n",
       "    titletext.classList = 'ui-dialog-title';\n",
       "    titletext.setAttribute(\n",
       "        'style',\n",
       "        'width: 100%; text-align: center; padding: 3px;'\n",
       "    );\n",
       "    titlebar.appendChild(titletext);\n",
       "    this.root.appendChild(titlebar);\n",
       "    this.header = titletext;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._init_canvas = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var canvas_div = (this.canvas_div = document.createElement('div'));\n",
       "    canvas_div.setAttribute('tabindex', '0');\n",
       "    canvas_div.setAttribute(\n",
       "        'style',\n",
       "        'border: 1px solid #ddd;' +\n",
       "            'box-sizing: content-box;' +\n",
       "            'clear: both;' +\n",
       "            'min-height: 1px;' +\n",
       "            'min-width: 1px;' +\n",
       "            'outline: 0;' +\n",
       "            'overflow: hidden;' +\n",
       "            'position: relative;' +\n",
       "            'resize: both;' +\n",
       "            'z-index: 2;'\n",
       "    );\n",
       "\n",
       "    function on_keyboard_event_closure(name) {\n",
       "        return function (event) {\n",
       "            return fig.key_event(event, name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'keydown',\n",
       "        on_keyboard_event_closure('key_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'keyup',\n",
       "        on_keyboard_event_closure('key_release')\n",
       "    );\n",
       "\n",
       "    this._canvas_extra_style(canvas_div);\n",
       "    this.root.appendChild(canvas_div);\n",
       "\n",
       "    var canvas = (this.canvas = document.createElement('canvas'));\n",
       "    canvas.classList.add('mpl-canvas');\n",
       "    canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: relative;' +\n",
       "            'z-index: 0;'\n",
       "    );\n",
       "\n",
       "    this.context = canvas.getContext('2d');\n",
       "\n",
       "    var backingStore =\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        this.context.webkitBackingStorePixelRatio ||\n",
       "        this.context.mozBackingStorePixelRatio ||\n",
       "        this.context.msBackingStorePixelRatio ||\n",
       "        this.context.oBackingStorePixelRatio ||\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        1;\n",
       "\n",
       "    this.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
       "\n",
       "    var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n",
       "        'canvas'\n",
       "    ));\n",
       "    rubberband_canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'left: 0;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: absolute;' +\n",
       "            'top: 0;' +\n",
       "            'z-index: 1;'\n",
       "    );\n",
       "\n",
       "    // Apply a ponyfill if ResizeObserver is not implemented by browser.\n",
       "    if (this.ResizeObserver === undefined) {\n",
       "        if (window.ResizeObserver !== undefined) {\n",
       "            this.ResizeObserver = window.ResizeObserver;\n",
       "        } else {\n",
       "            var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n",
       "            this.ResizeObserver = obs.ResizeObserver;\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n",
       "        var nentries = entries.length;\n",
       "        for (var i = 0; i < nentries; i++) {\n",
       "            var entry = entries[i];\n",
       "            var width, height;\n",
       "            if (entry.contentBoxSize) {\n",
       "                if (entry.contentBoxSize instanceof Array) {\n",
       "                    // Chrome 84 implements new version of spec.\n",
       "                    width = entry.contentBoxSize[0].inlineSize;\n",
       "                    height = entry.contentBoxSize[0].blockSize;\n",
       "                } else {\n",
       "                    // Firefox implements old version of spec.\n",
       "                    width = entry.contentBoxSize.inlineSize;\n",
       "                    height = entry.contentBoxSize.blockSize;\n",
       "                }\n",
       "            } else {\n",
       "                // Chrome <84 implements even older version of spec.\n",
       "                width = entry.contentRect.width;\n",
       "                height = entry.contentRect.height;\n",
       "            }\n",
       "\n",
       "            // Keep the size of the canvas and rubber band canvas in sync with\n",
       "            // the canvas container.\n",
       "            if (entry.devicePixelContentBoxSize) {\n",
       "                // Chrome 84 implements new version of spec.\n",
       "                canvas.setAttribute(\n",
       "                    'width',\n",
       "                    entry.devicePixelContentBoxSize[0].inlineSize\n",
       "                );\n",
       "                canvas.setAttribute(\n",
       "                    'height',\n",
       "                    entry.devicePixelContentBoxSize[0].blockSize\n",
       "                );\n",
       "            } else {\n",
       "                canvas.setAttribute('width', width * fig.ratio);\n",
       "                canvas.setAttribute('height', height * fig.ratio);\n",
       "            }\n",
       "            /* This rescales the canvas back to display pixels, so that it\n",
       "             * appears correct on HiDPI screens. */\n",
       "            canvas.style.width = width + 'px';\n",
       "            canvas.style.height = height + 'px';\n",
       "\n",
       "            rubberband_canvas.setAttribute('width', width);\n",
       "            rubberband_canvas.setAttribute('height', height);\n",
       "\n",
       "            // And update the size in Python. We ignore the initial 0/0 size\n",
       "            // that occurs as the element is placed into the DOM, which should\n",
       "            // otherwise not happen due to the minimum size styling.\n",
       "            if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    this.resizeObserverInstance.observe(canvas_div);\n",
       "\n",
       "    function on_mouse_event_closure(name) {\n",
       "        /* User Agent sniffing is bad, but WebKit is busted:\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=144526\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=181818\n",
       "         * The worst that happens here is that they get an extra browser\n",
       "         * selection when dragging, if this check fails to catch them.\n",
       "         */\n",
       "        var UA = navigator.userAgent;\n",
       "        var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n",
       "        if(isWebKit) {\n",
       "            return function (event) {\n",
       "                /* This prevents the web browser from automatically changing to\n",
       "                 * the text insertion cursor when the button is pressed. We\n",
       "                 * want to control all of the cursor setting manually through\n",
       "                 * the 'cursor' event from matplotlib */\n",
       "                event.preventDefault()\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        } else {\n",
       "            return function (event) {\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        }\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mousedown',\n",
       "        on_mouse_event_closure('button_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseup',\n",
       "        on_mouse_event_closure('button_release')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'dblclick',\n",
       "        on_mouse_event_closure('dblclick')\n",
       "    );\n",
       "    // Throttle sequential mouse events to 1 every 20ms.\n",
       "    canvas_div.addEventListener(\n",
       "        'mousemove',\n",
       "        on_mouse_event_closure('motion_notify')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseenter',\n",
       "        on_mouse_event_closure('figure_enter')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseleave',\n",
       "        on_mouse_event_closure('figure_leave')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener('wheel', function (event) {\n",
       "        if (event.deltaY < 0) {\n",
       "            event.step = 1;\n",
       "        } else {\n",
       "            event.step = -1;\n",
       "        }\n",
       "        on_mouse_event_closure('scroll')(event);\n",
       "    });\n",
       "\n",
       "    canvas_div.appendChild(canvas);\n",
       "    canvas_div.appendChild(rubberband_canvas);\n",
       "\n",
       "    this.rubberband_context = rubberband_canvas.getContext('2d');\n",
       "    this.rubberband_context.strokeStyle = '#000000';\n",
       "\n",
       "    this._resize_canvas = function (width, height, forward) {\n",
       "        if (forward) {\n",
       "            canvas_div.style.width = width + 'px';\n",
       "            canvas_div.style.height = height + 'px';\n",
       "        }\n",
       "    };\n",
       "\n",
       "    // Disable right mouse context menu.\n",
       "    canvas_div.addEventListener('contextmenu', function (_e) {\n",
       "        event.preventDefault();\n",
       "        return false;\n",
       "    });\n",
       "\n",
       "    function set_focus() {\n",
       "        canvas.focus();\n",
       "        canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    window.setTimeout(set_focus, 100);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'mpl-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'mpl-button-group';\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'mpl-button-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        var button = (fig.buttons[name] = document.createElement('button'));\n",
       "        button.classList = 'mpl-widget';\n",
       "        button.setAttribute('role', 'button');\n",
       "        button.setAttribute('aria-disabled', 'false');\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "\n",
       "        var icon_img = document.createElement('img');\n",
       "        icon_img.src = '_images/' + image + '.png';\n",
       "        icon_img.srcset = '_images/' + image + '_large.png 2x';\n",
       "        icon_img.alt = tooltip;\n",
       "        button.appendChild(icon_img);\n",
       "\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    var fmt_picker = document.createElement('select');\n",
       "    fmt_picker.classList = 'mpl-widget';\n",
       "    toolbar.appendChild(fmt_picker);\n",
       "    this.format_dropdown = fmt_picker;\n",
       "\n",
       "    for (var ind in mpl.extensions) {\n",
       "        var fmt = mpl.extensions[ind];\n",
       "        var option = document.createElement('option');\n",
       "        option.selected = fmt === mpl.default_extension;\n",
       "        option.innerHTML = fmt;\n",
       "        fmt_picker.appendChild(option);\n",
       "    }\n",
       "\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.request_resize = function (x_pixels, y_pixels) {\n",
       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
       "    // which will in turn request a refresh of the image.\n",
       "    this.send_message('resize', { width: x_pixels, height: y_pixels });\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_message = function (type, properties) {\n",
       "    properties['type'] = type;\n",
       "    properties['figure_id'] = this.id;\n",
       "    this.ws.send(JSON.stringify(properties));\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_draw_message = function () {\n",
       "    if (!this.waiting) {\n",
       "        this.waiting = true;\n",
       "        this.ws.send(JSON.stringify({ type: 'draw', figure_id: this.id }));\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    var format_dropdown = fig.format_dropdown;\n",
       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
       "    fig.ondownload(fig, format);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_resize = function (fig, msg) {\n",
       "    var size = msg['size'];\n",
       "    if (size[0] !== fig.canvas.width || size[1] !== fig.canvas.height) {\n",
       "        fig._resize_canvas(size[0], size[1], msg['forward']);\n",
       "        fig.send_message('refresh', {});\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_rubberband = function (fig, msg) {\n",
       "    var x0 = msg['x0'] / fig.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n",
       "    var x1 = msg['x1'] / fig.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / fig.ratio;\n",
       "    x0 = Math.floor(x0) + 0.5;\n",
       "    y0 = Math.floor(y0) + 0.5;\n",
       "    x1 = Math.floor(x1) + 0.5;\n",
       "    y1 = Math.floor(y1) + 0.5;\n",
       "    var min_x = Math.min(x0, x1);\n",
       "    var min_y = Math.min(y0, y1);\n",
       "    var width = Math.abs(x1 - x0);\n",
       "    var height = Math.abs(y1 - y0);\n",
       "\n",
       "    fig.rubberband_context.clearRect(\n",
       "        0,\n",
       "        0,\n",
       "        fig.canvas.width / fig.ratio,\n",
       "        fig.canvas.height / fig.ratio\n",
       "    );\n",
       "\n",
       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_figure_label = function (fig, msg) {\n",
       "    // Updates the figure title.\n",
       "    fig.header.textContent = msg['label'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_cursor = function (fig, msg) {\n",
       "    fig.canvas_div.style.cursor = msg['cursor'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_message = function (fig, msg) {\n",
       "    fig.message.textContent = msg['message'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_draw = function (fig, _msg) {\n",
       "    // Request the server to send over a new figure.\n",
       "    fig.send_draw_message();\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_image_mode = function (fig, msg) {\n",
       "    fig.image_mode = msg['mode'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n",
       "    for (var key in msg) {\n",
       "        if (!(key in fig.buttons)) {\n",
       "            continue;\n",
       "        }\n",
       "        fig.buttons[key].disabled = !msg[key];\n",
       "        fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n",
       "    if (msg['mode'] === 'PAN') {\n",
       "        fig.buttons['Pan'].classList.add('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    } else if (msg['mode'] === 'ZOOM') {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.add('active');\n",
       "    } else {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Called whenever the canvas gets updated.\n",
       "    this.send_message('ack', {});\n",
       "};\n",
       "\n",
       "// A function to construct a web socket function for onmessage handling.\n",
       "// Called in the figure constructor.\n",
       "mpl.figure.prototype._make_on_message_function = function (fig) {\n",
       "    return function socket_on_message(evt) {\n",
       "        if (evt.data instanceof Blob) {\n",
       "            var img = evt.data;\n",
       "            if (img.type !== 'image/png') {\n",
       "                /* FIXME: We get \"Resource interpreted as Image but\n",
       "                 * transferred with MIME type text/plain:\" errors on\n",
       "                 * Chrome.  But how to set the MIME type?  It doesn't seem\n",
       "                 * to be part of the websocket stream */\n",
       "                img.type = 'image/png';\n",
       "            }\n",
       "\n",
       "            /* Free the memory for the previous frames */\n",
       "            if (fig.imageObj.src) {\n",
       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
       "                    fig.imageObj.src\n",
       "                );\n",
       "            }\n",
       "\n",
       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
       "                img\n",
       "            );\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        } else if (\n",
       "            typeof evt.data === 'string' &&\n",
       "            evt.data.slice(0, 21) === 'data:image/png;base64'\n",
       "        ) {\n",
       "            fig.imageObj.src = evt.data;\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        var msg = JSON.parse(evt.data);\n",
       "        var msg_type = msg['type'];\n",
       "\n",
       "        // Call the  \"handle_{type}\" callback, which takes\n",
       "        // the figure and JSON message as its only arguments.\n",
       "        try {\n",
       "            var callback = fig['handle_' + msg_type];\n",
       "        } catch (e) {\n",
       "            console.log(\n",
       "                \"No handler for the '\" + msg_type + \"' message type: \",\n",
       "                msg\n",
       "            );\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        if (callback) {\n",
       "            try {\n",
       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
       "                callback(fig, msg);\n",
       "            } catch (e) {\n",
       "                console.log(\n",
       "                    \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n",
       "                    e,\n",
       "                    e.stack,\n",
       "                    msg\n",
       "                );\n",
       "            }\n",
       "        }\n",
       "    };\n",
       "};\n",
       "\n",
       "\n",
       "/*\n",
       " * return a copy of an object with only non-object keys\n",
       " * we need this to avoid circular references\n",
       " * https://stackoverflow.com/a/24161582/3208463\n",
       " */\n",
       "function simpleKeys(original) {\n",
       "    return Object.keys(original).reduce(function (obj, key) {\n",
       "        if (typeof original[key] !== 'object') {\n",
       "            obj[key] = original[key];\n",
       "        }\n",
       "        return obj;\n",
       "    }, {});\n",
       "}\n",
       "\n",
       "mpl.figure.prototype.mouse_event = function (event, name) {\n",
       "    if (name === 'button_press') {\n",
       "        this.canvas.focus();\n",
       "        this.canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    // from https://stackoverflow.com/q/1114465\n",
       "    var boundingRect = this.canvas.getBoundingClientRect();\n",
       "    var x = (event.clientX - boundingRect.left) * this.ratio;\n",
       "    var y = (event.clientY - boundingRect.top) * this.ratio;\n",
       "\n",
       "    this.send_message(name, {\n",
       "        x: x,\n",
       "        y: y,\n",
       "        button: event.button,\n",
       "        step: event.step,\n",
       "        guiEvent: simpleKeys(event),\n",
       "    });\n",
       "\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (_event, _name) {\n",
       "    // Handle any extra behaviour associated with a key event\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.key_event = function (event, name) {\n",
       "    // Prevent repeat events\n",
       "    if (name === 'key_press') {\n",
       "        if (event.key === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.key;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.key !== 'Control') {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    else if (event.altKey && event.key !== 'Alt') {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    else if (event.shiftKey && event.key !== 'Shift') {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k' + event.key;\n",
       "\n",
       "    this._key_event_extra(event, name);\n",
       "\n",
       "    this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onclick = function (name) {\n",
       "    if (name === 'download') {\n",
       "        this.handle_save(this, null);\n",
       "    } else {\n",
       "        this.send_message('toolbar_button', { name: name });\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n",
       "    this.message.textContent = tooltip;\n",
       "};\n",
       "\n",
       "///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n",
       "// prettier-ignore\n",
       "var _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\n",
       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n",
       "\n",
       "mpl.default_extension = \"png\";/* global mpl */\n",
       "\n",
       "var comm_websocket_adapter = function (comm) {\n",
       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
       "    // object with the appropriate methods. Currently this is a non binary\n",
       "    // socket, so there is still some room for performance tuning.\n",
       "    var ws = {};\n",
       "\n",
       "    ws.binaryType = comm.kernel.ws.binaryType;\n",
       "    ws.readyState = comm.kernel.ws.readyState;\n",
       "    function updateReadyState(_event) {\n",
       "        if (comm.kernel.ws) {\n",
       "            ws.readyState = comm.kernel.ws.readyState;\n",
       "        } else {\n",
       "            ws.readyState = 3; // Closed state.\n",
       "        }\n",
       "    }\n",
       "    comm.kernel.ws.addEventListener('open', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('close', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('error', updateReadyState);\n",
       "\n",
       "    ws.close = function () {\n",
       "        comm.close();\n",
       "    };\n",
       "    ws.send = function (m) {\n",
       "        //console.log('sending', m);\n",
       "        comm.send(m);\n",
       "    };\n",
       "    // Register the callback with on_msg.\n",
       "    comm.on_msg(function (msg) {\n",
       "        //console.log('receiving', msg['content']['data'], msg);\n",
       "        var data = msg['content']['data'];\n",
       "        if (data['blob'] !== undefined) {\n",
       "            data = {\n",
       "                data: new Blob(msg['buffers'], { type: data['blob'] }),\n",
       "            };\n",
       "        }\n",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(data);\n",
       "    });\n",
       "    return ws;\n",
       "};\n",
       "\n",
       "mpl.mpl_figure_comm = function (comm, msg) {\n",
       "    // This is the function which gets called when the mpl process\n",
       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
       "\n",
       "    var id = msg.content.data.id;\n",
       "    // Get hold of the div created by the display call when the Comm\n",
       "    // socket was opened in Python.\n",
       "    var element = document.getElementById(id);\n",
       "    var ws_proxy = comm_websocket_adapter(comm);\n",
       "\n",
       "    function ondownload(figure, _format) {\n",
       "        window.open(figure.canvas.toDataURL());\n",
       "    }\n",
       "\n",
       "    var fig = new mpl.figure(id, ws_proxy, ondownload, element);\n",
       "\n",
       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
       "    // web socket which is closed, not our websocket->open comm proxy.\n",
       "    ws_proxy.onopen();\n",
       "\n",
       "    fig.parent_element = element;\n",
       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "    fig.cell_info[0].output_area.element.on(\n",
       "        'cleared',\n",
       "        { fig: fig },\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / fig.ratio;\n",
       "    fig.cell_info[0].output_area.element.off(\n",
       "        'cleared',\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "    fig.resizeObserverInstance.unobserve(fig.canvas_div);\n",
       "\n",
       "    // Update the output cell to use the data from the current canvas.\n",
       "    fig.push_to_output();\n",
       "    var dataURL = fig.canvas.toDataURL();\n",
       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
       "    // the notebook keyboard shortcuts fail.\n",
       "    IPython.keyboard_manager.enable();\n",
       "    fig.parent_element.innerHTML =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "    fig.close_ws(fig, msg);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.close_ws = function (fig, msg) {\n",
       "    fig.send_message('closing', msg);\n",
       "    // fig.ws.close()\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.push_to_output = function (_remove_interactive) {\n",
       "    // Turn the data on the canvas into data in the output cell.\n",
       "    var width = this.canvas.width / this.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Tell IPython that the notebook contents must change.\n",
       "    IPython.notebook.set_dirty(true);\n",
       "    this.send_message('ack', {});\n",
       "    var fig = this;\n",
       "    // Wait a second, then push the new image to the DOM so\n",
       "    // that it is saved nicely (might be nice to debounce this).\n",
       "    setTimeout(function () {\n",
       "        fig.push_to_output();\n",
       "    }, 1000);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'btn-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'btn-group';\n",
       "    var button;\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'btn-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        button = fig.buttons[name] = document.createElement('button');\n",
       "        button.classList = 'btn btn-default';\n",
       "        button.href = '#';\n",
       "        button.title = name;\n",
       "        button.innerHTML = '<i class=\"fa ' + image + ' fa-lg\"></i>';\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    // Add the status bar.\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message pull-right';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "\n",
       "    // Add the close button to the window.\n",
       "    var buttongrp = document.createElement('div');\n",
       "    buttongrp.classList = 'btn-group inline pull-right';\n",
       "    button = document.createElement('button');\n",
       "    button.classList = 'btn btn-mini btn-primary';\n",
       "    button.href = '#';\n",
       "    button.title = 'Stop Interaction';\n",
       "    button.innerHTML = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\n",
       "    button.addEventListener('click', function (_evt) {\n",
       "        fig.handle_close(fig, {});\n",
       "    });\n",
       "    button.addEventListener(\n",
       "        'mouseover',\n",
       "        on_mouseover_closure('Stop Interaction')\n",
       "    );\n",
       "    buttongrp.appendChild(button);\n",
       "    var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n",
       "    titlebar.insertBefore(buttongrp, titlebar.firstChild);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._remove_fig_handler = function (event) {\n",
       "    var fig = event.data.fig;\n",
       "    if (event.target !== this) {\n",
       "        // Ignore bubbled events from children.\n",
       "        return;\n",
       "    }\n",
       "    fig.close_ws(fig, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (el) {\n",
       "    // this is important to make the div 'focusable\n",
       "    el.setAttribute('tabindex', 0);\n",
       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
       "    // off when our div gets focus\n",
       "\n",
       "    // location in version 3\n",
       "    if (IPython.notebook.keyboard_manager) {\n",
       "        IPython.notebook.keyboard_manager.register_events(el);\n",
       "    } else {\n",
       "        // location in version 2\n",
       "        IPython.keyboard_manager.register_events(el);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (event, _name) {\n",
       "    // Check for shift+enter\n",
       "    if (event.shiftKey && event.which === 13) {\n",
       "        this.canvas_div.blur();\n",
       "        // select the cell after this one\n",
       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
       "        IPython.notebook.select(index + 1);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    fig.ondownload(fig, null);\n",
       "};\n",
       "\n",
       "mpl.find_output_cell = function (html_output) {\n",
       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
       "    // IPython event is triggered only after the cells have been serialised, which for\n",
       "    // our purposes (turning an active figure into a static one), is too late.\n",
       "    var cells = IPython.notebook.get_cells();\n",
       "    var ncells = cells.length;\n",
       "    for (var i = 0; i < ncells; i++) {\n",
       "        var cell = cells[i];\n",
       "        if (cell.cell_type === 'code') {\n",
       "            for (var j = 0; j < cell.output_area.outputs.length; j++) {\n",
       "                var data = cell.output_area.outputs[j];\n",
       "                if (data.data) {\n",
       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
       "                    data = data.data;\n",
       "                }\n",
       "                if (data['text/html'] === html_output) {\n",
       "                    return [cell, data, j];\n",
       "                }\n",
       "            }\n",
       "        }\n",
       "    }\n",
       "};\n",
       "\n",
       "// Register the function which deals with the matplotlib target/channel.\n",
       "// The kernel may be null if the page has been refreshed.\n",
       "if (IPython.notebook.kernel !== null) {\n",
       "    IPython.notebook.kernel.comm_manager.register_target(\n",
       "        'matplotlib',\n",
       "        mpl.mpl_figure_comm\n",
       "    );\n",
       "}\n"
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAgAElEQVR4Xu3dMWoQUQCEYQNewELSWFmLnZVYphByAe3S5QYew6tYBaxtLQTvYCmCpQgewCYEhh92v1qYQiZx9ntv14vfjx7/+PDtzZdPV3+eXf99/uL726+37y+f3rx68u7q9ce7z79+3r305/5+9MPPh98Pfj/698G/j/bBcfbRhQFo4Br4Br6Bb+Ab+Aa+gX+ugW8AEk7CS8CdADgBcQLkBMwJ4MlOQA1AA9AANAANQAPQADQADUAD8FwE6o6jI3BH4I7AHYE7AncE7gj8bEfgBJAAEkACSAAJIAEkgASQABJAbzkd5y0nwkt4CS/hJbyEl/D+L7wEkAASQAJIAAkgASSABJAAEkACSAB9B9N3QH0H1XdgnSA4QTjyCQIBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABISQkJICAkhISQnExID0AA0AA1AA9AANAANQAPQALx1QuSE6CgnRO4AugPoDqAHHA84HnA84HjA8YBzsgccA9AANAANQAPQADQADUAD0AD0EgjiR/xHIX53mNxhOvIdJv3Wb/1++IfeCSABJIAEkAASQAJIAAkgASSABJAAEkCfgfEZGJ+BIYyE8cjCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhISQEBJCQkgIycmExAA0AA1AA9AANAANQAPQADQAfQj60gnRUU6I3AF0B9AdQA84HnA84HjA8YDjAedkDzgGoAFoABqABqABaAAagAagAeglEC+BIP6jEL87TO4wHfkOk37rt377EDTBIBgEg2AQjJMJhgFoABqABqABaAAagAagAWgAeknDSxo3TnDu9xkvdwDdAXQH0B1AD1AeoDxAeYDyAHWyBygD0AA0AA1AA9AANAANQAPQAPQSiJdAvATiCOF+RwjuYLmD5Q7Ww+9g+fnx81P+/BBAAkgACSABJIAEkAASQAJIAAkgASSABND/Bez/AiZ0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoSuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df8IIAEkgASQABJAAkgACSABJIAEkAASQAJIAAngWmDkE8ZSGAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACSChI3Sl0K37RwAJIAEkgASQABJAAkgACSABJIAEkAASQAJIANcCI58wlsJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACR2hK4Vu3T8CSAAJIAEkgASQABJAAkgACSABJIAEkAASQAK4Fhj5hLEURgJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkjoCF0pdOv+EUACSAAJIAEkgASQABJAAkgACSABJIAEkAASwLXAyCeMpTASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABJAQkfoSqFb948AEkACSAAJIAEkgASQABJAAkgACSABJIAEkACuBUY+YSyFkQASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABI6QlcK3bp/BJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEcC0w8gljKYwEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQ0BG6UujW/SOABJAAEkACSAAJIAEkgASQABJAAkgACSABJIBrgZFPGEthJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISO0JVCt+4fASSABJAAEkACSAAJIAEkgASQABJAAkgACSABXAuMfMJYCiMBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkdISuFLp1/wggASSABJAAEkACSAAJIAEkgASQABJAAkgACeBaYOQTxlIYCSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIKEjdKXQrftHAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgA1wIjnzCWwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJHaErhW7dPwJIAAkgASSABJAAEkACSAAJIAEkgASQABJAArgWGPmEsRRGAkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSOgIXSl06/4RQAJIAAkgASSABJAAEkACSAAJIAEkgASQABLAtcDIJ4ylMBJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEkBCR+hKoVv3jwASQAJIAAkgASSABJAAEkACSAAJIAEkgASQAK4FRj5hLIWRABJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEjpCVwrdun8EkAASQAJIAAkgASSABJAAEkACSAAJIAEkgARwLTDyCWMpjASQABJAAkgACSABJIAEkAASQAJIAAkgASSABJDQEbpS6Nb9I4AEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgGuBkU8YS2EkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhI7QlUK37h8BJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAFcC4x8wlgKIwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASR0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoSuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df8IIAEkgASQABJAAkgACSABJIAEkAASQAJIAAngWmDkE8ZSGAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACSChI3Sl0K37RwAJIAEkgASQABJAAkgACSABJIAEkAASQAJIANcCI58wlsJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACR2hK4Vu3T8CSAAJIAEkgASQABJAAkgACSABJIAEkAASQAK4Fhj5hLEURgJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkjoCF0pdOv+EUACSAAJIAEkgASQABJAAkgACSABJIAEkAASwLXAyCeMpTASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABJAQkfoSqFb948AEkACSAAJIAEkgASQABJAAkgACSABJIAEkACuBUY+YSyFkQASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABI6QlcK3bp/BJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEcC0w8gljKYwEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQ0BG6UujW/SOABJAAEkACSAAJIAEkgASQABJAAkgACSABJIBrgZFPGEthJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISO0JVCt+4fASSABJAAEkACSAAJIAEkgASQABJAAkgACSABXAuMfMJYCiMBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkdISuFLp1/wggASSABJAAEkACSAAJIAEkgASQABJAAkgACeBaYOQTxlIYCSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIKEjdKXQrftHAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgA1wIjnzCWwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJHaErhW7dPwJIAAkgASSABJAAEkACSAAJIAEkgASQABJAArgWGPmEsRRGAkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSOgIXSl06/4RQAJIAAkgASSABJAAEkACSAAJIAEkgASQABLAtcDIJ4ylMBJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEkBCR+hKoVv3jwASQAJIAAkgASSABJAAEkACSAAJIAEkgASQAK4FRj5hLIWRABJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEjpCVwrdun8EkAASQAJIAAkgASSABJAAEkACSAAJIAEkgARwLTDyCWMpjASQABJAAkgACSABJIAEkAASQAJIAAkgASSABJDQEbpS6Nb9I4AEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgGuBkU8YS2EkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhI7QlUK37h8BJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAFcC4x8wlgKIwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASR0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoSuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df8IIAEkgASQABJAAkgACSABJIAEkAASQAJIAAngWmDkE8ZSGAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACSChI3Sl0K37RwAJIAEkgASQABJAAkgACSABJIAEkAASQAJIANcCI58wlsJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACR2hK4Vu3T8CSAAJIAEkgASQABJAAkgACSABJIAEkAASQAK4Fhj5hLEURgJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkjoCF0pdOv+EUACSAAJIAEkgASQABJAAkgACSABJIAEkAASwLXAyCeMpTASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABJAQkfoSqFb948AEkACSAAJIAEkgASQABJAAkgACSABJIAEkACuBUY+YSyFkQASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABI6QlcK3bp/BJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEcC0w8gljKYwEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQ0BG6UujW/SOABJAAEkACSAAJIAEkgASQABJAAkgACSABJIBrgZFPGEthJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISO0JVCt+4fASSABJAAEkACSAAJIAEkgASQABJAAkgACSABXAuMfMJYCiMBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkdISuFLp1/wggASSABJAAEkACSAAJIAEkgASQABJAAkgACeBaYOQTxlIYCSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIKEjdKXQrftHAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgA1wIjnzCWwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJHaErhW7dPwJIAAkgASSABJAAEkACSAAJIAEkgASQABJAArgWGPmEsRRGAkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSOgIXSl06/4RQAJIAAkgASSABJAAEkACSAAJIAEkgASQABLAtcDIJ4ylMBJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEkBCR+hKoVv3jwASQAJIAAkgASSABJAAEkACSAAJIAEkgASQAK4FRj5hLIWRABJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEjpCVwrdun8EkAASQAJIAAkgASSABJAAEkACSAAJIAEkgARwLTDyCWMpjASQABJAAkgACSABJIAEkAASQAJIAAkgASSABJDQEbpS6Nb9I4AEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgGuBkU8YS2EkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhI7QlUK37h8BJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAFcC4x8wlgKIwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASR0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoSuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df8IIAEkgASQABJAAkgACSABJIAEkAASQAJIAAngWmDkE8ZSGAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACSChI3Sl0K37RwAJIAEkgASQABJAAkgACSABJIAEkAASQAJIANcCI58wlsJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACR2hK4Vu3T8CSAAJIAEkgASQABJAAkgACSABJIAEkAASQAK4Fhj5hLEURgJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkjoCF0pdOv+EUACSAAJIAEkgASQABJAAkgACSABJIAEkAASwLXAyCeMpTASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABJAQkfoSqFb948AEkACSAAJIAEkgASQABJAAkgACSABJIAEkACuBUY+YSyFkQASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABI6QlcK3bp/BJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEcC0w8gljKYwEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQ0BG6UujW/SOABJAAEkACSAAJIAEkgASQABJAAkgACSABJIBrgZFPGEthJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISO0JVCt+4fASSABJAAEkACSAAJIAEkgASQABJAAkgACSABXAuMfMJYCiMBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkdISuFLp1/wggASSABJAAEkACSAAJIAEkgASQABJAAkgACeBaYOQTxlIYCSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJIKEjdKXQrftHAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgA1wIjnzCWwkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSAAJHaErhW7dPwJIAAkgASSABJAAEkACSAAJIAEkgASQABJAArgWGPmEsRRGAkgACSABJIAEkAASQAJIAAkgASSABJAAEkACSOgIXSl06/4RQAJIAAkgASSABJAAEkACSAAJIAEkgASQABLAtcDIJ4ylMBJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEkBCR+hKoVv3jwASQAJIAAkgASSABJAAEkACSAAJIAEkgASQAK4FRj5hLIWRABJAAkgACSABJIAEkAASQAJIAAkgASSABJAAEjpCVwrdun8EkAASQAJIAAkgASSABJAAEkACSAAJIAEkgARwLTDyCWMpjASQABJAAkgACSABJIAEkAASQAJIAAkgASSABJDQEbpS6Nb9I4AEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgGuBkU8YS2EkgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAhI7QlUK37h8BJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAFcC4x8wlgKIwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgASR0hK4UunX/CCABJIAEkAASQAJIAAkgASSABJAAEkACSAAJ4Fpg5BPGUhgJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkgoSN0pdCt+0cACSABJIAEkAASQAJIAAkgASSABJAAEkACSADXAiOfMJbCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJIAAkdoSuFbt0/AkgACSABJIAEkAASQAJIAAkgASSABJAAEkACuBYY+YSxFEYCSAAJIAEkgASQABJAAkgACSABJIAEkAASQAJI6AhdKXTr/hFAAkgACSABJIAEkAASQAJIAAkgASSABJAAEsC1wMgnjKUwEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASQEJH6EqhW/ePABJAAkgACSABJIAEkAASQAJIAAkgASSABJAArgVGPmEshZEAEkACSAAJIAEkgASQABJAAkgACSABJIAEkAASOkJXCt26fwSQABJAAkgACSABJIAEkAASQAJIAAkgASSABHAtMPIJYymMBJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEkNARulLo1v0jgASQABJAAkgACSABJIAEkAASQAJIAAkgASSAa4GRTxhLYSSABJAAEkACSAAJIAEkgASQABJAAkgACSABJICEjtCVQrfuHwEkgASQABJAAkgACSABJIAEkAASQAJIAAkgAVwLjHzCWAojASSABJAAEkACSAAJIAEkgASQABJAAkgACSABJHSErhS6df8IIAEkgASQABJAAkgACSABJIAEkAASQAJIAAngWmDkE8ZSGAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACSChI3Sl0K37RwAJIAEkgASQABJAAkgACSABJIAEkAASQAJIANcCI58wlsJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkgACUoMEVoAAAGzSURBVB2hK4Vu3T8CSAAJIAEkgASQABJAAkgACSABJIAEkAASQAK4Fhj5hLEURgJIAAkgASSABJAAEkACSAAJIAEkgASQABJAAkjoCF0pdOv+EUACSAAJIAEkgASQABJAAkgACSABJIAEkAASwLXAyCeMpTASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABJAQkfoSqFb948AEkACSAAJIAEkgASQABJAAkgACSABJIAEkACuBUY+YSyFkQASQAJIAAkgASSABJAAEkACSAAJIAEkgASQABI6QlcK3bp/BJAAEkACSAAJIAEkgASQABJAAkgACSABJIAEcC0w8gljKYwEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgASQ0BG6UujW/SOABJAAEkACSAAJIAEkgASQABJAAkgACSABJIBrgZFPGEthJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkgISO0JVCt+4fASSABJAAEkACSAAJIAEkgASQABJAAkgACSABXAuMfMJYCiMBJIAEkAASQAJIAAkgASSABJAAEkACSAAJIAEkdISuFLp1//4BodXYOadvNTkAAAAASUVORK5CYII=\" width=\"640\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "3 [1, '', '93f549c401bebe4f86ef23626e0fed3d06183b02']\n",
      "5555555 [1, '555555555555555555', '93f549c401bebe4f86ef23626e0fed3d06183b02']\n",
      "name.utf8 [1, 'Connections', 'a23296ce90328791cb6974cf6f6306da4dd89735']\n",
      "unique_torrent [1, 1, '2c3ea79de0771079e41fc25f4cabf23e11041829']\n",
      "www.baidu.com [1, 'www.baidu.com', '43b238596c66575e7dfcd4d5b1d0fadb6c393adc']\n",
      "entropy [1, 1460043970, '0635e6c7d348c2603501e9fa53e4cf07f9e31b5e']\n",
      "license [1, OrderedDict([(b'creative-commons', OrderedDict([(b'attributionAuthor', b'Dave Doobie Aaron'), (b'attributionTitle', b'Doobie'), (b'attributionUrl', b'http://fb.com/doobiebrooklyn'), (b'licenseUrl', b'http://creativecommons.org/licenses/by-nc/4.0/')]))]), '1d670c41fd340c8ee280157400744402740fc1fd']\n",
      "还 [1, '百度', '647e1210953d6080f714f0f8dabffe6ee9852800']\n",
      "originator [1, b'0\\x82\\x03:0\\x82\\x02\"\\x02\\x01\\x010\\r\\x06\\t*\\x86H\\x86\\xf7\\r\\x01\\x01\\x05\\x05\\x000L1\\x0b0\\t\\x06\\x03U\\x04\\x06\\x13\\x02US1\\x0b0\\t\\x06\\x03U\\x04\\x08\\x13\\x02CA1\\x170\\x15\\x06\\x03U\\x04\\n\\x13\\x0eBitTorrent Inc1\\x170\\x15\\x06\\x03U\\x04\\x03\\x13\\x0ecom.bittorrent0\\x1e\\x17\\r140520235304Z\\x17\\r160509235304Z0z1\\x0b0\\t\\x06\\x03U\\x04\\x06\\x13\\x02US1\\x0b0\\t\\x06\\x03U\\x04\\x08\\x0c\\x02CA1\\x170\\x15\\x06\\x03U\\x04\\n\\x0c\\x0eBitTorrent Inc1\\x1f0\\x1d\\x06\\x03U\\x04\\x03\\x0c\\x16com.bittorrent.bundles1$0\"\\x06\\t*\\x86H\\x86\\xf7\\r\\x01\\t\\x01\\x16\\x15neteng@bittorrent.com0\\x82\\x01\"0\\r\\x06\\t*\\x86H\\x86\\xf7\\r\\x01\\x01\\x01\\x05\\x00\\x03\\x82\\x01\\x0f\\x000\\x82\\x01\\n\\x02\\x82\\x01\\x01\\x00\\xdc\\x88\\x0ePoR--\\xadlr\\xdf\\xdb*\\xf7u\\xb2\\xac\\xe2-m\\xb0y\\xc5K\\x0f\\x84\\xaf\\xedj\\xe9\\xad\\x88:\\x00\\xe8VK\\xef\\xce\\xf1\\r\\x83\\xb6\\x0c\\xb9n\\xdf\\xc2X\\xae,\\xbdOf\\xb2j*l~\\xaeO\\xc6V\\x81\\x04\\x03\\x11R\\x12\\x03t\\x02\\xda\\xc7\\x1d\\xb1\\x1b\\xe8\\xed\\x88Z\\xcc|\\xb5\\xc0IZuY\\x1b\\x9c\\x93\\xde\\xa1\\xe1\\xadFR\\xc6\\x1d\\xbd\\x80\\xf6\\xc1zV\\xa2\\x8c\\xa2\\xd90\\x06\\xe1.\\xc2\\xc3e\\x15\\xfc,5ki\\xa8\\x87i\\xbe[\\xb4`\\xc9-\\x81\\x81w\\x1d\\x811\\xb4y\\x97\\xda\\x81L\\xe6\\xces\\x9b\\xd0\\x7f\\x9e\\x93\\xffZ/\\xe2R\\x8fIP4&=ia^\\xe9\\x9c\\xbf{\\xc3\\xce\\xf3\\x9a\\x06\\x04\\xf0I\\x11\\xfb\\xc1\\xb9U8v:\\xad87\\x9a\\xeb\\xad\\x1d\\x90\\xa7\\xeb#\\xce\\x81PPXct\\x80\\'\\x8dv,Y}|\\x1b\\xb3F\\xe1\\xeb\\x85\\xd2Y\\xe7\\x9f\\x8c\\xb1y\\xa2\\xeb\\xd2\\x9aU\\x8b\\xc2\\x05\\xf3zpQ\\xf4\\xd4\\x18$\\xc1\\xc2\\xfc{1J\\x1f\\x8c\\xa7\\x0efM,\\'\\x02\\x03\\x01\\x00\\x010\\r\\x06\\t*\\x86H\\x86\\xf7\\r\\x01\\x01\\x05\\x05\\x00\\x03\\x82\\x01\\x01\\x00\\x1e}\\xb1\\x9f\\x8e\\x07L\\xaa\\xd2\\xb5\\xe0eR\\xe9\\xfb\\x18t\\xf7rJn~\\xe5%\\xc1\\x8d\\xa1\\xa5>\\xbe#Q\\xed\\x17x\\xa4B\\x83M\\x1eg\\xef\\x1dbt\\t\\xcc\\xd7\\xca\\x10\\xb2\\xad_\\x02\\x07#\\x08g7\\xae\\xf3\"\\xc9\\xd5v:#)?e\\x98\\xd4\\xe6\\xd2@u\\x7f\\xbac\\xf7\"\\xa4]\\x81k\\xca-\\xe3\\x08\\x18\\x8e$\\xf3c\\xa0\\xd4\\xd3\\xf6**\\xf4\\xe2\\xe1W|f\\xea\\xfd\\xb7\\x12E\\xa3D\\xa2+.`\\xb3V\\x04.!H\\xeb\\xcet\\x84\\x08\\xfc\\xde\\x1c\\x85\\x1e\\xdf\\x04n2?\\x03\\xdc\\xd35\\x10S9\\xd1\\x8d\\x92\\x9c)#\\xfd8\\x97\\xe5\\x87\\x0c\\xe7\\xc7\\xcf\\x8a\\x91\\xef9H\\x83\\xecaK_e9_\\xf9\\xef\\xd3q\\x03\\x05\\x13\\xb6\\'\\x8f\\xb3\\x1c\\x03[\\x99\\xa5T\\x84I\\xcc\\xdb\\xdc^\\x05S%\\x85\\x17!\\xc6\\xaa\\xa6\\xc0\\x0f\\xff%\\xcf\\xf3\\x10]\\xc0Q\\x94]\\xbfD\\xc3\\xf9\\xb5s\\xe6\\x99\\xa2\\xa3\\xf0\\xb0#\\xa9_\\xbbze\\xe1\\xc9\\xc9\\xe8I\\xdb\\xd8\\xbe\\tB\\xa6\\xecQ\\x87\\xca\\x0c\\xe2\\x8e%\\xd8\\xcc', '058b52ccb029e60a355edcfe498e8eb44812e3f1']\n",
      " [2, 1, 'fa6fbc7d7796e49fbdf47731fe06a6e20ee74bb5']\n",
      "abc [2, 'abc', '9c8047972d058dee41bab8ab68ad5da7c24275ed']\n",
      "nnm-club_cool [4, 1, '57f6facb1bcef159b8075b578053fb4790e0c8d5']\n",
      "tracker [8, '', 'e8ca2609b174df7b5c26538fb6f96d77a367da42']\n",
      "x-amz-bucket [10, 'quranwave', '3af8e25c9eeca9402351820d8681fe0945c63cdb']\n",
      "x-amz-key [10, 'torrent/70.zip', '3af8e25c9eeca9402351820d8681fe0945c63cdb']\n",
      "attr [14, 'h', 'c9a279c4dff3b38ef806abb98515382798907654']\n",
      "unique [14, 'fbvPqZTXkKQzRJzy6LXkdIp3iJoTNe', '3a84117d98683bd4a657a37932886d206486c11e']\n",
      "comment [15, 'Torrent downloaded from torrent cache at http://torcache.net/', 'e92cd8e1ed1defad6d5211a42d2dbdf1e368b834']\n",
      "sha256 [18, b'\\xfe\\x01\\x01\\xa4\\xf5Z\\xcd\\xa4\\xd9\\t\\x7f\\x8d\\x1c\\x9d\\x1a\\x89\\xdcV\\x9e\\x92\\xd6A\\xbf\\xf9\\x81\\x9a\\xea^\\xc8\\xcfT\\xcf', '1c565cb3249a8da64dbf7a82b3ed39e637e6e239']\n",
      "creation date [55, 1400017482, '4488d559d4404875022d53c6039b0025c947ac84']\n",
      "cross_seed_entry [55, '02e940fec782a353d2e767cecde08041', 'b7c0ac4a9834c8e39f543f3f721eb90fbb58e179']\n",
      "md5sum [56, 'e27e7b621f0adbcf072e4f13d78c4fc8', 'ef0c6b03d16457e1134bc63c18d527221639da8e']\n",
      "file tree [95, OrderedDict([(b'01 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 306045), (b'pieces root', b'\\xc6\\xaa\\xb3/\\x00\\xb3\\xe8V\\xc8\\xc2\\xa7\\xdd\\xe9\\x1b\\x8c\\xe4\\x80\\x91\\xa6\\x0e\\x9c\\xfe\\x92\\x0eck<\\xca\\x02\\x9b\\xdam')]))])), (b'02 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 11369005), (b'pieces root', b'\\xd9=I\\xd6\\x8cN\\x17tch:Si\\xb1\\x12a9h1\\xf3\\x0b\\x06\\x8f\\xe5q\\xab\\xb7\\x00\\x18O\\xe2\\xac')]))])), (b'03 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 18234404), (b'pieces root', b'3\\xb4\\xf0\\xbc\\x80\\xb5\\xa2\\x14\\xc02\\xf1\\xd4\\xc9\\x95\\xae [\\x07\\x08\\xdc\\x12j\\xcdA\\xa4{\\x9f\\xe3\\xf04g\\x83')]))])), (b'04 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 8120626), (b'pieces root', b'\\xd4\\xbf$\\xadv\\xfb\\xafW\\xa01\\xcf\\xb1\\x83\\xe1\\xecW\\x90\\x01\\xcd\\xd5\\x7f\\xcc\\x02wv\\xcd\\x18\\xda\\xa3\\x00\\x1d\\xdd')]))])), (b'05 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 15192077), (b'pieces root', b'8\\xe3B\\xc5kK\\x18g9\\xaf\\x7f[\\xcf}\\x193\\x8d\\x9d\\xa3\\xdf\\x9c\\xfc\\x04\\x9a5\\x02\\xdf\\xf1\\xc3\\xbd\\xc9\\x02')]))])), (b'06 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 19926721), (b'pieces root', b'\\xb3\\xd90a!a\\x01\\x1aYr\\xf2\\x11\\xb4\\xd5\\xcc\\xe9\\xdb4G\\x8fX9ja\\xf2\\xf8\\x0c\\xb9\\xdbq\\xcdF')]))])), (b'07 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 9389134), (b'pieces root', b'k|\\x0e\\xaf\\n\\xc3&,Z\"\\x95\\xe2\\xa0(\\x83\\xa8\\x91\\x8a\\xdc\\xb3\\xf5\\xebi\\xfbR\\x9b\\xfc\\xe6G.\\xbaC')]))])), (b'08 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 11024608), (b'pieces root', b\"\\xc3,\\xd6/\\xf9F;!'5\\xdbl2\\x94\\xaf\\xf6\\n\\x86\\xc0\\x1b\\x08\\xe5\\t\\x97\\xa7\\x8b\\x04\\xb8\\x82\\xb2\\x87<\")]))])), (b'09 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 18047158), (b'pieces root', b'\\xe1&\\x0f\\x08\\xe4\\xa5|E\\x1e\\x11\\x9a\\xfe\\x9d\\xe5u\\x19\\x86S\\x0b\\x055\\x83\\xfe\\xf0.\\xfd\\xb1\\xf4\\x00\\xaf:\\xd4')]))])), (b'10 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 12329479), (b'pieces root', b'V\\xbf\\x88\\x17\\xb7\\xe3\\xa73\\xfaF-@ut.;\\xf2\\xb0R\\xe7\\xd4J*\\xa6\\xbe\\xa51*\\x8b^\\xc1\\xbd')]))])), (b'11 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 8220520), (b'pieces root', b'\\xd8\\x92bdA]r3&\\x83\\xa1J0\\xc2\\x01,\\x93\\xf6\\xd7\\x1d\\xf5;\\x12\\xfd\\xd5[\\xc9\\x86\\x98\\xa1\\x93\\xc9')]))])), (b'12 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 14647898), (b'pieces root', b\"\\x037\\xe1\\x17\\x02\\xb5\\xe89\\xd1RO\\x94\\t\\x98\\xb7\\x19:\\xbeF\\x13\\x9f\\x88\\xbc\\xbfC\\xdaE\\x82'iD\\xd2\")]))])), (b'13 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 9183082), (b'pieces root', b'\\x1c\\x88\\x18\\x03\\x0e2\\x94\\\\Y\\xb4\\xcb\\x87\\xea\\x9a\\xe9\\xfcj\\xb3z\\xa0\\x1f\"P\\x06*\\xee\\xfa/6\\xb4\\x1eO')]))])), (b'14 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 8584563), (b'pieces root', b\"\\x11\\x88\\xb1\\x80\\xb1\\x9a\\x06t'\\x80\\x15p\\xfa\\x17\\xcf\\xdej\\x93\\x82}%$\\xd49\\xf1\\x7f\\xb1\\x14\\xb1}\\xde\\xe5\")]))])), (b'15 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 8667736), (b'pieces root', b'\\xfb\\x1a\\x130JY\\xc7\\x86\\x07\\x89\\xa8\\xaa\\xc2\\x97\\x0e6(\\xe0\"\\xe7)\\xa0z\\xbb\\x98\\xf2S\\x82\\xd4\\xe1e2')]))])), (b'16 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 8380183), (b'pieces root', b'*\\xe4\\x92\\xc4\\xca.\\xd8\\xc7s\\xa0\\xe7\\x16\\x0f\\xec\\xb5\\xd4\\xc9\\xf8\\x8e,\\x1d\\xc9\\x97\\xad$\\x9d\\xa7\\\\\\x82\\x18\\x80O')]))])), (b'17 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 10952719), (b'pieces root', b'\\xc3s\\x18\\xd5\\xc97\\x19T\\x14[\\xe6\\x98\\x93\\x9b>\\xcb\\x82\\x92\\xa9rgl\\xc2\\xe5ny\\x92\\x0b&]\\xa2\\xcb')]))])), (b'18 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 18408693), (b'pieces root', b'\\xdf\\xe7<\\x94\\x97\\xa5\\x06\\t!\\xc9\\x00I\\\\\\xd9Q\\xffu.u\\xdd\\xae\\xdd\\xe4t\\x04V\\xe9\\xcb\\x84\\xd4\\x0e\\x02')]))])), (b'19 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 17103827), (b'pieces root', b'-\\xda/\\x9e\\xee\\xe50\\xbb\\x8cv\\xdc\\xf99\\xfco;rw\\x9e&\\x13\\xa3\\xd0\\x15\\xd6]\\xbc\\xe6P\\xbd\\xe5\\x95')]))])), (b'20 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 9902808), (b'pieces root', b'J\\xb3\\x7f\\xd1lq\\x8f!\\xce\\xfa\\x9b\\x03\\xb7*\\xbaT\\xfd^\\x83\\xb5\\xd1\\xe1x\\n|I?&\\x7f3\\xf6s')]))])), (b'21 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 16769039), (b'pieces root', b'\"\\xdf\\xf8\\x99&\\xd8\\x81\\xe6HO\\xe2\\xb8L\\xfe\\\\pum\\xca<\\x17\\xd6\\x93\\x9a$\\x989v\\xf3($\\xc4')]))])), (b'22 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 15115177), (b'pieces root', b'n\\xb3+H\\xe9\\xe8b[\\xe7\\xa5\\x18\\x82\\xb1\\x9d49\\xb2 \\x80\\xcb@\\x11\\x9e\\xd0\\xe0\\x10\\x1dx\\x04ki\\xa2')]))])), (b'23 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 11751439), (b'pieces root', b'\\xb8\\x96r\\x8b\\x99\\x08Lc\\xeaa\\n\\xf9m \\xd8\\xd1i\\xc9\\xeb\\xe5=\\xcc\\xbd\\x95\\x86\\x1b~\\x00U\\xa7\\xfe\\xaf')]))])), (b'24 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 10140209), (b'pieces root', b'\\x91\\xdf\\xd9\"\\x9aE1[\\xc4\\xe3;\\xb3\\x13\\x85\\xa0\\xca \\xab\\xf9\\xd6\\xfdG\\xa9\\xeb\\xd4\\xf6Z\\xb5\\xdf\\xad\\x16:')]))])), (b'25 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 9116207), (b'pieces root', b'\\x9c~\\x9c\\x08\\\\f*\\xf85\\xac\\xc8Yh\\xc6\\xdeZ\\xe4\\x85\\xf5l\\x82lc\\xa2\\t\\xdfG\\xc2Isv\\xed')]))])), (b'26 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 16717632), (b'pieces root', b'\\xb7\"1vkY\\xbe\\xcd\\xc6\\xb4Ip\\xb8\\xb1}\\x9e\\x12\\xd9\\x06\\x1d\\xa3b\\x01#\\xbf\\xe3\\xcd\\xea\\xa8\\xb2\\xfc\\xd3')]))])), (b'27 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 12950148), (b'pieces root', b'\\xe3\\x93P\\x959h\\xc1\\xfb\\xa6\\xfe\\xb3\\t\\xc9\\xf96\\xe4\\x93-s\\xd7\\x9cm\\xf6\\x15\\xc4Z\\xddZ4\\xb9\\x97\\\\')]))])), (b'28 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 15921002), (b'pieces root', b'v\\xceh\\x0e\\x9b;\\n\\xb1\\xb0\\xf4\\xf2/7\\xee\\xab\\x9c\\x1boz\\x99y\\xb4\\x1f\\xd0h\\xac\\xdf_ \\xc9\\xc7\\xd1')]))])), (b'29 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 9768641), (b'pieces root', b'\\xc9s}\\xae\\x99S\\xb8\\x83<\\xc6\\xb1\\xd8\\xf7\\xffR\\xa6\\xcbT|\\xeb\\xee\\xdeG\\xfeX*\\xe2\\xc1\\x12\\x90\\xbd\\xd8')]))])), (b'30 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 6324241), (b'pieces root', b'\\x02\\tB\\xed\\x80\\xf9T(\\xd9~\\xed\\xd3(\\xd9\\x90\\xc5\\xac\\xd6\\xc0\\xb0#\\x89O\\x1d\\xcc\\xe2i\\xaa\\xf2\\xa1=|')]))])), (b'31 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 15366368), (b'pieces root', b'm\\xc2\\x90\\x94\\x90\\xf4\\x01\\xef\\xdf\\x82\\xa6\\xc8\\xfe\\xee\\xc7\\x06*1\\xa6\\xc2\\xe1\\x8e9\\xf7\\x10\\xaa\\xf6Ra\\xc6\\x1e\\x06')]))])), (b'32 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 14097446), (b'pieces root', b\"\\xbf\\xe8\\x14\\x15\\x13\\xb1xT\\xef\\x19\\xe5Dmh\\xd48<\\x93$\\xca\\xc9\\x92\\xedX\\x01\\xb4\\xda\\xf1\\xf0\\xd7\\xdc'\")]))])), (b'33 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 8691562), (b'pieces root', b'H\\x12\\x831\\x18MfTp\\xe1!\\xb6\\xaf)3\\xb5\\xfa\\xad\\xaf\\xd6\\xd1\\x94X\\x8a\\xea\\x17\\xc2\\xbb\\xa8\\xda\\xf6\\x16')]))])), (b'34 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 18585492), (b'pieces root', b'\\xd6x\\xafd\\xfc\\xdd\\x9c,\\x95\\xdd>\\xbaE\\x03\\x11\\xbf\\xdb\\x80\\x9a\\x8b?\\x91\\xdf\\xe2o\\xa1\\x7f k3\\xf9}')]))])), (b'35 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 14333175), (b'pieces root', b'\\xe1\\x04\\xa9\\x8ah\\xa6W2\\xd5\\xb7\\xf7\\x11*\\xd0\\x82\\r\\x1b\\x11\\xafq\\\\\\x86C(\\xfa\\x99\\xb3\\xdc]\\xee\\x04\\xf0')]))])), (b'36 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 16783668), (b'pieces root', b'\\x9a\\r\\x10j\\x87Z.g\\x95I+D\\xcd,w\\x83\\xd1F\\x16\\xa7\\xd0\\\\`7\\xfbZ:3\\xa1\\x19%t')]))])), (b'37 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 19032708), (b'pieces root', b'\\x07\\xf9\\xb6\\x9cW\\xbb \\\\0\\xf6B=\\xf74\\xf9\\x1cO\\x0b\\xe6\\x93_\\xe0\\xb1O\\xf2\\x82yL\\xc8\\xdc{\\x8e')]))])), (b'38 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 14793348), (b'pieces root', b'-m\\x9b\\xa0\\x02W,!\\xe2\"Bjb\\xcc\\xe0\\x104\\xb5\\xfen\\xb8\\xed\\xfe\\xda\\xe0\\x1fZr\\x89\\xf5$\\xf6')]))])), (b'39 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 9859340), (b'pieces root', b\"G\\xedO\\x8c\\x80\\xd6\\xf3\\xa1CGP\\x13\\x03\\xc7\\x9fI\\xd7Y\\n\\xf1v\\xd8'\\xb3$9:/a\\tg\\xfa\")]))])), (b'40 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 21681312), (b'pieces root', b' W\\xcd\\xcc\\xb9<\\x11\\xbc\\x0e\\x9e\\xfcm\\x04;\\x98^\\xd8\\xb0QvA\\x1c\\x81&\\xb8\\x16\\xb0+\\x1enB\\xfd')]))])), (b'41 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 13917724), (b'pieces root', b'm\\x7f}\\xbb#\\xb9\\xaf7\\x95\\x94\\x88Y\\xfe<\\x15\\x8a\\x1c\\xa1\\xdd9\\x93nK\\x8b/\\xcchX\\x1d\\xce\\x16\\x95')]))])), (b'42 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 14964290), (b'pieces root', b'Kk]\\xbe\\xef9\\x12\\xe4\\xd4u\\xafaN\\xde\\xfbD\\x80E\\x1a#|o\\xe3\\xb4\\xdd/dvB\\xbd\\xd7u')]))])), (b'43 - King of Alchemy - Simon Archer.mp3', OrderedDict([(b'', OrderedDict([(b'length', 421404), (b'pieces root', b'XE\\xb8\\x05Ih\\x80\\xd2L$j\\xe8\\x88h\\xcd\\x1d\\xafhs\\xa8\\xdd\\xfc\\x08\\xba\\x19\\xb6\\xd4\\xc4I@`\\x92')]))])), (b'Simon Archer - King of Alchemy.m3u', OrderedDict([(b'', OrderedDict([(b'length', 6855), (b'pieces root', b'\\x8e\\x90\\x18t\\x8e\\xe8\\x8f\\x11\\x01EY\\x86\\xac\\xb8\\xa5\\x9d\\xce\\xf0\\xe6\\xf0\\x01k\\xf0\\xcfu]YN\\xf5bv\\x9e')]))]))]), '44b84847f7d829225c788e161017e484526e5259']\n",
      "sha1 [109, b'\\xbe^\\xdc\\xd8\\x99\\x98\\xf0\\xe8_\\x8d\\xcbZ\\xc7\\xd21\\t`\\xec\\x9c\\xee', 'b4bf549d9d48bce1c1e026ff451ee76069b98c00']\n",
      "collections [119, [b'org.archive.relaxingsounds'], 'ed7d4e9657cbfcde6baf89ace313ae77a1cefe91']\n",
      "meta version [298, 2, '18d35502fca02a30811e4e001809ddd4147167e6']\n",
      "filehash [314, b'\\xc9m.\\x93\\xbd\\x18fj:\\xb3${\\x9ak\\x9e\\xdbUI\\xf2\\xb5', '44af4eb9d35b94218b6fe5eb25a30b8e22fa5844']\n",
      "ed2k [399, b',\\xf0O\\x9e\\x829\\x8e\\x1b{\\xf58\\xea\\x94\\n\\xe8\\x92', '44af4eb9d35b94218b6fe5eb25a30b8e22fa5844']\n",
      "source [908, 'BT世界网 https://www.btsj6.com/', '417ef639eb95fbf68175a6a6b03076f9ee5f5744']\n",
      "file-duration [1283, [0, 0, 39097], '449a9054916600bc0a395a47c4a2421aa06ad04a']\n",
      "file-media [1283, [-1, -1, 0], '449a9054916600bc0a395a47c4a2421aa06ad04a']\n",
      "profiles [1283, [OrderedDict([(b'acodec', b'aac'), (b'height', 0), (b'vcodec', b''), (b'width', 0)])], '449a9054916600bc0a395a47c4a2421aa06ad04a']\n",
      "publisher-url.utf-8 [1766, 'http://my155.cc', '4488cffb9ad5afc1174bc96754e9887158ce03eb']\n",
      "publisher.utf-8 [1830, '小隻馬', '4488cffb9ad5afc1174bc96754e9887158ce03eb']\n",
      "publisher-url [2602, 'http://my155.cc', '4488cffb9ad5afc1174bc96754e9887158ce03eb']\n",
      "publisher [2746, '小隻馬', '4488cffb9ad5afc1174bc96754e9887158ce03eb']\n",
      "name.utf-8 [3724, '60 Assorted Magazines Collection PDF September 4 2022 Set 3', '449a9e0e7375b6b6b7f55bdd6214f034a2edd4b8']\n",
      "private [5625, 0, '449f65629260c258a999e6474f22ae00e83ee47a']\n",
      "length [15890, 5209971966, '449a38ef7e042bd2d75e8921aa02f6f244165d9d']\n",
      "name [47843, 'Big Buck Bunny', 'dd8255ecdc7ca55fb0bbf81323d87062db1f6d1c']\n",
      "piece length [47843, 262144, 'dd8255ecdc7ca55fb0bbf81323d87062db1f6d1c']\n"
     ]
    }
   ],
   "source": [
    "s = monotonic()\n",
    "keys = {}\n",
    "for sha1, torrent in torrents.items():\n",
    "    for key in torrent.dict.get(b'info').keys():\n",
    "        if key.decode() not in keys.keys():\n",
    "            value = torrent.dict.get(b'info').get(key)\n",
    "            if type(value) is bytes:\n",
    "                try:\n",
    "                    value = value.decode()\n",
    "                except UnicodeDecodeError:\n",
    "                    pass\n",
    "            keys[key.decode()] = [1, value, sha1.hex()]\n",
    "        else:\n",
    "            keys[key.decode()][0] += 1\n",
    "sort = sorted(keys, key=lambda x: keys[x][0])\n",
    "print(monotonic()-s, \"s\", len(keys))\n",
    "%matplotlib notebook\n",
    "fig, ax = pyplot.subplots();\n",
    "ax.barh(sort, [keys[x][0] for x in sort])\n",
    "pyplot.xscale(\"log\")\n",
    "pyplot.xlabel(\"število pojavitev ključa v slovarju info\")\n",
    "fig.show() ## TODO komentiraj\n",
    "for i in sort:\n",
    "    print(i, keys[i])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "fea0f2b6",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.1208715548273176 s 92.3207156741843 brez ključa source, publisher, publisher-url ali comment 854 virov\n"
     ]
    },
    {
     "data": {
      "application/javascript": [
       "/* Put everything inside the global mpl namespace */\n",
       "/* global mpl */\n",
       "window.mpl = {};\n",
       "\n",
       "mpl.get_websocket_type = function () {\n",
       "    if (typeof WebSocket !== 'undefined') {\n",
       "        return WebSocket;\n",
       "    } else if (typeof MozWebSocket !== 'undefined') {\n",
       "        return MozWebSocket;\n",
       "    } else {\n",
       "        alert(\n",
       "            'Your browser does not have WebSocket support. ' +\n",
       "                'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
       "                'Firefox 4 and 5 are also supported but you ' +\n",
       "                'have to enable WebSockets in about:config.'\n",
       "        );\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure = function (figure_id, websocket, ondownload, parent_element) {\n",
       "    this.id = figure_id;\n",
       "\n",
       "    this.ws = websocket;\n",
       "\n",
       "    this.supports_binary = this.ws.binaryType !== undefined;\n",
       "\n",
       "    if (!this.supports_binary) {\n",
       "        var warnings = document.getElementById('mpl-warnings');\n",
       "        if (warnings) {\n",
       "            warnings.style.display = 'block';\n",
       "            warnings.textContent =\n",
       "                'This browser does not support binary websocket messages. ' +\n",
       "                'Performance may be slow.';\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.imageObj = new Image();\n",
       "\n",
       "    this.context = undefined;\n",
       "    this.message = undefined;\n",
       "    this.canvas = undefined;\n",
       "    this.rubberband_canvas = undefined;\n",
       "    this.rubberband_context = undefined;\n",
       "    this.format_dropdown = undefined;\n",
       "\n",
       "    this.image_mode = 'full';\n",
       "\n",
       "    this.root = document.createElement('div');\n",
       "    this.root.setAttribute('style', 'display: inline-block');\n",
       "    this._root_extra_style(this.root);\n",
       "\n",
       "    parent_element.appendChild(this.root);\n",
       "\n",
       "    this._init_header(this);\n",
       "    this._init_canvas(this);\n",
       "    this._init_toolbar(this);\n",
       "\n",
       "    var fig = this;\n",
       "\n",
       "    this.waiting = false;\n",
       "\n",
       "    this.ws.onopen = function () {\n",
       "        fig.send_message('supports_binary', { value: fig.supports_binary });\n",
       "        fig.send_message('send_image_mode', {});\n",
       "        if (fig.ratio !== 1) {\n",
       "            fig.send_message('set_device_pixel_ratio', {\n",
       "                device_pixel_ratio: fig.ratio,\n",
       "            });\n",
       "        }\n",
       "        fig.send_message('refresh', {});\n",
       "    };\n",
       "\n",
       "    this.imageObj.onload = function () {\n",
       "        if (fig.image_mode === 'full') {\n",
       "            // Full images could contain transparency (where diff images\n",
       "            // almost always do), so we need to clear the canvas so that\n",
       "            // there is no ghosting.\n",
       "            fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
       "        }\n",
       "        fig.context.drawImage(fig.imageObj, 0, 0);\n",
       "    };\n",
       "\n",
       "    this.imageObj.onunload = function () {\n",
       "        fig.ws.close();\n",
       "    };\n",
       "\n",
       "    this.ws.onmessage = this._make_on_message_function(this);\n",
       "\n",
       "    this.ondownload = ondownload;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_header = function () {\n",
       "    var titlebar = document.createElement('div');\n",
       "    titlebar.classList =\n",
       "        'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n",
       "    var titletext = document.createElement('div');\n",
       "    titletext.classList = 'ui-dialog-title';\n",
       "    titletext.setAttribute(\n",
       "        'style',\n",
       "        'width: 100%; text-align: center; padding: 3px;'\n",
       "    );\n",
       "    titlebar.appendChild(titletext);\n",
       "    this.root.appendChild(titlebar);\n",
       "    this.header = titletext;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._init_canvas = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var canvas_div = (this.canvas_div = document.createElement('div'));\n",
       "    canvas_div.setAttribute('tabindex', '0');\n",
       "    canvas_div.setAttribute(\n",
       "        'style',\n",
       "        'border: 1px solid #ddd;' +\n",
       "            'box-sizing: content-box;' +\n",
       "            'clear: both;' +\n",
       "            'min-height: 1px;' +\n",
       "            'min-width: 1px;' +\n",
       "            'outline: 0;' +\n",
       "            'overflow: hidden;' +\n",
       "            'position: relative;' +\n",
       "            'resize: both;' +\n",
       "            'z-index: 2;'\n",
       "    );\n",
       "\n",
       "    function on_keyboard_event_closure(name) {\n",
       "        return function (event) {\n",
       "            return fig.key_event(event, name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'keydown',\n",
       "        on_keyboard_event_closure('key_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'keyup',\n",
       "        on_keyboard_event_closure('key_release')\n",
       "    );\n",
       "\n",
       "    this._canvas_extra_style(canvas_div);\n",
       "    this.root.appendChild(canvas_div);\n",
       "\n",
       "    var canvas = (this.canvas = document.createElement('canvas'));\n",
       "    canvas.classList.add('mpl-canvas');\n",
       "    canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: relative;' +\n",
       "            'z-index: 0;'\n",
       "    );\n",
       "\n",
       "    this.context = canvas.getContext('2d');\n",
       "\n",
       "    var backingStore =\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        this.context.webkitBackingStorePixelRatio ||\n",
       "        this.context.mozBackingStorePixelRatio ||\n",
       "        this.context.msBackingStorePixelRatio ||\n",
       "        this.context.oBackingStorePixelRatio ||\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        1;\n",
       "\n",
       "    this.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
       "\n",
       "    var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n",
       "        'canvas'\n",
       "    ));\n",
       "    rubberband_canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'left: 0;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: absolute;' +\n",
       "            'top: 0;' +\n",
       "            'z-index: 1;'\n",
       "    );\n",
       "\n",
       "    // Apply a ponyfill if ResizeObserver is not implemented by browser.\n",
       "    if (this.ResizeObserver === undefined) {\n",
       "        if (window.ResizeObserver !== undefined) {\n",
       "            this.ResizeObserver = window.ResizeObserver;\n",
       "        } else {\n",
       "            var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n",
       "            this.ResizeObserver = obs.ResizeObserver;\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n",
       "        var nentries = entries.length;\n",
       "        for (var i = 0; i < nentries; i++) {\n",
       "            var entry = entries[i];\n",
       "            var width, height;\n",
       "            if (entry.contentBoxSize) {\n",
       "                if (entry.contentBoxSize instanceof Array) {\n",
       "                    // Chrome 84 implements new version of spec.\n",
       "                    width = entry.contentBoxSize[0].inlineSize;\n",
       "                    height = entry.contentBoxSize[0].blockSize;\n",
       "                } else {\n",
       "                    // Firefox implements old version of spec.\n",
       "                    width = entry.contentBoxSize.inlineSize;\n",
       "                    height = entry.contentBoxSize.blockSize;\n",
       "                }\n",
       "            } else {\n",
       "                // Chrome <84 implements even older version of spec.\n",
       "                width = entry.contentRect.width;\n",
       "                height = entry.contentRect.height;\n",
       "            }\n",
       "\n",
       "            // Keep the size of the canvas and rubber band canvas in sync with\n",
       "            // the canvas container.\n",
       "            if (entry.devicePixelContentBoxSize) {\n",
       "                // Chrome 84 implements new version of spec.\n",
       "                canvas.setAttribute(\n",
       "                    'width',\n",
       "                    entry.devicePixelContentBoxSize[0].inlineSize\n",
       "                );\n",
       "                canvas.setAttribute(\n",
       "                    'height',\n",
       "                    entry.devicePixelContentBoxSize[0].blockSize\n",
       "                );\n",
       "            } else {\n",
       "                canvas.setAttribute('width', width * fig.ratio);\n",
       "                canvas.setAttribute('height', height * fig.ratio);\n",
       "            }\n",
       "            /* This rescales the canvas back to display pixels, so that it\n",
       "             * appears correct on HiDPI screens. */\n",
       "            canvas.style.width = width + 'px';\n",
       "            canvas.style.height = height + 'px';\n",
       "\n",
       "            rubberband_canvas.setAttribute('width', width);\n",
       "            rubberband_canvas.setAttribute('height', height);\n",
       "\n",
       "            // And update the size in Python. We ignore the initial 0/0 size\n",
       "            // that occurs as the element is placed into the DOM, which should\n",
       "            // otherwise not happen due to the minimum size styling.\n",
       "            if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    this.resizeObserverInstance.observe(canvas_div);\n",
       "\n",
       "    function on_mouse_event_closure(name) {\n",
       "        /* User Agent sniffing is bad, but WebKit is busted:\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=144526\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=181818\n",
       "         * The worst that happens here is that they get an extra browser\n",
       "         * selection when dragging, if this check fails to catch them.\n",
       "         */\n",
       "        var UA = navigator.userAgent;\n",
       "        var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n",
       "        if(isWebKit) {\n",
       "            return function (event) {\n",
       "                /* This prevents the web browser from automatically changing to\n",
       "                 * the text insertion cursor when the button is pressed. We\n",
       "                 * want to control all of the cursor setting manually through\n",
       "                 * the 'cursor' event from matplotlib */\n",
       "                event.preventDefault()\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        } else {\n",
       "            return function (event) {\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        }\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mousedown',\n",
       "        on_mouse_event_closure('button_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseup',\n",
       "        on_mouse_event_closure('button_release')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'dblclick',\n",
       "        on_mouse_event_closure('dblclick')\n",
       "    );\n",
       "    // Throttle sequential mouse events to 1 every 20ms.\n",
       "    canvas_div.addEventListener(\n",
       "        'mousemove',\n",
       "        on_mouse_event_closure('motion_notify')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseenter',\n",
       "        on_mouse_event_closure('figure_enter')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseleave',\n",
       "        on_mouse_event_closure('figure_leave')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener('wheel', function (event) {\n",
       "        if (event.deltaY < 0) {\n",
       "            event.step = 1;\n",
       "        } else {\n",
       "            event.step = -1;\n",
       "        }\n",
       "        on_mouse_event_closure('scroll')(event);\n",
       "    });\n",
       "\n",
       "    canvas_div.appendChild(canvas);\n",
       "    canvas_div.appendChild(rubberband_canvas);\n",
       "\n",
       "    this.rubberband_context = rubberband_canvas.getContext('2d');\n",
       "    this.rubberband_context.strokeStyle = '#000000';\n",
       "\n",
       "    this._resize_canvas = function (width, height, forward) {\n",
       "        if (forward) {\n",
       "            canvas_div.style.width = width + 'px';\n",
       "            canvas_div.style.height = height + 'px';\n",
       "        }\n",
       "    };\n",
       "\n",
       "    // Disable right mouse context menu.\n",
       "    canvas_div.addEventListener('contextmenu', function (_e) {\n",
       "        event.preventDefault();\n",
       "        return false;\n",
       "    });\n",
       "\n",
       "    function set_focus() {\n",
       "        canvas.focus();\n",
       "        canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    window.setTimeout(set_focus, 100);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'mpl-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'mpl-button-group';\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'mpl-button-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        var button = (fig.buttons[name] = document.createElement('button'));\n",
       "        button.classList = 'mpl-widget';\n",
       "        button.setAttribute('role', 'button');\n",
       "        button.setAttribute('aria-disabled', 'false');\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "\n",
       "        var icon_img = document.createElement('img');\n",
       "        icon_img.src = '_images/' + image + '.png';\n",
       "        icon_img.srcset = '_images/' + image + '_large.png 2x';\n",
       "        icon_img.alt = tooltip;\n",
       "        button.appendChild(icon_img);\n",
       "\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    var fmt_picker = document.createElement('select');\n",
       "    fmt_picker.classList = 'mpl-widget';\n",
       "    toolbar.appendChild(fmt_picker);\n",
       "    this.format_dropdown = fmt_picker;\n",
       "\n",
       "    for (var ind in mpl.extensions) {\n",
       "        var fmt = mpl.extensions[ind];\n",
       "        var option = document.createElement('option');\n",
       "        option.selected = fmt === mpl.default_extension;\n",
       "        option.innerHTML = fmt;\n",
       "        fmt_picker.appendChild(option);\n",
       "    }\n",
       "\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.request_resize = function (x_pixels, y_pixels) {\n",
       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
       "    // which will in turn request a refresh of the image.\n",
       "    this.send_message('resize', { width: x_pixels, height: y_pixels });\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_message = function (type, properties) {\n",
       "    properties['type'] = type;\n",
       "    properties['figure_id'] = this.id;\n",
       "    this.ws.send(JSON.stringify(properties));\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_draw_message = function () {\n",
       "    if (!this.waiting) {\n",
       "        this.waiting = true;\n",
       "        this.ws.send(JSON.stringify({ type: 'draw', figure_id: this.id }));\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    var format_dropdown = fig.format_dropdown;\n",
       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
       "    fig.ondownload(fig, format);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_resize = function (fig, msg) {\n",
       "    var size = msg['size'];\n",
       "    if (size[0] !== fig.canvas.width || size[1] !== fig.canvas.height) {\n",
       "        fig._resize_canvas(size[0], size[1], msg['forward']);\n",
       "        fig.send_message('refresh', {});\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_rubberband = function (fig, msg) {\n",
       "    var x0 = msg['x0'] / fig.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n",
       "    var x1 = msg['x1'] / fig.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / fig.ratio;\n",
       "    x0 = Math.floor(x0) + 0.5;\n",
       "    y0 = Math.floor(y0) + 0.5;\n",
       "    x1 = Math.floor(x1) + 0.5;\n",
       "    y1 = Math.floor(y1) + 0.5;\n",
       "    var min_x = Math.min(x0, x1);\n",
       "    var min_y = Math.min(y0, y1);\n",
       "    var width = Math.abs(x1 - x0);\n",
       "    var height = Math.abs(y1 - y0);\n",
       "\n",
       "    fig.rubberband_context.clearRect(\n",
       "        0,\n",
       "        0,\n",
       "        fig.canvas.width / fig.ratio,\n",
       "        fig.canvas.height / fig.ratio\n",
       "    );\n",
       "\n",
       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_figure_label = function (fig, msg) {\n",
       "    // Updates the figure title.\n",
       "    fig.header.textContent = msg['label'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_cursor = function (fig, msg) {\n",
       "    fig.canvas_div.style.cursor = msg['cursor'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_message = function (fig, msg) {\n",
       "    fig.message.textContent = msg['message'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_draw = function (fig, _msg) {\n",
       "    // Request the server to send over a new figure.\n",
       "    fig.send_draw_message();\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_image_mode = function (fig, msg) {\n",
       "    fig.image_mode = msg['mode'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n",
       "    for (var key in msg) {\n",
       "        if (!(key in fig.buttons)) {\n",
       "            continue;\n",
       "        }\n",
       "        fig.buttons[key].disabled = !msg[key];\n",
       "        fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n",
       "    if (msg['mode'] === 'PAN') {\n",
       "        fig.buttons['Pan'].classList.add('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    } else if (msg['mode'] === 'ZOOM') {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.add('active');\n",
       "    } else {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Called whenever the canvas gets updated.\n",
       "    this.send_message('ack', {});\n",
       "};\n",
       "\n",
       "// A function to construct a web socket function for onmessage handling.\n",
       "// Called in the figure constructor.\n",
       "mpl.figure.prototype._make_on_message_function = function (fig) {\n",
       "    return function socket_on_message(evt) {\n",
       "        if (evt.data instanceof Blob) {\n",
       "            var img = evt.data;\n",
       "            if (img.type !== 'image/png') {\n",
       "                /* FIXME: We get \"Resource interpreted as Image but\n",
       "                 * transferred with MIME type text/plain:\" errors on\n",
       "                 * Chrome.  But how to set the MIME type?  It doesn't seem\n",
       "                 * to be part of the websocket stream */\n",
       "                img.type = 'image/png';\n",
       "            }\n",
       "\n",
       "            /* Free the memory for the previous frames */\n",
       "            if (fig.imageObj.src) {\n",
       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
       "                    fig.imageObj.src\n",
       "                );\n",
       "            }\n",
       "\n",
       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
       "                img\n",
       "            );\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        } else if (\n",
       "            typeof evt.data === 'string' &&\n",
       "            evt.data.slice(0, 21) === 'data:image/png;base64'\n",
       "        ) {\n",
       "            fig.imageObj.src = evt.data;\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        var msg = JSON.parse(evt.data);\n",
       "        var msg_type = msg['type'];\n",
       "\n",
       "        // Call the  \"handle_{type}\" callback, which takes\n",
       "        // the figure and JSON message as its only arguments.\n",
       "        try {\n",
       "            var callback = fig['handle_' + msg_type];\n",
       "        } catch (e) {\n",
       "            console.log(\n",
       "                \"No handler for the '\" + msg_type + \"' message type: \",\n",
       "                msg\n",
       "            );\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        if (callback) {\n",
       "            try {\n",
       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
       "                callback(fig, msg);\n",
       "            } catch (e) {\n",
       "                console.log(\n",
       "                    \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n",
       "                    e,\n",
       "                    e.stack,\n",
       "                    msg\n",
       "                );\n",
       "            }\n",
       "        }\n",
       "    };\n",
       "};\n",
       "\n",
       "\n",
       "/*\n",
       " * return a copy of an object with only non-object keys\n",
       " * we need this to avoid circular references\n",
       " * https://stackoverflow.com/a/24161582/3208463\n",
       " */\n",
       "function simpleKeys(original) {\n",
       "    return Object.keys(original).reduce(function (obj, key) {\n",
       "        if (typeof original[key] !== 'object') {\n",
       "            obj[key] = original[key];\n",
       "        }\n",
       "        return obj;\n",
       "    }, {});\n",
       "}\n",
       "\n",
       "mpl.figure.prototype.mouse_event = function (event, name) {\n",
       "    if (name === 'button_press') {\n",
       "        this.canvas.focus();\n",
       "        this.canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    // from https://stackoverflow.com/q/1114465\n",
       "    var boundingRect = this.canvas.getBoundingClientRect();\n",
       "    var x = (event.clientX - boundingRect.left) * this.ratio;\n",
       "    var y = (event.clientY - boundingRect.top) * this.ratio;\n",
       "\n",
       "    this.send_message(name, {\n",
       "        x: x,\n",
       "        y: y,\n",
       "        button: event.button,\n",
       "        step: event.step,\n",
       "        guiEvent: simpleKeys(event),\n",
       "    });\n",
       "\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (_event, _name) {\n",
       "    // Handle any extra behaviour associated with a key event\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.key_event = function (event, name) {\n",
       "    // Prevent repeat events\n",
       "    if (name === 'key_press') {\n",
       "        if (event.key === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.key;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.key !== 'Control') {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    else if (event.altKey && event.key !== 'Alt') {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    else if (event.shiftKey && event.key !== 'Shift') {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k' + event.key;\n",
       "\n",
       "    this._key_event_extra(event, name);\n",
       "\n",
       "    this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onclick = function (name) {\n",
       "    if (name === 'download') {\n",
       "        this.handle_save(this, null);\n",
       "    } else {\n",
       "        this.send_message('toolbar_button', { name: name });\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n",
       "    this.message.textContent = tooltip;\n",
       "};\n",
       "\n",
       "///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n",
       "// prettier-ignore\n",
       "var _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\n",
       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n",
       "\n",
       "mpl.default_extension = \"png\";/* global mpl */\n",
       "\n",
       "var comm_websocket_adapter = function (comm) {\n",
       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
       "    // object with the appropriate methods. Currently this is a non binary\n",
       "    // socket, so there is still some room for performance tuning.\n",
       "    var ws = {};\n",
       "\n",
       "    ws.binaryType = comm.kernel.ws.binaryType;\n",
       "    ws.readyState = comm.kernel.ws.readyState;\n",
       "    function updateReadyState(_event) {\n",
       "        if (comm.kernel.ws) {\n",
       "            ws.readyState = comm.kernel.ws.readyState;\n",
       "        } else {\n",
       "            ws.readyState = 3; // Closed state.\n",
       "        }\n",
       "    }\n",
       "    comm.kernel.ws.addEventListener('open', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('close', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('error', updateReadyState);\n",
       "\n",
       "    ws.close = function () {\n",
       "        comm.close();\n",
       "    };\n",
       "    ws.send = function (m) {\n",
       "        //console.log('sending', m);\n",
       "        comm.send(m);\n",
       "    };\n",
       "    // Register the callback with on_msg.\n",
       "    comm.on_msg(function (msg) {\n",
       "        //console.log('receiving', msg['content']['data'], msg);\n",
       "        var data = msg['content']['data'];\n",
       "        if (data['blob'] !== undefined) {\n",
       "            data = {\n",
       "                data: new Blob(msg['buffers'], { type: data['blob'] }),\n",
       "            };\n",
       "        }\n",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(data);\n",
       "    });\n",
       "    return ws;\n",
       "};\n",
       "\n",
       "mpl.mpl_figure_comm = function (comm, msg) {\n",
       "    // This is the function which gets called when the mpl process\n",
       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
       "\n",
       "    var id = msg.content.data.id;\n",
       "    // Get hold of the div created by the display call when the Comm\n",
       "    // socket was opened in Python.\n",
       "    var element = document.getElementById(id);\n",
       "    var ws_proxy = comm_websocket_adapter(comm);\n",
       "\n",
       "    function ondownload(figure, _format) {\n",
       "        window.open(figure.canvas.toDataURL());\n",
       "    }\n",
       "\n",
       "    var fig = new mpl.figure(id, ws_proxy, ondownload, element);\n",
       "\n",
       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
       "    // web socket which is closed, not our websocket->open comm proxy.\n",
       "    ws_proxy.onopen();\n",
       "\n",
       "    fig.parent_element = element;\n",
       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "    fig.cell_info[0].output_area.element.on(\n",
       "        'cleared',\n",
       "        { fig: fig },\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / fig.ratio;\n",
       "    fig.cell_info[0].output_area.element.off(\n",
       "        'cleared',\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "    fig.resizeObserverInstance.unobserve(fig.canvas_div);\n",
       "\n",
       "    // Update the output cell to use the data from the current canvas.\n",
       "    fig.push_to_output();\n",
       "    var dataURL = fig.canvas.toDataURL();\n",
       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
       "    // the notebook keyboard shortcuts fail.\n",
       "    IPython.keyboard_manager.enable();\n",
       "    fig.parent_element.innerHTML =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "    fig.close_ws(fig, msg);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.close_ws = function (fig, msg) {\n",
       "    fig.send_message('closing', msg);\n",
       "    // fig.ws.close()\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.push_to_output = function (_remove_interactive) {\n",
       "    // Turn the data on the canvas into data in the output cell.\n",
       "    var width = this.canvas.width / this.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Tell IPython that the notebook contents must change.\n",
       "    IPython.notebook.set_dirty(true);\n",
       "    this.send_message('ack', {});\n",
       "    var fig = this;\n",
       "    // Wait a second, then push the new image to the DOM so\n",
       "    // that it is saved nicely (might be nice to debounce this).\n",
       "    setTimeout(function () {\n",
       "        fig.push_to_output();\n",
       "    }, 1000);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'btn-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'btn-group';\n",
       "    var button;\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'btn-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        button = fig.buttons[name] = document.createElement('button');\n",
       "        button.classList = 'btn btn-default';\n",
       "        button.href = '#';\n",
       "        button.title = name;\n",
       "        button.innerHTML = '<i class=\"fa ' + image + ' fa-lg\"></i>';\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    // Add the status bar.\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message pull-right';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "\n",
       "    // Add the close button to the window.\n",
       "    var buttongrp = document.createElement('div');\n",
       "    buttongrp.classList = 'btn-group inline pull-right';\n",
       "    button = document.createElement('button');\n",
       "    button.classList = 'btn btn-mini btn-primary';\n",
       "    button.href = '#';\n",
       "    button.title = 'Stop Interaction';\n",
       "    button.innerHTML = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\n",
       "    button.addEventListener('click', function (_evt) {\n",
       "        fig.handle_close(fig, {});\n",
       "    });\n",
       "    button.addEventListener(\n",
       "        'mouseover',\n",
       "        on_mouseover_closure('Stop Interaction')\n",
       "    );\n",
       "    buttongrp.appendChild(button);\n",
       "    var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n",
       "    titlebar.insertBefore(buttongrp, titlebar.firstChild);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._remove_fig_handler = function (event) {\n",
       "    var fig = event.data.fig;\n",
       "    if (event.target !== this) {\n",
       "        // Ignore bubbled events from children.\n",
       "        return;\n",
       "    }\n",
       "    fig.close_ws(fig, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (el) {\n",
       "    // this is important to make the div 'focusable\n",
       "    el.setAttribute('tabindex', 0);\n",
       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
       "    // off when our div gets focus\n",
       "\n",
       "    // location in version 3\n",
       "    if (IPython.notebook.keyboard_manager) {\n",
       "        IPython.notebook.keyboard_manager.register_events(el);\n",
       "    } else {\n",
       "        // location in version 2\n",
       "        IPython.keyboard_manager.register_events(el);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (event, _name) {\n",
       "    // Check for shift+enter\n",
       "    if (event.shiftKey && event.which === 13) {\n",
       "        this.canvas_div.blur();\n",
       "        // select the cell after this one\n",
       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
       "        IPython.notebook.select(index + 1);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    fig.ondownload(fig, null);\n",
       "};\n",
       "\n",
       "mpl.find_output_cell = function (html_output) {\n",
       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
       "    // IPython event is triggered only after the cells have been serialised, which for\n",
       "    // our purposes (turning an active figure into a static one), is too late.\n",
       "    var cells = IPython.notebook.get_cells();\n",
       "    var ncells = cells.length;\n",
       "    for (var i = 0; i < ncells; i++) {\n",
       "        var cell = cells[i];\n",
       "        if (cell.cell_type === 'code') {\n",
       "            for (var j = 0; j < cell.output_area.outputs.length; j++) {\n",
       "                var data = cell.output_area.outputs[j];\n",
       "                if (data.data) {\n",
       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
       "                    data = data.data;\n",
       "                }\n",
       "                if (data['text/html'] === html_output) {\n",
       "                    return [cell, data, j];\n",
       "                }\n",
       "            }\n",
       "        }\n",
       "    }\n",
       "};\n",
       "\n",
       "// Register the function which deals with the matplotlib target/channel.\n",
       "// The kernel may be null if the page has been refreshed.\n",
       "if (IPython.notebook.kernel !== null) {\n",
       "    IPython.notebook.kernel.comm_manager.register_target(\n",
       "        'matplotlib',\n",
       "        mpl.mpl_figure_comm\n",
       "    );\n",
       "}\n"
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,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\" width=\"1010\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "163 \t PMEDIA\n",
      "130 \t http://tapochek.net/index.php\n",
      "122 \t 高清下载吧!\n",
      "122 \t https://FreeCourseWeb.com\n",
      "93 \t 灣搭拉咩拉\n",
      "88 \t 脫拉庫\n",
      "82 \t 第一會所新片@SIS001\n",
      "79 \t 大师兄福利网\n",
      "77 \t 2048\n",
      "75 \t 1024社區最新地址\n",
      "74 \t \n",
      "64 \t LostFilm.TV\n",
      "47 \t [https://tanhuazu.com] 探花族社区\n",
      "46 \t 2048核基地\n",
      "44 \t https://hjd.tw\n",
      "43 \t 1024核工厂\n",
      "42 \t RV原创\n",
      "41 \t 1024社區\n",
      "39 \t 小贾_KTXP\n",
      "37 \t 國產精品\n",
      "36 \t 麻豆之神\n",
      "34 \t 吃雞大神\n",
      "34 \t b48t.com\n",
      "33 \t https://crackshash.com/\n",
      "33 \t 老含及\n",
      "31 \t 欧宝\n",
      "30 \t https://rh2048.com\n",
      "27 \t 小隻馬\n",
      "27 \t 1024\n",
      "27 \t AV大平台\n",
      "26 \t @蜂鳥论坛@\n",
      "25 \t Weagogo\n",
      "25 \t 第一會所新片\n",
      "25 \t JAV Torrent 掲示板\n",
      "22 \t 发发发\n",
      "21 \t 刷刷刷\n",
      "21 \t https://1tors.ru/\n",
      "20 \t 1024工厂\n",
      "20 \t hjd.tw\n",
      "19 \t 不予\n",
      "17 \t 小樱\n",
      "17 \t (美女裸聊直播 uur68.com)\n",
      "17 \t xue0117\n",
      "15 \t 美女裸聊直播\n",
      "15 \t xp1024\n",
      "15 \t 老司机论坛\n",
      "15 \t b'\\xcf\\xeb\\xb7\\xa2\\xc8\\xb4\\xb2\\xbb\\xbb\\xe1'\n",
      "14 \t olo\n",
      "13 \t nyaa001\n",
      "13 \t b'dioguitar23(\\xb2\\xc4\\xa4\\xbb\\xa4\\xd1\\xc5]\\xa4\\xfd)\\xad\\xec\\xb3\\xd0'\n",
      "13 \t https://discord.gg/vbJ7RTn\n",
      "13 \t PiRaX @ TamilBlasters.Net\n",
      "13 \t 愛在黑夜001\n",
      "12 \t b'\\xb3\\xcc\\xb7sAV \\xa4\\xd1\\xaa\\xc5\\xbd\\xd7\\xbe\\xc2 IP'\n",
      "12 \t Zamunda.NET\n",
      "11 \t [animelayer.ru] Animelayer\n",
      "11 \t 發片小王子@18p2p\n",
      "11 \t https://infocon.org/\n",
      "11 \t 约战竞技场\n",
      "11 \t orion\n",
      "11 \t 規懶趴會\n",
      "10 \t BT世界网 https://www.btsj6.com/\n",
      "10 \t threesixtyp\n",
      "10 \t U6A6磁力搜索---U6A6.COM\n",
      "10 \t cangkong\n",
      "10 \t dioguitar23(第六天魔王)@dioguitar23.net\n",
      "10 \t 0\n",
      "10 \t BBVC\n",
      "9 \t dio88.net(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "9 \t 1024核工厂/\n",
      "9 \t 百撸社区\n",
      "8 \t Zelka.ORG\n",
      "8 \t b'\\xc1\\xf9\\xd4\\xc2\\xc1\\xaa\\xc3\\xcb'\n",
      "8 \t 百撸社区|高清资源\n",
      "8 \t dioguitar23.co(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "8 \t x\n",
      "8 \t buxxa\n",
      "7 \t [tp.m-team.cc] M-Team - TP\n",
      "7 \t PMEDIA NETWORK\n",
      "7 \t 6969bt.com\n",
      "7 \t www.dio8899.net(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "7 \t BT-btt.com\n",
      "6 \t Mp4Ba\n",
      "6 \t 性吧RV原创\n",
      "6 \t K8bet\n",
      "6 \t Burnbit\n",
      "6 \t 94i88影城-点击跳转\n",
      "6 \t hotaru\n",
      "6 \t b'\\xb7\\xf6\\xba~\\xad\\xd1\\xbc\\xd6\\xb3\\xa1 dioguitar23 \\xad\\xec\\xb3\\xd0'\n",
      "6 \t 00armand00\n",
      "6 \t 么么哒\n",
      "6 \t https://www.javhdbbs.com\n",
      "6 \t XP1024\n",
      "6 \t [https://majomparade.eu]\n",
      "6 \t 鱼香肉丝\n",
      "6 \t Hotaru\n",
      "5 \t atrrea\n",
      "5 \t rutracker.org\n",
      "5 \t olo@SIS001\n",
      "5 \t 广东雨神\n",
      "5 \t b'\\xab\\xb0\\xa5\\xab\\xad\\xb7\\xb1\\xa1~\\xc5]\\xa7\\xd9\\xad\\xec\\xb3\\xd0'\n",
      "5 \t YURASUKA\n",
      "5 \t ♥im520♥\n",
      "5 \t arsenal-fan\n",
      "5 \t [http://x-torrents.org] X-Torrents.org\n",
      "5 \t arsenal-fan@avsp2p.com\n",
      "5 \t 1stDragon\n",
      "5 \t dioguitar23(第六天魔王)@mw6.me\n",
      "5 \t 成年人的小游戏\n",
      "5 \t 99BT工厂 @ 5120911\n",
      "5 \t HiHBT 精品薈萃\n",
      "5 \t https://www.1024btgc.com\n",
      "5 \t hhd800.com\n",
      "4 \t 杏吧论坛\n",
      "4 \t zgome@18p2p\n",
      "4 \t 顶冠文化\n",
      "4 \t XIU\n",
      "4 \t b'\\x9e\\xb3\\xb4\\xee\\xc0\\xad\\xdf\\xe3\\xc0\\xad@kb978.com'\n",
      "4 \t https://downloadcursos.top/\n",
      "4 \t youiv\n",
      "4 \t yoy123\n",
      "4 \t 上善若水@www.sexinsex.net\n",
      "4 \t RZK\n",
      "4 \t Torrent downloaded from torrent cache at http://torcache.net/\n",
      "4 \t 魔王之家\n",
      "4 \t rxrj\n",
      "4 \t 杏吧\n",
      "4 \t dio66.net(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "4 \t 更多精彩!尽在99BT工厂@5120911\n",
      "4 \t xueru10405\n",
      "4 \t 1030社區---1030.ws\n",
      "4 \t www.crackshash.com\n",
      "4 \t nyaa.si\n",
      "4 \t M88(明陞)\n",
      "4 \t www.dio7777.net(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "4 \t GF@1024核工廠\n",
      "4 \t Western/HD-Jiggly\n",
      "4 \t 【RV原创】【sex8.cc】\n",
      "4 \t kenelm\n",
      "4 \t https://DesignOptimal.com\n",
      "4 \t >亞捷視圖<\n",
      "3 \t m6688.net(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "3 \t 1314\n",
      "3 \t oldman原創DVD@18p2p.com\n",
      "3 \t sogood@18p2p\n",
      "3 \t ? nike ?\n",
      "3 \t https://toonshub.xyz\n",
      "3 \t 黑色点击\n",
      "3 \t https://www.torrentdosfilmes.tv/\n",
      "3 \t 1024社区\n",
      "3 \t dioguitar23(第六天魔王)\n",
      "3 \t 嗨咻阁\n",
      "3 \t 枫雪动漫\n",
      "3 \t 【神秘巨星CI】\n",
      "3 \t dioguitar23(第六天魔王)@bbs.hotavxxx.com\n",
      "3 \t GIF出处系列\n",
      "3 \t https://www.terralibera.net/\n",
      "3 \t dioguitar23@dio66.net\n",
      "3 \t dioguitar23(第六天魔王)@hotavxxx.com\n",
      "3 \t chikan\n",
      "3 \t 神秘巨星CI\n",
      "3 \t 萌你一脸@第一会所\n",
      "3 \t 罗马教皇@草榴社区  luckjam@sexinsex.net\n",
      "3 \t uid-346380\n",
      "3 \t Download from Sajber.org/blog\n",
      "3 \t 美女裸聊约炮\n",
      "3 \t @微信订阅号专注稀有汁源\n",
      "3 \t susun=eastv\n",
      "3 \t bbvc\n",
      "3 \t 草榴社区\n",
      "3 \t rh2048.com/\n",
      "3 \t www.javhdbbs.com\n",
      "3 \t 2048核基地!!\n",
      "3 \t 衣选集团\n",
      "3 \t b'\\xc1\\xf9\\xd4\\xc2\\xcc\\xec\\xbf\\xd5'\n",
      "3 \t Gfker@1024核工廠\n",
      "3 \t b'99\\xa5\\xfd\\xa5\\xcd'\n",
      "3 \t 18p2p by_UID 1380364\n",
      "3 \t 漫之学园\n",
      "3 \t https://bbs2048.org/\n",
      "3 \t 9200\n",
      "3 \t 安西教练\n",
      "3 \t MingYSub\n",
      "3 \t 尘封追忆+色十八\n",
      "3 \t Downloaded from CracksHash.com\n",
      "3 \t https://rutor.org\n",
      "3 \t jav20s8.com/\n",
      "3 \t [http://baibako.tv] BaibaKo.TV\n",
      "2 \t MN Nambiar @ TamilBlasters.Net\n",
      "2 \t 老司机\n",
      "2 \t dioguitar23.net(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "2 \t https://media.defcon.org/\n",
      "2 \t https://sexasia.net/feed\n",
      "2 \t http://www.acgyinghua.com/\n",
      "2 \t b'\\xab\\xb0\\xa5\\xab\\xad\\xb7\\xb1\\xa1 dioguitar23 \\xad\\xec\\xb3\\xd0'\n",
      "2 \t Lucian2009@第一会所\n",
      "2 \t www.dio889.net(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "2 \t TYBBX2\n",
      "2 \t roger92402094\n",
      "2 \t https://downloadcursos.top\n",
      "2 \t lxdng1218\n",
      "2 \t 飘嫖\n",
      "2 \t 红馆-红人馆-网络红人之家\n",
      "2 \t CHANNEL NEO\n",
      "2 \t ccc32.com\n",
      "2 \t dioguitar23(第六天魔王)@dio999.com\n",
      "2 \t 注册就送39元,联系:330545486\n",
      "2 \t b'\\xb7\\xf6\\xba~\\xad\\xd1\\xbc\\xd6\\xb3\\xa1@\\xb4A\\xab\\xbd\\xa8\\xe0'\n",
      "2 \t ITELLYOU\n",
      "2 \t Aidoru-Online\n",
      "2 \t 联系TG:yyllzy,fulihuoqu\n",
      "2 \t MP4BA电影网\n",
      "2 \t 強片皇帝999\n",
      "2 \t sogclub No.2\n",
      "2 \t D2mp4\n",
      "2 \t 【U6A6.COM】_全网磁力最快更新\n",
      "2 \t mmklp@第一会所\n",
      "2 \t ssss1111@18p2p\n",
      "2 \t 感冒清@sis001\n",
      "2 \t afnami@64.78.163.55\n",
      "2 \t 1024核工厂最新地址\n",
      "2 \t 11.55\n",
      "2 \t 西門吹水\n",
      "2 \t goldpuzjying\n",
      "2 \t uid=1591117\n",
      "2 \t [http://rudub.tv] RuDub.TV\n",
      "2 \t https://to-url.com/torrent-igruha\n",
      "2 \t 蜂鸟色区\n",
      "2 \t b'\\xb3\\xc7\\xca\\xd0\\xefL\\xc7\\xe9~\\xc4\\xa7\\xbd\\xe4\\xd4\\xad\\x84\\x93'\n",
      "2 \t 百撸社区|高清影片\n",
      "2 \t [http://energy-torrent.com] Energy-Torrent\n",
      "2 \t SoushkinBoudera\n",
      "2 \t [http://bko.baibako.tv] BaibaKo.TV\n",
      "2 \t 冷月无声\n",
      "2 \t 奥利给\n",
      "2 \t b'\\xab\\xb0\\xa5\\xab\\xad\\xb7\\xb1\\xa1~\\xa4p\\xb9t\\xad\\xec\\xb3\\xd0'\n",
      "2 \t b'tanw\\xa9\\xceyk3325@www.sogclub.com'\n",
      "2 \t 3Li\n",
      "2 \t b'giogio99\\xad\\xec\\xb3\\xd0'\n",
      "2 \t buxxa=bbvc\n",
      "2 \t BradPitt\n",
      "2 \t pin0314(1470)@www.mycould.com\n",
      "2 \t b'\\xa4\\xc6\\xb0\\xa9\\xc0s@mimip2p'\n",
      "2 \t 遁去的壹\n",
      "2 \t 弄死你娃L@2018x.win\n",
      "2 \t downloadcursos.top\n",
      "2 \t KTXP_秋沫\n",
      "2 \t Domaha.tv\n",
      "2 \t 水母飄\n",
      "2 \t 月岚星辰520@第一会所\n",
      "2 \t xinnian\n",
      "2 \t kaniuniu\n",
      "2 \t dio889.net(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "2 \t 清雨\n",
      "2 \t www.loliba.info\n",
      "2 \t crazylazy\n",
      "2 \t 感冒清@sis001.com\n",
      "2 \t 淘宝天猫优惠券秒杀\n",
      "2 \t 会飞的象@第一会所\n",
      "2 \t mule_by_SpeedPluss.ORG\n",
      "2 \t bigwai\n",
      "2 \t 深深可许@第一会所\n",
      "2 \t BT伙计\n",
      "2 \t 最新地址\n",
      "2 \t judexkwok(SIS)\n",
      "2 \t ntlv0@hotmail.com\n",
      "2 \t sex8.cc\n",
      "2 \t b'\\xb7\\xf6\\xba~\\xad\\xd1\\xbc\\xd6\\xb3\\xa1~\\xaf\\xab\\xad\\xb7\\xa4p\\xa4l\\xad\\xec\\xb3\\xd0'\n",
      "2 \t Betway(必威)\n",
      "2 \t 天空树蜡香\n",
      "2 \t 更多精彩!尽在99BT工厂\n",
      "2 \t suchuanxia^@^18p2p\n",
      "1 \t gnhyc11@18p2p.com\n",
      "1 \t fyoulapk@18p2p\n",
      "1 \t 塔卡小爹賽\n",
      "1 \t HD一条街论坛\n",
      "1 \t dioguitar23原創\n",
      "1 \t b'\\xb3\\xce\\xbf\\xd5\\xd1\\xa7\\xd4\\xb0'\n",
      "1 \t cnmzlwb\n",
      "1 \t zb77@18p2p\n",
      "1 \t https://www.asmr.one/work/RJ374870\n",
      "1 \t [uid-1591117]\n",
      "1 \t 奈特羅德\n",
      "1 \t https://mega.nz/#F!DK4lCSwB!QdwaMCT3SpOxISAgnuX7nQ\n",
      "1 \t 小葫芦@www.sis001.com\n",
      "1 \t 柏林没有梦\n",
      "1 \t ls611\n",
      "1 \t qqtnt007\n",
      "1 \t 3E523E31D247_by_FDZone.ORG\n",
      "1 \t JPopsuki 2.0 626225292\n",
      "1 \t https://elamigosedition.com/\n",
      "1 \t guroemon\n",
      "1 \t lyf634041775\n",
      "1 \t 1234567890\n",
      "1 \t https://bitnova.info/\n",
      "1 \t asfile@SIS001\n",
      "1 \t b'\\xbd\\xad\\xc4\\xcf\\xb7\\xe7\\xd3\\xea'\n",
      "1 \t mikocon @ bbs.2djgame.net\n",
      "1 \t http://mm.aayun.cc\n",
      "1 \t aqcd123\n",
      "1 \t 维尼\n",
      "1 \t iii\n",
      "1 \t pornolab\n",
      "1 \t 极影字幕\n",
      "1 \t b'\\xc9\\xab\\xd6\\xd0\\xc9\\xab@ypzhq\\xd4\\xad\\xb4\\xb4'\n",
      "1 \t roger92402094(SIS)\n",
      "1 \t erest\n",
      "1 \t Baslilon=Baslilon23\n",
      "1 \t sigma\n",
      "1 \t 寂寞如漫天雪花\n",
      "1 \t C:\\Users\\pongphon\\OneDrive\\Desktop\\New folder (2)\\FC2PPV 1218169 [Odorless video] [Leaked] JULIA High image quality BEB-016 JULIA Sweaty Backroom .ts\n",
      "1 \t JPopsuki 2.0 2131292835\n",
      "1 \t 不予@暗香阁\n",
      "1 \t sogclub No.2 BY sogclub\n",
      "1 \t uid-1591117\n",
      "1 \t b'\\xba\\xda\\xc2\\xfb\\xb0\\xc5'\n",
      "1 \t 微信一夜ONS协会\n",
      "1 \t b'KUHO\\xd2\\xd5\\xca\\xf5\\xc1\\xaa\\xc3\\xcb'\n",
      "1 \t b'\\xb6\\xc0\\xa5i\\xa8\\xe0_by_FDZone.org'\n",
      "1 \t 中文字幕無水印\n",
      "1 \t http://www.wozai020.com\n",
      "1 \t sop168\n",
      "1 \t b'SP\\xa7\\xe4\\xbc\\xd6\\xa4l@\\xaa\\xe1\\xa9M\\xa9|'\n",
      "1 \t tiantianlu186@公仔箱論壇\n",
      "1 \t luckyjune\n",
      "1 \t SK`|yEsMan<sk·>\n",
      "1 \t b'@aaming2002@\\xa3\\xa2\\xb3\\xd5\\xba\\xba\\xa3\\xa2\\xc9\\xab\\xd6\\xd0\\xc9\\xab\\xa3\\xa2\\xc3\\xce\\xb9\\xab\\xd4\\xb0\\xa3\\xa2MimiP2P\\xa3\\xa2\\xa3\\xc4.\\xa3\\xc3P2P\\xa3\\xa2WaiKeungSite\\xa3\\xa2p2pZONE\\xa3\\xa2Mr.P2P\\xa3\\xa2'\n",
      "1 \t hkkane@18p2p\n",
      "1 \t www.4hu.com\n",
      "1 \t b'\\xaeL\\xaa\\xef\\xacK@99p2p'\n",
      "1 \t 夜蒅星宸@第一会所\n",
      "1 \t 【更多资源用加手机QQ-17182252050】\n",
      "1 \t jjjhn2003@18p2p\n",
      "1 \t XIEYUXIA\n",
      "1 \t b'@\\xc0\\xcb\\xb7\\xad\\xd4\\xc6@'\n",
      "1 \t yjs521\n",
      "1 \t hhbb_zcm\n",
      "1 \t twsb.co\n",
      "1 \t https://www.musicastorrent.com/\n",
      "1 \t pandafood#panda1314#gg5123  獨家首發\n",
      "1 \t 探花族\n",
      "1 \t zhoudehua200\n",
      "1 \t AV大平台 - 发布页\n",
      "1 \t b'tanw\\xa9\\xceyk3325'\n",
      "1 \t Rivera@18p2p.com\n",
      "1 \t b'\\xd7\\xcf\\xc3\\xb5\\xb9\\xe5'\n",
      "1 \t [kp.m-team.cc] M-Team - TP\n",
      "1 \t www.spankhash.com\n",
      "1 \t UID 235465@www.mimip2p.net\n",
      "1 \t 草榴社区@MianSheng\n",
      "1 \t Странник\n",
      "1 \t hgr168168\n",
      "1 \t BJ\n",
      "1 \t mecaca\n",
      "1 \t 昆仑虚之巅@草榴社區\n",
      "1 \t [欧美美@草榴社区]\n",
      "1 \t 没线的风筝\n",
      "1 \t 尼尼撸-综合网站\n",
      "1 \t 100%真人激情裸聊 www.78xo.com\n",
      "1 \t jettej\n",
      "1 \t Daddy\n",
      "1 \t diamond\n",
      "1 \t 中文片库\n",
      "1 \t https://worldmkv.com\n",
      "1 \t b'yatsingkoon@\\xa1\\xb9\\xb6q\\xb3c\\xa4\\xc0\\xa8\\xc9\\xbd\\xd7\\xbe\\xc2\\xa1\\xb9'\n",
      "1 \t 入微\n",
      "1 \t https://discord.com/invite/wweVHZd6qg\n",
      "1 \t 602@第一会所\n",
      "1 \t 3484988vikci@第一会所\n",
      "1 \t evilzy\n",
      "1 \t 化骨龍\n",
      "1 \t https://www.kobo.com/ebook/an-archdemon-s-dilemma-how-to-love-your-elf-bride-volume-13\n",
      "1 \t cqkd_czy\n",
      "1 \t 不辣de皮特\n",
      "1 \t kaito\n",
      "1 \t u3c3.com\n",
      "1 \t ☆影视帝国论坛☆\n",
      "1 \t aaa23\n",
      "1 \t hevcbay.com\n",
      "1 \t gn7650104\n",
      "1 \t 老舅电影\n",
      "1 \t 捕鼠人\n",
      "1 \t https://www.gamestorrents.nu/\n",
      "1 \t 公主殿下@第一會所\n",
      "1 \t b'\\xb8\\xb4\\xbb\\xee126'\n",
      "1 \t 微信公众号:卡其影视分享\n",
      "1 \t 百虎动画\n",
      "1 \t 425307@癡漢俱樂部\n",
      "1 \t avp2p\n",
      "1 \t GIFchuchushipin\n",
      "1 \t EndlesSea\n",
      "1 \t Tanhuazu-探花族\n",
      "1 \t 推特搞啥呢\n",
      "1 \t @K8bet.io@\n",
      "1 \t Misfits\n",
      "1 \t 黑暗虫洞\n",
      "1 \t magazinesbb.com\n",
      "1 \t b'\\xc9\\xab\\xd6\\xd0\\xc9\\xab\\xd5\\x93\\x89\\xaf@www.SIS.xxx'\n",
      "1 \t 草榴社区@z10271\n",
      "1 \t 冰封爱河\n",
      "1 \t b'[http://www.uniongang.net] \\xd4\\xe8\\xeb\\xfc\\xec\\xfb \\xee\\xf2 ELEKTRI4KA | \\xdd\\xcb\\xc5\\xca\\xd2\\xd0\\xc8\\xd7\\xca\\xc0 \\xed\\xe0 Uniongang'\n",
      "1 \t zhangqq789@第一会所\n",
      "1 \t wangye6\n",
      "1 \t ann@myfun4u.org\n",
      "1 \t kino9999@18p2p\n",
      "1 \t b'CHD\\xc1\\xaa\\xc3\\xcb'\n",
      "1 \t satu@hongfire\n",
      "1 \t polee\n",
      "1 \t GM3089@18P2P\n",
      "1 \t BT工厂 @ 5120911\n",
      "1 \t sklc-P2P101.COM\n",
      "1 \t b'\\xb0\\xcb\\xd6\\xd8\\xf7\\xec'\n",
      "1 \t b'\\xcc\\xda\\xb7\\xc9\\xd4\\xda\\xcf\\xdf'\n",
      "1 \t b'doa_o[\\xb9\\xc5\\xce\\xef\\xce\\xdd]'\n",
      "1 \t 缘聚岛\n",
      "1 \t 素人辣妹正妹報報\n",
      "1 \t b'sweetsmile@CHD\\xc1\\xaa\\xc3\\xcb'\n",
      "1 \t javtv.me\n",
      "1 \t zhaochuan99\n",
      "1 \t 四魂制作组\n",
      "1 \t 动漫花園\n",
      "1 \t View my conspiracy torrents at\n",
      "1 \t 春卅娘@18p2p\n",
      "1 \t JPopsuki 2.0 904012437\n",
      "1 \t wearebest@18P2P\n",
      "1 \t HTCdesireHD@第一會所\n",
      "1 \t shinjico\n",
      "1 \t 得得撸 www.dedelu.com\n",
      "1 \t Western&HD-Jiggly\n",
      "1 \t ningchia\n",
      "1 \t filelist.ro\n",
      "1 \t dengzhi123_by_FDZone.ORG\n",
      "1 \t b'\\xab\\xb0\\xa5\\xab\\xad\\xb7\\xb1\\xa1 dioguitar23(\\xb2\\xc4\\xa4\\xbb\\xa4\\xd1\\xc5]\\xa4\\xfd)\\xad\\xec\\xb3\\xd0'\n",
      "1 \t HZHJS\n",
      "1 \t Audible\n",
      "1 \t skyuz\n",
      "1 \t ever\n",
      "1 \t El tio WAPILLO :v\n",
      "1 \t 草莓TV\n",
      "1 \t 加菲豆@第一会所\n",
      "1 \t yaoshiqiao\n",
      "1 \t PB\n",
      "1 \t b'\\xb9\\xda\\xa4\\xbd\\xb6\\xe9\\xaeT\\xbc\\xd6\\xa4u\\xa7{@p16847'\n",
      "1 \t 54CECB5A0EA7_by_FDZone.ORG\n",
      "1 \t b'\\xc0\\xcb\\xd7\\xd3\\xd0\\xa1\\xb5\\xb6'\n",
      "1 \t rendell_by_mimip2p.net, rendellxx_by_fdzone.org, rendell@SexInSex!\n",
      "1 \t https://e-hentai.org\n",
      "1 \t jinzebin86@18p2p.com\n",
      "1 \t birdmanfocker@18p2p\n",
      "1 \t GH37DgaBef6rQJyE2nvqb5YpS\n",
      "1 \t AVdian@126.com\n",
      "1 \t 亞瑟王\n",
      "1 \t b'Bianca_Cooper_Touch99.com \\xa6\\xb3\\xa7\\xf3\\xa6h\\xa6n\\xb9\\xcf'\n",
      "1 \t wT3j6PNrC5aOcD04yJ7xRotF8\n",
      "1 \t 村花论坛\n",
      "1 \t b'\\xc4\\xfa_\\x89\\xf4\\xb9\\xab\\x88@\\x8a\\xca\\x98\\xb7\\xb9\\xa4\\xb7\\xbb'\n",
      "1 \t FISH321@18P2P\n",
      "1 \t 第一会所 sis001\n",
      "1 \t huPE@18P2P\n",
      "1 \t houlai=biaoqian\n",
      "1 \t b'qilibi@\\xc1\\xf9\\xd4\\xc2\\xc2\\x93\\xc3\\xcb'\n",
      "1 \t 天池妖尊\n",
      "1 \t sing0212000\n",
      "1 \t wandy_by_FDZone.org\n",
      "1 \t XO@kazamis\n",
      "1 \t KOOK\n",
      "1 \t HQC\n",
      "1 \t mc733\n",
      "1 \t 爱游戏\n",
      "1 \t 1158012^@^18p2p\n",
      "1 \t b'Bianca_Cooper \\xa7\\xf3\\xa6h\\xac\\xfc\\xb9\\xcf\\xa5u\\xa6bTouch99'\n",
      "1 \t xiaocuitj\n",
      "1 \t 星星不舔屄\n",
      "1 \t https://www.crnaberza.com CrnaBerza\n",
      "1 \t boby@mimip2p\n",
      "1 \t magnet360@163.com\n",
      "1 \t Japanadultvideos 論壇 <-----按此瀏覽更多\n",
      "1 \t [http://x-torrents.nu] X-Torrents.org\n",
      "1 \t euphoricer\n",
      "1 \t zlb273692399@第一会所\n",
      "1 \t 花和尚\n",
      "1 \t b'\\xb4\\xbf\\xb0\\xae\\xc9\\xe7\\xc7\\xf8/wbzt'\n",
      "1 \t 三石@第一会所\n",
      "1 \t JackyCheung@草榴社區\n",
      "1 \t b'\\xbf\\xe7\\xca\\xa1\\xbe\\xdc\\xb7\\xf1@9999999'\n",
      "1 \t 菜牙电影网\n",
      "1 \t mehappy2012\n",
      "1 \t https://www.jp.square-enix.com/music/sem/page/chrono/trigger_revival/\n",
      "1 \t Scientists used to invent telephones, airplanes, microwave ovens... now all they invent is statistics that say they should get more funding.\n",
      "1 \t RoxMarty\n",
      "1 \t rczhi@18p2p.com\n",
      "1 \t kkk8568\n",
      "1 \t kenan2763\n",
      "1 \t arthurwarlike@第一会所\n",
      "1 \t b'\\xb3\\xc7\\xca\\xd0\\xefL\\xc7\\xe9~~\\xcb\\xba\\xd2\\xb9\\xd4\\xad\\x84\\x93'\n",
      "1 \t 東方明珠=ccvvm\n",
      "1 \t 从小缺钙\n",
      "1 \t www.lupola.com\n",
      "1 \t Jackie\n",
      "1 \t ashow.cc\n",
      "1 \t 品色影院\n",
      "1 \t 8400327@草榴社區\n",
      "1 \t gamezealot@18p2p\n",
      "1 \t uhla454@第一会所\n",
      "1 \t 宅鱼\n",
      "1 \t 1024核工厂 Bt7086\n",
      "1 \t hilllxs\n",
      "1 \t 豺狼也柔情\n",
      "1 \t 99堂\n",
      "1 \t 老肥\n",
      "1 \t Chikyuji-Animes, 2006 maggle!\n",
      "1 \t chaorentwo@18p2p\n",
      "1 \t 若無其事@18p2p.com\n",
      "1 \t hhd000.com\n",
      "1 \t 掠风窃尘\n",
      "1 \t b'\\xd3\\xd5\\xbb\\xf3\\xd3\\xe9\\xc0\\xd6\\xcd\\xf8\\xb5\\xe3\\xbb\\xf7\\xbd\\xf8\\xc8\\xeb \\xa8w\\xec\\xe1\\xbf\\xa1\\xc9\\xd9\\xec\\xe1\\xa8w'\n",
      "1 \t Kura999 from WaikeungBBS\n",
      "1 \t XFSUB\n",
      "1 \t huiasd\n",
      "1 \t b'Rory @ D.C.\\xb8\\xea\\xb0T\\xa5\\xe6\\xacy\\xba\\xf4'\n",
      "1 \t https://t.me/deletetvwrestling\n",
      "1 \t dodododo\n",
      "1 \t Rambo@18p2p\n",
      "1 \t b'\\xce\\xde\\xd0\\xc4\\xce\\xde\\xb4\\xe6'\n",
      "1 \t filmplay\n",
      "1 \t avdian@126.com\n",
      "1 \t 1025\n",
      "1 \t 956828@18p2p\n",
      "1 \t 夜游神\n",
      "1 \t b'\\xb2\\xbb\\xb5\\xc3\\xb2\\xbb\\xc9\\xab'\n",
      "1 \t vbiukj\n",
      "1 \t jnd16d\n",
      "1 \t 烽火不熄\n",
      "1 \t pietro716\n",
      "1 \t Lus\n",
      "1 \t b'\\x98Y\\xd4\\xad\\xa4\\xe6\\x97@'\n",
      "1 \t 國產無碼\n",
      "1 \t b'\\xd0\\xc2\\xc7\\xd7\\xc3\\xdc\\xb0\\xae\\xc8\\xcb\\xc2\\xdb\\xcc\\xb3@\\xd6\\xc1\\xd7\\xf0\\xcc\\xec\\xc1\\xfa'\n",
      "1 \t wangzhifeng@18p2p\n",
      "1 \t dabohong_by_fdzone.org\n",
      "1 \t TODO\n",
      "1 \t b'\\xb7\\xc9\\xd3\\xb0\\xbf\\xcd\\xcd\\xf8'\n",
      "1 \t yav.me\n",
      "1 \t Torrent downloaded from torrent cache at torcache.net\n",
      "1 \t http://www.jizhang1.space/?3316427\n",
      "1 \t handsomemouse@18p2p\n",
      "1 \t 面瘫\n",
      "1 \t yyyyyuuuuu@18p2p\n",
      "1 \t 狼主@SexInSex.net\n",
      "1 \t 1394130143@第一会所\n",
      "1 \t jove\n",
      "1 \t 电骡爱好者\n",
      "1 \t westkyo@www.sis001.com\n",
      "1 \t lzmcmbj@18p2p\n",
      "1 \t dioguitar23(第六天魔王)@dioguitar23.me\n",
      "1 \t VISTOR_by_FDZone.ORG\n",
      "1 \t chris930\n",
      "1 \t [WMAN-LorD] [UHD] [4K] [2160p] [REAL4K] [TGx]\n",
      "1 \t b'A\\xab\\xac\\xa4\\xa3\\xa8}\\xc3\\xc8'\n",
      "1 \t b'\\xb8\\xfc\\xb6\\xe0\\xb8\\xfc\\xd0\\xc2\\xb5\\xe7\\xd3\\xb0\\xcf\\xc2\\xd4\\xd8\\xc7\\xeb\\xb5\\xe3\\xbb\\xf7\\xd5\\xe2\\xc0\\xef'\n",
      "1 \t destiny999@18p2p\n",
      "1 \t HOUSEKEEPER\n",
      "1 \t RV原创组\n",
      "1 \t b'\\xc3\\xe2\\xb7\\xd1\\xd4\\xda\\xcf\\xdf\\xd2\\xf4\\xc0\\xd6'\n",
      "1 \t www.1024pk.com\n",
      "1 \t 爱城\n",
      "1 \t amge50@www.sogclub.com\n",
      "1 \t OneStar\n",
      "1 \t b'Jocky123#\\xb8\\xfc\\xb6\\xe0\\xb5\\xc4\\xbe\\xab\\xb2\\xca\\xd3\\xb0\\xc6\\xac!'\n",
      "1 \t https://getcomics.info\n",
      "1 \t 点击-海量种子\n",
      "1 \t btziyuan\n",
      "1 \t [http://x-torrents.org] X-Torrents.org (ex X-Torrents.ru)\n",
      "1 \t https://www.lspback.com\n",
      "1 \t foxmoder996\n",
      "1 \t https://share.dmhy.org/topics/list/user_id/712935\n",
      "1 \t 玛尔亲王@第一会所\n",
      "1 \t rtjhuytu\n",
      "1 \t 淨空法師專集網站\n",
      "1 \t b'\\xa1\\xb6\\xbd\\xcc\\xd3\\xfd\\xca\\xd6\\xc0\\xad\\xca\\xd6\\xa1\\xb7'\n",
      "1 \t mc733+zgome\n",
      "1 \t Goddess\n",
      "1 \t NikeのB@第一会所\n",
      "1 \t b'dvt\\xb0\\xc9'\n",
      "1 \t 微博:止于影书,公众号:影遇见书,@小鱼\n",
      "1 \t free4\n",
      "1 \t 靜風@sis001\n",
      "1 \t dcsk_By_FDZone.org\n",
      "1 \t sigma@www.mimip2p.com\n",
      "1 \t 看翍荭尘\n",
      "1 \t bjiok\n",
      "1 \t lins2b\n",
      "1 \t 小馬克_by_FDZone.ORG\n",
      "1 \t FSFS555@第一会所\n",
      "1 \t flowerff\n",
      "1 \t lascruces\n",
      "1 \t ?nike?\n",
      "1 \t SEX8.CC\n",
      "1 \t b'\\xb3\\xc9\\xc8\\xcb\\xc2\\xdb\\xcc\\xb3\\xbf\\xaa\\xb7\\xc5\\xd7\\xa2\\xb2\\xe1'\n",
      "1 \t APKMAZA.CO\n",
      "1 \t 13121152@18p2p\n",
      "1 \t UID 185363@www.mimip2p.com\n",
      "1 \t b'\\xa4^\\xa4\\xa2\\xb5\\xbe@FDZone.org'\n",
      "1 \t 更多资源联系qq1273288348\n",
      "1 \t https://nyaa.si/user/mrshowoff\n",
      "1 \t https://boards.4channel.org/h/#s=hentai+upscales\n",
      "1 \t mimu@18P2P\n",
      "1 \t b'\\xd7\\xd3\\xc7\\xe9 \\xd7\\xa3\\xba\\xd8\\xc9\\xab\\xd6\\xd0\\xc9\\xab \\xcb\\xc4\\xd6\\xdc\\xc4\\xea \\xcc\\xd8\\xb1\\xf0\\xcb\\xae\\xd3\\xa1\\xd1\\xb9\\xd6\\xc6'\n",
      "1 \t 殇情\n",
      "1 \t 风来西林\n",
      "1 \t b'Nike\\xa4\\xce\\xa3\\xc2'\n",
      "1 \t [www.pttime.org] PT时间\n",
      "1 \t QxR\n",
      "1 \t sunchiua_by_P2Pzone.org\n",
      "1 \t wazx528\n",
      "1 \t popgofansub\n",
      "1 \t b'\\xc3\\xe2\\xb7\\xd1\\xb5\\xe7\\xd3\\xb0\\xcf\\xc2\\xd4\\xd8\\xbb\\xf9\\xb5\\xd8'\n",
      "1 \t gremichaem\n",
      "1 \t b'\\xd0\\xc7\\xb3\\xbd\\xd0\\xa1\\xb7\\xe7\\xa3\\xa6\\xbe\\xab\\xc9\\xf1\\xc9\\xab\\xcb\\xd8\\xa3\\xa6cookiexp\\xa3\\xc0\\xd1\\xb0\\xba\\xfc\\xc9\\xe7\\xc7\\xf8'\n",
      "1 \t sukebei.nyaa.si\n",
      "1 \t pademon18p2p\n",
      "1 \t aaamfk+zgome+bbryans\n",
      "1 \t cyxy@http://38.114.38.172/forum/\n",
      "1 \t b'\\xd3\\xd7\\xc5\\xae\\xbc\\xab\\xc6\\xb7'\n",
      "1 \t https://e-hentai.org/g/2375721/1b5e081312/\n",
      "1 \t 18P2P_dioguitar23.co(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "1 \t b'AV\\xce\\xc4\\x99n\\xa3\\xfcADULT INTEGRATED COMMUNITY'\n",
      "1 \t UID 1357210@18P2P.com\n",
      "1 \t fuckkkingou\n",
      "1 \t 闲云野鹤\n",
      "1 \t LAPUMiA.NeT\n",
      "1 \t adult_cn\n",
      "1 \t psoke\n",
      "1 \t 18p2p@liyang8926\n",
      "1 \t littlefatbee\n",
      "1 \t 秋叶TV\n",
      "1 \t msy91\n",
      "1 \t Niraya\n",
      "1 \t https://www.kobo.com/ebook/that-time-i-got-reincarnated-as-a-slime-vol-13-light-novel\n",
      "1 \t JPopsuki 2.0 941661648\n",
      "1 \t yamyedye@18P2P\n",
      "1 \t dansnow\n",
      "1 \t H2CO3\n",
      "1 \t b'\\x8e\\xf7\\x8e\\xf7@\\x88\\xc3\\x91\\xe9\\x9a\\xa0\\x8c\\xb4\\x91n'\n",
      "1 \t kamigami\n",
      "1 \t G@1024核工廠\n",
      "1 \t The Seaside Corpse\n",
      "1 \t b'\\xadw\\xbd\\xde_by_FDZone.ORG'\n",
      "1 \t fangbayern\n",
      "1 \t 君乐\n",
      "1 \t Doctor Who\n",
      "1 \t 第一流氓@18P2P\n",
      "1 \t Deviloid.net\n",
      "1 \t b'\\xc1\\xf9\\xd4\\xc2\\xc1\\xaa\\xc3\\xcb hgfhgf'\n",
      "1 \t wcer@18p2p.com\n",
      "1 \t https://www.yitarx.com\n",
      "1 \t wuchengzhou9000@www.SexInSex.net\n",
      "1 \t nwcd\n",
      "1 \t p2p_user@mimip2p\n",
      "1 \t zza@live.com\n",
      "1 \t 清风浪子@草榴社区\n",
      "1 \t http://www.zone54.com\n",
      "1 \t ssan998\n",
      "1 \t xxfhd.com\n",
      "1 \t mybmw320_by_SpeedPluss.ORG\n",
      "1 \t woaibt@1024核工厂\n",
      "1 \t b'[http://www.uniongang.tv] \\xd4\\xe8\\xeb\\xfc\\xec\\xfb \\xee\\xf2 ELEKTRI4KA | \\xdd\\xcb\\xc5\\xca\\xd2\\xd0\\xc8\\xd7\\xca\\xc0 \\xed\\xe0 Uniongang'\n",
      "1 \t hegongc163\n",
      "1 \t t66y\n",
      "1 \t cctc55\n",
      "1 \t tto@18P2P\n",
      "1 \t Antidot Team\n",
      "1 \t Torrent Galaxy\n",
      "1 \t 萤火虫IT服务全国连锁\n",
      "1 \t 葬爱@18p2p\n",
      "1 \t 贴心话\n",
      "1 \t xuerui810405\n",
      "1 \t SoulSeek\n",
      "1 \t abbt@18p2p.com\n",
      "1 \t lixuhua\n",
      "1 \t b'\\xcc\\x93\\x9fo'\n",
      "1 \t animekayo.com\n",
      "1 \t qiupianhao\n",
      "1 \t 173489627\n",
      "1 \t wak11110@18P2P\n",
      "1 \t [http://hdtracker.org] HD TRACKER\n",
      "1 \t www.eien-acg.com\n",
      "1 \t index0123\n",
      "1 \t hndwje\n",
      "1 \t http://www.meitubb.com/forum.php\n",
      "1 \t https://anidb.net/file/3082403\n",
      "1 \t 更多精彩 @ 卡卡拉\n",
      "1 \t olo@第一会所\n",
      "1 \t https://e-hentai.org/g/2255154/778b4d24e6/\n",
      "1 \t sujinding@第一会所\n",
      "1 \t MKO\n",
      "1 \t chleicool=fym0624=patpat608\n",
      "1 \t 撸二九论坛\n",
      "1 \t flybird186\n",
      "1 \t b'[http://hdclub.org] \\xd2\\xf0\\xe5\\xea\\xe5\\xf0 HDClub - \\xf1\\xea\\xe0\\xf7\\xe0\\xf2\\xfc \\xe1\\xe5\\xf1\\xef\\xeb\\xe0\\xf2\\xed\\xee \\xf4\\xe8\\xeb\\xfc\\xec\\xfb HD, \\xf1\\xea\\xe0\\xf7\\xe0\\xf2\\xfc Blu-ray \\xf4\\xe8\\xeb\\xfc\\xec\\xfb, HD DVD \\xe8 HD audio, HDTV \\xf2\\xee\\xf0\\xf0\\xe5\\xed\\xf2'\n",
      "1 \t https://www.omgyes.com\n",
      "1 \t DVD 2008\n",
      "1 \t b'[http://uniongang.tv] \\xd4\\xe8\\xeb\\xfc\\xec\\xfb \\xee\\xf2 ELEKTRI4KA | \\xdd\\xcb\\xc5\\xca\\xd2\\xd0\\xc8\\xd7\\xca\\xc0 \\xed\\xe0 Uniongang'\n",
      "1 \t b'\\xb9\\xfd\\xc5\\xab\\xd6\\xc6\\xd4\\xec\\xb2\\xa9\\xbf\\xcd'\n",
      "1 \t 3267506\n",
      "1 \t 中国电信\n",
      "1 \t 9clonely\n",
      "1 \t b'\\xd2\\xf9\\xc3\\xf1\\xcd\\xf2\\xcb\\xea'\n",
      "1 \t 幸运流星@四仔论坛\n",
      "1 \t Lista Espiritualista\n",
      "1 \t 雪光梦想\n",
      "1 \t https://exhentai.org/g/1964478/8ed0a899ca\n",
      "1 \t olo@sis001\n",
      "1 \t 3zi@第一會所\n",
      "1 \t Andy\n",
      "1 \t b'\\xb7\\xd6\\xcf\\xed'\n",
      "1 \t 24262830.\n",
      "1 \t 食色性者\n",
      "1 \t aj11@mimip2p.net\n",
      "1 \t srwH\n",
      "1 \t 鴻仔\n",
      "1 \t 校园迷糊大王\n",
      "1 \t WCG\n",
      "1 \t b'(\\xd3\\xf4\\xc3\\xc6)\\xb0\\xae\\xbf\\xb4\\xb5\\xe7\\xd3\\xb0'\n",
      "1 \t kiva@18p2p\n",
      "1 \t b'\\xbb\\xd8\\xbc\\xd2001@18p2p'\n",
      "1 \t ffxx\n",
      "1 \t chikan@T66Y\n",
      "1 \t 瑞倪维儿护肤专卖\n",
      "1 \t auriga@18p2p\n",
      "1 \t yinchong818@(sis)\n",
      "1 \t 酷安\n",
      "1 \t JPopsuki 2.0 14486345\n",
      "1 \t 若無其事@18p2p\n",
      "1 \t b'stormly+taitan12+zhaoZero41+chinami2002+glen246+faberge@darkeagle-\\xbax\\x84\\xf0\\xaa\\xc0'\n",
      "1 \t CMCT团队荣誉出品\n",
      "1 \t kennyboy\n",
      "1 \t 2AV.COM\n",
      "1 \t DoraemonLL\n",
      "1 \t duwangyang\n",
      "1 \t cjy21\n",
      "1 \t cnman@18P2P\n",
      "1 \t zwl508\n",
      "1 \t hangzhouyang\n",
      "1 \t 99BT工厂\n",
      "1 \t TorrentLeech.org\n",
      "1 \t MPCStar\n",
      "1 \t sharemovie\n",
      "1 \t sexav.tv\n",
      "1 \t bbking\n",
      "1 \t giga17100\n",
      "1 \t QQ272286821\n",
      "1 \t 尤里\n",
      "1 \t 吴天@第一会所\n",
      "1 \t MyAV@18p2p\n",
      "1 \t b'\\xa5\\xda\\xa9`\\xa5\\xdd\\xa5\\xeb\\xa5\\xed\\xa9`\\xa5\\xb9'\n",
      "1 \t 牛丝社\n",
      "1 \t 汐\n",
      "1 \t nvsdyi\n",
      "1 \t oldman@18p2p\n",
      "1 \t b'dioguitar23\\xad\\xec\\xb3\\xd0'\n",
      "1 \t b'\\xb6\\xe0\\xb2\\xca\\xc9\\xe7\\xc7\\xf8'\n",
      "1 \t lianghua@18p2p\n",
      "1 \t aiai2013\n",
      "1 \t computerking123@www.SexInSex.net\n",
      "1 \t b'dioguitar23(\\xb2\\xc4\\xa4\\xbb\\xa4\\xd1\\xc5]\\xa4\\xfd)@hotavxxx.com'\n",
      "1 \t 梦幻天堂·龙网@航子(www.LWgod.cc)\n",
      "1 \t dio99.com(第六天魔王)@最新AV海量免費播放~魔王在線\n",
      "1 \t deatht\n",
      "1 \t 18P2Pjheang168\n",
      "1 \t 性吧发片部 ou89279546\n",
      "1 \t b'\\xc4\\xfa'\n",
      "1 \t jasonchan@18p2p\n",
      "1 \t https://t.me/zongmange\n",
      "1 \t asiamarket@18p2p\n",
      "1 \t huanglaoda@xuhu\n",
      "1 \t sxjjh7171\n",
      "1 \t 喜歡下雨天@SIS001\n",
      "1 \t Nikola\n",
      "1 \t 好人\n",
      "1 \t b'\\xcf\\xeb\\xb0l\\x85s\\xb2\\xbb\\x95\\xfe'\n",
      "1 \t Wowshadow.net\n",
      "1 \t Fp\n",
      "1 \t 色花堂—FVG\n",
      "1 \t b'\\xba\\xda\\xb0\\xb5\\xca\\xa5\\xb5\\xee'\n",
      "1 \t xmq\n",
      "1 \t kilin\n",
      "1 \t http://mmgg.cctve.cn/\n",
      "1 \t UID: 661086 UID: 1258553 UID: 78965\n",
      "1 \t WOLF字幕组\n",
      "1 \t chaijoe@18p2p\n",
      "1 \t https://one2048.com\n",
      "1 \t lloveppp@18p2p\n",
      "1 \t (同城裸聊约炮)\n",
      "1 \t b'[https://tracker.0day.kiev.ua] \\xd2\\xf0\\xe5\\xea\\xe5\\xf0 0day.kiev.ua'\n",
      "1 \t Ferech\n",
      "1 \t SRD\n",
      "1 \t プリズム☆ま~じカル ~PRISM Generations!~\n",
      "1 \t Blu-Ray\n",
      "1 \t wuaibin\n",
      "1 \t JPopsuki 2.0 1081189358\n",
      "1 \t b'\\xb2D\\xad\\xb7\\xae\\xf6\\xa4l'\n",
      "1 \t 哆学家\n",
      "1 \t Forest of Good and Evil 1-2\n",
      "1 \t DOBI\n",
      "1 \t QQ:649020789\n",
      "1 \t JPopsuki 2.0 383208255\n",
      "1 \t http://ehtracker.org/2135832/announce\n",
      "1 \t shuangyuboy@第一會所\n",
      "1 \t №追风少年☆@第一会所\n",
      "1 \t dontknowhat (TGx)\n",
      "1 \t LAPUMiA.Org\n",
      "1 \t fhm2888@第一会所\n",
      "1 \t https://rips.club/\n",
      "1 \t 魅影论坛\n",
      "1 \t 最新网址\n",
      "1 \t Zamunda.SE\n",
      "1 \t 整理不易,请保种\n",
      "1 \t https://freeplay.space/\n",
      "1 \t b'\\xacn\\xacn\\xad^\\xb6\\xaf\\xa4Q\\xa4K\\xa5{ \\xad\\xba\\xad\\xb6'\n",
      "1 \t wo010101\n",
      "1 \t abner166@18p2p\n",
      "1 \t dioguitar23(第六天魔王)原創\n",
      "1 \t life小絮\n",
      "1 \t tvboxnow\n",
      "1 \t 撸一发吧\n",
      "1 \t haobu3455\n",
      "1 \t anikaiser@18p2p\n",
      "1 \t b'5Q \\xcb\\xae\\xe9\\xbf\\xcd\\xa4@\\xc6\\xe6\\xd1\\xc8'\n",
      "1 \t javkiss\n",
      "1 \t wangxiaowu005@www.SexInSex.net\n",
      "1 \t lanyidong\n",
      "1 \t www.preall.com\n",
      "1 \t 18p2p~海綿體 原創\n",
      "1 \t b'\\xc1x\\xd3\\xc2\\xeb\\x85\\xcc\\xec\\xeaP\\xeb\\x85\\xe9L'\n",
      "1 \t 吉时综合论坛\n",
      "1 \t 愛在黑夜\n",
      "1 \t 天使动漫\n",
      "1 \t LJZ\n",
      "1 \t spider.\n",
      "1 \t b'\\xbb\\xb7\\xc7\\xf2\\xbc\\xab\\xcf\\xde\\xcf\\xc2\\xd4\\xd8'\n",
      "1 \t HHH\n",
      "1 \t 蜂鸟-日本同步-首发\n",
      "1 \t b'\\xc5\\xb0\\xb0\\xae\\xd3\\xd7\\xd3\\xd7'\n",
      "1 \t yakupe\n",
      "1 \t UID-968398@18P2P\n",
      "1 \t b'\\xc3\\xa8\\xba~\\xad\\xd1\\xbc\\xd6\\xb3\\xa1@\\xb4A\\xab\\xbd\\xa8\\xe0'\n",
      "1 \t b'lniklegend[\\xe3n\\xa4\\xeb\\xad\\xec\\xb3\\xd0\\xb2\\xd5]'\n",
      "1 \t JPopsuki 2.0 600921940\n",
      "1 \t https://exhentai.org/g/1701233/d6aed3161e/\n",
      "1 \t b'you15648g \\xad\\xec\\xb3\\xd0\\xb5o\\xb0e'\n",
      "1 \t yihyii@www.sogclub.com\n",
      "0 \t ostali\n"
     ]
    }
   ],
   "source": [
    "s = monotonic()\n",
    "def removeminorities(population, minrepr=0, ostalo=\"ostalo\"):\n",
    "    true = {ostalo: 0}\n",
    "    for key, value in population.items():\n",
    "        if value < minrepr:\n",
    "            true[ostalo] += value\n",
    "        else:\n",
    "            true[key] = value\n",
    "    return true\n",
    "def sources():\n",
    "    sources = {}\n",
    "    for sha1, torrent in torrents.items():\n",
    "        source = torrent.dict.get(b'info').get(b'source')\n",
    "        if source is None:\n",
    "            source = torrent.dict.get(b'info').get(b'publisher')\n",
    "        if source is None:\n",
    "            source = torrent.dict.get(b'info').get(b'publisher-url')\n",
    "        if source is None:\n",
    "            source = torrent.dict.get(b'info').get(b'comment')\n",
    "        try:\n",
    "            if type(source) is bytes:\n",
    "                source = source.decode().strip()\n",
    "        except UnicodeDecodeError:\n",
    "            pass\n",
    "        if source not in sources.keys():\n",
    "            sources[source] = 1\n",
    "        else:\n",
    "            sources[source] += 1\n",
    "    return sources\n",
    "sources = sources()\n",
    "sources = removeminorities(sources, len(sources)*0, \"ostali\")\n",
    "sort = sorted(sources, reverse=True, key=lambda x:sources[x])\n",
    "sort.remove(None)\n",
    "print(monotonic()-s, \"s\", sources[None]/len(torrents)*100, \"brez ključa source, publisher, publisher-url ali comment\", len(sources), \"virov\")\n",
    "%matplotlib notebook\n",
    "fig, ax = pyplot.subplots();\n",
    "ax.barh([str(x) for x in sort], [sources[x] for x in sort])\n",
    "pyplot.xscale(\"log\")\n",
    "pyplot.xlabel(\"število pojavitev distributerja\")\n",
    "fig.show() ## TODO komentiraj\n",
    "from tabulate import tabulate\n",
    "tabulate([[x, sources[x]] for x in sort], tablefmt=\"html\")\n",
    "for x in sort:\n",
    "    print(sources[x], \"\\t\", x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "4bd1f517",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "...\n",
      "9.70247226092033 s 335643 različnih tipov v 3084321 datotekah in 259.2602232018344 TiB\n"
     ]
    }
   ],
   "source": [
    "s = monotonic()\n",
    "from mimetypes import guess_type\n",
    "def ext(mime=False, minreprratio=0):\n",
    "    bycount = {}\n",
    "    bysize = {}\n",
    "    bysizerepresentative = {}\n",
    "    filescount = 0\n",
    "    bytescount = 0\n",
    "    for sha1, torrent in torrents.items():\n",
    "        try:\n",
    "            representatives = {}\n",
    "            for path, size in torrent.paths():\n",
    "                filescount += 1\n",
    "                bytescount += size\n",
    "                if mime:\n",
    "                    ext = guess_type(path.pop().decode(encoding=\"iso-8859-2\"))[0]\n",
    "                else:\n",
    "                    ext = path.pop().split(b'.').pop().decode(encoding=\"iso-8859-2\").lower()\n",
    "                if ext not in bycount.keys():\n",
    "                    bycount[ext] = 1\n",
    "                else:\n",
    "                    bycount[ext] += 1\n",
    "                if ext not in bysize.keys():\n",
    "                    bysize[ext] = size\n",
    "                else:\n",
    "                    bysize[ext] += size\n",
    "                if ext not in representatives.keys():\n",
    "                    representatives[ext] = size\n",
    "                else:\n",
    "                    representatives[ext] += size\n",
    "        except AttributeError:\n",
    "            print(sha1.hex(), torrent)\n",
    "            raise AttributeError\n",
    "        try:\n",
    "            representative = sorted(representatives, key=lambda x:representatives[x]).pop()\n",
    "        except IndexError:\n",
    "            print(sha1.hex(), torrent)\n",
    "            raise IndexError\n",
    "        if representative not in bysizerepresentative.keys():\n",
    "            bysizerepresentative[representative] = 1\n",
    "        else:\n",
    "            bysizerepresentative[representative] += 1\n",
    "    truebycount = removeminorities(bycount, minreprratio*filescount, \"ostale\")\n",
    "    truebysize = removeminorities(bysize, minreprratio*bytescount, \"ostale\")\n",
    "    truebysizerepresentative = removeminorities(bysizerepresentative, minreprratio*len(torrents), \"ostale\")\n",
    "    for data in [truebycount, truebysize, truebysizerepresentative]:\n",
    "        data = [(v, k) for k, v in data.items()]\n",
    "    return truebycount, truebysize, truebysizerepresentative, len(bycount), filescount, bytescount\n",
    "print(\"...\")\n",
    "bycount, bysize, bysizerepresentative, kinds, filescount, bytescount = ext(False, 0.001)\n",
    "print(monotonic()-s, \"s\", kinds, \"različnih tipov v\", filescount, \"datotekah in\", bytescount/(1024**4), \"TiB\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "82ab922a",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/javascript": [
       "/* Put everything inside the global mpl namespace */\n",
       "/* global mpl */\n",
       "window.mpl = {};\n",
       "\n",
       "mpl.get_websocket_type = function () {\n",
       "    if (typeof WebSocket !== 'undefined') {\n",
       "        return WebSocket;\n",
       "    } else if (typeof MozWebSocket !== 'undefined') {\n",
       "        return MozWebSocket;\n",
       "    } else {\n",
       "        alert(\n",
       "            'Your browser does not have WebSocket support. ' +\n",
       "                'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
       "                'Firefox 4 and 5 are also supported but you ' +\n",
       "                'have to enable WebSockets in about:config.'\n",
       "        );\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure = function (figure_id, websocket, ondownload, parent_element) {\n",
       "    this.id = figure_id;\n",
       "\n",
       "    this.ws = websocket;\n",
       "\n",
       "    this.supports_binary = this.ws.binaryType !== undefined;\n",
       "\n",
       "    if (!this.supports_binary) {\n",
       "        var warnings = document.getElementById('mpl-warnings');\n",
       "        if (warnings) {\n",
       "            warnings.style.display = 'block';\n",
       "            warnings.textContent =\n",
       "                'This browser does not support binary websocket messages. ' +\n",
       "                'Performance may be slow.';\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.imageObj = new Image();\n",
       "\n",
       "    this.context = undefined;\n",
       "    this.message = undefined;\n",
       "    this.canvas = undefined;\n",
       "    this.rubberband_canvas = undefined;\n",
       "    this.rubberband_context = undefined;\n",
       "    this.format_dropdown = undefined;\n",
       "\n",
       "    this.image_mode = 'full';\n",
       "\n",
       "    this.root = document.createElement('div');\n",
       "    this.root.setAttribute('style', 'display: inline-block');\n",
       "    this._root_extra_style(this.root);\n",
       "\n",
       "    parent_element.appendChild(this.root);\n",
       "\n",
       "    this._init_header(this);\n",
       "    this._init_canvas(this);\n",
       "    this._init_toolbar(this);\n",
       "\n",
       "    var fig = this;\n",
       "\n",
       "    this.waiting = false;\n",
       "\n",
       "    this.ws.onopen = function () {\n",
       "        fig.send_message('supports_binary', { value: fig.supports_binary });\n",
       "        fig.send_message('send_image_mode', {});\n",
       "        if (fig.ratio !== 1) {\n",
       "            fig.send_message('set_device_pixel_ratio', {\n",
       "                device_pixel_ratio: fig.ratio,\n",
       "            });\n",
       "        }\n",
       "        fig.send_message('refresh', {});\n",
       "    };\n",
       "\n",
       "    this.imageObj.onload = function () {\n",
       "        if (fig.image_mode === 'full') {\n",
       "            // Full images could contain transparency (where diff images\n",
       "            // almost always do), so we need to clear the canvas so that\n",
       "            // there is no ghosting.\n",
       "            fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
       "        }\n",
       "        fig.context.drawImage(fig.imageObj, 0, 0);\n",
       "    };\n",
       "\n",
       "    this.imageObj.onunload = function () {\n",
       "        fig.ws.close();\n",
       "    };\n",
       "\n",
       "    this.ws.onmessage = this._make_on_message_function(this);\n",
       "\n",
       "    this.ondownload = ondownload;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_header = function () {\n",
       "    var titlebar = document.createElement('div');\n",
       "    titlebar.classList =\n",
       "        'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n",
       "    var titletext = document.createElement('div');\n",
       "    titletext.classList = 'ui-dialog-title';\n",
       "    titletext.setAttribute(\n",
       "        'style',\n",
       "        'width: 100%; text-align: center; padding: 3px;'\n",
       "    );\n",
       "    titlebar.appendChild(titletext);\n",
       "    this.root.appendChild(titlebar);\n",
       "    this.header = titletext;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._init_canvas = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var canvas_div = (this.canvas_div = document.createElement('div'));\n",
       "    canvas_div.setAttribute('tabindex', '0');\n",
       "    canvas_div.setAttribute(\n",
       "        'style',\n",
       "        'border: 1px solid #ddd;' +\n",
       "            'box-sizing: content-box;' +\n",
       "            'clear: both;' +\n",
       "            'min-height: 1px;' +\n",
       "            'min-width: 1px;' +\n",
       "            'outline: 0;' +\n",
       "            'overflow: hidden;' +\n",
       "            'position: relative;' +\n",
       "            'resize: both;' +\n",
       "            'z-index: 2;'\n",
       "    );\n",
       "\n",
       "    function on_keyboard_event_closure(name) {\n",
       "        return function (event) {\n",
       "            return fig.key_event(event, name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'keydown',\n",
       "        on_keyboard_event_closure('key_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'keyup',\n",
       "        on_keyboard_event_closure('key_release')\n",
       "    );\n",
       "\n",
       "    this._canvas_extra_style(canvas_div);\n",
       "    this.root.appendChild(canvas_div);\n",
       "\n",
       "    var canvas = (this.canvas = document.createElement('canvas'));\n",
       "    canvas.classList.add('mpl-canvas');\n",
       "    canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: relative;' +\n",
       "            'z-index: 0;'\n",
       "    );\n",
       "\n",
       "    this.context = canvas.getContext('2d');\n",
       "\n",
       "    var backingStore =\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        this.context.webkitBackingStorePixelRatio ||\n",
       "        this.context.mozBackingStorePixelRatio ||\n",
       "        this.context.msBackingStorePixelRatio ||\n",
       "        this.context.oBackingStorePixelRatio ||\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        1;\n",
       "\n",
       "    this.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
       "\n",
       "    var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n",
       "        'canvas'\n",
       "    ));\n",
       "    rubberband_canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'left: 0;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: absolute;' +\n",
       "            'top: 0;' +\n",
       "            'z-index: 1;'\n",
       "    );\n",
       "\n",
       "    // Apply a ponyfill if ResizeObserver is not implemented by browser.\n",
       "    if (this.ResizeObserver === undefined) {\n",
       "        if (window.ResizeObserver !== undefined) {\n",
       "            this.ResizeObserver = window.ResizeObserver;\n",
       "        } else {\n",
       "            var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n",
       "            this.ResizeObserver = obs.ResizeObserver;\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n",
       "        var nentries = entries.length;\n",
       "        for (var i = 0; i < nentries; i++) {\n",
       "            var entry = entries[i];\n",
       "            var width, height;\n",
       "            if (entry.contentBoxSize) {\n",
       "                if (entry.contentBoxSize instanceof Array) {\n",
       "                    // Chrome 84 implements new version of spec.\n",
       "                    width = entry.contentBoxSize[0].inlineSize;\n",
       "                    height = entry.contentBoxSize[0].blockSize;\n",
       "                } else {\n",
       "                    // Firefox implements old version of spec.\n",
       "                    width = entry.contentBoxSize.inlineSize;\n",
       "                    height = entry.contentBoxSize.blockSize;\n",
       "                }\n",
       "            } else {\n",
       "                // Chrome <84 implements even older version of spec.\n",
       "                width = entry.contentRect.width;\n",
       "                height = entry.contentRect.height;\n",
       "            }\n",
       "\n",
       "            // Keep the size of the canvas and rubber band canvas in sync with\n",
       "            // the canvas container.\n",
       "            if (entry.devicePixelContentBoxSize) {\n",
       "                // Chrome 84 implements new version of spec.\n",
       "                canvas.setAttribute(\n",
       "                    'width',\n",
       "                    entry.devicePixelContentBoxSize[0].inlineSize\n",
       "                );\n",
       "                canvas.setAttribute(\n",
       "                    'height',\n",
       "                    entry.devicePixelContentBoxSize[0].blockSize\n",
       "                );\n",
       "            } else {\n",
       "                canvas.setAttribute('width', width * fig.ratio);\n",
       "                canvas.setAttribute('height', height * fig.ratio);\n",
       "            }\n",
       "            /* This rescales the canvas back to display pixels, so that it\n",
       "             * appears correct on HiDPI screens. */\n",
       "            canvas.style.width = width + 'px';\n",
       "            canvas.style.height = height + 'px';\n",
       "\n",
       "            rubberband_canvas.setAttribute('width', width);\n",
       "            rubberband_canvas.setAttribute('height', height);\n",
       "\n",
       "            // And update the size in Python. We ignore the initial 0/0 size\n",
       "            // that occurs as the element is placed into the DOM, which should\n",
       "            // otherwise not happen due to the minimum size styling.\n",
       "            if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    this.resizeObserverInstance.observe(canvas_div);\n",
       "\n",
       "    function on_mouse_event_closure(name) {\n",
       "        /* User Agent sniffing is bad, but WebKit is busted:\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=144526\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=181818\n",
       "         * The worst that happens here is that they get an extra browser\n",
       "         * selection when dragging, if this check fails to catch them.\n",
       "         */\n",
       "        var UA = navigator.userAgent;\n",
       "        var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n",
       "        if(isWebKit) {\n",
       "            return function (event) {\n",
       "                /* This prevents the web browser from automatically changing to\n",
       "                 * the text insertion cursor when the button is pressed. We\n",
       "                 * want to control all of the cursor setting manually through\n",
       "                 * the 'cursor' event from matplotlib */\n",
       "                event.preventDefault()\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        } else {\n",
       "            return function (event) {\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        }\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mousedown',\n",
       "        on_mouse_event_closure('button_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseup',\n",
       "        on_mouse_event_closure('button_release')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'dblclick',\n",
       "        on_mouse_event_closure('dblclick')\n",
       "    );\n",
       "    // Throttle sequential mouse events to 1 every 20ms.\n",
       "    canvas_div.addEventListener(\n",
       "        'mousemove',\n",
       "        on_mouse_event_closure('motion_notify')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseenter',\n",
       "        on_mouse_event_closure('figure_enter')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseleave',\n",
       "        on_mouse_event_closure('figure_leave')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener('wheel', function (event) {\n",
       "        if (event.deltaY < 0) {\n",
       "            event.step = 1;\n",
       "        } else {\n",
       "            event.step = -1;\n",
       "        }\n",
       "        on_mouse_event_closure('scroll')(event);\n",
       "    });\n",
       "\n",
       "    canvas_div.appendChild(canvas);\n",
       "    canvas_div.appendChild(rubberband_canvas);\n",
       "\n",
       "    this.rubberband_context = rubberband_canvas.getContext('2d');\n",
       "    this.rubberband_context.strokeStyle = '#000000';\n",
       "\n",
       "    this._resize_canvas = function (width, height, forward) {\n",
       "        if (forward) {\n",
       "            canvas_div.style.width = width + 'px';\n",
       "            canvas_div.style.height = height + 'px';\n",
       "        }\n",
       "    };\n",
       "\n",
       "    // Disable right mouse context menu.\n",
       "    canvas_div.addEventListener('contextmenu', function (_e) {\n",
       "        event.preventDefault();\n",
       "        return false;\n",
       "    });\n",
       "\n",
       "    function set_focus() {\n",
       "        canvas.focus();\n",
       "        canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    window.setTimeout(set_focus, 100);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'mpl-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'mpl-button-group';\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'mpl-button-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        var button = (fig.buttons[name] = document.createElement('button'));\n",
       "        button.classList = 'mpl-widget';\n",
       "        button.setAttribute('role', 'button');\n",
       "        button.setAttribute('aria-disabled', 'false');\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "\n",
       "        var icon_img = document.createElement('img');\n",
       "        icon_img.src = '_images/' + image + '.png';\n",
       "        icon_img.srcset = '_images/' + image + '_large.png 2x';\n",
       "        icon_img.alt = tooltip;\n",
       "        button.appendChild(icon_img);\n",
       "\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    var fmt_picker = document.createElement('select');\n",
       "    fmt_picker.classList = 'mpl-widget';\n",
       "    toolbar.appendChild(fmt_picker);\n",
       "    this.format_dropdown = fmt_picker;\n",
       "\n",
       "    for (var ind in mpl.extensions) {\n",
       "        var fmt = mpl.extensions[ind];\n",
       "        var option = document.createElement('option');\n",
       "        option.selected = fmt === mpl.default_extension;\n",
       "        option.innerHTML = fmt;\n",
       "        fmt_picker.appendChild(option);\n",
       "    }\n",
       "\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.request_resize = function (x_pixels, y_pixels) {\n",
       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
       "    // which will in turn request a refresh of the image.\n",
       "    this.send_message('resize', { width: x_pixels, height: y_pixels });\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_message = function (type, properties) {\n",
       "    properties['type'] = type;\n",
       "    properties['figure_id'] = this.id;\n",
       "    this.ws.send(JSON.stringify(properties));\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_draw_message = function () {\n",
       "    if (!this.waiting) {\n",
       "        this.waiting = true;\n",
       "        this.ws.send(JSON.stringify({ type: 'draw', figure_id: this.id }));\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    var format_dropdown = fig.format_dropdown;\n",
       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
       "    fig.ondownload(fig, format);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_resize = function (fig, msg) {\n",
       "    var size = msg['size'];\n",
       "    if (size[0] !== fig.canvas.width || size[1] !== fig.canvas.height) {\n",
       "        fig._resize_canvas(size[0], size[1], msg['forward']);\n",
       "        fig.send_message('refresh', {});\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_rubberband = function (fig, msg) {\n",
       "    var x0 = msg['x0'] / fig.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n",
       "    var x1 = msg['x1'] / fig.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / fig.ratio;\n",
       "    x0 = Math.floor(x0) + 0.5;\n",
       "    y0 = Math.floor(y0) + 0.5;\n",
       "    x1 = Math.floor(x1) + 0.5;\n",
       "    y1 = Math.floor(y1) + 0.5;\n",
       "    var min_x = Math.min(x0, x1);\n",
       "    var min_y = Math.min(y0, y1);\n",
       "    var width = Math.abs(x1 - x0);\n",
       "    var height = Math.abs(y1 - y0);\n",
       "\n",
       "    fig.rubberband_context.clearRect(\n",
       "        0,\n",
       "        0,\n",
       "        fig.canvas.width / fig.ratio,\n",
       "        fig.canvas.height / fig.ratio\n",
       "    );\n",
       "\n",
       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_figure_label = function (fig, msg) {\n",
       "    // Updates the figure title.\n",
       "    fig.header.textContent = msg['label'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_cursor = function (fig, msg) {\n",
       "    fig.canvas_div.style.cursor = msg['cursor'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_message = function (fig, msg) {\n",
       "    fig.message.textContent = msg['message'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_draw = function (fig, _msg) {\n",
       "    // Request the server to send over a new figure.\n",
       "    fig.send_draw_message();\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_image_mode = function (fig, msg) {\n",
       "    fig.image_mode = msg['mode'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n",
       "    for (var key in msg) {\n",
       "        if (!(key in fig.buttons)) {\n",
       "            continue;\n",
       "        }\n",
       "        fig.buttons[key].disabled = !msg[key];\n",
       "        fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n",
       "    if (msg['mode'] === 'PAN') {\n",
       "        fig.buttons['Pan'].classList.add('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    } else if (msg['mode'] === 'ZOOM') {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.add('active');\n",
       "    } else {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Called whenever the canvas gets updated.\n",
       "    this.send_message('ack', {});\n",
       "};\n",
       "\n",
       "// A function to construct a web socket function for onmessage handling.\n",
       "// Called in the figure constructor.\n",
       "mpl.figure.prototype._make_on_message_function = function (fig) {\n",
       "    return function socket_on_message(evt) {\n",
       "        if (evt.data instanceof Blob) {\n",
       "            var img = evt.data;\n",
       "            if (img.type !== 'image/png') {\n",
       "                /* FIXME: We get \"Resource interpreted as Image but\n",
       "                 * transferred with MIME type text/plain:\" errors on\n",
       "                 * Chrome.  But how to set the MIME type?  It doesn't seem\n",
       "                 * to be part of the websocket stream */\n",
       "                img.type = 'image/png';\n",
       "            }\n",
       "\n",
       "            /* Free the memory for the previous frames */\n",
       "            if (fig.imageObj.src) {\n",
       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
       "                    fig.imageObj.src\n",
       "                );\n",
       "            }\n",
       "\n",
       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
       "                img\n",
       "            );\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        } else if (\n",
       "            typeof evt.data === 'string' &&\n",
       "            evt.data.slice(0, 21) === 'data:image/png;base64'\n",
       "        ) {\n",
       "            fig.imageObj.src = evt.data;\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        var msg = JSON.parse(evt.data);\n",
       "        var msg_type = msg['type'];\n",
       "\n",
       "        // Call the  \"handle_{type}\" callback, which takes\n",
       "        // the figure and JSON message as its only arguments.\n",
       "        try {\n",
       "            var callback = fig['handle_' + msg_type];\n",
       "        } catch (e) {\n",
       "            console.log(\n",
       "                \"No handler for the '\" + msg_type + \"' message type: \",\n",
       "                msg\n",
       "            );\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        if (callback) {\n",
       "            try {\n",
       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
       "                callback(fig, msg);\n",
       "            } catch (e) {\n",
       "                console.log(\n",
       "                    \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n",
       "                    e,\n",
       "                    e.stack,\n",
       "                    msg\n",
       "                );\n",
       "            }\n",
       "        }\n",
       "    };\n",
       "};\n",
       "\n",
       "\n",
       "/*\n",
       " * return a copy of an object with only non-object keys\n",
       " * we need this to avoid circular references\n",
       " * https://stackoverflow.com/a/24161582/3208463\n",
       " */\n",
       "function simpleKeys(original) {\n",
       "    return Object.keys(original).reduce(function (obj, key) {\n",
       "        if (typeof original[key] !== 'object') {\n",
       "            obj[key] = original[key];\n",
       "        }\n",
       "        return obj;\n",
       "    }, {});\n",
       "}\n",
       "\n",
       "mpl.figure.prototype.mouse_event = function (event, name) {\n",
       "    if (name === 'button_press') {\n",
       "        this.canvas.focus();\n",
       "        this.canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    // from https://stackoverflow.com/q/1114465\n",
       "    var boundingRect = this.canvas.getBoundingClientRect();\n",
       "    var x = (event.clientX - boundingRect.left) * this.ratio;\n",
       "    var y = (event.clientY - boundingRect.top) * this.ratio;\n",
       "\n",
       "    this.send_message(name, {\n",
       "        x: x,\n",
       "        y: y,\n",
       "        button: event.button,\n",
       "        step: event.step,\n",
       "        guiEvent: simpleKeys(event),\n",
       "    });\n",
       "\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (_event, _name) {\n",
       "    // Handle any extra behaviour associated with a key event\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.key_event = function (event, name) {\n",
       "    // Prevent repeat events\n",
       "    if (name === 'key_press') {\n",
       "        if (event.key === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.key;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.key !== 'Control') {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    else if (event.altKey && event.key !== 'Alt') {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    else if (event.shiftKey && event.key !== 'Shift') {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k' + event.key;\n",
       "\n",
       "    this._key_event_extra(event, name);\n",
       "\n",
       "    this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onclick = function (name) {\n",
       "    if (name === 'download') {\n",
       "        this.handle_save(this, null);\n",
       "    } else {\n",
       "        this.send_message('toolbar_button', { name: name });\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n",
       "    this.message.textContent = tooltip;\n",
       "};\n",
       "\n",
       "///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n",
       "// prettier-ignore\n",
       "var _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\n",
       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n",
       "\n",
       "mpl.default_extension = \"png\";/* global mpl */\n",
       "\n",
       "var comm_websocket_adapter = function (comm) {\n",
       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
       "    // object with the appropriate methods. Currently this is a non binary\n",
       "    // socket, so there is still some room for performance tuning.\n",
       "    var ws = {};\n",
       "\n",
       "    ws.binaryType = comm.kernel.ws.binaryType;\n",
       "    ws.readyState = comm.kernel.ws.readyState;\n",
       "    function updateReadyState(_event) {\n",
       "        if (comm.kernel.ws) {\n",
       "            ws.readyState = comm.kernel.ws.readyState;\n",
       "        } else {\n",
       "            ws.readyState = 3; // Closed state.\n",
       "        }\n",
       "    }\n",
       "    comm.kernel.ws.addEventListener('open', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('close', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('error', updateReadyState);\n",
       "\n",
       "    ws.close = function () {\n",
       "        comm.close();\n",
       "    };\n",
       "    ws.send = function (m) {\n",
       "        //console.log('sending', m);\n",
       "        comm.send(m);\n",
       "    };\n",
       "    // Register the callback with on_msg.\n",
       "    comm.on_msg(function (msg) {\n",
       "        //console.log('receiving', msg['content']['data'], msg);\n",
       "        var data = msg['content']['data'];\n",
       "        if (data['blob'] !== undefined) {\n",
       "            data = {\n",
       "                data: new Blob(msg['buffers'], { type: data['blob'] }),\n",
       "            };\n",
       "        }\n",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(data);\n",
       "    });\n",
       "    return ws;\n",
       "};\n",
       "\n",
       "mpl.mpl_figure_comm = function (comm, msg) {\n",
       "    // This is the function which gets called when the mpl process\n",
       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
       "\n",
       "    var id = msg.content.data.id;\n",
       "    // Get hold of the div created by the display call when the Comm\n",
       "    // socket was opened in Python.\n",
       "    var element = document.getElementById(id);\n",
       "    var ws_proxy = comm_websocket_adapter(comm);\n",
       "\n",
       "    function ondownload(figure, _format) {\n",
       "        window.open(figure.canvas.toDataURL());\n",
       "    }\n",
       "\n",
       "    var fig = new mpl.figure(id, ws_proxy, ondownload, element);\n",
       "\n",
       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
       "    // web socket which is closed, not our websocket->open comm proxy.\n",
       "    ws_proxy.onopen();\n",
       "\n",
       "    fig.parent_element = element;\n",
       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "    fig.cell_info[0].output_area.element.on(\n",
       "        'cleared',\n",
       "        { fig: fig },\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / fig.ratio;\n",
       "    fig.cell_info[0].output_area.element.off(\n",
       "        'cleared',\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "    fig.resizeObserverInstance.unobserve(fig.canvas_div);\n",
       "\n",
       "    // Update the output cell to use the data from the current canvas.\n",
       "    fig.push_to_output();\n",
       "    var dataURL = fig.canvas.toDataURL();\n",
       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
       "    // the notebook keyboard shortcuts fail.\n",
       "    IPython.keyboard_manager.enable();\n",
       "    fig.parent_element.innerHTML =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "    fig.close_ws(fig, msg);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.close_ws = function (fig, msg) {\n",
       "    fig.send_message('closing', msg);\n",
       "    // fig.ws.close()\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.push_to_output = function (_remove_interactive) {\n",
       "    // Turn the data on the canvas into data in the output cell.\n",
       "    var width = this.canvas.width / this.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Tell IPython that the notebook contents must change.\n",
       "    IPython.notebook.set_dirty(true);\n",
       "    this.send_message('ack', {});\n",
       "    var fig = this;\n",
       "    // Wait a second, then push the new image to the DOM so\n",
       "    // that it is saved nicely (might be nice to debounce this).\n",
       "    setTimeout(function () {\n",
       "        fig.push_to_output();\n",
       "    }, 1000);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'btn-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'btn-group';\n",
       "    var button;\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'btn-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        button = fig.buttons[name] = document.createElement('button');\n",
       "        button.classList = 'btn btn-default';\n",
       "        button.href = '#';\n",
       "        button.title = name;\n",
       "        button.innerHTML = '<i class=\"fa ' + image + ' fa-lg\"></i>';\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    // Add the status bar.\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message pull-right';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "\n",
       "    // Add the close button to the window.\n",
       "    var buttongrp = document.createElement('div');\n",
       "    buttongrp.classList = 'btn-group inline pull-right';\n",
       "    button = document.createElement('button');\n",
       "    button.classList = 'btn btn-mini btn-primary';\n",
       "    button.href = '#';\n",
       "    button.title = 'Stop Interaction';\n",
       "    button.innerHTML = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\n",
       "    button.addEventListener('click', function (_evt) {\n",
       "        fig.handle_close(fig, {});\n",
       "    });\n",
       "    button.addEventListener(\n",
       "        'mouseover',\n",
       "        on_mouseover_closure('Stop Interaction')\n",
       "    );\n",
       "    buttongrp.appendChild(button);\n",
       "    var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n",
       "    titlebar.insertBefore(buttongrp, titlebar.firstChild);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._remove_fig_handler = function (event) {\n",
       "    var fig = event.data.fig;\n",
       "    if (event.target !== this) {\n",
       "        // Ignore bubbled events from children.\n",
       "        return;\n",
       "    }\n",
       "    fig.close_ws(fig, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (el) {\n",
       "    // this is important to make the div 'focusable\n",
       "    el.setAttribute('tabindex', 0);\n",
       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
       "    // off when our div gets focus\n",
       "\n",
       "    // location in version 3\n",
       "    if (IPython.notebook.keyboard_manager) {\n",
       "        IPython.notebook.keyboard_manager.register_events(el);\n",
       "    } else {\n",
       "        // location in version 2\n",
       "        IPython.keyboard_manager.register_events(el);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (event, _name) {\n",
       "    // Check for shift+enter\n",
       "    if (event.shiftKey && event.which === 13) {\n",
       "        this.canvas_div.blur();\n",
       "        // select the cell after this one\n",
       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
       "        IPython.notebook.select(index + 1);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    fig.ondownload(fig, null);\n",
       "};\n",
       "\n",
       "mpl.find_output_cell = function (html_output) {\n",
       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
       "    // IPython event is triggered only after the cells have been serialised, which for\n",
       "    // our purposes (turning an active figure into a static one), is too late.\n",
       "    var cells = IPython.notebook.get_cells();\n",
       "    var ncells = cells.length;\n",
       "    for (var i = 0; i < ncells; i++) {\n",
       "        var cell = cells[i];\n",
       "        if (cell.cell_type === 'code') {\n",
       "            for (var j = 0; j < cell.output_area.outputs.length; j++) {\n",
       "                var data = cell.output_area.outputs[j];\n",
       "                if (data.data) {\n",
       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
       "                    data = data.data;\n",
       "                }\n",
       "                if (data['text/html'] === html_output) {\n",
       "                    return [cell, data, j];\n",
       "                }\n",
       "            }\n",
       "        }\n",
       "    }\n",
       "};\n",
       "\n",
       "// Register the function which deals with the matplotlib target/channel.\n",
       "// The kernel may be null if the page has been refreshed.\n",
       "if (IPython.notebook.kernel !== null) {\n",
       "    IPython.notebook.kernel.comm_manager.register_target(\n",
       "        'matplotlib',\n",
       "        mpl.mpl_figure_comm\n",
       "    );\n",
       "}\n"
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAgAElEQVR4Xuy9B7yP9f///0rDyCore++WkUohKyMzlE2RZKsUFT72TipSiIaRkVFmtFR2yipZUdEg9aH0DfX/3p+//3W+x/E+zpuzrut9Hq/bzS3Oud7X+3rfr9d1zqPneDwv+/d/l9MSAREQAREQAREQARFIMQQukwBMMfdaH1QEREAEREAEREAEjIAEoDaCCIiACIiACIiACKQwAhKAKeyG6+OKgAiIgAiIgAiIgASg9oAIiIAIiIAIiIAIpDACEoAp7Ibr44qACIiACIiACIiABKD2gAiIgAiIgAiIgAikMAISgCnshuvjioAIiIAIiIAIiIAEoPaACIiACIiACIiACKQwAhKAKeyG6+OKgAiIgAiIgAiIgASg9oAIiIAIiIAIiIAIpDACEoAp7Ibr44qACIiACIiACIiABKD2gAiIgAiIgAiIgAikMAISgCnshuvjioAIiIAIiIAIiIAEoPaACIiACIiACIiACKQwAhKAKeyG6+OKgAiIgAiIgAiIgASg9oAIiIAIiIAIiIAIpDACEoAp7Ibr44qACIiACIiACIiABKD2gAiIgAiIgAiIgAikMAISgCnshuvjioAIiIAIiIAIiIAEoPaACIiACIiACIiACKQwAhKAKeyG6+OKgAiIgAiIgAiIgASg9oAIiIAIiIAIiIAIpDACEoAp7Ibr44qACIiACIiACIiABKD2gAiIgAiIgAiIgAikMAISgCnshuvjioAIiIAIiIAIiIAEoPaACIiACIiACIiACKQwAhKAKeyG6+OKgAiIgAiIgAiIgASg9oAIiIAIiIAIiIAIpDACEoAp7Ibr44qACIiACIiACIiABKD2gAiIgAiIgAiIgAikMAISgCnshuvjioAIiIAIiIAIiIAEoPaACIiACIiACIiACKQwAhKAKeyG6+OKgAiIgAiIgAiIgASg9oAIiIAIiIAIiIAIpDACEoAp7Ibr44qACIiACIiACIiABKD2gAiIQKISaNy4sStTpowbMGCAe+utt9yIESPcpk2b3JVXXpmo76uTi4AIiIAIxE5AAlC7QwREIFEJ/PTTT+7GG290w4cPd08++aR77733TBB6a9asWe7nn392vXr1StTr4OQFChRwd911l5sxY4a917fffusKFizopk+f7tq3b5+o78/7sj788MOLfh/YlSpVyjVq1OiiX8sLDh8+7F555RV7/c0333xJ54DZAw88YOK9fPnyl3QOvUgERMA/BCQA/XMvdCUiELEEZs+e7Vq2bGlRwEGDBp3zOevVq+d27NhhYiyx19atW13GjBld4cKFAyUA06dP75o2bRolXC+W0+bNm90tt9wSL6ErAXix1HW8CPibgASgv++Prk4EIp5AUgrAmDCDEgGUAIz4x0AfUASSnIAEYJIj1xuKQPIT+M9//mORuM8//9wNGTLErV692l122WWufv36bvz48S5btmxRF/nPP/+4sWPHuldffdUdOHDAZcqUydWuXdtSunny5Lngh/nll1/c008/7ZYvX25pXqJvxYoVs/euUaOGpWM/+uij887x77//2tf+/vtvN3r0aPfmm2/ae/N6BCNf866RtCaRPb6fKlWqc8516623utOnT9vnZIWTAiYVTJo2ZkTSY+ZdW2wfnO+PGTPGTZw40ZH+JnU7bNgwN2rUKHuJlwL+66+/jM2aNWvs2i+//HJXvHhx17dvX9ewYcOo03NfYq4qVapEnYfoKef5+OOP3alTp1yJEiVc7969Xbt27aLer2rVquedY+DAgY7PxCJCOHjwYPfJJ5+4P//805UsWdL169fP3XfffVGvCxUBPHLkiN2P//73v27ZsmWuaNGiyb+5dQUiIAJhEZAADAuTDhKByCLgiZn8+fPbL3nE2M6dO13//v1NoG3YsCGqSePhhx+2+rFu3brZL3uEEcelSZPGhFXWrFljhYNQ5BgEEOf97bff7N+Iovvvv9/t2rXLderUye3bt88tXLgw6jy33XabQ3jec889bu3ate6JJ55wFStWdAcPHnQIF0QooiVt2rRuyZIlJpioLeRzeOvrr782IfP888+77t27J5kA9Nh26NDB0rbfffedCd6zZ8+awPME4O+//251j9WrV3e5c+c2sYsQf/bZZy1V27ZtW7vm9evXu2rVqjlEHNxZCGEY7t6921K72bNnNy5ZsmQxsUzKHcEJN8TZ22+/bfV7zzzzjDFlId7588EHH5igRyxzj2E7Z84cSzdHr42MKQARnnXr1rVzcA8utA8i6+nRpxGByCAgARgZ91GfQgQuioAnUogUITi8RUNGq1atTETwX09EdenSxSJa3tq4caMJhqeeesrEXWwrQ4YMrmPHjhZV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ARiP28EGYuMgBCUA4wFSLxUBERABERCBJCSg39/OSQDGY8NpA8UDnl4qAiIgAiIgAslEQL+/JQDjtfW0geKFTy8WAREQAREQgWQhoN/fEoDx2njaQPHCpxeLgAiIgAiIQLIQ0O9vCcB4bTxtoHjh04tFQAREQAREIFkI6Pe3BGC8Np42ULzw6cUiIAIiIAIikCwE9PtbAjBeG08bKF749GIREAEREAERSBYC+v0tARivjacNFC98erEIiIAIiIAIJAsB/f6WAIzXxtMGihc+vVgEREAEREAEkoWAfn9LAMZr42kDxQufXiwCIiACIiACyUJAv78lAOO18bSB4oVPLxYBERABERCBZCGg398RJADbt29vM/0WLVqUZJtJGyjJUOuNREAEREAERCDBCOj3dwQJQObx/vvvvy5z5swJtkHiOpE2UFyE9H0REAEREAER8B8B/f6OIAGYHNtLGyg5qOs9RUAEREAERCB+BPT7O4IEYPQU8F133eWuv/562x1vvvmmu/zyy90jjzzihgwZ4i677DL7+pEjR1zHjh3d+++/76677jo3bNgw99RTT7levXrZn3CWt4Hy9prrUqVOF85LdIwIiIAIiIAIiECYBL4deU+YR17cYRKAESwAt2zZ4jp06GDCb/Pmza5Tp07uzz//dAsXLnSNGjVyNWvWdEePHnWTJ092V155pXv00Ufdxo0b3fDhw2MVgP/zP//j+OMtNlDevHmdBODFPXg6WgREQAREQATCISABGA6lSzvmsv+tm/v30l6aPK/69ttvXcGCBd3WrVvdzTffHHURMSOAP//8s9u5c2dUxK9v375u1KhRJgBLlCjhSpYs6TZt2uTKly9v59i7d68rWrSoGz9+fKwC8D//+Y8bNGjQeR9cAjB59oLeVQREQAREILIJSAAm3v2NWAFYqFAh9+qrr0aRW7x4sUX+5s+f76644grXtGlTi+alSpUq6phrr73WDRgwQBHAxNtvOrMIiIAIiIAIhE1AAjBsVBd9YLIJQMRXnz593Jw5cxypVCJxRN9uueUWd/z4cdetWze3atUqd/LkSZcnTx6rz3vggQeiInreJ61SpYr78MMPXb169SyF+88//5gdTNasWd2yZctc2bJl7dDoApCawGbNmrn9+/e7xx9/3N4HIXjixAlHpHDw4MFhgVQNYFiYdJAIiIAIiECEEEgsQZbUeFQDmIw1gD179rRo3NSpU13+/Pnd6NGj3ZIlSywVSxTu008/dVOmTDEhx9dOnTrl6tevb2nbChUquNWrV7vSpUu7q666yhG5q1WrltX00fTRrl07t2fPHpc6dWr7b4YMGVy/fv3cyJEjz0kBU79HLSBNHz/88IOrU6eOy5Ytm/v+++/tvDGXagCT+hHV+4mACIiACPiJgASgn+5G/K4lWSKAf/zxh7vmmmvcjBkzXMuWLe0TnD592hUoUMDE2Nq1a034RU/heh8z3BpAmkAQbM8//7zLlCmTe+ihhxzvSw0g9X9EBmkKIR2cPXt2awShbvDMmTPu3XffdXffffd5ZFUDGL/NpleLgAiIgAgEm4AEYLDvX/SrTxYBuG3bNnfTTTc5xBzRP281btzYhCHp2SZNmrhixYqZEKN2r2LFinZYbAKwefPmbsOGDSbkSO1i94KYS5MmjUubNq17+OGHoyKAN954o2vTpo377LPPQt7JSZMmWfewIoCRs9H1SURABERABOJPQAIw/gz9coZkEYBffvmldfAePHjQ5cuXL4oFQi9Llixu2rRp7pdffnFLly51Tz75pDt27JgJRoQd9Xv8G/H2yiuvWBqZCB51fyzqCkn3Vq9e3WoDWeXKlbNUM8LPs4FB4H3++edu5syZdszTTz/t5s6d61577TXXsGFDixrGtVQDGBchfV8EREAEgksgUsROcO9A4l25agCTqQaQVCx1e9OnTz8nBYy9CylgGjO8hanz+vXr7Z/bt2+3usAxY8ZYRBDrlzvvvNOsWd566y1HBLFHjx6uatWqJuAYD4cg/Oqrr9yOHTsseugJwMcee8y9/PLLJiS//vprOxd1fwhPooihlmoAE+9h1JlFQAREwG8EJAD9dkcS7nokAJNJAHILEXrz5s2zaB9RQK8JZN++fdYNTNSOJo8WLVo4voZHHyleRBhpXSKIK1ascN98842lif/66y+r60MAIuZIJfM1jJ3btm1rncQ0kngCkK5gBKNng0jKmGggYhPRyPExl2oAE+7h05lEQAREwO8EJAD9focu/fokAJNRACLOnnjiCTd79myzX4luAzN06FA3a9Ysi9jRHEK37po1a8wAmkWaGLsXbmClSpXcBx98YDYuRYoUsbQyr6GOD+Nnb7RbmTJl3BdffBElADkPgpLuYaxmzp49a1FJag/Hjh3rMmbMeN7OUgTw0h82vVIEREAEgkZAAjBodyz865UATEYBGO5typw5s3UHkwqmPo80LWIN8Uhq16sBpD6Q6B6isXfv3tZB/Nxzz7ndu3db/SA3m2giFjPeor7w8OHDVi/YpUsX+zJilDrDcJZqAMOhpGNEQAREIPkISMQlH3s/v7MEYEAEIHYtCLf777/fav369+9v49yY34swJGX80ksvman0kSNHTADmzp3bagyvu+46qyl87733zCPQs53JkSOHdQkfOHDAvf3229b166WXEZleU0n0DawIoJ8fZ12bCIiACJxPQAJQuyIUAQnAgAjAq6++2oyaWUT/aNKgRhBTaNaPP/7ocubMaTYvmD8jAKnhw2cQoUdN38qVK6ME4OTJky3iR0RwyJAhbty4cZYypnGEc/JfOotjLtUA6geJCIiACASLgARgsO5XUl2tBGBABCBegVjHeAvz5rp169rkEBaNHNQAYv+CcPNSwAg7JoFETwEPHDjQJolgFI2Q5FwIPkQkgpAoYWxLEcCkejT1PiIgAiKQMAQkABOGY6SdRQIwAAKQFC8dv9TzecubGEKDB4tjPvroIxvlRkMIDSZM/sDmhe5eJnzQRUwqmcgg/+bviEa+T1Qx+mKUHNHDuJZqAOMipO+LgAiIwMUTkGi7eGZ6xcURkACMMAFYr149d/3111sqmOjexIkTTQgy75cu4sGDB5tI7NixozWQMI+YiSB0HGNDU6NGDROapJNDGUErAnhxD5iOFgEREIFLISABeCnU9JqLISABGGECkGYObGBIAWPpkj59ehOB9evXt2YQvkeDB8bPzAOmeYQoItE+hGKrVq0uGPlTDeDFPF46VgREQAQujYAE4KVx06vCJyABGGECEBsYbGOYBMJot2HDhlmNH92+1PxhFO0tjKKpB7wYAagIYPgPl44UAREQgUslIAF4qeT0unAJSAAGQACGupnU/JHqZdG0wWi5UqVKmdEztYAIwGbNmplHIF3B1ARiE9O5c+eo02H0nCFDBpsrzLnw/tu4caPbunWr1RyGs1QDGA4lHSMCIhBJBCTOIuluptzPIgEYYAFIRO/BBx80378FCxbYZJC0adNadzD/RvgR5cM8mmkfNHvs2rXL/AM///xzs5Hhz+uvv26pYQQjQvJCAlARwJT7w0KfXARE4P8RkADUTogEAhKAARaAdPIysq1R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4AKQ7t0KFSpYPeCBAwfM54+0MHWA1Pu99tprVh942223WTcw00So82vevLl755137DVEBjGFRuxhF1OzZk1LFTNLmO8pAqgfIDEJKLqnPSECIiACwSYgARhwAdinTx9L5X7yySdWw1egQAFXtGhR6wImBUyjB+KQqCANJBxLaveXX35xefPmtcYRBCE1hqwMGTJYbSA+gaGWagCD/cAn1NVLACYUSZ1HBERABJKHgARggAUgUTuidR988IFZudx6660WAaxXr5519dL4Qe0f84GZBMIxhQsXdqlSpXI7duywuj+aPkgdHzlyxHYgNYBE/zgm1FINYPI8qH57VwlAv90RXY8IiIAIXBwBCcAAC8Dot3r79u3W/DF06FCr56MGkA5gBCB/qAGkG5jxcdEXk0A49uDBg1Ffpj6QGcHhLG2gcCjpGBEQAREQARHwFwH9/k5CAYioQojRdEFaNiEXnbzXXnutRf6eeOIJt2zZMosGIv6oA+T92rZt67Jly+ZWrFhhf4gYdunSxXXq1MnEIevrr7+283CcIoAJeYci51yK/kXOvdQnEQERSLkEJAAjRACyhQcNGuQmTJhgdYCkejNlymSzgJnv+/TTT1t3L80geAVWqVLFRsjRBJI1a9ao8XHHjx+35o/YlmoAU+4PC++TSwBqD4iACIhA8AlIAPpcANKwwWzf2Gryom9B5gITAUQEek0eNHMQBdy4caMJPppGDh8+bM0fL774oo2EY3nzg+MSgKoBDP5DH99PIAEYX4J6vQiIgAgkPwEJwEQQgAixMWPGuClTplh9XY4cOawDF48+UsALFixwL7zwgs3tpWN38uTJ7vbbb7fdgDcfjRhM/CCVywg35vISlcPEGesWRBgRvOeff95eH/N1vXv3dnv37rVoH+crWbKkXQNpYo7HOobpIizeB9uYLVu2WMSQcXP820sJx7VFtYHiIqTvi4AIiIAIiID/COj3dyIIwCeffNLE3/jx4x1NFnTYUlvHpA0EINE37FkQY6RmMWZGsDF1A8FGTR5j3RCR+PAxto2oXerUqd3LL7/sMmbM6HiPffv2WRcv83y912HsjI0Lc4CZ7UtDx48//mjj3zB3Zm5wrly5bB4w69VXX3U5c+a0yR+kkHld2bJlTRCGWooA+u8hTsorUvQvKWnrvURABEQg8QhIACawADxx4oQ1UJBeRbhF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9BwbGKxjOnbsaHV/zAceMmSIa9CgQdQUEaZ+4BWYMWNG6wImIuiZQffo0cNEIq9FECIovRrBUJtUEUC/PLoSgP6+E7o6ERABEfA3AQlAnwnAi9kuK1assNFuNIsgFBkBRwqXDmE8/WgUGTBggKWFafggbcz4uFWrVrmqVau6AgUKWPp48+bNNkEk+qI5BJEY19IGiouQvi8CIiACIiAC/iOg398BFoALFiywyB1pWWb5EsnjD/N9+R4TRerUqWNpX/wFa9eubTWFP/30kzV4IAARiYyTI/3brFkzqx9cs2aNS5s2raWVYy5FAP33EHNFSv36877oqkRABETArwQkAAMsANlUffr0MT8/ooCnTp2yesDKlSvb1/g71i6MfMMQmuYRbjhdxXQH82+aShgpx1QQ6gE3bNhgljE0hoRaqgH056MsAejP+6KrEgEREAG/EpAADLAAJG2LpQtCjxQwNi74+F199dVm/UJ6+OabbzZRd+DAAVeoUCFrAMEbEOsXGkGIAu7atcvSx3QJE0EkykczCQbRigD69dE997okAINxn3SVIiACIuAXAhKAARaACLm8efPaBA86hWngoNuXqCCTPG644Qb3zTffmDgkHYydDALR8wFE/FEriNhDIGL/Urp0aYsYhru0gcIlpeNEQAREQAREwD8E9Ps7oALw2LFj5uOHxQtNHHgCYurMaLcrrrjCrV692uXKlcsVK1bMOoTfe+89S/3SEEJEELHH60+fPu2mT59uX69evboJQZo/aAIJtVQD6J+HN/qVKALoz/uiqxIBERABvxKQAAyoACTdi20LZs2kc5kZ3LdvX7dp0yYTcnj4zZo1y7wBqenD3w9/QGoFixcvbvsRoYhFDLOGWdQJ8v1bb73VzKJDLdUA+vNRlgD0533RVYmACIiAXwlIAAZUALKhMGzu1q2b7S26ejF6/uuvv6zxo1y5chbpIzV8zz332DEvvfSSjYtjkS5GJBIJ5HUsmkgQlnydTuFQSxFAfz7KEoD+vC+6KhEQARHwKwEJwIAKQMa+EQGk25dmDURc7969zQB60KBBDo9AmkPGjh1rkcG9e/eauKPrN3PmzCbw+D62MNQFEiksX768e/HFF922bdtcwYIFw9qz2kBhYdJBIiACIiACIuArAvr9HWABuGXLFov4DR8+3Dp3Bw4c6GrVquUaN25sc4HHjx9v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\" width=\"640\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/javascript": [
       "/* Put everything inside the global mpl namespace */\n",
       "/* global mpl */\n",
       "window.mpl = {};\n",
       "\n",
       "mpl.get_websocket_type = function () {\n",
       "    if (typeof WebSocket !== 'undefined') {\n",
       "        return WebSocket;\n",
       "    } else if (typeof MozWebSocket !== 'undefined') {\n",
       "        return MozWebSocket;\n",
       "    } else {\n",
       "        alert(\n",
       "            'Your browser does not have WebSocket support. ' +\n",
       "                'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
       "                'Firefox 4 and 5 are also supported but you ' +\n",
       "                'have to enable WebSockets in about:config.'\n",
       "        );\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure = function (figure_id, websocket, ondownload, parent_element) {\n",
       "    this.id = figure_id;\n",
       "\n",
       "    this.ws = websocket;\n",
       "\n",
       "    this.supports_binary = this.ws.binaryType !== undefined;\n",
       "\n",
       "    if (!this.supports_binary) {\n",
       "        var warnings = document.getElementById('mpl-warnings');\n",
       "        if (warnings) {\n",
       "            warnings.style.display = 'block';\n",
       "            warnings.textContent =\n",
       "                'This browser does not support binary websocket messages. ' +\n",
       "                'Performance may be slow.';\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.imageObj = new Image();\n",
       "\n",
       "    this.context = undefined;\n",
       "    this.message = undefined;\n",
       "    this.canvas = undefined;\n",
       "    this.rubberband_canvas = undefined;\n",
       "    this.rubberband_context = undefined;\n",
       "    this.format_dropdown = undefined;\n",
       "\n",
       "    this.image_mode = 'full';\n",
       "\n",
       "    this.root = document.createElement('div');\n",
       "    this.root.setAttribute('style', 'display: inline-block');\n",
       "    this._root_extra_style(this.root);\n",
       "\n",
       "    parent_element.appendChild(this.root);\n",
       "\n",
       "    this._init_header(this);\n",
       "    this._init_canvas(this);\n",
       "    this._init_toolbar(this);\n",
       "\n",
       "    var fig = this;\n",
       "\n",
       "    this.waiting = false;\n",
       "\n",
       "    this.ws.onopen = function () {\n",
       "        fig.send_message('supports_binary', { value: fig.supports_binary });\n",
       "        fig.send_message('send_image_mode', {});\n",
       "        if (fig.ratio !== 1) {\n",
       "            fig.send_message('set_device_pixel_ratio', {\n",
       "                device_pixel_ratio: fig.ratio,\n",
       "            });\n",
       "        }\n",
       "        fig.send_message('refresh', {});\n",
       "    };\n",
       "\n",
       "    this.imageObj.onload = function () {\n",
       "        if (fig.image_mode === 'full') {\n",
       "            // Full images could contain transparency (where diff images\n",
       "            // almost always do), so we need to clear the canvas so that\n",
       "            // there is no ghosting.\n",
       "            fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
       "        }\n",
       "        fig.context.drawImage(fig.imageObj, 0, 0);\n",
       "    };\n",
       "\n",
       "    this.imageObj.onunload = function () {\n",
       "        fig.ws.close();\n",
       "    };\n",
       "\n",
       "    this.ws.onmessage = this._make_on_message_function(this);\n",
       "\n",
       "    this.ondownload = ondownload;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_header = function () {\n",
       "    var titlebar = document.createElement('div');\n",
       "    titlebar.classList =\n",
       "        'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n",
       "    var titletext = document.createElement('div');\n",
       "    titletext.classList = 'ui-dialog-title';\n",
       "    titletext.setAttribute(\n",
       "        'style',\n",
       "        'width: 100%; text-align: center; padding: 3px;'\n",
       "    );\n",
       "    titlebar.appendChild(titletext);\n",
       "    this.root.appendChild(titlebar);\n",
       "    this.header = titletext;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._init_canvas = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var canvas_div = (this.canvas_div = document.createElement('div'));\n",
       "    canvas_div.setAttribute('tabindex', '0');\n",
       "    canvas_div.setAttribute(\n",
       "        'style',\n",
       "        'border: 1px solid #ddd;' +\n",
       "            'box-sizing: content-box;' +\n",
       "            'clear: both;' +\n",
       "            'min-height: 1px;' +\n",
       "            'min-width: 1px;' +\n",
       "            'outline: 0;' +\n",
       "            'overflow: hidden;' +\n",
       "            'position: relative;' +\n",
       "            'resize: both;' +\n",
       "            'z-index: 2;'\n",
       "    );\n",
       "\n",
       "    function on_keyboard_event_closure(name) {\n",
       "        return function (event) {\n",
       "            return fig.key_event(event, name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'keydown',\n",
       "        on_keyboard_event_closure('key_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'keyup',\n",
       "        on_keyboard_event_closure('key_release')\n",
       "    );\n",
       "\n",
       "    this._canvas_extra_style(canvas_div);\n",
       "    this.root.appendChild(canvas_div);\n",
       "\n",
       "    var canvas = (this.canvas = document.createElement('canvas'));\n",
       "    canvas.classList.add('mpl-canvas');\n",
       "    canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: relative;' +\n",
       "            'z-index: 0;'\n",
       "    );\n",
       "\n",
       "    this.context = canvas.getContext('2d');\n",
       "\n",
       "    var backingStore =\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        this.context.webkitBackingStorePixelRatio ||\n",
       "        this.context.mozBackingStorePixelRatio ||\n",
       "        this.context.msBackingStorePixelRatio ||\n",
       "        this.context.oBackingStorePixelRatio ||\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        1;\n",
       "\n",
       "    this.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
       "\n",
       "    var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n",
       "        'canvas'\n",
       "    ));\n",
       "    rubberband_canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'left: 0;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: absolute;' +\n",
       "            'top: 0;' +\n",
       "            'z-index: 1;'\n",
       "    );\n",
       "\n",
       "    // Apply a ponyfill if ResizeObserver is not implemented by browser.\n",
       "    if (this.ResizeObserver === undefined) {\n",
       "        if (window.ResizeObserver !== undefined) {\n",
       "            this.ResizeObserver = window.ResizeObserver;\n",
       "        } else {\n",
       "            var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n",
       "            this.ResizeObserver = obs.ResizeObserver;\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n",
       "        var nentries = entries.length;\n",
       "        for (var i = 0; i < nentries; i++) {\n",
       "            var entry = entries[i];\n",
       "            var width, height;\n",
       "            if (entry.contentBoxSize) {\n",
       "                if (entry.contentBoxSize instanceof Array) {\n",
       "                    // Chrome 84 implements new version of spec.\n",
       "                    width = entry.contentBoxSize[0].inlineSize;\n",
       "                    height = entry.contentBoxSize[0].blockSize;\n",
       "                } else {\n",
       "                    // Firefox implements old version of spec.\n",
       "                    width = entry.contentBoxSize.inlineSize;\n",
       "                    height = entry.contentBoxSize.blockSize;\n",
       "                }\n",
       "            } else {\n",
       "                // Chrome <84 implements even older version of spec.\n",
       "                width = entry.contentRect.width;\n",
       "                height = entry.contentRect.height;\n",
       "            }\n",
       "\n",
       "            // Keep the size of the canvas and rubber band canvas in sync with\n",
       "            // the canvas container.\n",
       "            if (entry.devicePixelContentBoxSize) {\n",
       "                // Chrome 84 implements new version of spec.\n",
       "                canvas.setAttribute(\n",
       "                    'width',\n",
       "                    entry.devicePixelContentBoxSize[0].inlineSize\n",
       "                );\n",
       "                canvas.setAttribute(\n",
       "                    'height',\n",
       "                    entry.devicePixelContentBoxSize[0].blockSize\n",
       "                );\n",
       "            } else {\n",
       "                canvas.setAttribute('width', width * fig.ratio);\n",
       "                canvas.setAttribute('height', height * fig.ratio);\n",
       "            }\n",
       "            /* This rescales the canvas back to display pixels, so that it\n",
       "             * appears correct on HiDPI screens. */\n",
       "            canvas.style.width = width + 'px';\n",
       "            canvas.style.height = height + 'px';\n",
       "\n",
       "            rubberband_canvas.setAttribute('width', width);\n",
       "            rubberband_canvas.setAttribute('height', height);\n",
       "\n",
       "            // And update the size in Python. We ignore the initial 0/0 size\n",
       "            // that occurs as the element is placed into the DOM, which should\n",
       "            // otherwise not happen due to the minimum size styling.\n",
       "            if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    this.resizeObserverInstance.observe(canvas_div);\n",
       "\n",
       "    function on_mouse_event_closure(name) {\n",
       "        /* User Agent sniffing is bad, but WebKit is busted:\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=144526\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=181818\n",
       "         * The worst that happens here is that they get an extra browser\n",
       "         * selection when dragging, if this check fails to catch them.\n",
       "         */\n",
       "        var UA = navigator.userAgent;\n",
       "        var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n",
       "        if(isWebKit) {\n",
       "            return function (event) {\n",
       "                /* This prevents the web browser from automatically changing to\n",
       "                 * the text insertion cursor when the button is pressed. We\n",
       "                 * want to control all of the cursor setting manually through\n",
       "                 * the 'cursor' event from matplotlib */\n",
       "                event.preventDefault()\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        } else {\n",
       "            return function (event) {\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        }\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mousedown',\n",
       "        on_mouse_event_closure('button_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseup',\n",
       "        on_mouse_event_closure('button_release')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'dblclick',\n",
       "        on_mouse_event_closure('dblclick')\n",
       "    );\n",
       "    // Throttle sequential mouse events to 1 every 20ms.\n",
       "    canvas_div.addEventListener(\n",
       "        'mousemove',\n",
       "        on_mouse_event_closure('motion_notify')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseenter',\n",
       "        on_mouse_event_closure('figure_enter')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseleave',\n",
       "        on_mouse_event_closure('figure_leave')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener('wheel', function (event) {\n",
       "        if (event.deltaY < 0) {\n",
       "            event.step = 1;\n",
       "        } else {\n",
       "            event.step = -1;\n",
       "        }\n",
       "        on_mouse_event_closure('scroll')(event);\n",
       "    });\n",
       "\n",
       "    canvas_div.appendChild(canvas);\n",
       "    canvas_div.appendChild(rubberband_canvas);\n",
       "\n",
       "    this.rubberband_context = rubberband_canvas.getContext('2d');\n",
       "    this.rubberband_context.strokeStyle = '#000000';\n",
       "\n",
       "    this._resize_canvas = function (width, height, forward) {\n",
       "        if (forward) {\n",
       "            canvas_div.style.width = width + 'px';\n",
       "            canvas_div.style.height = height + 'px';\n",
       "        }\n",
       "    };\n",
       "\n",
       "    // Disable right mouse context menu.\n",
       "    canvas_div.addEventListener('contextmenu', function (_e) {\n",
       "        event.preventDefault();\n",
       "        return false;\n",
       "    });\n",
       "\n",
       "    function set_focus() {\n",
       "        canvas.focus();\n",
       "        canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    window.setTimeout(set_focus, 100);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'mpl-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'mpl-button-group';\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'mpl-button-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        var button = (fig.buttons[name] = document.createElement('button'));\n",
       "        button.classList = 'mpl-widget';\n",
       "        button.setAttribute('role', 'button');\n",
       "        button.setAttribute('aria-disabled', 'false');\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "\n",
       "        var icon_img = document.createElement('img');\n",
       "        icon_img.src = '_images/' + image + '.png';\n",
       "        icon_img.srcset = '_images/' + image + '_large.png 2x';\n",
       "        icon_img.alt = tooltip;\n",
       "        button.appendChild(icon_img);\n",
       "\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    var fmt_picker = document.createElement('select');\n",
       "    fmt_picker.classList = 'mpl-widget';\n",
       "    toolbar.appendChild(fmt_picker);\n",
       "    this.format_dropdown = fmt_picker;\n",
       "\n",
       "    for (var ind in mpl.extensions) {\n",
       "        var fmt = mpl.extensions[ind];\n",
       "        var option = document.createElement('option');\n",
       "        option.selected = fmt === mpl.default_extension;\n",
       "        option.innerHTML = fmt;\n",
       "        fmt_picker.appendChild(option);\n",
       "    }\n",
       "\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.request_resize = function (x_pixels, y_pixels) {\n",
       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
       "    // which will in turn request a refresh of the image.\n",
       "    this.send_message('resize', { width: x_pixels, height: y_pixels });\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_message = function (type, properties) {\n",
       "    properties['type'] = type;\n",
       "    properties['figure_id'] = this.id;\n",
       "    this.ws.send(JSON.stringify(properties));\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_draw_message = function () {\n",
       "    if (!this.waiting) {\n",
       "        this.waiting = true;\n",
       "        this.ws.send(JSON.stringify({ type: 'draw', figure_id: this.id }));\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    var format_dropdown = fig.format_dropdown;\n",
       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
       "    fig.ondownload(fig, format);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_resize = function (fig, msg) {\n",
       "    var size = msg['size'];\n",
       "    if (size[0] !== fig.canvas.width || size[1] !== fig.canvas.height) {\n",
       "        fig._resize_canvas(size[0], size[1], msg['forward']);\n",
       "        fig.send_message('refresh', {});\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_rubberband = function (fig, msg) {\n",
       "    var x0 = msg['x0'] / fig.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n",
       "    var x1 = msg['x1'] / fig.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / fig.ratio;\n",
       "    x0 = Math.floor(x0) + 0.5;\n",
       "    y0 = Math.floor(y0) + 0.5;\n",
       "    x1 = Math.floor(x1) + 0.5;\n",
       "    y1 = Math.floor(y1) + 0.5;\n",
       "    var min_x = Math.min(x0, x1);\n",
       "    var min_y = Math.min(y0, y1);\n",
       "    var width = Math.abs(x1 - x0);\n",
       "    var height = Math.abs(y1 - y0);\n",
       "\n",
       "    fig.rubberband_context.clearRect(\n",
       "        0,\n",
       "        0,\n",
       "        fig.canvas.width / fig.ratio,\n",
       "        fig.canvas.height / fig.ratio\n",
       "    );\n",
       "\n",
       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_figure_label = function (fig, msg) {\n",
       "    // Updates the figure title.\n",
       "    fig.header.textContent = msg['label'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_cursor = function (fig, msg) {\n",
       "    fig.canvas_div.style.cursor = msg['cursor'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_message = function (fig, msg) {\n",
       "    fig.message.textContent = msg['message'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_draw = function (fig, _msg) {\n",
       "    // Request the server to send over a new figure.\n",
       "    fig.send_draw_message();\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_image_mode = function (fig, msg) {\n",
       "    fig.image_mode = msg['mode'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n",
       "    for (var key in msg) {\n",
       "        if (!(key in fig.buttons)) {\n",
       "            continue;\n",
       "        }\n",
       "        fig.buttons[key].disabled = !msg[key];\n",
       "        fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n",
       "    if (msg['mode'] === 'PAN') {\n",
       "        fig.buttons['Pan'].classList.add('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    } else if (msg['mode'] === 'ZOOM') {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.add('active');\n",
       "    } else {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Called whenever the canvas gets updated.\n",
       "    this.send_message('ack', {});\n",
       "};\n",
       "\n",
       "// A function to construct a web socket function for onmessage handling.\n",
       "// Called in the figure constructor.\n",
       "mpl.figure.prototype._make_on_message_function = function (fig) {\n",
       "    return function socket_on_message(evt) {\n",
       "        if (evt.data instanceof Blob) {\n",
       "            var img = evt.data;\n",
       "            if (img.type !== 'image/png') {\n",
       "                /* FIXME: We get \"Resource interpreted as Image but\n",
       "                 * transferred with MIME type text/plain:\" errors on\n",
       "                 * Chrome.  But how to set the MIME type?  It doesn't seem\n",
       "                 * to be part of the websocket stream */\n",
       "                img.type = 'image/png';\n",
       "            }\n",
       "\n",
       "            /* Free the memory for the previous frames */\n",
       "            if (fig.imageObj.src) {\n",
       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
       "                    fig.imageObj.src\n",
       "                );\n",
       "            }\n",
       "\n",
       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
       "                img\n",
       "            );\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        } else if (\n",
       "            typeof evt.data === 'string' &&\n",
       "            evt.data.slice(0, 21) === 'data:image/png;base64'\n",
       "        ) {\n",
       "            fig.imageObj.src = evt.data;\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        var msg = JSON.parse(evt.data);\n",
       "        var msg_type = msg['type'];\n",
       "\n",
       "        // Call the  \"handle_{type}\" callback, which takes\n",
       "        // the figure and JSON message as its only arguments.\n",
       "        try {\n",
       "            var callback = fig['handle_' + msg_type];\n",
       "        } catch (e) {\n",
       "            console.log(\n",
       "                \"No handler for the '\" + msg_type + \"' message type: \",\n",
       "                msg\n",
       "            );\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        if (callback) {\n",
       "            try {\n",
       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
       "                callback(fig, msg);\n",
       "            } catch (e) {\n",
       "                console.log(\n",
       "                    \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n",
       "                    e,\n",
       "                    e.stack,\n",
       "                    msg\n",
       "                );\n",
       "            }\n",
       "        }\n",
       "    };\n",
       "};\n",
       "\n",
       "\n",
       "/*\n",
       " * return a copy of an object with only non-object keys\n",
       " * we need this to avoid circular references\n",
       " * https://stackoverflow.com/a/24161582/3208463\n",
       " */\n",
       "function simpleKeys(original) {\n",
       "    return Object.keys(original).reduce(function (obj, key) {\n",
       "        if (typeof original[key] !== 'object') {\n",
       "            obj[key] = original[key];\n",
       "        }\n",
       "        return obj;\n",
       "    }, {});\n",
       "}\n",
       "\n",
       "mpl.figure.prototype.mouse_event = function (event, name) {\n",
       "    if (name === 'button_press') {\n",
       "        this.canvas.focus();\n",
       "        this.canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    // from https://stackoverflow.com/q/1114465\n",
       "    var boundingRect = this.canvas.getBoundingClientRect();\n",
       "    var x = (event.clientX - boundingRect.left) * this.ratio;\n",
       "    var y = (event.clientY - boundingRect.top) * this.ratio;\n",
       "\n",
       "    this.send_message(name, {\n",
       "        x: x,\n",
       "        y: y,\n",
       "        button: event.button,\n",
       "        step: event.step,\n",
       "        guiEvent: simpleKeys(event),\n",
       "    });\n",
       "\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (_event, _name) {\n",
       "    // Handle any extra behaviour associated with a key event\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.key_event = function (event, name) {\n",
       "    // Prevent repeat events\n",
       "    if (name === 'key_press') {\n",
       "        if (event.key === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.key;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.key !== 'Control') {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    else if (event.altKey && event.key !== 'Alt') {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    else if (event.shiftKey && event.key !== 'Shift') {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k' + event.key;\n",
       "\n",
       "    this._key_event_extra(event, name);\n",
       "\n",
       "    this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onclick = function (name) {\n",
       "    if (name === 'download') {\n",
       "        this.handle_save(this, null);\n",
       "    } else {\n",
       "        this.send_message('toolbar_button', { name: name });\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n",
       "    this.message.textContent = tooltip;\n",
       "};\n",
       "\n",
       "///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n",
       "// prettier-ignore\n",
       "var _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\n",
       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n",
       "\n",
       "mpl.default_extension = \"png\";/* global mpl */\n",
       "\n",
       "var comm_websocket_adapter = function (comm) {\n",
       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
       "    // object with the appropriate methods. Currently this is a non binary\n",
       "    // socket, so there is still some room for performance tuning.\n",
       "    var ws = {};\n",
       "\n",
       "    ws.binaryType = comm.kernel.ws.binaryType;\n",
       "    ws.readyState = comm.kernel.ws.readyState;\n",
       "    function updateReadyState(_event) {\n",
       "        if (comm.kernel.ws) {\n",
       "            ws.readyState = comm.kernel.ws.readyState;\n",
       "        } else {\n",
       "            ws.readyState = 3; // Closed state.\n",
       "        }\n",
       "    }\n",
       "    comm.kernel.ws.addEventListener('open', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('close', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('error', updateReadyState);\n",
       "\n",
       "    ws.close = function () {\n",
       "        comm.close();\n",
       "    };\n",
       "    ws.send = function (m) {\n",
       "        //console.log('sending', m);\n",
       "        comm.send(m);\n",
       "    };\n",
       "    // Register the callback with on_msg.\n",
       "    comm.on_msg(function (msg) {\n",
       "        //console.log('receiving', msg['content']['data'], msg);\n",
       "        var data = msg['content']['data'];\n",
       "        if (data['blob'] !== undefined) {\n",
       "            data = {\n",
       "                data: new Blob(msg['buffers'], { type: data['blob'] }),\n",
       "            };\n",
       "        }\n",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(data);\n",
       "    });\n",
       "    return ws;\n",
       "};\n",
       "\n",
       "mpl.mpl_figure_comm = function (comm, msg) {\n",
       "    // This is the function which gets called when the mpl process\n",
       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
       "\n",
       "    var id = msg.content.data.id;\n",
       "    // Get hold of the div created by the display call when the Comm\n",
       "    // socket was opened in Python.\n",
       "    var element = document.getElementById(id);\n",
       "    var ws_proxy = comm_websocket_adapter(comm);\n",
       "\n",
       "    function ondownload(figure, _format) {\n",
       "        window.open(figure.canvas.toDataURL());\n",
       "    }\n",
       "\n",
       "    var fig = new mpl.figure(id, ws_proxy, ondownload, element);\n",
       "\n",
       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
       "    // web socket which is closed, not our websocket->open comm proxy.\n",
       "    ws_proxy.onopen();\n",
       "\n",
       "    fig.parent_element = element;\n",
       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "    fig.cell_info[0].output_area.element.on(\n",
       "        'cleared',\n",
       "        { fig: fig },\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / fig.ratio;\n",
       "    fig.cell_info[0].output_area.element.off(\n",
       "        'cleared',\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "    fig.resizeObserverInstance.unobserve(fig.canvas_div);\n",
       "\n",
       "    // Update the output cell to use the data from the current canvas.\n",
       "    fig.push_to_output();\n",
       "    var dataURL = fig.canvas.toDataURL();\n",
       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
       "    // the notebook keyboard shortcuts fail.\n",
       "    IPython.keyboard_manager.enable();\n",
       "    fig.parent_element.innerHTML =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "    fig.close_ws(fig, msg);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.close_ws = function (fig, msg) {\n",
       "    fig.send_message('closing', msg);\n",
       "    // fig.ws.close()\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.push_to_output = function (_remove_interactive) {\n",
       "    // Turn the data on the canvas into data in the output cell.\n",
       "    var width = this.canvas.width / this.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Tell IPython that the notebook contents must change.\n",
       "    IPython.notebook.set_dirty(true);\n",
       "    this.send_message('ack', {});\n",
       "    var fig = this;\n",
       "    // Wait a second, then push the new image to the DOM so\n",
       "    // that it is saved nicely (might be nice to debounce this).\n",
       "    setTimeout(function () {\n",
       "        fig.push_to_output();\n",
       "    }, 1000);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'btn-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'btn-group';\n",
       "    var button;\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'btn-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        button = fig.buttons[name] = document.createElement('button');\n",
       "        button.classList = 'btn btn-default';\n",
       "        button.href = '#';\n",
       "        button.title = name;\n",
       "        button.innerHTML = '<i class=\"fa ' + image + ' fa-lg\"></i>';\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    // Add the status bar.\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message pull-right';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "\n",
       "    // Add the close button to the window.\n",
       "    var buttongrp = document.createElement('div');\n",
       "    buttongrp.classList = 'btn-group inline pull-right';\n",
       "    button = document.createElement('button');\n",
       "    button.classList = 'btn btn-mini btn-primary';\n",
       "    button.href = '#';\n",
       "    button.title = 'Stop Interaction';\n",
       "    button.innerHTML = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\n",
       "    button.addEventListener('click', function (_evt) {\n",
       "        fig.handle_close(fig, {});\n",
       "    });\n",
       "    button.addEventListener(\n",
       "        'mouseover',\n",
       "        on_mouseover_closure('Stop Interaction')\n",
       "    );\n",
       "    buttongrp.appendChild(button);\n",
       "    var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n",
       "    titlebar.insertBefore(buttongrp, titlebar.firstChild);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._remove_fig_handler = function (event) {\n",
       "    var fig = event.data.fig;\n",
       "    if (event.target !== this) {\n",
       "        // Ignore bubbled events from children.\n",
       "        return;\n",
       "    }\n",
       "    fig.close_ws(fig, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (el) {\n",
       "    // this is important to make the div 'focusable\n",
       "    el.setAttribute('tabindex', 0);\n",
       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
       "    // off when our div gets focus\n",
       "\n",
       "    // location in version 3\n",
       "    if (IPython.notebook.keyboard_manager) {\n",
       "        IPython.notebook.keyboard_manager.register_events(el);\n",
       "    } else {\n",
       "        // location in version 2\n",
       "        IPython.keyboard_manager.register_events(el);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (event, _name) {\n",
       "    // Check for shift+enter\n",
       "    if (event.shiftKey && event.which === 13) {\n",
       "        this.canvas_div.blur();\n",
       "        // select the cell after this one\n",
       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
       "        IPython.notebook.select(index + 1);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    fig.ondownload(fig, null);\n",
       "};\n",
       "\n",
       "mpl.find_output_cell = function (html_output) {\n",
       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
       "    // IPython event is triggered only after the cells have been serialised, which for\n",
       "    // our purposes (turning an active figure into a static one), is too late.\n",
       "    var cells = IPython.notebook.get_cells();\n",
       "    var ncells = cells.length;\n",
       "    for (var i = 0; i < ncells; i++) {\n",
       "        var cell = cells[i];\n",
       "        if (cell.cell_type === 'code') {\n",
       "            for (var j = 0; j < cell.output_area.outputs.length; j++) {\n",
       "                var data = cell.output_area.outputs[j];\n",
       "                if (data.data) {\n",
       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
       "                    data = data.data;\n",
       "                }\n",
       "                if (data['text/html'] === html_output) {\n",
       "                    return [cell, data, j];\n",
       "                }\n",
       "            }\n",
       "        }\n",
       "    }\n",
       "};\n",
       "\n",
       "// Register the function which deals with the matplotlib target/channel.\n",
       "// The kernel may be null if the page has been refreshed.\n",
       "if (IPython.notebook.kernel !== null) {\n",
       "    IPython.notebook.kernel.comm_manager.register_target(\n",
       "        'matplotlib',\n",
       "        mpl.mpl_figure_comm\n",
       "    );\n",
       "}\n"
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAgAElEQVR4XuydB5gU1ba2F0gGhxxliEdyliwZBEHJSBAQkCSIJCULHIJkHLIBJOeMRIFDEBUko+ScJMefeFHgv9+6t/r2DDPTNdMz01XV334eHqG7qrrqrVXdr3vvtXasl//dhI0ESIAESIAESIAESMBvCMSiAPrNveaFkgAJkAAJkAAJkIASoAAyEEiABEiABEiABEjAzwhQAP3shvNySYAESIAESIAESIACyBggARIgARIgARIgAT8jQAH0sxvOyyUBEiABEiABEiABCiBjgARIgARIgARIgAT8jAAF0M9uOC+XBEiABEiABEiABCiAjAESIAESIAESIAES8DMCFEA/u+G8XBIgARIgARIgARKgADIGSIAESIAESIAESMDPCFAA/eyG83JJgARIgARIgARIgALIGCABEiABEiABEiABPyNAAfSzG87LJQESIAESIAESIAEKIGOABEiABEiABEiABPyMAAXQz244L5cESIAESIAESIAEKICMARIgARIgARIgARLwMwIUQD+74bxcEiABEiABEiABEqAAMgZIgARIgARIgARIwM8IUAD97IbzckmABEiABEiABEiAAsgYIAESIAESIAESIAE/I0AB9LMbzsslARIgARIgARIgAQogY4AESIAESIAESIAE/IwABdDPbjgvlwRIgARIgARIgAQogIwBEiABEiABEiABEvAzAhRAP7vhvFwSIAESIAESIAESoAAyBkiABEiABEiABEjAzwhQAP3shvNySYAESIAESIAESIACyBggARIgARIgARIgAT8jQAH0sxvOyyUBEiABEiABEiABCiBjgARIgARIgARIgAT8jAAF0M9uOC+XBEiABEiABEiABCiAjAESIAESIAESIAES8DMCFEA/u+G8XBIgARIgARIgARKgADIGSIAESIAESIAESMDPCFAA/eyG83JJgARIgARIgARIgALIGCABEiABEiABEiABPyNAAfSzG87LJQGrE9i2bZtUrFhRtm7dKhUqVNDT/fe//y2DBg2Sly9fuk4/S5Yski9fPlmzZk2MXNKUKVMkUaJE0rJly2Cfd/78ecmaNavMmDHjlffMnFho12tmP2zz22+/ycaNG6Vr166SLFkys7sF227+/Ply48YNPUZkW0zfi8ie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6tevLzly5JCqVatKnTp1pHTp0mGGPVcCcfg3gsnLowCaBMXNSIAESMCiBCiAfi6AiMubN2/q8nAoEbNs2TL59NNPdV5gaI09gBZ9kmP4tCiAMQycH0cCJEACUUyAAuhnAohevpw5c+qKIKG17777Tnr06CEIDDONcwDNUHLeNhRA591TXhEJkIB/EaAA+pkAtmvXTtf6xTrCSZIk0ULRb731lq4agt693r17y40bN+T333839SQwgExh4kYkQAIkQAIkYCkC/P12kACizMu9e/e0sHNY7eTJk9KiRQvBer/I9h0yZIjMnz9fzp8/LwkTJpSyZctKUFCQZM2a1VSgMoBMYeJGJEACJEACJGApAvz9dpAAoszLy5cvJVmyZDEWZBwCjjHUlvogDgFb6nbwZEiABEggwgQogA4SwAjf/SjYgQIYBRBteAgKoA1vGk+ZBEiABNwIUAAdJIDuQ8Co94eCz2hz586V1157TTp06KBDvlgDGO3q1avSpk0b2bJli64D/NVXX+kqIF27dtU/ZhoF0Awl521DAXTePeUVkQAJ+BcBCqCDBXDfvn3SunVrFb+9e/cKEkDGjRsnbdu21Sh/55135NatW/Ltt99K3LhxpXv37rJ7924ZNmxYmALIMjD+9QUR1tVSABkHJEACJGBvAhRABwsgsnmPHDni6vFDhu+PP/4oR48elePHj0vu3Lllz549UrRoUY1iLAP35ptvahJIWD2ALARt7wc+qs6eAhhVJHkcEiABEvANAQqggwUwW7ZswZZ4W7VqlTRo0ECePn0qa9as0b+jRy927Niu6EuRIoUMGDCAPYC+eR5t86kUQNvcKp4oCZAACYRKgALopwK4evVq+eCDD14RwOTJk8vAgQM5B5BfGOESoAAyQEiABEjA3gQogA4WQAwBY7jXaH369BH0AroPAWNuIApBmx0CDhnuTAKx9xdAZM+eAhhZctyPBEiABKxBgALoYAFEEggSPtq3by/79+/Xv48dO1b/jYYkkDt37sg333yjSSCfffaZ7Ny5UzOGEyVKpEWlPTUGkCdCfJ8ESIAESIAErEeAv98OFkAs7/bixQtd6QNSB/FDhq97GRhkCRtlYPLnzy/r16/XIWBsmyZNGo8RywDyiIgbkAAJkAAJkIDlCPD320EC2KRJExU91P1DHcBChQpp2RezrUaNGiqAmzdvlsqV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20l2Ob/z25iPek5PRfs9Nqms3UbbqbaR7HLJzO9n3p7625xKndhYhgBoQzGNbXzxxRcyf/5862uw0W6QNpJd1u/8fuZLNE+UT5h+bKwXWqcG07V+W+2m2k6yy/md38Z81HN6KtrvsUll7TbaTrWNZJdLZn4/8/bU3+ZU6sTGMgRAG4q0ERmBKJ8wI3OQ2BHfAtSzbypmDLkAtWz/ABEA7ZvSosMC//zzj6xZs0ZqamokLy/P4T1h0xEQoZ6pgqgIUMv2jyQB0L4pLSKAAAIIIIAAAqEWIACG+vCwcQgggAACCCCAgH0BAqB9U1pEAAEEEEAAAQRCLUAADPXhYeMQQAABBBBAAAH7AgRA+6a0iAACCCCAAAIIhFqAABjqw8PGIYAAAggggAAC9gUIgPZNaTFiAlOnTpX6+np54YUXZN++fWbvdKi4qqoqaW5ulvvuu09WrFghM2bMiNiesztRE+iulnU4rAkTJsi///4r//33nyxcuFDefPPNqO06+xMxge5qObaLt27dkqFDh5rf5E8++SRie25vdwiA9ixpKaIChw8flj///FO2bdvWEQCvXbsm169fl2eeecaEwNLSUvntt9/kgQceiKgCuxUFge5qWUOfvmMtPz9f9MT55JNPmvHH+/XrF4VdZh8iKtBdLcd2dfny5dLY2ChDhgwhACY4/gTAiH452C27AnoF8PPPP+8IgF1bf+qpp+S7776T4uJiuyumNQQsCySq5Zs3b8qzzz4rp0+flv79+1teM80hYFegu1rW4Ld06VJ57bXX5NdffyUAEgDtFh2tuSNw9OhR+fjjj80JTa/affPNNzJlypS7dqC2ttbMo58PHz5cPvvsMykvL79rnkQnzVOnTsns2bPNjw0TAukSSGctt7S0yPjx481VE/0upGP88XS50K57Aums5cmTJ5saPn78OAHQozS4Aujed4ctTkLg+++/l4aGBnOLdvr06fcEwN27d5tn+TQEjh07VjZt2iRbtmyRc+fOmdsHsSleALxx44YJi7rMmDFjktgyZkUgOYF017JujT7WMG3aNPn6669l4MCByW0gcyPgUyBdtXzgwAE5duyYCYBbt24lABIAfVYks0VeICcn554AOGrUKBMON2zY0LH/+vCwXiXUMYETBUB9burFF180D8xriGRCIFMCtmu583ZXV1ebTiF0asrU0ezZ67FZyzqGe11dnfTq1cs8t60dm5YsWSIffPBBz0aOs/dcAaQseoxA1x+a27dvmwff9+7dK9qjLDYtWrRIfvzxRzly5EjcANje3i6VlZXy+OOPy8qVK3uMITsaDgGbtaxX/fr06SMFBQXyxx9/yOjRo2XXrl2iz7UyIZBuAZu13HlbuQLofeQIgN5GzBERga4/NFevXpXCwkJzi7jz7dvVq1ebHr/aq1eniRMnypkzZ+Svv/6Shx9+2FxF1Kt/48aNu+skuWPHDhkxYkREtNiNMAvYrOXc3FyZO3eu6H9q9I9eAdQ/TAhkQsBmLZeVlXVsMgHQ++gRAL2NmCMiAvF+aPRhYb3qEZtWrVolGubOnz8fkT1nN6ImQC1H7Yj23P2hlrN37AmA2bNnzRkWCHKrIcObyuoQSChALVMgURGglrN3JAmA2bNnzRkWiPew8ciRI00v4Ng0bNgw0VcJdO4EkuFNZXUIJBUAdWbt0EQtUziuCfC7nL0jRgDMnj1rzoCA9gS7cOGCWZO+4Hb9+vVSUVFhnuXT17zEXgOzceNGcxt48+bN8uWXX8rZs2elpKQkA1vIKhDwJ0At+3NirvALUMvhOEYEwHAcB7YiTQL6/j4NfF2nWbNmmfdE6aRX/9auXWteBK3DYH366aemgwcTAmESoJbDdDTYliAC1HIQPXvLEgDtWdISAggggAACCCDghAAB0InDxEYigAACCCCAAAL2BAiA9ixpCQEEEEAAAQQQcEKAAOjEYWIjEUAAAQQQQAABewIEQHuWtIQAAggggAACCDghQAB04jCxkQgggAACCCCAgD0BAqA9S1pCAAEEEEAAAQScECAAOnGY2EgEEEAAAQQQQMCeAAHQniUtIYAAAggggAACTggQAJ04TGwkAggggAACCCBgT4AAaM+SlhBAAAEEEEAAAScECIBOHCY2EgEEEEAAAQQQsCdAALRnSUsIIIAAAggggIATAgRAJw4TG4kAAggggAACCNgTIADas6QlBBBAAAEEEEDACQECoBOHiY1EAAEEEEAAAQTsCRAA7VnSEgIIIIAAAggg4IQAAdCJw8RGIoAAAggggAAC9gQIgPYsaQkBBBBAAAEEEHBCgADoxGFiIxFAAAEEEEAAAXsCBEB7lrSEAAIIIIAAAgg4IUAAdOIwsZEIIIAAAggggIA9AQKgPUtaQgABBBBAAAEEnBAgADpxmNhIBBBAAAEEEEDAngAB0J4lLSGAAAIIIIAAAk4IEACdOExsJAIIIIAAAgggYE+AAGjPkpYQQAABBBBAAAEnBAiAThwmNhIBBBBAAAEEELAn8D/fWuaKRbLT+gAAAABJRU5ErkJggg==\" width=\"640\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/javascript": [
       "/* Put everything inside the global mpl namespace */\n",
       "/* global mpl */\n",
       "window.mpl = {};\n",
       "\n",
       "mpl.get_websocket_type = function () {\n",
       "    if (typeof WebSocket !== 'undefined') {\n",
       "        return WebSocket;\n",
       "    } else if (typeof MozWebSocket !== 'undefined') {\n",
       "        return MozWebSocket;\n",
       "    } else {\n",
       "        alert(\n",
       "            'Your browser does not have WebSocket support. ' +\n",
       "                'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
       "                'Firefox 4 and 5 are also supported but you ' +\n",
       "                'have to enable WebSockets in about:config.'\n",
       "        );\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure = function (figure_id, websocket, ondownload, parent_element) {\n",
       "    this.id = figure_id;\n",
       "\n",
       "    this.ws = websocket;\n",
       "\n",
       "    this.supports_binary = this.ws.binaryType !== undefined;\n",
       "\n",
       "    if (!this.supports_binary) {\n",
       "        var warnings = document.getElementById('mpl-warnings');\n",
       "        if (warnings) {\n",
       "            warnings.style.display = 'block';\n",
       "            warnings.textContent =\n",
       "                'This browser does not support binary websocket messages. ' +\n",
       "                'Performance may be slow.';\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.imageObj = new Image();\n",
       "\n",
       "    this.context = undefined;\n",
       "    this.message = undefined;\n",
       "    this.canvas = undefined;\n",
       "    this.rubberband_canvas = undefined;\n",
       "    this.rubberband_context = undefined;\n",
       "    this.format_dropdown = undefined;\n",
       "\n",
       "    this.image_mode = 'full';\n",
       "\n",
       "    this.root = document.createElement('div');\n",
       "    this.root.setAttribute('style', 'display: inline-block');\n",
       "    this._root_extra_style(this.root);\n",
       "\n",
       "    parent_element.appendChild(this.root);\n",
       "\n",
       "    this._init_header(this);\n",
       "    this._init_canvas(this);\n",
       "    this._init_toolbar(this);\n",
       "\n",
       "    var fig = this;\n",
       "\n",
       "    this.waiting = false;\n",
       "\n",
       "    this.ws.onopen = function () {\n",
       "        fig.send_message('supports_binary', { value: fig.supports_binary });\n",
       "        fig.send_message('send_image_mode', {});\n",
       "        if (fig.ratio !== 1) {\n",
       "            fig.send_message('set_device_pixel_ratio', {\n",
       "                device_pixel_ratio: fig.ratio,\n",
       "            });\n",
       "        }\n",
       "        fig.send_message('refresh', {});\n",
       "    };\n",
       "\n",
       "    this.imageObj.onload = function () {\n",
       "        if (fig.image_mode === 'full') {\n",
       "            // Full images could contain transparency (where diff images\n",
       "            // almost always do), so we need to clear the canvas so that\n",
       "            // there is no ghosting.\n",
       "            fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
       "        }\n",
       "        fig.context.drawImage(fig.imageObj, 0, 0);\n",
       "    };\n",
       "\n",
       "    this.imageObj.onunload = function () {\n",
       "        fig.ws.close();\n",
       "    };\n",
       "\n",
       "    this.ws.onmessage = this._make_on_message_function(this);\n",
       "\n",
       "    this.ondownload = ondownload;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_header = function () {\n",
       "    var titlebar = document.createElement('div');\n",
       "    titlebar.classList =\n",
       "        'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n",
       "    var titletext = document.createElement('div');\n",
       "    titletext.classList = 'ui-dialog-title';\n",
       "    titletext.setAttribute(\n",
       "        'style',\n",
       "        'width: 100%; text-align: center; padding: 3px;'\n",
       "    );\n",
       "    titlebar.appendChild(titletext);\n",
       "    this.root.appendChild(titlebar);\n",
       "    this.header = titletext;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n",
       "\n",
       "mpl.figure.prototype._init_canvas = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var canvas_div = (this.canvas_div = document.createElement('div'));\n",
       "    canvas_div.setAttribute('tabindex', '0');\n",
       "    canvas_div.setAttribute(\n",
       "        'style',\n",
       "        'border: 1px solid #ddd;' +\n",
       "            'box-sizing: content-box;' +\n",
       "            'clear: both;' +\n",
       "            'min-height: 1px;' +\n",
       "            'min-width: 1px;' +\n",
       "            'outline: 0;' +\n",
       "            'overflow: hidden;' +\n",
       "            'position: relative;' +\n",
       "            'resize: both;' +\n",
       "            'z-index: 2;'\n",
       "    );\n",
       "\n",
       "    function on_keyboard_event_closure(name) {\n",
       "        return function (event) {\n",
       "            return fig.key_event(event, name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'keydown',\n",
       "        on_keyboard_event_closure('key_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'keyup',\n",
       "        on_keyboard_event_closure('key_release')\n",
       "    );\n",
       "\n",
       "    this._canvas_extra_style(canvas_div);\n",
       "    this.root.appendChild(canvas_div);\n",
       "\n",
       "    var canvas = (this.canvas = document.createElement('canvas'));\n",
       "    canvas.classList.add('mpl-canvas');\n",
       "    canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: relative;' +\n",
       "            'z-index: 0;'\n",
       "    );\n",
       "\n",
       "    this.context = canvas.getContext('2d');\n",
       "\n",
       "    var backingStore =\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        this.context.webkitBackingStorePixelRatio ||\n",
       "        this.context.mozBackingStorePixelRatio ||\n",
       "        this.context.msBackingStorePixelRatio ||\n",
       "        this.context.oBackingStorePixelRatio ||\n",
       "        this.context.backingStorePixelRatio ||\n",
       "        1;\n",
       "\n",
       "    this.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
       "\n",
       "    var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n",
       "        'canvas'\n",
       "    ));\n",
       "    rubberband_canvas.setAttribute(\n",
       "        'style',\n",
       "        'box-sizing: content-box;' +\n",
       "            'left: 0;' +\n",
       "            'pointer-events: none;' +\n",
       "            'position: absolute;' +\n",
       "            'top: 0;' +\n",
       "            'z-index: 1;'\n",
       "    );\n",
       "\n",
       "    // Apply a ponyfill if ResizeObserver is not implemented by browser.\n",
       "    if (this.ResizeObserver === undefined) {\n",
       "        if (window.ResizeObserver !== undefined) {\n",
       "            this.ResizeObserver = window.ResizeObserver;\n",
       "        } else {\n",
       "            var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n",
       "            this.ResizeObserver = obs.ResizeObserver;\n",
       "        }\n",
       "    }\n",
       "\n",
       "    this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n",
       "        var nentries = entries.length;\n",
       "        for (var i = 0; i < nentries; i++) {\n",
       "            var entry = entries[i];\n",
       "            var width, height;\n",
       "            if (entry.contentBoxSize) {\n",
       "                if (entry.contentBoxSize instanceof Array) {\n",
       "                    // Chrome 84 implements new version of spec.\n",
       "                    width = entry.contentBoxSize[0].inlineSize;\n",
       "                    height = entry.contentBoxSize[0].blockSize;\n",
       "                } else {\n",
       "                    // Firefox implements old version of spec.\n",
       "                    width = entry.contentBoxSize.inlineSize;\n",
       "                    height = entry.contentBoxSize.blockSize;\n",
       "                }\n",
       "            } else {\n",
       "                // Chrome <84 implements even older version of spec.\n",
       "                width = entry.contentRect.width;\n",
       "                height = entry.contentRect.height;\n",
       "            }\n",
       "\n",
       "            // Keep the size of the canvas and rubber band canvas in sync with\n",
       "            // the canvas container.\n",
       "            if (entry.devicePixelContentBoxSize) {\n",
       "                // Chrome 84 implements new version of spec.\n",
       "                canvas.setAttribute(\n",
       "                    'width',\n",
       "                    entry.devicePixelContentBoxSize[0].inlineSize\n",
       "                );\n",
       "                canvas.setAttribute(\n",
       "                    'height',\n",
       "                    entry.devicePixelContentBoxSize[0].blockSize\n",
       "                );\n",
       "            } else {\n",
       "                canvas.setAttribute('width', width * fig.ratio);\n",
       "                canvas.setAttribute('height', height * fig.ratio);\n",
       "            }\n",
       "            /* This rescales the canvas back to display pixels, so that it\n",
       "             * appears correct on HiDPI screens. */\n",
       "            canvas.style.width = width + 'px';\n",
       "            canvas.style.height = height + 'px';\n",
       "\n",
       "            rubberband_canvas.setAttribute('width', width);\n",
       "            rubberband_canvas.setAttribute('height', height);\n",
       "\n",
       "            // And update the size in Python. We ignore the initial 0/0 size\n",
       "            // that occurs as the element is placed into the DOM, which should\n",
       "            // otherwise not happen due to the minimum size styling.\n",
       "            if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    this.resizeObserverInstance.observe(canvas_div);\n",
       "\n",
       "    function on_mouse_event_closure(name) {\n",
       "        /* User Agent sniffing is bad, but WebKit is busted:\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=144526\n",
       "         * https://bugs.webkit.org/show_bug.cgi?id=181818\n",
       "         * The worst that happens here is that they get an extra browser\n",
       "         * selection when dragging, if this check fails to catch them.\n",
       "         */\n",
       "        var UA = navigator.userAgent;\n",
       "        var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n",
       "        if(isWebKit) {\n",
       "            return function (event) {\n",
       "                /* This prevents the web browser from automatically changing to\n",
       "                 * the text insertion cursor when the button is pressed. We\n",
       "                 * want to control all of the cursor setting manually through\n",
       "                 * the 'cursor' event from matplotlib */\n",
       "                event.preventDefault()\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        } else {\n",
       "            return function (event) {\n",
       "                return fig.mouse_event(event, name);\n",
       "            };\n",
       "        }\n",
       "    }\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mousedown',\n",
       "        on_mouse_event_closure('button_press')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseup',\n",
       "        on_mouse_event_closure('button_release')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'dblclick',\n",
       "        on_mouse_event_closure('dblclick')\n",
       "    );\n",
       "    // Throttle sequential mouse events to 1 every 20ms.\n",
       "    canvas_div.addEventListener(\n",
       "        'mousemove',\n",
       "        on_mouse_event_closure('motion_notify')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseenter',\n",
       "        on_mouse_event_closure('figure_enter')\n",
       "    );\n",
       "    canvas_div.addEventListener(\n",
       "        'mouseleave',\n",
       "        on_mouse_event_closure('figure_leave')\n",
       "    );\n",
       "\n",
       "    canvas_div.addEventListener('wheel', function (event) {\n",
       "        if (event.deltaY < 0) {\n",
       "            event.step = 1;\n",
       "        } else {\n",
       "            event.step = -1;\n",
       "        }\n",
       "        on_mouse_event_closure('scroll')(event);\n",
       "    });\n",
       "\n",
       "    canvas_div.appendChild(canvas);\n",
       "    canvas_div.appendChild(rubberband_canvas);\n",
       "\n",
       "    this.rubberband_context = rubberband_canvas.getContext('2d');\n",
       "    this.rubberband_context.strokeStyle = '#000000';\n",
       "\n",
       "    this._resize_canvas = function (width, height, forward) {\n",
       "        if (forward) {\n",
       "            canvas_div.style.width = width + 'px';\n",
       "            canvas_div.style.height = height + 'px';\n",
       "        }\n",
       "    };\n",
       "\n",
       "    // Disable right mouse context menu.\n",
       "    canvas_div.addEventListener('contextmenu', function (_e) {\n",
       "        event.preventDefault();\n",
       "        return false;\n",
       "    });\n",
       "\n",
       "    function set_focus() {\n",
       "        canvas.focus();\n",
       "        canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    window.setTimeout(set_focus, 100);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'mpl-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'mpl-button-group';\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'mpl-button-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        var button = (fig.buttons[name] = document.createElement('button'));\n",
       "        button.classList = 'mpl-widget';\n",
       "        button.setAttribute('role', 'button');\n",
       "        button.setAttribute('aria-disabled', 'false');\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "\n",
       "        var icon_img = document.createElement('img');\n",
       "        icon_img.src = '_images/' + image + '.png';\n",
       "        icon_img.srcset = '_images/' + image + '_large.png 2x';\n",
       "        icon_img.alt = tooltip;\n",
       "        button.appendChild(icon_img);\n",
       "\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    var fmt_picker = document.createElement('select');\n",
       "    fmt_picker.classList = 'mpl-widget';\n",
       "    toolbar.appendChild(fmt_picker);\n",
       "    this.format_dropdown = fmt_picker;\n",
       "\n",
       "    for (var ind in mpl.extensions) {\n",
       "        var fmt = mpl.extensions[ind];\n",
       "        var option = document.createElement('option');\n",
       "        option.selected = fmt === mpl.default_extension;\n",
       "        option.innerHTML = fmt;\n",
       "        fmt_picker.appendChild(option);\n",
       "    }\n",
       "\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.request_resize = function (x_pixels, y_pixels) {\n",
       "    // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
       "    // which will in turn request a refresh of the image.\n",
       "    this.send_message('resize', { width: x_pixels, height: y_pixels });\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_message = function (type, properties) {\n",
       "    properties['type'] = type;\n",
       "    properties['figure_id'] = this.id;\n",
       "    this.ws.send(JSON.stringify(properties));\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.send_draw_message = function () {\n",
       "    if (!this.waiting) {\n",
       "        this.waiting = true;\n",
       "        this.ws.send(JSON.stringify({ type: 'draw', figure_id: this.id }));\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    var format_dropdown = fig.format_dropdown;\n",
       "    var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
       "    fig.ondownload(fig, format);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_resize = function (fig, msg) {\n",
       "    var size = msg['size'];\n",
       "    if (size[0] !== fig.canvas.width || size[1] !== fig.canvas.height) {\n",
       "        fig._resize_canvas(size[0], size[1], msg['forward']);\n",
       "        fig.send_message('refresh', {});\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_rubberband = function (fig, msg) {\n",
       "    var x0 = msg['x0'] / fig.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n",
       "    var x1 = msg['x1'] / fig.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / fig.ratio;\n",
       "    x0 = Math.floor(x0) + 0.5;\n",
       "    y0 = Math.floor(y0) + 0.5;\n",
       "    x1 = Math.floor(x1) + 0.5;\n",
       "    y1 = Math.floor(y1) + 0.5;\n",
       "    var min_x = Math.min(x0, x1);\n",
       "    var min_y = Math.min(y0, y1);\n",
       "    var width = Math.abs(x1 - x0);\n",
       "    var height = Math.abs(y1 - y0);\n",
       "\n",
       "    fig.rubberband_context.clearRect(\n",
       "        0,\n",
       "        0,\n",
       "        fig.canvas.width / fig.ratio,\n",
       "        fig.canvas.height / fig.ratio\n",
       "    );\n",
       "\n",
       "    fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_figure_label = function (fig, msg) {\n",
       "    // Updates the figure title.\n",
       "    fig.header.textContent = msg['label'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_cursor = function (fig, msg) {\n",
       "    fig.canvas_div.style.cursor = msg['cursor'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_message = function (fig, msg) {\n",
       "    fig.message.textContent = msg['message'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_draw = function (fig, _msg) {\n",
       "    // Request the server to send over a new figure.\n",
       "    fig.send_draw_message();\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_image_mode = function (fig, msg) {\n",
       "    fig.image_mode = msg['mode'];\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n",
       "    for (var key in msg) {\n",
       "        if (!(key in fig.buttons)) {\n",
       "            continue;\n",
       "        }\n",
       "        fig.buttons[key].disabled = !msg[key];\n",
       "        fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n",
       "    if (msg['mode'] === 'PAN') {\n",
       "        fig.buttons['Pan'].classList.add('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    } else if (msg['mode'] === 'ZOOM') {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.add('active');\n",
       "    } else {\n",
       "        fig.buttons['Pan'].classList.remove('active');\n",
       "        fig.buttons['Zoom'].classList.remove('active');\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Called whenever the canvas gets updated.\n",
       "    this.send_message('ack', {});\n",
       "};\n",
       "\n",
       "// A function to construct a web socket function for onmessage handling.\n",
       "// Called in the figure constructor.\n",
       "mpl.figure.prototype._make_on_message_function = function (fig) {\n",
       "    return function socket_on_message(evt) {\n",
       "        if (evt.data instanceof Blob) {\n",
       "            var img = evt.data;\n",
       "            if (img.type !== 'image/png') {\n",
       "                /* FIXME: We get \"Resource interpreted as Image but\n",
       "                 * transferred with MIME type text/plain:\" errors on\n",
       "                 * Chrome.  But how to set the MIME type?  It doesn't seem\n",
       "                 * to be part of the websocket stream */\n",
       "                img.type = 'image/png';\n",
       "            }\n",
       "\n",
       "            /* Free the memory for the previous frames */\n",
       "            if (fig.imageObj.src) {\n",
       "                (window.URL || window.webkitURL).revokeObjectURL(\n",
       "                    fig.imageObj.src\n",
       "                );\n",
       "            }\n",
       "\n",
       "            fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
       "                img\n",
       "            );\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        } else if (\n",
       "            typeof evt.data === 'string' &&\n",
       "            evt.data.slice(0, 21) === 'data:image/png;base64'\n",
       "        ) {\n",
       "            fig.imageObj.src = evt.data;\n",
       "            fig.updated_canvas_event();\n",
       "            fig.waiting = false;\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        var msg = JSON.parse(evt.data);\n",
       "        var msg_type = msg['type'];\n",
       "\n",
       "        // Call the  \"handle_{type}\" callback, which takes\n",
       "        // the figure and JSON message as its only arguments.\n",
       "        try {\n",
       "            var callback = fig['handle_' + msg_type];\n",
       "        } catch (e) {\n",
       "            console.log(\n",
       "                \"No handler for the '\" + msg_type + \"' message type: \",\n",
       "                msg\n",
       "            );\n",
       "            return;\n",
       "        }\n",
       "\n",
       "        if (callback) {\n",
       "            try {\n",
       "                // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
       "                callback(fig, msg);\n",
       "            } catch (e) {\n",
       "                console.log(\n",
       "                    \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n",
       "                    e,\n",
       "                    e.stack,\n",
       "                    msg\n",
       "                );\n",
       "            }\n",
       "        }\n",
       "    };\n",
       "};\n",
       "\n",
       "\n",
       "/*\n",
       " * return a copy of an object with only non-object keys\n",
       " * we need this to avoid circular references\n",
       " * https://stackoverflow.com/a/24161582/3208463\n",
       " */\n",
       "function simpleKeys(original) {\n",
       "    return Object.keys(original).reduce(function (obj, key) {\n",
       "        if (typeof original[key] !== 'object') {\n",
       "            obj[key] = original[key];\n",
       "        }\n",
       "        return obj;\n",
       "    }, {});\n",
       "}\n",
       "\n",
       "mpl.figure.prototype.mouse_event = function (event, name) {\n",
       "    if (name === 'button_press') {\n",
       "        this.canvas.focus();\n",
       "        this.canvas_div.focus();\n",
       "    }\n",
       "\n",
       "    // from https://stackoverflow.com/q/1114465\n",
       "    var boundingRect = this.canvas.getBoundingClientRect();\n",
       "    var x = (event.clientX - boundingRect.left) * this.ratio;\n",
       "    var y = (event.clientY - boundingRect.top) * this.ratio;\n",
       "\n",
       "    this.send_message(name, {\n",
       "        x: x,\n",
       "        y: y,\n",
       "        button: event.button,\n",
       "        step: event.step,\n",
       "        guiEvent: simpleKeys(event),\n",
       "    });\n",
       "\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (_event, _name) {\n",
       "    // Handle any extra behaviour associated with a key event\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.key_event = function (event, name) {\n",
       "    // Prevent repeat events\n",
       "    if (name === 'key_press') {\n",
       "        if (event.key === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.key;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.key !== 'Control') {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    else if (event.altKey && event.key !== 'Alt') {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    else if (event.shiftKey && event.key !== 'Shift') {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k' + event.key;\n",
       "\n",
       "    this._key_event_extra(event, name);\n",
       "\n",
       "    this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n",
       "    return false;\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onclick = function (name) {\n",
       "    if (name === 'download') {\n",
       "        this.handle_save(this, null);\n",
       "    } else {\n",
       "        this.send_message('toolbar_button', { name: name });\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n",
       "    this.message.textContent = tooltip;\n",
       "};\n",
       "\n",
       "///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n",
       "// prettier-ignore\n",
       "var _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\n",
       "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n",
       "\n",
       "mpl.default_extension = \"png\";/* global mpl */\n",
       "\n",
       "var comm_websocket_adapter = function (comm) {\n",
       "    // Create a \"websocket\"-like object which calls the given IPython comm\n",
       "    // object with the appropriate methods. Currently this is a non binary\n",
       "    // socket, so there is still some room for performance tuning.\n",
       "    var ws = {};\n",
       "\n",
       "    ws.binaryType = comm.kernel.ws.binaryType;\n",
       "    ws.readyState = comm.kernel.ws.readyState;\n",
       "    function updateReadyState(_event) {\n",
       "        if (comm.kernel.ws) {\n",
       "            ws.readyState = comm.kernel.ws.readyState;\n",
       "        } else {\n",
       "            ws.readyState = 3; // Closed state.\n",
       "        }\n",
       "    }\n",
       "    comm.kernel.ws.addEventListener('open', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('close', updateReadyState);\n",
       "    comm.kernel.ws.addEventListener('error', updateReadyState);\n",
       "\n",
       "    ws.close = function () {\n",
       "        comm.close();\n",
       "    };\n",
       "    ws.send = function (m) {\n",
       "        //console.log('sending', m);\n",
       "        comm.send(m);\n",
       "    };\n",
       "    // Register the callback with on_msg.\n",
       "    comm.on_msg(function (msg) {\n",
       "        //console.log('receiving', msg['content']['data'], msg);\n",
       "        var data = msg['content']['data'];\n",
       "        if (data['blob'] !== undefined) {\n",
       "            data = {\n",
       "                data: new Blob(msg['buffers'], { type: data['blob'] }),\n",
       "            };\n",
       "        }\n",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(data);\n",
       "    });\n",
       "    return ws;\n",
       "};\n",
       "\n",
       "mpl.mpl_figure_comm = function (comm, msg) {\n",
       "    // This is the function which gets called when the mpl process\n",
       "    // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
       "\n",
       "    var id = msg.content.data.id;\n",
       "    // Get hold of the div created by the display call when the Comm\n",
       "    // socket was opened in Python.\n",
       "    var element = document.getElementById(id);\n",
       "    var ws_proxy = comm_websocket_adapter(comm);\n",
       "\n",
       "    function ondownload(figure, _format) {\n",
       "        window.open(figure.canvas.toDataURL());\n",
       "    }\n",
       "\n",
       "    var fig = new mpl.figure(id, ws_proxy, ondownload, element);\n",
       "\n",
       "    // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
       "    // web socket which is closed, not our websocket->open comm proxy.\n",
       "    ws_proxy.onopen();\n",
       "\n",
       "    fig.parent_element = element;\n",
       "    fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "    fig.cell_info[0].output_area.element.on(\n",
       "        'cleared',\n",
       "        { fig: fig },\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / fig.ratio;\n",
       "    fig.cell_info[0].output_area.element.off(\n",
       "        'cleared',\n",
       "        fig._remove_fig_handler\n",
       "    );\n",
       "    fig.resizeObserverInstance.unobserve(fig.canvas_div);\n",
       "\n",
       "    // Update the output cell to use the data from the current canvas.\n",
       "    fig.push_to_output();\n",
       "    var dataURL = fig.canvas.toDataURL();\n",
       "    // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
       "    // the notebook keyboard shortcuts fail.\n",
       "    IPython.keyboard_manager.enable();\n",
       "    fig.parent_element.innerHTML =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "    fig.close_ws(fig, msg);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.close_ws = function (fig, msg) {\n",
       "    fig.send_message('closing', msg);\n",
       "    // fig.ws.close()\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.push_to_output = function (_remove_interactive) {\n",
       "    // Turn the data on the canvas into data in the output cell.\n",
       "    var width = this.canvas.width / this.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.updated_canvas_event = function () {\n",
       "    // Tell IPython that the notebook contents must change.\n",
       "    IPython.notebook.set_dirty(true);\n",
       "    this.send_message('ack', {});\n",
       "    var fig = this;\n",
       "    // Wait a second, then push the new image to the DOM so\n",
       "    // that it is saved nicely (might be nice to debounce this).\n",
       "    setTimeout(function () {\n",
       "        fig.push_to_output();\n",
       "    }, 1000);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._init_toolbar = function () {\n",
       "    var fig = this;\n",
       "\n",
       "    var toolbar = document.createElement('div');\n",
       "    toolbar.classList = 'btn-toolbar';\n",
       "    this.root.appendChild(toolbar);\n",
       "\n",
       "    function on_click_closure(name) {\n",
       "        return function (_event) {\n",
       "            return fig.toolbar_button_onclick(name);\n",
       "        };\n",
       "    }\n",
       "\n",
       "    function on_mouseover_closure(tooltip) {\n",
       "        return function (event) {\n",
       "            if (!event.currentTarget.disabled) {\n",
       "                return fig.toolbar_button_onmouseover(tooltip);\n",
       "            }\n",
       "        };\n",
       "    }\n",
       "\n",
       "    fig.buttons = {};\n",
       "    var buttonGroup = document.createElement('div');\n",
       "    buttonGroup.classList = 'btn-group';\n",
       "    var button;\n",
       "    for (var toolbar_ind in mpl.toolbar_items) {\n",
       "        var name = mpl.toolbar_items[toolbar_ind][0];\n",
       "        var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
       "        var image = mpl.toolbar_items[toolbar_ind][2];\n",
       "        var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
       "\n",
       "        if (!name) {\n",
       "            /* Instead of a spacer, we start a new button group. */\n",
       "            if (buttonGroup.hasChildNodes()) {\n",
       "                toolbar.appendChild(buttonGroup);\n",
       "            }\n",
       "            buttonGroup = document.createElement('div');\n",
       "            buttonGroup.classList = 'btn-group';\n",
       "            continue;\n",
       "        }\n",
       "\n",
       "        button = fig.buttons[name] = document.createElement('button');\n",
       "        button.classList = 'btn btn-default';\n",
       "        button.href = '#';\n",
       "        button.title = name;\n",
       "        button.innerHTML = '<i class=\"fa ' + image + ' fa-lg\"></i>';\n",
       "        button.addEventListener('click', on_click_closure(method_name));\n",
       "        button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n",
       "        buttonGroup.appendChild(button);\n",
       "    }\n",
       "\n",
       "    if (buttonGroup.hasChildNodes()) {\n",
       "        toolbar.appendChild(buttonGroup);\n",
       "    }\n",
       "\n",
       "    // Add the status bar.\n",
       "    var status_bar = document.createElement('span');\n",
       "    status_bar.classList = 'mpl-message pull-right';\n",
       "    toolbar.appendChild(status_bar);\n",
       "    this.message = status_bar;\n",
       "\n",
       "    // Add the close button to the window.\n",
       "    var buttongrp = document.createElement('div');\n",
       "    buttongrp.classList = 'btn-group inline pull-right';\n",
       "    button = document.createElement('button');\n",
       "    button.classList = 'btn btn-mini btn-primary';\n",
       "    button.href = '#';\n",
       "    button.title = 'Stop Interaction';\n",
       "    button.innerHTML = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\n",
       "    button.addEventListener('click', function (_evt) {\n",
       "        fig.handle_close(fig, {});\n",
       "    });\n",
       "    button.addEventListener(\n",
       "        'mouseover',\n",
       "        on_mouseover_closure('Stop Interaction')\n",
       "    );\n",
       "    buttongrp.appendChild(button);\n",
       "    var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n",
       "    titlebar.insertBefore(buttongrp, titlebar.firstChild);\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._remove_fig_handler = function (event) {\n",
       "    var fig = event.data.fig;\n",
       "    if (event.target !== this) {\n",
       "        // Ignore bubbled events from children.\n",
       "        return;\n",
       "    }\n",
       "    fig.close_ws(fig, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._canvas_extra_style = function (el) {\n",
       "    // this is important to make the div 'focusable\n",
       "    el.setAttribute('tabindex', 0);\n",
       "    // reach out to IPython and tell the keyboard manager to turn it's self\n",
       "    // off when our div gets focus\n",
       "\n",
       "    // location in version 3\n",
       "    if (IPython.notebook.keyboard_manager) {\n",
       "        IPython.notebook.keyboard_manager.register_events(el);\n",
       "    } else {\n",
       "        // location in version 2\n",
       "        IPython.keyboard_manager.register_events(el);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._key_event_extra = function (event, _name) {\n",
       "    // Check for shift+enter\n",
       "    if (event.shiftKey && event.which === 13) {\n",
       "        this.canvas_div.blur();\n",
       "        // select the cell after this one\n",
       "        var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
       "        IPython.notebook.select(index + 1);\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_save = function (fig, _msg) {\n",
       "    fig.ondownload(fig, null);\n",
       "};\n",
       "\n",
       "mpl.find_output_cell = function (html_output) {\n",
       "    // Return the cell and output element which can be found *uniquely* in the notebook.\n",
       "    // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
       "    // IPython event is triggered only after the cells have been serialised, which for\n",
       "    // our purposes (turning an active figure into a static one), is too late.\n",
       "    var cells = IPython.notebook.get_cells();\n",
       "    var ncells = cells.length;\n",
       "    for (var i = 0; i < ncells; i++) {\n",
       "        var cell = cells[i];\n",
       "        if (cell.cell_type === 'code') {\n",
       "            for (var j = 0; j < cell.output_area.outputs.length; j++) {\n",
       "                var data = cell.output_area.outputs[j];\n",
       "                if (data.data) {\n",
       "                    // IPython >= 3 moved mimebundle to data attribute of output\n",
       "                    data = data.data;\n",
       "                }\n",
       "                if (data['text/html'] === html_output) {\n",
       "                    return [cell, data, j];\n",
       "                }\n",
       "            }\n",
       "        }\n",
       "    }\n",
       "};\n",
       "\n",
       "// Register the function which deals with the matplotlib target/channel.\n",
       "// The kernel may be null if the page has been refreshed.\n",
       "if (IPython.notebook.kernel !== null) {\n",
       "    IPython.notebook.kernel.comm_manager.register_target(\n",
       "        'matplotlib',\n",
       "        mpl.mpl_figure_comm\n",
       "    );\n",
       "}\n"
      ],
      "text/plain": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,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ujvcwUCgDdc/sNo5sQKjpWAEEEAAAQQQQAABBAi0KTIGCLQp0BHlypWz2bNnW7t27RLWGh4KlTBKCkIAAQTSRoAHKqVNV9FQBBAoRQJMJIXbmQTaBPmvXbvWjjzySPvggw+sadOmUZVKoI2Ki50RQAABBIoQINAyNBBAAIHkCxBok2+et0YCbYL8CbQJgqQYBBBAAIGYBQi0MdNxIAIIIBCzAIE2ZrqEHEigzceYm5trvXr1smnTppkG56mnnmojRoyw0047zfT9sbfddpu99tpr9uOPP1rdunWtX79+duONN5pmWfNu5557rumpxkuWLHH7aOb2119/dbO3Ku/kk0+O7J5/hnbDhg125513unoyMjLs7LPPtlGjRlmDBg18dzpLjn1TsSMCCCBQagQItKWmK3khCCCQRgIE2nA7i0Cbz79nz542c+ZMGzdunNWvX9+GDh1q8+bNs88//9zuu+8+e+utt2zs2LF26KGHut/9/PPPdskll7jgevrpp9vrr79ujRo1sooVK9rBBx9sCxYssG+++cZOOeUUV9Pw4cPtxRdftM8++8wOOugg97u8gfann35yofecc86xrKws22+//Wzw4MG2dOlS++ijj1y5fjYCrR8l9kEAAQRKlwCBtnT1J68GAQTSQ4BAG24/EWjz+O/cudNq1KhhEydOtGuuucb9RbOqmhlVuFy0aJELsuPHjy/Qa36XHO/evdvV8eyzz9of//jHAoFWZStEf/LJJ5FZ319++cWqV69uc+bMsQsvvLDQEaOZZf14m06szMxMy8yaYRmVKoc7yqgdAQQQQCApAgTapDBTCQIIILCPAIE23AFBoM3jrxnQJk2amMKpZme9rX379i6EXnHFFXb55ZfbMccc44KlnkrcvHlzt1tRgfa7775zM7uaqf32229NgVazsKNHj7ZbbrmlQKC99dZb7W9/+5vtv//++4wMHfP4449bjx49Ch0x2dnZlpOTU+BvBNpwTzBqRwABBJIpQKBNpjZ1IYAAAv8VINCGOxIItHn8P/zwQ7fcd926dVavXr3IXxRcDznkEPv73/9umzdvtpdeesktLZ41a5YpgD7yyCNFBtq2bdu6YxQ2FZIrVapkZ511lvXv39/N+mrLu+RYgXXZsmX2zDPPFBgZNWvWtGrVqhU6YpihDfdEonYEEEAgFQQItKnQC7QBAQTKmgCB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CoF2+/bt7nts2RBAAAEEEEAAAQQQQCDxAgTaxJtGUyKBNhqtKPcl0EYJxu4IIIAAAggggAACCKSZAIE23A4j0IbrH1jtnFiB0VIwAggggAACCCCAAAIRAa67wx0MBNpw/QOrnXtoA6OlYAQQKEMC3C9bhjqbl4oAAgjEKECgjREuQYcRaBMEmWrFEGhTrUdoDwIIpKMAgTYde402I4AAAskVINAm1zt/bQTacP0Dq51AGxgtBSOAQBkSINCWoc7mpSKAAAIxChBoY4RL0GEE2gRBploxBNpU6xHagwAC6ShAoE3HXqPNCCCAQHIFCLTJ9WaGNk7vF154wTp37mxbtmyxjIwMW758uTVr1szuvvtuGzZsmCu9e/fupoHdunVry8rKsilTpthdd91lX331lbVt29YmTZpkM2fOtIEDB5q+Vufaa69131Vbvnx569u3r/3jH/+wd999d5+WnnTSSda+fXvLycnx9QoItL6Y2AkBBBAoVoBAywBBAAEEEChJgEBbklCwf2eGNkpfBdCDDz7YFi9ebKeccoqNGjXKBg8ebEceeaT7nbZjjz3W7rjjDtt///2tW7du7vtoH374YduxY4dddtll7rjq1au7QLtmzRq7/PLLbfLkydaxY0dbsWKFNW7c2D7//HM76qijXHkrV660E0880VatWmXHHHNMoS3Ozc01/XibTqzMzEzLzJphGZUqR/kq2R0BBBBAQAIEWsYBAggggEBJAgTakoSC/TuBNgZfBdJrrrnGzbpq1vS0005zM6fff/+97dy50w477DD75JNP3CzrjTfeuE84vfnmm+3pp5+2b7/91g488EBX+0UXXWQNGjSwJ5980v27SZMm1qFDBxswYID7d79+/ez111+PBObCmpydnV3o7C2BNoYO5hAEEEDg/wQItAwFBBBAAIGSBAi0JQkF+3cCbQy+CrKrV6+2efPmWc2aNe2NN96w6667zs3Ubtu2zc3Obtq0ySZOnGi33nqrC7nepllZLTfWrKu3XX/99W729vnnn3e/Gjp0qI0fP94+/fRT27t3rzVs2NAtXe7Zs2eRrWWGNoaO5BAEEECgBAECLUMEAQQQQKAkAQJtSULB/p1AG4Ovdx/twoUL7cILL3SzrQq5FStWtK1bt7pQO336dBdoFUT1b2/TTOqcOXPcvbfedsMNN7h99HttX3/9tdWrV8/e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JAJtuP6B1c6JFRgtBSOAAAIIIIAAAgggEBHgujvcwUCgDdc/sNq5hzYwWgpGAIGABbh/NmBgikcAAQQQSKgAgTahnFEXRqCNmiw9DiDQpkc/0UoEECgoQKBlVCCAAAIIpJMAgTbc3iLQhusfWO0E2sBoKRgBBAIWINAGDEzxCCCAAAIJFSDQJpQz6sIItFGTpccBBNr06CdaiQACzNAyBhBAAAEE0luAQBtu/xFoA/Lfu3evDRs2zJ588knbuHGjHXPMMTZgwAC7/PLL7YILLrD99tvPXn75ZStXrpxt27bNTjrpJOvcubM98MADrkUTJkywoUOH2pdffmkNGjSw22+/3W655RbfrSXQ+qZiRwQQSDEBZmhTrENoDgIIIIBAsQIE2nAHCIE2IP/+/fvb888/byNHjrSjjz7a/vnPf9rNN99sr776qv3ud7+zxo0b28CBA61nz5521VVX2RdffGFvv/22VahQwcaOHev+Nnr0aGvWrJl98MEH1rVrV/vrX/9q119/va8WE2h9MbETAgikoACBNgU7hSYhgAACCBQpQKANd3AQaAPw37lzpx166KG2YMECO+ussyI1dOnSxX766Sd79tln7bnnnnMzsnfeeaeNGjXKhVbN4mqrV6+ePfzww3b11VdHjh08eLDNnz/fhd7CttzcXNOPt+nEyszMtMysGZZRqXIAr5IiEUAAgWAECLTBuFIqAggggEAwAgTaYFz9lkqg9SsVxX5Lliyx008/3apUqbLPUb/88oubcX3vvffc76+55hqbOnWqPfHEE272VtvmzZutVq1adsABB1hGRkbk+N9++82qVatm3377baEtyc7OtpycnAJ/I9BG0XHsigACKSFAoE2JbqARCCCAAAI+BQi0PqEC2o1AGwCsAuuZZ55pCxcutCOOOGKfGipVquRmTjVTq3CrpcZadjx8+HC3nwJrnTp1bMqUKXbGGWfsc2z58uXtyCOPLLTFzNAG0JEUiQACoQgQaENhp1IEEEAAgRgFCLQxwiXoMAJtgiDzFrNjxw6rWbOmuxdWy4oL23r06OEC76OPPmpt27Z199aed955bte6deta9+7d3UOkYt24hzZWOY5DAIGwBQi0YfcA9SOAAAIIRCNAoI1GK/H7EmgTb+pKvPfee90TjjXzevbZZ5sGuu5/PfDAA939tZdddpm98847dvLJJ7vg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S2EEEEAAAQQQQAABBHwCBFq7JwOB1q6/sd4JtMZoKYwAAggggAACCCCAAIE2RM4BAq3HE9G8eXOpVauWrjpnzhyJi4uTvn37yqhRoyQmJkaqVKkiSUlJ8t1338lrr70mxYsXl6eeekr/Lmf7+OOPpV+/frJlyxZdS72emJgo69atk3r16jkaMYHWERONEEAAAQQQQAABBBBwJcAKrSs+1zsTaF0Tnl9ABdovv/xSevTooYPsF198ocNqenq69OrVSwfao0eP6oDbunVrWbBggQwfPlw2bdok1113nX5Ntbn99ttl6NChsmPHDklOTpZvvvnmooE2Oztb1E/Opt5Y8fHxEp+cKbGFCnt8lGbL8VAos75URwABBBBAAAEEEPBOgEDrnWUglQi0gahdZB8VaH/++WcdUNWKrNqGDBkib7zxhmzevFmH1SZNmsgrr7yiXzt79qyUK1dOUlNTpU+fPvKPf/xDr8ju3r1b/vCHP+g2//znP3UYvtgKbUpKiq5x4Uag9XiCKYcAAggggAACCCCAwDkCBFq7pwOB1mN/FWgTEhIkIyPDV3nJkiVy5513yokTJ6RatWrSv39/GThwoO/1unXryh133CEjRoyQxx57TDZs2CArV670vf6f//xHVJuLBVpWaD2eSMohgAACCCCAAAIIIOBAgEDrAMlgEwKtx7hOAq26hFj95GzqvthOnTqJWmVVv9+4caO89957vtdVwFVtuIfW48miHAIIIIAAAggggAACLgUItC4BXe5OoHUJeOHuOZccq8uLczZ1L6xapc255PhigVZdcvz000/rS44LFSqkS7z88svSs2dPAq3Hc0U5BBBAAAEEEEAAAQTcChBo3Qq6259A684v1945D4VS97z27t1b1q5dq+9/feGFF/S/1T20Fwu06g1RtWpV+ctf/qLvvd25c6dur554vH79en3psZONpxw7UaINAggggAACCCCAAALuBAi07vzc7k2gdSt4wf4q0NasWVPOnDkjc+fO1V/bo4Lss88+6/vanosFWlVOfW2PekKyCrG1a9eWJ554Qu69917972uvvdbRiAm0jphohAACCCCAAAIIIICAKwECrSs+1zsTaF0Tnl9ABVp1v6v6mh6vtn/961/y4IMPypEjR+Tyyy93VJZA64iJRggggAACCCCAAAIIuBIg0Lric70zgdY1ofeBdvbs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\" width=\"948\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sortcount = sorted(bycount, reverse=False, key=lambda x: bycount[x])\n",
    "sortsize = sorted(bysize, reverse=False, key=lambda x: bysize[x])\n",
    "sortsizerepresentative = sorted(bysizerepresentative, reverse=False, key=lambda x: bysizerepresentative[x])\n",
    "from matplotlib import pyplot\n",
    "%matplotlib notebook\n",
    "for desc, data in {\"po številu datotek\": (sortcount, bycount), \"po velikosti datotek\": (sortsize, bysize), \"po številu po velikosti največjih datotek torrentov\": (sortsizerepresentative, bysizerepresentative)}.items():\n",
    "    fig, axes = pyplot.subplots()\n",
    "    # axes.pie([data[1][key] for key in data[0]], labels=data[0])\n",
    "    axes.barh(data[0], [data[1][key] for key in data[0]])\n",
    "    pyplot.xscale(\"log\")\n",
    "    axes.set_title(desc)\n",
    "    fig.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "fca757e3",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}