topolib 0.8.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. topolib/__init__.py +4 -0
  2. topolib/analysis/__init__.py +4 -0
  3. topolib/analysis/metrics.py +80 -0
  4. topolib/analysis/traffic_matrix.py +344 -0
  5. topolib/assets/AMRES.json +1265 -0
  6. topolib/assets/Abilene.json +285 -0
  7. topolib/assets/Bell_canada.json +925 -0
  8. topolib/assets/Brazil.json +699 -0
  9. topolib/assets/CESNET.json +657 -0
  10. topolib/assets/CORONET.json +1957 -0
  11. topolib/assets/China.json +1135 -0
  12. topolib/assets/DT-14.json +470 -0
  13. topolib/assets/DT-17.json +525 -0
  14. topolib/assets/DT-50.json +1515 -0
  15. topolib/assets/ES-30.json +967 -0
  16. topolib/assets/EURO-16.json +455 -0
  17. topolib/assets/FR-43.json +1277 -0
  18. topolib/assets/FUNET.json +317 -0
  19. topolib/assets/GCN-BG.json +855 -0
  20. topolib/assets/GRNET.json +1717 -0
  21. topolib/assets/HyperOne.json +255 -0
  22. topolib/assets/IT-21.json +649 -0
  23. topolib/assets/India.json +517 -0
  24. topolib/assets/JPN-12.json +331 -0
  25. topolib/assets/KOREN.json +287 -0
  26. topolib/assets/NORDUNet.json +783 -0
  27. topolib/assets/NSFNet.json +399 -0
  28. topolib/assets/PANEURO.json +757 -0
  29. topolib/assets/PAVLOV.json +465 -0
  30. topolib/assets/PLN-12.json +343 -0
  31. topolib/assets/SANReN.json +161 -0
  32. topolib/assets/SERBIA-MONTENEGRO.json +139 -0
  33. topolib/assets/Telefonica-21.json +637 -0
  34. topolib/assets/Turk_Telekom.json +551 -0
  35. topolib/assets/UKNet.json +685 -0
  36. topolib/assets/Vega_Telecom.json +819 -0
  37. topolib/elements/__init__.py +5 -0
  38. topolib/elements/link.py +121 -0
  39. topolib/elements/node.py +230 -0
  40. topolib/topology/__init__.py +4 -0
  41. topolib/topology/path.py +84 -0
  42. topolib/topology/topology.py +469 -0
  43. topolib/visualization/__init__.py +1 -0
  44. topolib/visualization/_qt_screenshot.py +103 -0
  45. topolib/visualization/_qt_window.py +78 -0
  46. topolib/visualization/_templates.py +101 -0
  47. topolib/visualization/mapview.py +316 -0
  48. topolib-0.8.0.dist-info/METADATA +148 -0
  49. topolib-0.8.0.dist-info/RECORD +51 -0
  50. topolib-0.8.0.dist-info/WHEEL +4 -0
  51. topolib-0.8.0.dist-info/licenses/LICENSE +22 -0
@@ -0,0 +1,1277 @@
1
+ {
2
+ "name": "Francia",
3
+ "nodes": [
4
+ {
5
+ "id": 0,
6
+ "name": "Limoges",
7
+ "weight": 0,
8
+ "longitude": 1.261105,
9
+ "latitude": 45.833619,
10
+ "pop": 141176,
11
+ "DC": 2,
12
+ "IXP": 0
13
+ },
14
+ {
15
+ "id": 1,
16
+ "name": "Poitiers",
17
+ "weight": 0,
18
+ "longitude": 0.3416875,
19
+ "latitude": 46.5798429,
20
+ "pop": 85960,
21
+ "DC": 2,
22
+ "IXP": 0
23
+ },
24
+ {
25
+ "id": 2,
26
+ "name": "La Roche-sur-Yon",
27
+ "weight": 0,
28
+ "longitude": -1.4180749,
29
+ "latitude": 46.6714317,
30
+ "pop": 59410,
31
+ "DC": 0,
32
+ "IXP": 0
33
+ },
34
+ {
35
+ "id": 3,
36
+ "name": "Nantes",
37
+ "weight": 0,
38
+ "longitude": -1.553621,
39
+ "latitude": 47.218371,
40
+ "pop": 318808,
41
+ "DC": 10,
42
+ "IXP": 1
43
+ },
44
+ {
45
+ "id": 4,
46
+ "name": "Lorient",
47
+ "weight": 0,
48
+ "longitude": -3.3702449,
49
+ "latitude": 47.7482524,
50
+ "pop": 58112,
51
+ "DC": 0,
52
+ "IXP": 0
53
+ },
54
+ {
55
+ "id": 5,
56
+ "name": "Rennes",
57
+ "weight": 0,
58
+ "longitude": -1.6777926,
59
+ "latitude": 48.117266,
60
+ "pop": 220488,
61
+ "DC": 7,
62
+ "IXP": 1
63
+ },
64
+ {
65
+ "id": 6,
66
+ "name": "Saint-Brieuc",
67
+ "weight": 0,
68
+ "longitude": -2.7678727,
69
+ "latitude": 48.5124561,
70
+ "pop": 52774,
71
+ "DC": 0,
72
+ "IXP": 0
73
+ },
74
+ {
75
+ "id": 7,
76
+ "name": "Le Mans",
77
+ "weight": 0,
78
+ "longitude": 0.2015378,
79
+ "latitude": 48.0057867,
80
+ "pop": 144515,
81
+ "DC": 2,
82
+ "IXP": 0
83
+ },
84
+ {
85
+ "id": 8,
86
+ "name": "Saint-Lo",
87
+ "weight": 0,
88
+ "longitude": -1.0825895,
89
+ "latitude": 49.1154063,
90
+ "pop": 21722,
91
+ "DC": 0,
92
+ "IXP": 0
93
+ },
94
+ {
95
+ "id": 9,
96
+ "name": "Caen",
97
+ "weight": 0,
98
+ "longitude": -0.3708324,
99
+ "latitude": 49.1820662,
100
+ "pop": 110624,
101
+ "DC": 1,
102
+ "IXP": 0
103
+ },
104
+ {
105
+ "id": 10,
106
+ "name": "Le Havre",
107
+ "weight": 0,
108
+ "longitude": 0.1011193,
109
+ "latitude": 49.4953112,
110
+ "pop": 185972,
111
+ "DC": 1,
112
+ "IXP": 0
113
+ },
114
+ {
115
+ "id": 11,
116
+ "name": "Rouen",
117
+ "weight": 0,
118
+ "longitude": 1.0984309,
119
+ "latitude": 49.4435261,
120
+ "pop": 234475,
121
+ "DC": 8,
122
+ "IXP": 1
123
+ },
124
+ {
125
+ "id": 12,
126
+ "name": "Tours",
127
+ "weight": 0,
128
+ "longitude": 0.6891732,
129
+ "latitude": 47.3897679,
130
+ "pop": 141621,
131
+ "DC": 3,
132
+ "IXP": 0
133
+ },
134
+ {
135
+ "id": 13,
136
+ "name": "Bordeaux",
137
+ "weight": 0,
138
+ "longitude": -0.5810938,
139
+ "latitude": 44.8416106,
140
+ "pop": 260958,
141
+ "DC": 8,
142
+ "IXP": 0
143
+ },
144
+ {
145
+ "id": 14,
146
+ "name": "Bayonne",
147
+ "weight": 0,
148
+ "longitude": -1.4757394,
149
+ "latitude": 43.4933798,
150
+ "pop": 44396,
151
+ "DC": 0,
152
+ "IXP": 0
153
+ },
154
+ {
155
+ "id": 15,
156
+ "name": "Toulouse",
157
+ "weight": 0,
158
+ "longitude": 1.442848,
159
+ "latitude": 43.6048462,
160
+ "pop": 493465,
161
+ "DC": 12,
162
+ "IXP": 1
163
+ },
164
+ {
165
+ "id": 16,
166
+ "name": "Montpellier",
167
+ "weight": 0,
168
+ "longitude": 3.8761323,
169
+ "latitude": 43.6108535,
170
+ "pop": 248252,
171
+ "DC": 6,
172
+ "IXP": 0
173
+ },
174
+ {
175
+ "id": 17,
176
+ "name": "Marseille",
177
+ "weight": 0,
178
+ "longitude": 5.3690743,
179
+ "latitude": 43.3025742,
180
+ "pop": 870731,
181
+ "DC": 14,
182
+ "IXP": 4
183
+ },
184
+ {
185
+ "id": 18,
186
+ "name": "Toulon",
187
+ "weight": 0,
188
+ "longitude": 5.9284944,
189
+ "latitude": 43.1256814,
190
+ "pop": 168701,
191
+ "DC": 1,
192
+ "IXP": 0
193
+ },
194
+ {
195
+ "id": 19,
196
+ "name": "Frejus",
197
+ "weight": 0,
198
+ "longitude": 6.7378809,
199
+ "latitude": 43.4344545,
200
+ "pop": 53098,
201
+ "DC": 0,
202
+ "IXP": 0
203
+ },
204
+ {
205
+ "id": 20,
206
+ "name": "Nice",
207
+ "weight": 0,
208
+ "longitude": 7.2619532,
209
+ "latitude": 43.7101728,
210
+ "pop": 342669,
211
+ "DC": 3,
212
+ "IXP": 1
213
+ },
214
+ {
215
+ "id": 21,
216
+ "name": "Nimes",
217
+ "weight": 0,
218
+ "longitude": 4.3599997,
219
+ "latitude": 43.8338727,
220
+ "pop": 148236,
221
+ "DC": 1,
222
+ "IXP": 0
223
+ },
224
+ {
225
+ "id": 22,
226
+ "name": "Orange",
227
+ "weight": 0,
228
+ "longitude": 4.807511,
229
+ "latitude": 44.1380989,
230
+ "pop": 30530,
231
+ "DC": 0,
232
+ "IXP": 0
233
+ },
234
+ {
235
+ "id": 23,
236
+ "name": "Valence",
237
+ "weight": 0,
238
+ "longitude": 4.8967142,
239
+ "latitude": 44.9336953,
240
+ "pop": 63864,
241
+ "DC": 3,
242
+ "IXP": 1
243
+ },
244
+ {
245
+ "id": 24,
246
+ "name": "Chambery",
247
+ "weight": 0,
248
+ "longitude": 5.917781,
249
+ "latitude": 45.564601,
250
+ "pop": 61640,
251
+ "DC": 0,
252
+ "IXP": 0
253
+ },
254
+ {
255
+ "id": 25,
256
+ "name": "Lyon",
257
+ "weight": 0,
258
+ "longitude": 4.835659,
259
+ "latitude": 45.764043,
260
+ "pop": 522969,
261
+ "DC": 12,
262
+ "IXP": 3
263
+ },
264
+ {
265
+ "id": 26,
266
+ "name": "Saint-Etienne",
267
+ "weight": 0,
268
+ "longitude": 4.3871779,
269
+ "latitude": 45.439695,
270
+ "pop": 176280,
271
+ "DC": 2,
272
+ "IXP": 1
273
+ },
274
+ {
275
+ "id": 27,
276
+ "name": "Issoire",
277
+ "weight": 0,
278
+ "longitude": 3.248128,
279
+ "latitude": 45.54151,
280
+ "pop": 15984,
281
+ "DC": 0,
282
+ "IXP": 0
283
+ },
284
+ {
285
+ "id": 28,
286
+ "name": "Bourges",
287
+ "weight": 0,
288
+ "longitude": 2.3979615,
289
+ "latitude": 47.0812405,
290
+ "pop": 67987,
291
+ "DC": 2,
292
+ "IXP": 0
293
+ },
294
+ {
295
+ "id": 29,
296
+ "name": "Orleans",
297
+ "weight": 0,
298
+ "longitude": 1.9085203,
299
+ "latitude": 47.9032335,
300
+ "pop": 116269,
301
+ "DC": 0,
302
+ "IXP": 0
303
+ },
304
+ {
305
+ "id": 30,
306
+ "name": "Troyes",
307
+ "weight": 0,
308
+ "longitude": 4.0746921,
309
+ "latitude": 48.2975056,
310
+ "pop": 60785,
311
+ "DC": 0,
312
+ "IXP": 0
313
+ },
314
+ {
315
+ "id": 31,
316
+ "name": "Dijon",
317
+ "weight": 0,
318
+ "longitude": 5.0480484,
319
+ "latitude": 47.3301336,
320
+ "pop": 158002,
321
+ "DC": 2,
322
+ "IXP": 0
323
+ },
324
+ {
325
+ "id": 32,
326
+ "name": "Annecy",
327
+ "weight": 0,
328
+ "longitude": 6.1259117,
329
+ "latitude": 45.9058956,
330
+ "pop": 49232,
331
+ "DC": 2,
332
+ "IXP": 0
333
+ },
334
+ {
335
+ "id": 33,
336
+ "name": "Besancon",
337
+ "weight": 0,
338
+ "longitude": 6.0240539,
339
+ "latitude": 47.237829,
340
+ "pop": 128426,
341
+ "DC": 1,
342
+ "IXP": 0
343
+ },
344
+ {
345
+ "id": 34,
346
+ "name": "Mulhouse",
347
+ "weight": 0,
348
+ "longitude": 7.335888,
349
+ "latitude": 47.750839,
350
+ "pop": 111430,
351
+ "DC": 0,
352
+ "IXP": 0
353
+ },
354
+ {
355
+ "id": 35,
356
+ "name": "Strasbourg",
357
+ "weight": 0,
358
+ "longitude": 7.7521113,
359
+ "latitude": 48.5734053,
360
+ "pop": 274845,
361
+ "DC": 10,
362
+ "IXP": 1
363
+ },
364
+ {
365
+ "id": 36,
366
+ "name": "Metz",
367
+ "weight": 0,
368
+ "longitude": 6.1760223,
369
+ "latitude": 49.1178601,
370
+ "pop": 123914,
371
+ "DC": 4,
372
+ "IXP": 0
373
+ },
374
+ {
375
+ "id": 37,
376
+ "name": "Nancy",
377
+ "weight": 0,
378
+ "longitude": 6.184417,
379
+ "latitude": 48.692054,
380
+ "pop": 105058,
381
+ "DC": 3,
382
+ "IXP": 0
383
+ },
384
+ {
385
+ "id": 38,
386
+ "name": "Reims",
387
+ "weight": 0,
388
+ "longitude": 4.031696,
389
+ "latitude": 49.258329,
390
+ "pop": 196565,
391
+ "DC": 3,
392
+ "IXP": 0
393
+ },
394
+ {
395
+ "id": 39,
396
+ "name": "Paris",
397
+ "weight": 0,
398
+ "longitude": 2.3513765,
399
+ "latitude": 48.8575475,
400
+ "pop": 2138551,
401
+ "DC": 117,
402
+ "IXP": 10
403
+ },
404
+ {
405
+ "id": 40,
406
+ "name": "Compiegne",
407
+ "weight": 0,
408
+ "longitude": 2.826145,
409
+ "latitude": 49.417816,
410
+ "pop": 44243,
411
+ "DC": 0,
412
+ "IXP": 0
413
+ },
414
+ {
415
+ "id": 41,
416
+ "name": "Amiens",
417
+ "weight": 0,
418
+ "longitude": 2.295753,
419
+ "latitude": 49.894067,
420
+ "pop": 143086,
421
+ "DC": 0,
422
+ "IXP": 0
423
+ },
424
+ {
425
+ "id": 42,
426
+ "name": "Lille",
427
+ "weight": 0,
428
+ "longitude": 3.0678588,
429
+ "latitude": 50.624378,
430
+ "pop": 234475,
431
+ "DC": 22,
432
+ "IXP": 2
433
+ }
434
+ ],
435
+ "links": [
436
+ {
437
+ "id": 0,
438
+ "src": 15,
439
+ "dst": 14,
440
+ "length": 319.85
441
+ },
442
+ {
443
+ "id": 1,
444
+ "src": 13,
445
+ "dst": 14,
446
+ "length": 205.57
447
+ },
448
+ {
449
+ "id": 2,
450
+ "src": 15,
451
+ "dst": 13,
452
+ "length": 268.88
453
+ },
454
+ {
455
+ "id": 3,
456
+ "src": 1,
457
+ "dst": 13,
458
+ "length": 269.59
459
+ },
460
+ {
461
+ "id": 4,
462
+ "src": 0,
463
+ "dst": 15,
464
+ "length": 320.61
465
+ },
466
+ {
467
+ "id": 5,
468
+ "src": 16,
469
+ "dst": 15,
470
+ "length": 257.39
471
+ },
472
+ {
473
+ "id": 6,
474
+ "src": 21,
475
+ "dst": 16,
476
+ "length": 59.71
477
+ },
478
+ {
479
+ "id": 7,
480
+ "src": 22,
481
+ "dst": 21,
482
+ "length": 64.28
483
+ },
484
+ {
485
+ "id": 8,
486
+ "src": 17,
487
+ "dst": 16,
488
+ "length": 161.69
489
+ },
490
+ {
491
+ "id": 9,
492
+ "src": 18,
493
+ "dst": 17,
494
+ "length": 65.5
495
+ },
496
+ {
497
+ "id": 10,
498
+ "src": 19,
499
+ "dst": 18,
500
+ "length": 96.96
501
+ },
502
+ {
503
+ "id": 11,
504
+ "src": 22,
505
+ "dst": 17,
506
+ "length": 133.19
507
+ },
508
+ {
509
+ "id": 12,
510
+ "src": 20,
511
+ "dst": 19,
512
+ "length": 65.79
513
+ },
514
+ {
515
+ "id": 13,
516
+ "src": 24,
517
+ "dst": 20,
518
+ "length": 302.06
519
+ },
520
+ {
521
+ "id": 14,
522
+ "src": 22,
523
+ "dst": 23,
524
+ "length": 114.67
525
+ },
526
+ {
527
+ "id": 15,
528
+ "src": 23,
529
+ "dst": 24,
530
+ "length": 134.96
531
+ },
532
+ {
533
+ "id": 16,
534
+ "src": 27,
535
+ "dst": 16,
536
+ "length": 281.93
537
+ },
538
+ {
539
+ "id": 17,
540
+ "src": 0,
541
+ "dst": 27,
542
+ "length": 206.6
543
+ },
544
+ {
545
+ "id": 18,
546
+ "src": 26,
547
+ "dst": 27,
548
+ "length": 116.13
549
+ },
550
+ {
551
+ "id": 19,
552
+ "src": 25,
553
+ "dst": 26,
554
+ "length": 66.76
555
+ },
556
+ {
557
+ "id": 20,
558
+ "src": 23,
559
+ "dst": 25,
560
+ "length": 116.17
561
+ },
562
+ {
563
+ "id": 21,
564
+ "src": 24,
565
+ "dst": 25,
566
+ "length": 112.99
567
+ },
568
+ {
569
+ "id": 22,
570
+ "src": 32,
571
+ "dst": 25,
572
+ "length": 134.55
573
+ },
574
+ {
575
+ "id": 23,
576
+ "src": 28,
577
+ "dst": 0,
578
+ "length": 213.52
579
+ },
580
+ {
581
+ "id": 24,
582
+ "src": 27,
583
+ "dst": 28,
584
+ "length": 235.94
585
+ },
586
+ {
587
+ "id": 25,
588
+ "src": 0,
589
+ "dst": 1,
590
+ "length": 143.33
591
+ },
592
+ {
593
+ "id": 26,
594
+ "src": 31,
595
+ "dst": 25,
596
+ "length": 229.03
597
+ },
598
+ {
599
+ "id": 27,
600
+ "src": 32,
601
+ "dst": 31,
602
+ "length": 233.05
603
+ },
604
+ {
605
+ "id": 28,
606
+ "src": 31,
607
+ "dst": 33,
608
+ "length": 94.0
609
+ },
610
+ {
611
+ "id": 29,
612
+ "src": 32,
613
+ "dst": 33,
614
+ "length": 192.5
615
+ },
616
+ {
617
+ "id": 30,
618
+ "src": 39,
619
+ "dst": 25,
620
+ "length": 509.53
621
+ },
622
+ {
623
+ "id": 31,
624
+ "src": 28,
625
+ "dst": 29,
626
+ "length": 126.08
627
+ },
628
+ {
629
+ "id": 32,
630
+ "src": 29,
631
+ "dst": 30,
632
+ "length": 219.85
633
+ },
634
+ {
635
+ "id": 33,
636
+ "src": 31,
637
+ "dst": 30,
638
+ "length": 166.47
639
+ },
640
+ {
641
+ "id": 34,
642
+ "src": 39,
643
+ "dst": 29,
644
+ "length": 141.42
645
+ },
646
+ {
647
+ "id": 35,
648
+ "src": 30,
649
+ "dst": 39,
650
+ "length": 183.73
651
+ },
652
+ {
653
+ "id": 36,
654
+ "src": 34,
655
+ "dst": 33,
656
+ "length": 150.07
657
+ },
658
+ {
659
+ "id": 37,
660
+ "src": 36,
661
+ "dst": 37,
662
+ "length": 61.58
663
+ },
664
+ {
665
+ "id": 38,
666
+ "src": 35,
667
+ "dst": 36,
668
+ "length": 171.89
669
+ },
670
+ {
671
+ "id": 39,
672
+ "src": 35,
673
+ "dst": 37,
674
+ "length": 148.94
675
+ },
676
+ {
677
+ "id": 40,
678
+ "src": 35,
679
+ "dst": 34,
680
+ "length": 125.22
681
+ },
682
+ {
683
+ "id": 41,
684
+ "src": 37,
685
+ "dst": 34,
686
+ "length": 176.23
687
+ },
688
+ {
689
+ "id": 42,
690
+ "src": 38,
691
+ "dst": 39,
692
+ "length": 169.48
693
+ },
694
+ {
695
+ "id": 43,
696
+ "src": 37,
697
+ "dst": 38,
698
+ "length": 215.72
699
+ },
700
+ {
701
+ "id": 44,
702
+ "src": 42,
703
+ "dst": 38,
704
+ "length": 218.67
705
+ },
706
+ {
707
+ "id": 45,
708
+ "src": 41,
709
+ "dst": 42,
710
+ "length": 130.05
711
+ },
712
+ {
713
+ "id": 46,
714
+ "src": 40,
715
+ "dst": 39,
716
+ "length": 94.81
717
+ },
718
+ {
719
+ "id": 47,
720
+ "src": 38,
721
+ "dst": 40,
722
+ "length": 117.45
723
+ },
724
+ {
725
+ "id": 48,
726
+ "src": 11,
727
+ "dst": 40,
728
+ "length": 162.08
729
+ },
730
+ {
731
+ "id": 49,
732
+ "src": 41,
733
+ "dst": 11,
734
+ "length": 129.49
735
+ },
736
+ {
737
+ "id": 50,
738
+ "src": 9,
739
+ "dst": 10,
740
+ "length": 62.96
741
+ },
742
+ {
743
+ "id": 51,
744
+ "src": 10,
745
+ "dst": 11,
746
+ "length": 95.34
747
+ },
748
+ {
749
+ "id": 52,
750
+ "src": 29,
751
+ "dst": 9,
752
+ "length": 283.8
753
+ },
754
+ {
755
+ "id": 53,
756
+ "src": 39,
757
+ "dst": 9,
758
+ "length": 259.89
759
+ },
760
+ {
761
+ "id": 54,
762
+ "src": 7,
763
+ "dst": 39,
764
+ "length": 240.82
765
+ },
766
+ {
767
+ "id": 55,
768
+ "src": 12,
769
+ "dst": 29,
770
+ "length": 139.18
771
+ },
772
+ {
773
+ "id": 56,
774
+ "src": 12,
775
+ "dst": 7,
776
+ "length": 99.86
777
+ },
778
+ {
779
+ "id": 57,
780
+ "src": 28,
781
+ "dst": 12,
782
+ "length": 170.67
783
+ },
784
+ {
785
+ "id": 58,
786
+ "src": 1,
787
+ "dst": 12,
788
+ "length": 120.93
789
+ },
790
+ {
791
+ "id": 59,
792
+ "src": 1,
793
+ "dst": 2,
794
+ "length": 177.07
795
+ },
796
+ {
797
+ "id": 60,
798
+ "src": 3,
799
+ "dst": 2,
800
+ "length": 79.1
801
+ },
802
+ {
803
+ "id": 61,
804
+ "src": 7,
805
+ "dst": 3,
806
+ "length": 204.2
807
+ },
808
+ {
809
+ "id": 62,
810
+ "src": 4,
811
+ "dst": 3,
812
+ "length": 195.85
813
+ },
814
+ {
815
+ "id": 63,
816
+ "src": 4,
817
+ "dst": 6,
818
+ "length": 123.67
819
+ },
820
+ {
821
+ "id": 64,
822
+ "src": 5,
823
+ "dst": 6,
824
+ "length": 118.76
825
+ },
826
+ {
827
+ "id": 65,
828
+ "src": 3,
829
+ "dst": 5,
830
+ "length": 130.02
831
+ },
832
+ {
833
+ "id": 66,
834
+ "src": 7,
835
+ "dst": 5,
836
+ "length": 183.26
837
+ },
838
+ {
839
+ "id": 67,
840
+ "src": 8,
841
+ "dst": 5,
842
+ "length": 154.74
843
+ },
844
+ {
845
+ "id": 68,
846
+ "src": 9,
847
+ "dst": 8,
848
+ "length": 71.67
849
+ },
850
+ {
851
+ "id": 69,
852
+ "src": 7,
853
+ "dst": 8,
854
+ "length": 202.11
855
+ },
856
+ {
857
+ "id": 70,
858
+ "src": 14,
859
+ "dst": 15,
860
+ "length": 319.85
861
+ },
862
+ {
863
+ "id": 71,
864
+ "src": 14,
865
+ "dst": 13,
866
+ "length": 205.57
867
+ },
868
+ {
869
+ "id": 72,
870
+ "src": 13,
871
+ "dst": 15,
872
+ "length": 268.88
873
+ },
874
+ {
875
+ "id": 73,
876
+ "src": 13,
877
+ "dst": 1,
878
+ "length": 269.59
879
+ },
880
+ {
881
+ "id": 74,
882
+ "src": 15,
883
+ "dst": 0,
884
+ "length": 320.61
885
+ },
886
+ {
887
+ "id": 75,
888
+ "src": 15,
889
+ "dst": 16,
890
+ "length": 257.39
891
+ },
892
+ {
893
+ "id": 76,
894
+ "src": 16,
895
+ "dst": 21,
896
+ "length": 59.71
897
+ },
898
+ {
899
+ "id": 77,
900
+ "src": 21,
901
+ "dst": 22,
902
+ "length": 64.28
903
+ },
904
+ {
905
+ "id": 78,
906
+ "src": 16,
907
+ "dst": 17,
908
+ "length": 161.69
909
+ },
910
+ {
911
+ "id": 79,
912
+ "src": 17,
913
+ "dst": 18,
914
+ "length": 65.5
915
+ },
916
+ {
917
+ "id": 80,
918
+ "src": 18,
919
+ "dst": 19,
920
+ "length": 96.96
921
+ },
922
+ {
923
+ "id": 81,
924
+ "src": 17,
925
+ "dst": 22,
926
+ "length": 133.19
927
+ },
928
+ {
929
+ "id": 82,
930
+ "src": 19,
931
+ "dst": 20,
932
+ "length": 65.79
933
+ },
934
+ {
935
+ "id": 83,
936
+ "src": 20,
937
+ "dst": 24,
938
+ "length": 302.06
939
+ },
940
+ {
941
+ "id": 84,
942
+ "src": 23,
943
+ "dst": 22,
944
+ "length": 114.67
945
+ },
946
+ {
947
+ "id": 85,
948
+ "src": 24,
949
+ "dst": 23,
950
+ "length": 134.96
951
+ },
952
+ {
953
+ "id": 86,
954
+ "src": 16,
955
+ "dst": 27,
956
+ "length": 281.93
957
+ },
958
+ {
959
+ "id": 87,
960
+ "src": 27,
961
+ "dst": 0,
962
+ "length": 206.6
963
+ },
964
+ {
965
+ "id": 88,
966
+ "src": 27,
967
+ "dst": 26,
968
+ "length": 116.13
969
+ },
970
+ {
971
+ "id": 89,
972
+ "src": 26,
973
+ "dst": 25,
974
+ "length": 66.76
975
+ },
976
+ {
977
+ "id": 90,
978
+ "src": 25,
979
+ "dst": 23,
980
+ "length": 116.17
981
+ },
982
+ {
983
+ "id": 91,
984
+ "src": 25,
985
+ "dst": 24,
986
+ "length": 112.99
987
+ },
988
+ {
989
+ "id": 92,
990
+ "src": 25,
991
+ "dst": 32,
992
+ "length": 134.55
993
+ },
994
+ {
995
+ "id": 93,
996
+ "src": 0,
997
+ "dst": 28,
998
+ "length": 213.52
999
+ },
1000
+ {
1001
+ "id": 94,
1002
+ "src": 28,
1003
+ "dst": 27,
1004
+ "length": 235.94
1005
+ },
1006
+ {
1007
+ "id": 95,
1008
+ "src": 1,
1009
+ "dst": 0,
1010
+ "length": 143.33
1011
+ },
1012
+ {
1013
+ "id": 96,
1014
+ "src": 25,
1015
+ "dst": 31,
1016
+ "length": 229.03
1017
+ },
1018
+ {
1019
+ "id": 97,
1020
+ "src": 31,
1021
+ "dst": 32,
1022
+ "length": 233.05
1023
+ },
1024
+ {
1025
+ "id": 98,
1026
+ "src": 33,
1027
+ "dst": 31,
1028
+ "length": 94.0
1029
+ },
1030
+ {
1031
+ "id": 99,
1032
+ "src": 33,
1033
+ "dst": 32,
1034
+ "length": 192.5
1035
+ },
1036
+ {
1037
+ "id": 100,
1038
+ "src": 25,
1039
+ "dst": 39,
1040
+ "length": 509.53
1041
+ },
1042
+ {
1043
+ "id": 101,
1044
+ "src": 29,
1045
+ "dst": 28,
1046
+ "length": 126.08
1047
+ },
1048
+ {
1049
+ "id": 102,
1050
+ "src": 30,
1051
+ "dst": 29,
1052
+ "length": 219.85
1053
+ },
1054
+ {
1055
+ "id": 103,
1056
+ "src": 30,
1057
+ "dst": 31,
1058
+ "length": 166.47
1059
+ },
1060
+ {
1061
+ "id": 104,
1062
+ "src": 29,
1063
+ "dst": 39,
1064
+ "length": 141.42
1065
+ },
1066
+ {
1067
+ "id": 105,
1068
+ "src": 39,
1069
+ "dst": 30,
1070
+ "length": 183.73
1071
+ },
1072
+ {
1073
+ "id": 106,
1074
+ "src": 33,
1075
+ "dst": 34,
1076
+ "length": 150.07
1077
+ },
1078
+ {
1079
+ "id": 107,
1080
+ "src": 37,
1081
+ "dst": 36,
1082
+ "length": 61.58
1083
+ },
1084
+ {
1085
+ "id": 108,
1086
+ "src": 36,
1087
+ "dst": 35,
1088
+ "length": 171.89
1089
+ },
1090
+ {
1091
+ "id": 109,
1092
+ "src": 37,
1093
+ "dst": 35,
1094
+ "length": 148.94
1095
+ },
1096
+ {
1097
+ "id": 110,
1098
+ "src": 34,
1099
+ "dst": 35,
1100
+ "length": 125.22
1101
+ },
1102
+ {
1103
+ "id": 111,
1104
+ "src": 34,
1105
+ "dst": 37,
1106
+ "length": 176.23
1107
+ },
1108
+ {
1109
+ "id": 112,
1110
+ "src": 39,
1111
+ "dst": 38,
1112
+ "length": 169.48
1113
+ },
1114
+ {
1115
+ "id": 113,
1116
+ "src": 38,
1117
+ "dst": 37,
1118
+ "length": 215.72
1119
+ },
1120
+ {
1121
+ "id": 114,
1122
+ "src": 38,
1123
+ "dst": 42,
1124
+ "length": 218.67
1125
+ },
1126
+ {
1127
+ "id": 115,
1128
+ "src": 42,
1129
+ "dst": 41,
1130
+ "length": 130.05
1131
+ },
1132
+ {
1133
+ "id": 116,
1134
+ "src": 39,
1135
+ "dst": 40,
1136
+ "length": 94.81
1137
+ },
1138
+ {
1139
+ "id": 117,
1140
+ "src": 40,
1141
+ "dst": 38,
1142
+ "length": 117.45
1143
+ },
1144
+ {
1145
+ "id": 118,
1146
+ "src": 40,
1147
+ "dst": 11,
1148
+ "length": 162.08
1149
+ },
1150
+ {
1151
+ "id": 119,
1152
+ "src": 11,
1153
+ "dst": 41,
1154
+ "length": 129.49
1155
+ },
1156
+ {
1157
+ "id": 120,
1158
+ "src": 10,
1159
+ "dst": 9,
1160
+ "length": 62.96
1161
+ },
1162
+ {
1163
+ "id": 121,
1164
+ "src": 11,
1165
+ "dst": 10,
1166
+ "length": 95.34
1167
+ },
1168
+ {
1169
+ "id": 122,
1170
+ "src": 9,
1171
+ "dst": 29,
1172
+ "length": 283.8
1173
+ },
1174
+ {
1175
+ "id": 123,
1176
+ "src": 9,
1177
+ "dst": 39,
1178
+ "length": 259.89
1179
+ },
1180
+ {
1181
+ "id": 124,
1182
+ "src": 39,
1183
+ "dst": 7,
1184
+ "length": 240.82
1185
+ },
1186
+ {
1187
+ "id": 125,
1188
+ "src": 29,
1189
+ "dst": 12,
1190
+ "length": 139.18
1191
+ },
1192
+ {
1193
+ "id": 126,
1194
+ "src": 7,
1195
+ "dst": 12,
1196
+ "length": 99.86
1197
+ },
1198
+ {
1199
+ "id": 127,
1200
+ "src": 12,
1201
+ "dst": 28,
1202
+ "length": 170.67
1203
+ },
1204
+ {
1205
+ "id": 128,
1206
+ "src": 12,
1207
+ "dst": 1,
1208
+ "length": 120.93
1209
+ },
1210
+ {
1211
+ "id": 129,
1212
+ "src": 2,
1213
+ "dst": 1,
1214
+ "length": 177.07
1215
+ },
1216
+ {
1217
+ "id": 130,
1218
+ "src": 2,
1219
+ "dst": 3,
1220
+ "length": 79.1
1221
+ },
1222
+ {
1223
+ "id": 131,
1224
+ "src": 3,
1225
+ "dst": 7,
1226
+ "length": 204.2
1227
+ },
1228
+ {
1229
+ "id": 132,
1230
+ "src": 3,
1231
+ "dst": 4,
1232
+ "length": 195.85
1233
+ },
1234
+ {
1235
+ "id": 133,
1236
+ "src": 6,
1237
+ "dst": 4,
1238
+ "length": 123.67
1239
+ },
1240
+ {
1241
+ "id": 134,
1242
+ "src": 6,
1243
+ "dst": 5,
1244
+ "length": 118.76
1245
+ },
1246
+ {
1247
+ "id": 135,
1248
+ "src": 5,
1249
+ "dst": 3,
1250
+ "length": 130.02
1251
+ },
1252
+ {
1253
+ "id": 136,
1254
+ "src": 5,
1255
+ "dst": 7,
1256
+ "length": 183.26
1257
+ },
1258
+ {
1259
+ "id": 137,
1260
+ "src": 5,
1261
+ "dst": 8,
1262
+ "length": 154.74
1263
+ },
1264
+ {
1265
+ "id": 138,
1266
+ "src": 8,
1267
+ "dst": 9,
1268
+ "length": 71.67
1269
+ },
1270
+ {
1271
+ "id": 139,
1272
+ "src": 8,
1273
+ "dst": 7,
1274
+ "length": 202.11
1275
+ }
1276
+ ]
1277
+ }