postscribe 2.0.4 → 2.0.8

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.
@@ -1,1896 +0,0 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <title>Code coverage report for src/write-stream.js</title>
5
- <meta charset="utf-8" />
6
- <link rel="stylesheet" href="../prettify.css" />
7
- <link rel="stylesheet" href="../base.css" />
8
- <meta name="viewport" content="width=device-width, initial-scale=1">
9
- <style type='text/css'>
10
- .coverage-summary .sorter {
11
- background-image: url(../sort-arrow-sprite.png);
12
- }
13
- </style>
14
- </head>
15
- <body>
16
- <div class='wrapper'>
17
- <div class='pad1'>
18
- <h1>
19
- <a href="../index.html">all files</a> / <a href="index.html">src/</a> write-stream.js
20
- </h1>
21
- <div class='clearfix'>
22
- <div class='fl pad1y space-right2'>
23
- <span class="strong">95.74% </span>
24
- <span class="quiet">Statements</span>
25
- <span class='fraction'>225/235</span>
26
- </div>
27
- <div class='fl pad1y space-right2'>
28
- <span class="strong">87.97% </span>
29
- <span class="quiet">Branches</span>
30
- <span class='fraction'>117/133</span>
31
- </div>
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">97.3% </span>
34
- <span class="quiet">Functions</span>
35
- <span class='fraction'>36/37</span>
36
- </div>
37
- <div class='fl pad1y space-right2'>
38
- <span class="strong">94.62% </span>
39
- <span class="quiet">Lines</span>
40
- <span class='fraction'>176/186</span>
41
- </div>
42
- <div class='fl pad1y'>
43
- <span class="strong">8 statements, 8 branches</span>
44
- <span class="quiet">Ignored</span> &nbsp;&nbsp;&nbsp;&nbsp;
45
- </div>
46
- </div>
47
- </div>
48
- <div class='status-line high'></div>
49
- <pre><table class="coverage">
50
- <tr><td class="line-count quiet">1
51
- 2
52
- 3
53
- 4
54
- 5
55
- 6
56
- 7
57
- 8
58
- 9
59
- 10
60
- 11
61
- 12
62
- 13
63
- 14
64
- 15
65
- 16
66
- 17
67
- 18
68
- 19
69
- 20
70
- 21
71
- 22
72
- 23
73
- 24
74
- 25
75
- 26
76
- 27
77
- 28
78
- 29
79
- 30
80
- 31
81
- 32
82
- 33
83
- 34
84
- 35
85
- 36
86
- 37
87
- 38
88
- 39
89
- 40
90
- 41
91
- 42
92
- 43
93
- 44
94
- 45
95
- 46
96
- 47
97
- 48
98
- 49
99
- 50
100
- 51
101
- 52
102
- 53
103
- 54
104
- 55
105
- 56
106
- 57
107
- 58
108
- 59
109
- 60
110
- 61
111
- 62
112
- 63
113
- 64
114
- 65
115
- 66
116
- 67
117
- 68
118
- 69
119
- 70
120
- 71
121
- 72
122
- 73
123
- 74
124
- 75
125
- 76
126
- 77
127
- 78
128
- 79
129
- 80
130
- 81
131
- 82
132
- 83
133
- 84
134
- 85
135
- 86
136
- 87
137
- 88
138
- 89
139
- 90
140
- 91
141
- 92
142
- 93
143
- 94
144
- 95
145
- 96
146
- 97
147
- 98
148
- 99
149
- 100
150
- 101
151
- 102
152
- 103
153
- 104
154
- 105
155
- 106
156
- 107
157
- 108
158
- 109
159
- 110
160
- 111
161
- 112
162
- 113
163
- 114
164
- 115
165
- 116
166
- 117
167
- 118
168
- 119
169
- 120
170
- 121
171
- 122
172
- 123
173
- 124
174
- 125
175
- 126
176
- 127
177
- 128
178
- 129
179
- 130
180
- 131
181
- 132
182
- 133
183
- 134
184
- 135
185
- 136
186
- 137
187
- 138
188
- 139
189
- 140
190
- 141
191
- 142
192
- 143
193
- 144
194
- 145
195
- 146
196
- 147
197
- 148
198
- 149
199
- 150
200
- 151
201
- 152
202
- 153
203
- 154
204
- 155
205
- 156
206
- 157
207
- 158
208
- 159
209
- 160
210
- 161
211
- 162
212
- 163
213
- 164
214
- 165
215
- 166
216
- 167
217
- 168
218
- 169
219
- 170
220
- 171
221
- 172
222
- 173
223
- 174
224
- 175
225
- 176
226
- 177
227
- 178
228
- 179
229
- 180
230
- 181
231
- 182
232
- 183
233
- 184
234
- 185
235
- 186
236
- 187
237
- 188
238
- 189
239
- 190
240
- 191
241
- 192
242
- 193
243
- 194
244
- 195
245
- 196
246
- 197
247
- 198
248
- 199
249
- 200
250
- 201
251
- 202
252
- 203
253
- 204
254
- 205
255
- 206
256
- 207
257
- 208
258
- 209
259
- 210
260
- 211
261
- 212
262
- 213
263
- 214
264
- 215
265
- 216
266
- 217
267
- 218
268
- 219
269
- 220
270
- 221
271
- 222
272
- 223
273
- 224
274
- 225
275
- 226
276
- 227
277
- 228
278
- 229
279
- 230
280
- 231
281
- 232
282
- 233
283
- 234
284
- 235
285
- 236
286
- 237
287
- 238
288
- 239
289
- 240
290
- 241
291
- 242
292
- 243
293
- 244
294
- 245
295
- 246
296
- 247
297
- 248
298
- 249
299
- 250
300
- 251
301
- 252
302
- 253
303
- 254
304
- 255
305
- 256
306
- 257
307
- 258
308
- 259
309
- 260
310
- 261
311
- 262
312
- 263
313
- 264
314
- 265
315
- 266
316
- 267
317
- 268
318
- 269
319
- 270
320
- 271
321
- 272
322
- 273
323
- 274
324
- 275
325
- 276
326
- 277
327
- 278
328
- 279
329
- 280
330
- 281
331
- 282
332
- 283
333
- 284
334
- 285
335
- 286
336
- 287
337
- 288
338
- 289
339
- 290
340
- 291
341
- 292
342
- 293
343
- 294
344
- 295
345
- 296
346
- 297
347
- 298
348
- 299
349
- 300
350
- 301
351
- 302
352
- 303
353
- 304
354
- 305
355
- 306
356
- 307
357
- 308
358
- 309
359
- 310
360
- 311
361
- 312
362
- 313
363
- 314
364
- 315
365
- 316
366
- 317
367
- 318
368
- 319
369
- 320
370
- 321
371
- 322
372
- 323
373
- 324
374
- 325
375
- 326
376
- 327
377
- 328
378
- 329
379
- 330
380
- 331
381
- 332
382
- 333
383
- 334
384
- 335
385
- 336
386
- 337
387
- 338
388
- 339
389
- 340
390
- 341
391
- 342
392
- 343
393
- 344
394
- 345
395
- 346
396
- 347
397
- 348
398
- 349
399
- 350
400
- 351
401
- 352
402
- 353
403
- 354
404
- 355
405
- 356
406
- 357
407
- 358
408
- 359
409
- 360
410
- 361
411
- 362
412
- 363
413
- 364
414
- 365
415
- 366
416
- 367
417
- 368
418
- 369
419
- 370
420
- 371
421
- 372
422
- 373
423
- 374
424
- 375
425
- 376
426
- 377
427
- 378
428
- 379
429
- 380
430
- 381
431
- 382
432
- 383
433
- 384
434
- 385
435
- 386
436
- 387
437
- 388
438
- 389
439
- 390
440
- 391
441
- 392
442
- 393
443
- 394
444
- 395
445
- 396
446
- 397
447
- 398
448
- 399
449
- 400
450
- 401
451
- 402
452
- 403
453
- 404
454
- 405
455
- 406
456
- 407
457
- 408
458
- 409
459
- 410
460
- 411
461
- 412
462
- 413
463
- 414
464
- 415
465
- 416
466
- 417
467
- 418
468
- 419
469
- 420
470
- 421
471
- 422
472
- 423
473
- 424
474
- 425
475
- 426
476
- 427
477
- 428
478
- 429
479
- 430
480
- 431
481
- 432
482
- 433
483
- 434
484
- 435
485
- 436
486
- 437
487
- 438
488
- 439
489
- 440
490
- 441
491
- 442
492
- 443
493
- 444
494
- 445
495
- 446
496
- 447
497
- 448
498
- 449
499
- 450
500
- 451
501
- 452
502
- 453
503
- 454
504
- 455
505
- 456
506
- 457
507
- 458
508
- 459
509
- 460
510
- 461
511
- 462
512
- 463
513
- 464
514
- 465
515
- 466
516
- 467
517
- 468
518
- 469
519
- 470
520
- 471
521
- 472
522
- 473
523
- 474
524
- 475
525
- 476
526
- 477
527
- 478
528
- 479
529
- 480
530
- 481
531
- 482
532
- 483
533
- 484
534
- 485
535
- 486
536
- 487
537
- 488
538
- 489
539
- 490
540
- 491
541
- 492
542
- 493
543
- 494
544
- 495
545
- 496
546
- 497
547
- 498
548
- 499
549
- 500
550
- 501
551
- 502
552
- 503
553
- 504
554
- 505
555
- 506
556
- 507
557
- 508
558
- 509
559
- 510
560
- 511
561
- 512
562
- 513
563
- 514
564
- 515
565
- 516
566
- 517
567
- 518
568
- 519
569
- 520
570
- 521
571
- 522
572
- 523
573
- 524
574
- 525
575
- 526
576
- 527
577
- 528
578
- 529
579
- 530
580
- 531
581
- 532
582
- 533
583
- 534
584
- 535
585
- 536
586
- 537
587
- 538
588
- 539
589
- 540
590
- 541
591
- 542
592
- 543
593
- 544
594
- 545
595
- 546
596
- 547
597
- 548
598
- 549
599
- 550
600
- 551
601
- 552
602
- 553
603
- 554
604
- 555
605
- 556
606
- 557
607
- 558
608
- 559
609
- 560
610
- 561
611
- 562
612
- 563
613
- 564
614
- 565
615
- 566
616
- 567
617
- 568
618
- 569
619
- 570
620
- 571
621
- 572
622
- 573
623
- 574
624
- 575
625
- 576
626
- 577
627
- 578
628
- 579
629
- 580
630
- 581
631
- 582
632
- 583
633
- 584
634
- 585
635
- 586
636
- 587
637
- 588
638
- 589
639
- 590
640
- 591
641
- 592
642
- 593
643
- 594
644
- 595
645
- 596
646
- 597
647
- 598
648
- 599
649
- 600
650
- 601
651
- 602
652
- 603
653
- 604
654
- 605
655
- 606
656
- 607
657
- 608
658
- 609
659
- 610</td><td class="line-coverage quiet"><span class="cline-any cline-yes">8×</span>
660
- <span class="cline-any cline-yes">8×</span>
661
- <span class="cline-any cline-neutral">&nbsp;</span>
662
- <span class="cline-any cline-neutral">&nbsp;</span>
663
- <span class="cline-any cline-neutral">&nbsp;</span>
664
- <span class="cline-any cline-neutral">&nbsp;</span>
665
- <span class="cline-any cline-neutral">&nbsp;</span>
666
- <span class="cline-any cline-yes">8×</span>
667
- <span class="cline-any cline-neutral">&nbsp;</span>
668
- <span class="cline-any cline-neutral">&nbsp;</span>
669
- <span class="cline-any cline-neutral">&nbsp;</span>
670
- <span class="cline-any cline-neutral">&nbsp;</span>
671
- <span class="cline-any cline-neutral">&nbsp;</span>
672
- <span class="cline-any cline-yes">8×</span>
673
- <span class="cline-any cline-neutral">&nbsp;</span>
674
- <span class="cline-any cline-neutral">&nbsp;</span>
675
- <span class="cline-any cline-neutral">&nbsp;</span>
676
- <span class="cline-any cline-neutral">&nbsp;</span>
677
- <span class="cline-any cline-neutral">&nbsp;</span>
678
- <span class="cline-any cline-yes">8×</span>
679
- <span class="cline-any cline-neutral">&nbsp;</span>
680
- <span class="cline-any cline-neutral">&nbsp;</span>
681
- <span class="cline-any cline-neutral">&nbsp;</span>
682
- <span class="cline-any cline-neutral">&nbsp;</span>
683
- <span class="cline-any cline-neutral">&nbsp;</span>
684
- <span class="cline-any cline-yes">8×</span>
685
- <span class="cline-any cline-neutral">&nbsp;</span>
686
- <span class="cline-any cline-neutral">&nbsp;</span>
687
- <span class="cline-any cline-neutral">&nbsp;</span>
688
- <span class="cline-any cline-neutral">&nbsp;</span>
689
- <span class="cline-any cline-neutral">&nbsp;</span>
690
- <span class="cline-any cline-neutral">&nbsp;</span>
691
- <span class="cline-any cline-neutral">&nbsp;</span>
692
- <span class="cline-any cline-neutral">&nbsp;</span>
693
- <span class="cline-any cline-yes">1×</span>
694
- <span class="cline-any cline-yes">1519×</span>
695
- <span class="cline-any cline-neutral">&nbsp;</span>
696
- <span class="cline-any cline-yes">1519×</span>
697
- <span class="cline-any cline-neutral">&nbsp;</span>
698
- <span class="cline-any cline-neutral">&nbsp;</span>
699
- <span class="cline-any cline-yes">1519×</span>
700
- <span class="cline-any cline-neutral">&nbsp;</span>
701
- <span class="cline-any cline-neutral">&nbsp;</span>
702
- <span class="cline-any cline-neutral">&nbsp;</span>
703
- <span class="cline-any cline-neutral">&nbsp;</span>
704
- <span class="cline-any cline-neutral">&nbsp;</span>
705
- <span class="cline-any cline-neutral">&nbsp;</span>
706
- <span class="cline-any cline-neutral">&nbsp;</span>
707
- <span class="cline-any cline-neutral">&nbsp;</span>
708
- <span class="cline-any cline-neutral">&nbsp;</span>
709
- <span class="cline-any cline-yes">318×</span>
710
- <span class="cline-any cline-yes">318×</span>
711
- <span class="cline-any cline-neutral">&nbsp;</span>
712
- <span class="cline-any cline-yes">318×</span>
713
- <span class="cline-any cline-yes">84×</span>
714
- <span class="cline-any cline-neutral">&nbsp;</span>
715
- <span class="cline-any cline-yes">234×</span>
716
- <span class="cline-any cline-neutral">&nbsp;</span>
717
- <span class="cline-any cline-neutral">&nbsp;</span>
718
- <span class="cline-any cline-neutral">&nbsp;</span>
719
- <span class="cline-any cline-neutral">&nbsp;</span>
720
- <span class="cline-any cline-neutral">&nbsp;</span>
721
- <span class="cline-any cline-neutral">&nbsp;</span>
722
- <span class="cline-any cline-neutral">&nbsp;</span>
723
- <span class="cline-any cline-neutral">&nbsp;</span>
724
- <span class="cline-any cline-neutral">&nbsp;</span>
725
- <span class="cline-any cline-neutral">&nbsp;</span>
726
- <span class="cline-any cline-neutral">&nbsp;</span>
727
- <span class="cline-any cline-neutral">&nbsp;</span>
728
- <span class="cline-any cline-neutral">&nbsp;</span>
729
- <span class="cline-any cline-neutral">&nbsp;</span>
730
- <span class="cline-any cline-neutral">&nbsp;</span>
731
- <span class="cline-any cline-neutral">&nbsp;</span>
732
- <span class="cline-any cline-neutral">&nbsp;</span>
733
- <span class="cline-any cline-neutral">&nbsp;</span>
734
- <span class="cline-any cline-neutral">&nbsp;</span>
735
- <span class="cline-any cline-neutral">&nbsp;</span>
736
- <span class="cline-any cline-neutral">&nbsp;</span>
737
- <span class="cline-any cline-neutral">&nbsp;</span>
738
- <span class="cline-any cline-neutral">&nbsp;</span>
739
- <span class="cline-any cline-neutral">&nbsp;</span>
740
- <span class="cline-any cline-neutral">&nbsp;</span>
741
- <span class="cline-any cline-neutral">&nbsp;</span>
742
- <span class="cline-any cline-neutral">&nbsp;</span>
743
- <span class="cline-any cline-neutral">&nbsp;</span>
744
- <span class="cline-any cline-neutral">&nbsp;</span>
745
- <span class="cline-any cline-neutral">&nbsp;</span>
746
- <span class="cline-any cline-neutral">&nbsp;</span>
747
- <span class="cline-any cline-neutral">&nbsp;</span>
748
- <span class="cline-any cline-neutral">&nbsp;</span>
749
- <span class="cline-any cline-yes">84×</span>
750
- <span class="cline-any cline-yes">84×</span>
751
- <span class="cline-any cline-yes">84×</span>
752
- <span class="cline-any cline-yes">84×</span>
753
- <span class="cline-any cline-yes">84×</span>
754
- <span class="cline-any cline-yes">84×</span>
755
- <span class="cline-any cline-neutral">&nbsp;</span>
756
- <span class="cline-any cline-neutral">&nbsp;</span>
757
- <span class="cline-any cline-yes">84×</span>
758
- <span class="cline-any cline-neutral">&nbsp;</span>
759
- <span class="cline-any cline-neutral">&nbsp;</span>
760
- <span class="cline-any cline-neutral">&nbsp;</span>
761
- <span class="cline-any cline-yes">84×</span>
762
- <span class="cline-any cline-neutral">&nbsp;</span>
763
- <span class="cline-any cline-neutral">&nbsp;</span>
764
- <span class="cline-any cline-yes">84×</span>
765
- <span class="cline-any cline-neutral">&nbsp;</span>
766
- <span class="cline-any cline-yes">84×</span>
767
- <span class="cline-any cline-yes">84×</span>
768
- <span class="cline-any cline-neutral">&nbsp;</span>
769
- <span class="cline-any cline-yes">84×</span>
770
- <span class="cline-any cline-neutral">&nbsp;</span>
771
- <span class="cline-any cline-neutral">&nbsp;</span>
772
- <span class="cline-any cline-neutral">&nbsp;</span>
773
- <span class="cline-any cline-neutral">&nbsp;</span>
774
- <span class="cline-any cline-neutral">&nbsp;</span>
775
- <span class="cline-any cline-neutral">&nbsp;</span>
776
- <span class="cline-any cline-neutral">&nbsp;</span>
777
- <span class="cline-any cline-yes">477×</span>
778
- <span class="cline-any cline-yes">477×</span>
779
- <span class="cline-any cline-neutral">&nbsp;</span>
780
- <span class="cline-any cline-neutral">&nbsp;</span>
781
- <span class="cline-any cline-neutral">&nbsp;</span>
782
- <span class="cline-any cline-neutral">&nbsp;</span>
783
- <span class="cline-any cline-yes">477×</span>
784
- <span class="cline-any cline-yes">406×</span>
785
- <span class="cline-any cline-neutral">&nbsp;</span>
786
- <span class="cline-any cline-yes">406×</span>
787
- <span class="cline-any cline-yes">84×</span>
788
- <span class="cline-any cline-neutral">&nbsp;</span>
789
- <span class="cline-any cline-yes">322×</span>
790
- <span class="cline-any cline-neutral">&nbsp;</span>
791
- <span class="cline-any cline-neutral">&nbsp;</span>
792
- <span class="cline-any cline-neutral">&nbsp;</span>
793
- <span class="cline-any cline-neutral">&nbsp;</span>
794
- <span class="cline-any cline-neutral">&nbsp;</span>
795
- <span class="cline-any cline-neutral">&nbsp;</span>
796
- <span class="cline-any cline-neutral">&nbsp;</span>
797
- <span class="cline-any cline-neutral">&nbsp;</span>
798
- <span class="cline-any cline-neutral">&nbsp;</span>
799
- <span class="cline-any cline-neutral">&nbsp;</span>
800
- <span class="cline-any cline-neutral">&nbsp;</span>
801
- <span class="cline-any cline-yes">84×</span>
802
- <span class="cline-any cline-yes">84×</span>
803
- <span class="cline-any cline-yes">84×</span>
804
- <span class="cline-any cline-yes">84×</span>
805
- <span class="cline-any cline-neutral">&nbsp;</span>
806
- <span class="cline-any cline-neutral">&nbsp;</span>
807
- <span class="cline-any cline-neutral">&nbsp;</span>
808
- <span class="cline-any cline-neutral">&nbsp;</span>
809
- <span class="cline-any cline-neutral">&nbsp;</span>
810
- <span class="cline-any cline-neutral">&nbsp;</span>
811
- <span class="cline-any cline-neutral">&nbsp;</span>
812
- <span class="cline-any cline-neutral">&nbsp;</span>
813
- <span class="cline-any cline-neutral">&nbsp;</span>
814
- <span class="cline-any cline-yes">454×</span>
815
- <span class="cline-any cline-neutral">&nbsp;</span>
816
- <span class="cline-any cline-yes">454×</span>
817
- <span class="cline-any cline-yes">454×</span>
818
- <span class="cline-any cline-yes">454×</span>
819
- <span class="cline-any cline-yes">454×</span>
820
- <span class="cline-any cline-neutral">&nbsp;</span>
821
- <span class="cline-any cline-neutral">&nbsp;</span>
822
- <span class="cline-any cline-yes">454×</span>
823
- <span class="cline-any cline-neutral">&nbsp;</span>
824
- <span class="cline-any cline-neutral">&nbsp;</span>
825
- <span class="cline-any cline-yes">548×</span>
826
- <span class="cline-any cline-neutral">&nbsp;</span>
827
- <span class="cline-any cline-yes">548×</span>
828
- <span class="cline-any cline-yes">548×</span>
829
- <span class="cline-any cline-neutral">&nbsp;</span>
830
- <span class="cline-any cline-neutral">&nbsp;</span>
831
- <span class="cline-any cline-neutral">&nbsp;</span>
832
- <span class="cline-any cline-yes">454×</span>
833
- <span class="cline-any cline-yes">378×</span>
834
- <span class="cline-any cline-neutral">&nbsp;</span>
835
- <span class="cline-any cline-neutral">&nbsp;</span>
836
- <span class="cline-any cline-yes">454×</span>
837
- <span class="cline-any cline-yes">132×</span>
838
- <span class="cline-any cline-neutral">&nbsp;</span>
839
- <span class="cline-any cline-neutral">&nbsp;</span>
840
- <span class="cline-any cline-yes">454×</span>
841
- <span class="cline-any cline-yes">4×</span>
842
- <span class="cline-any cline-neutral">&nbsp;</span>
843
- <span class="cline-any cline-neutral">&nbsp;</span>
844
- <span class="cline-any cline-neutral">&nbsp;</span>
845
- <span class="cline-any cline-neutral">&nbsp;</span>
846
- <span class="cline-any cline-neutral">&nbsp;</span>
847
- <span class="cline-any cline-neutral">&nbsp;</span>
848
- <span class="cline-any cline-neutral">&nbsp;</span>
849
- <span class="cline-any cline-neutral">&nbsp;</span>
850
- <span class="cline-any cline-neutral">&nbsp;</span>
851
- <span class="cline-any cline-neutral">&nbsp;</span>
852
- <span class="cline-any cline-neutral">&nbsp;</span>
853
- <span class="cline-any cline-yes">378×</span>
854
- <span class="cline-any cline-neutral">&nbsp;</span>
855
- <span class="cline-any cline-yes">378×</span>
856
- <span class="cline-any cline-neutral">&nbsp;</span>
857
- <span class="cline-any cline-no">&nbsp;</span>
858
- <span class="cline-any cline-neutral">&nbsp;</span>
859
- <span class="cline-any cline-neutral">&nbsp;</span>
860
- <span class="cline-any cline-yes">378×</span>
861
- <span class="cline-any cline-yes">378×</span>
862
- <span class="cline-any cline-yes">378×</span>
863
- <span class="cline-any cline-neutral">&nbsp;</span>
864
- <span class="cline-any cline-yes">378×</span>
865
- <span class="cline-any cline-no">&nbsp;</span>
866
- <span class="cline-any cline-neutral">&nbsp;</span>
867
- <span class="cline-any cline-neutral">&nbsp;</span>
868
- <span class="cline-any cline-yes">378×</span>
869
- <span class="cline-any cline-neutral">&nbsp;</span>
870
- <span class="cline-any cline-yes">378×</span>
871
- <span class="cline-any cline-no">&nbsp;</span>
872
- <span class="cline-any cline-neutral">&nbsp;</span>
873
- <span class="cline-any cline-neutral">&nbsp;</span>
874
- <span class="cline-any cline-yes">378×</span>
875
- <span class="cline-any cline-neutral">&nbsp;</span>
876
- <span class="cline-any cline-neutral">&nbsp;</span>
877
- <span class="cline-any cline-neutral">&nbsp;</span>
878
- <span class="cline-any cline-neutral">&nbsp;</span>
879
- <span class="cline-any cline-neutral">&nbsp;</span>
880
- <span class="cline-any cline-neutral">&nbsp;</span>
881
- <span class="cline-any cline-neutral">&nbsp;</span>
882
- <span class="cline-any cline-neutral">&nbsp;</span>
883
- <span class="cline-any cline-neutral">&nbsp;</span>
884
- <span class="cline-any cline-neutral">&nbsp;</span>
885
- <span class="cline-any cline-yes">378×</span>
886
- <span class="cline-any cline-neutral">&nbsp;</span>
887
- <span class="cline-any cline-neutral">&nbsp;</span>
888
- <span class="cline-any cline-yes">378×</span>
889
- <span class="cline-any cline-neutral">&nbsp;</span>
890
- <span class="cline-any cline-neutral">&nbsp;</span>
891
- <span class="cline-any cline-yes">378×</span>
892
- <span class="cline-any cline-neutral">&nbsp;</span>
893
- <span class="cline-any cline-neutral">&nbsp;</span>
894
- <span class="cline-any cline-yes">378×</span>
895
- <span class="cline-any cline-neutral">&nbsp;</span>
896
- <span class="cline-any cline-yes">378×</span>
897
- <span class="cline-any cline-yes">378×</span>
898
- <span class="cline-any cline-yes">548×</span>
899
- <span class="cline-any cline-yes">548×</span>
900
- <span class="cline-any cline-neutral">&nbsp;</span>
901
- <span class="cline-any cline-yes">548×</span>
902
- <span class="cline-any cline-neutral">&nbsp;</span>
903
- <span class="cline-any cline-yes">548×</span>
904
- <span class="cline-any cline-neutral">&nbsp;</span>
905
- <span class="cline-any cline-yes">234×</span>
906
- <span class="cline-any cline-yes">234×</span>
907
- <span class="cline-any cline-neutral">&nbsp;</span>
908
- <span class="cline-any cline-neutral">&nbsp;</span>
909
- <span class="cline-any cline-yes">234×</span>
910
- <span class="cline-any cline-neutral">&nbsp;</span>
911
- <span class="cline-any cline-neutral">&nbsp;</span>
912
- <span class="cline-any cline-yes">234×</span>
913
- <span class="cline-any cline-neutral">&nbsp;</span>
914
- <span class="cline-any cline-yes">102×</span>
915
- <span class="cline-any cline-neutral">&nbsp;</span>
916
- <span class="cline-any cline-neutral">&nbsp;</span>
917
- <span class="cline-any cline-neutral">&nbsp;</span>
918
- <span class="cline-any cline-neutral">&nbsp;</span>
919
- <span class="cline-any cline-neutral">&nbsp;</span>
920
- <span class="cline-any cline-neutral">&nbsp;</span>
921
- <span class="cline-any cline-neutral">&nbsp;</span>
922
- <span class="cline-any cline-neutral">&nbsp;</span>
923
- <span class="cline-any cline-neutral">&nbsp;</span>
924
- <span class="cline-any cline-yes">314×</span>
925
- <span class="cline-any cline-neutral">&nbsp;</span>
926
- <span class="cline-any cline-neutral">&nbsp;</span>
927
- <span class="cline-any cline-yes">314×</span>
928
- <span class="cline-any cline-neutral">&nbsp;</span>
929
- <span class="cline-any cline-neutral">&nbsp;</span>
930
- <span class="cline-any cline-neutral">&nbsp;</span>
931
- <span class="cline-any cline-yes">378×</span>
932
- <span class="cline-any cline-neutral">&nbsp;</span>
933
- <span class="cline-any cline-neutral">&nbsp;</span>
934
- <span class="cline-any cline-neutral">&nbsp;</span>
935
- <span class="cline-any cline-neutral">&nbsp;</span>
936
- <span class="cline-any cline-neutral">&nbsp;</span>
937
- <span class="cline-any cline-neutral">&nbsp;</span>
938
- <span class="cline-any cline-neutral">&nbsp;</span>
939
- <span class="cline-any cline-neutral">&nbsp;</span>
940
- <span class="cline-any cline-neutral">&nbsp;</span>
941
- <span class="cline-any cline-neutral">&nbsp;</span>
942
- <span class="cline-any cline-neutral">&nbsp;</span>
943
- <span class="cline-any cline-neutral">&nbsp;</span>
944
- <span class="cline-any cline-neutral">&nbsp;</span>
945
- <span class="cline-any cline-yes">378×</span>
946
- <span class="cline-any cline-yes">378×</span>
947
- <span class="cline-any cline-neutral">&nbsp;</span>
948
- <span class="cline-any cline-neutral">&nbsp;</span>
949
- <span class="cline-any cline-neutral">&nbsp;</span>
950
- <span class="cline-any cline-yes">378×</span>
951
- <span class="cline-any cline-yes">1051×</span>
952
- <span class="cline-any cline-yes">1051×</span>
953
- <span class="cline-any cline-neutral">&nbsp;</span>
954
- <span class="cline-any cline-neutral">&nbsp;</span>
955
- <span class="cline-any cline-yes">1051×</span>
956
- <span class="cline-any cline-yes">481×</span>
957
- <span class="cline-any cline-neutral">&nbsp;</span>
958
- <span class="cline-any cline-yes">234×</span>
959
- <span class="cline-any cline-yes">234×</span>
960
- <span class="cline-any cline-neutral">&nbsp;</span>
961
- <span class="cline-any cline-neutral">&nbsp;</span>
962
- <span class="cline-any cline-neutral">&nbsp;</span>
963
- <span class="cline-any cline-yes">481×</span>
964
- <span class="cline-any cline-neutral">&nbsp;</span>
965
- <span class="cline-any cline-yes">481×</span>
966
- <span class="cline-any cline-neutral">&nbsp;</span>
967
- <span class="cline-any cline-yes">395×</span>
968
- <span class="cline-any cline-neutral">&nbsp;</span>
969
- <span class="cline-any cline-neutral">&nbsp;</span>
970
- <span class="cline-any cline-neutral">&nbsp;</span>
971
- <span class="cline-any cline-neutral">&nbsp;</span>
972
- <span class="cline-any cline-yes">1051×</span>
973
- <span class="cline-any cline-neutral">&nbsp;</span>
974
- <span class="cline-any cline-neutral">&nbsp;</span>
975
- <span class="cline-any cline-neutral">&nbsp;</span>
976
- <span class="cline-any cline-neutral">&nbsp;</span>
977
- <span class="cline-any cline-neutral">&nbsp;</span>
978
- <span class="cline-any cline-neutral">&nbsp;</span>
979
- <span class="cline-any cline-neutral">&nbsp;</span>
980
- <span class="cline-any cline-neutral">&nbsp;</span>
981
- <span class="cline-any cline-yes">132×</span>
982
- <span class="cline-any cline-yes">132×</span>
983
- <span class="cline-any cline-neutral">&nbsp;</span>
984
- <span class="cline-any cline-yes">132×</span>
985
- <span class="cline-any cline-neutral">&nbsp;</span>
986
- <span class="cline-any cline-yes">59×</span>
987
- <span class="cline-any cline-neutral">&nbsp;</span>
988
- <span class="cline-any cline-neutral">&nbsp;</span>
989
- <span class="cline-any cline-yes">132×</span>
990
- <span class="cline-any cline-neutral">&nbsp;</span>
991
- <span class="cline-any cline-yes">132×</span>
992
- <span class="cline-any cline-yes">132×</span>
993
- <span class="cline-any cline-neutral">&nbsp;</span>
994
- <span class="cline-any cline-yes">2×</span>
995
- <span class="cline-any cline-neutral">&nbsp;</span>
996
- <span class="cline-any cline-neutral">&nbsp;</span>
997
- <span class="cline-any cline-yes">130×</span>
998
- <span class="cline-any cline-neutral">&nbsp;</span>
999
- <span class="cline-any cline-neutral">&nbsp;</span>
1000
- <span class="cline-any cline-neutral">&nbsp;</span>
1001
- <span class="cline-any cline-yes">8×</span>
1002
- <span class="cline-any cline-neutral">&nbsp;</span>
1003
- <span class="cline-any cline-yes">122×</span>
1004
- <span class="cline-any cline-neutral">&nbsp;</span>
1005
- <span class="cline-any cline-neutral">&nbsp;</span>
1006
- <span class="cline-any cline-neutral">&nbsp;</span>
1007
- <span class="cline-any cline-yes">130×</span>
1008
- <span class="cline-any cline-yes">130×</span>
1009
- <span class="cline-any cline-neutral">&nbsp;</span>
1010
- <span class="cline-any cline-neutral">&nbsp;</span>
1011
- <span class="cline-any cline-neutral">&nbsp;</span>
1012
- <span class="cline-any cline-neutral">&nbsp;</span>
1013
- <span class="cline-any cline-neutral">&nbsp;</span>
1014
- <span class="cline-any cline-neutral">&nbsp;</span>
1015
- <span class="cline-any cline-neutral">&nbsp;</span>
1016
- <span class="cline-any cline-neutral">&nbsp;</span>
1017
- <span class="cline-any cline-neutral">&nbsp;</span>
1018
- <span class="cline-any cline-yes">4×</span>
1019
- <span class="cline-any cline-neutral">&nbsp;</span>
1020
- <span class="cline-any cline-yes">4×</span>
1021
- <span class="cline-any cline-neutral">&nbsp;</span>
1022
- <span class="cline-any cline-yes">2×</span>
1023
- <span class="cline-any cline-neutral">&nbsp;</span>
1024
- <span class="cline-any cline-neutral">&nbsp;</span>
1025
- <span class="cline-any cline-yes">4×</span>
1026
- <span class="cline-any cline-neutral">&nbsp;</span>
1027
- <span class="cline-any cline-yes">4×</span>
1028
- <span class="cline-any cline-neutral">&nbsp;</span>
1029
- <span class="cline-any cline-yes">4×</span>
1030
- <span class="cline-any cline-neutral">&nbsp;</span>
1031
- <span class="cline-any cline-yes">2×</span>
1032
- <span class="cline-any cline-neutral">&nbsp;</span>
1033
- <span class="cline-any cline-neutral">&nbsp;</span>
1034
- <span class="cline-any cline-yes">4×</span>
1035
- <span class="cline-any cline-yes">2×</span>
1036
- <span class="cline-any cline-neutral">&nbsp;</span>
1037
- <span class="cline-any cline-neutral">&nbsp;</span>
1038
- <span class="cline-any cline-neutral">&nbsp;</span>
1039
- <span class="cline-any cline-neutral">&nbsp;</span>
1040
- <span class="cline-any cline-neutral">&nbsp;</span>
1041
- <span class="cline-any cline-neutral">&nbsp;</span>
1042
- <span class="cline-any cline-neutral">&nbsp;</span>
1043
- <span class="cline-any cline-neutral">&nbsp;</span>
1044
- <span class="cline-any cline-neutral">&nbsp;</span>
1045
- <span class="cline-any cline-yes">2×</span>
1046
- <span class="cline-any cline-neutral">&nbsp;</span>
1047
- <span class="cline-any cline-yes">2×</span>
1048
- <span class="cline-any cline-neutral">&nbsp;</span>
1049
- <span class="cline-any cline-neutral">&nbsp;</span>
1050
- <span class="cline-any cline-yes">2×</span>
1051
- <span class="cline-any cline-yes">2×</span>
1052
- <span class="cline-any cline-no">&nbsp;</span>
1053
- <span class="cline-any cline-neutral">&nbsp;</span>
1054
- <span class="cline-any cline-yes">2×</span>
1055
- <span class="cline-any cline-neutral">&nbsp;</span>
1056
- <span class="cline-any cline-neutral">&nbsp;</span>
1057
- <span class="cline-any cline-neutral">&nbsp;</span>
1058
- <span class="cline-any cline-neutral">&nbsp;</span>
1059
- <span class="cline-any cline-neutral">&nbsp;</span>
1060
- <span class="cline-any cline-neutral">&nbsp;</span>
1061
- <span class="cline-any cline-neutral">&nbsp;</span>
1062
- <span class="cline-any cline-neutral">&nbsp;</span>
1063
- <span class="cline-any cline-neutral">&nbsp;</span>
1064
- <span class="cline-any cline-neutral">&nbsp;</span>
1065
- <span class="cline-any cline-neutral">&nbsp;</span>
1066
- <span class="cline-any cline-yes">2×</span>
1067
- <span class="cline-any cline-neutral">&nbsp;</span>
1068
- <span class="cline-any cline-yes">2×</span>
1069
- <span class="cline-any cline-neutral">&nbsp;</span>
1070
- <span class="cline-any cline-neutral">&nbsp;</span>
1071
- <span class="cline-any cline-yes">2×</span>
1072
- <span class="cline-any cline-yes">1×</span>
1073
- <span class="cline-any cline-neutral">&nbsp;</span>
1074
- <span class="cline-any cline-neutral">&nbsp;</span>
1075
- <span class="cline-any cline-yes">2×</span>
1076
- <span class="cline-any cline-neutral">&nbsp;</span>
1077
- <span class="cline-any cline-neutral">&nbsp;</span>
1078
- <span class="cline-any cline-neutral">&nbsp;</span>
1079
- <span class="cline-any cline-neutral">&nbsp;</span>
1080
- <span class="cline-any cline-neutral">&nbsp;</span>
1081
- <span class="cline-any cline-neutral">&nbsp;</span>
1082
- <span class="cline-any cline-neutral">&nbsp;</span>
1083
- <span class="cline-any cline-neutral">&nbsp;</span>
1084
- <span class="cline-any cline-neutral">&nbsp;</span>
1085
- <span class="cline-any cline-neutral">&nbsp;</span>
1086
- <span class="cline-any cline-yes">132×</span>
1087
- <span class="cline-any cline-neutral">&nbsp;</span>
1088
- <span class="cline-any cline-neutral">&nbsp;</span>
1089
- <span class="cline-any cline-yes">132×</span>
1090
- <span class="cline-any cline-neutral">&nbsp;</span>
1091
- <span class="cline-any cline-neutral">&nbsp;</span>
1092
- <span class="cline-any cline-neutral">&nbsp;</span>
1093
- <span class="cline-any cline-neutral">&nbsp;</span>
1094
- <span class="cline-any cline-neutral">&nbsp;</span>
1095
- <span class="cline-any cline-neutral">&nbsp;</span>
1096
- <span class="cline-any cline-neutral">&nbsp;</span>
1097
- <span class="cline-any cline-neutral">&nbsp;</span>
1098
- <span class="cline-any cline-yes">2×</span>
1099
- <span class="cline-any cline-neutral">&nbsp;</span>
1100
- <span class="cline-any cline-neutral">&nbsp;</span>
1101
- <span class="cline-any cline-yes">2×</span>
1102
- <span class="cline-any cline-yes">2×</span>
1103
- <span class="cline-any cline-neutral">&nbsp;</span>
1104
- <span class="cline-any cline-neutral">&nbsp;</span>
1105
- <span class="cline-any cline-neutral">&nbsp;</span>
1106
- <span class="cline-any cline-neutral">&nbsp;</span>
1107
- <span class="cline-any cline-neutral">&nbsp;</span>
1108
- <span class="cline-any cline-neutral">&nbsp;</span>
1109
- <span class="cline-any cline-neutral">&nbsp;</span>
1110
- <span class="cline-any cline-neutral">&nbsp;</span>
1111
- <span class="cline-any cline-neutral">&nbsp;</span>
1112
- <span class="cline-any cline-yes">130×</span>
1113
- <span class="cline-any cline-neutral">&nbsp;</span>
1114
- <span class="cline-any cline-neutral">&nbsp;</span>
1115
- <span class="cline-any cline-yes">130×</span>
1116
- <span class="cline-any cline-yes">130×</span>
1117
- <span class="cline-any cline-neutral">&nbsp;</span>
1118
- <span class="cline-any cline-neutral">&nbsp;</span>
1119
- <span class="cline-any cline-neutral">&nbsp;</span>
1120
- <span class="cline-any cline-neutral">&nbsp;</span>
1121
- <span class="cline-any cline-neutral">&nbsp;</span>
1122
- <span class="cline-any cline-neutral">&nbsp;</span>
1123
- <span class="cline-any cline-neutral">&nbsp;</span>
1124
- <span class="cline-any cline-neutral">&nbsp;</span>
1125
- <span class="cline-any cline-neutral">&nbsp;</span>
1126
- <span class="cline-any cline-neutral">&nbsp;</span>
1127
- <span class="cline-any cline-yes">214×</span>
1128
- <span class="cline-any cline-yes">214×</span>
1129
- <span class="cline-any cline-yes">214×</span>
1130
- <span class="cline-any cline-neutral">&nbsp;</span>
1131
- <span class="cline-any cline-neutral">&nbsp;</span>
1132
- <span class="cline-any cline-neutral">&nbsp;</span>
1133
- <span class="cline-any cline-neutral">&nbsp;</span>
1134
- <span class="cline-any cline-neutral">&nbsp;</span>
1135
- <span class="cline-any cline-neutral">&nbsp;</span>
1136
- <span class="cline-any cline-neutral">&nbsp;</span>
1137
- <span class="cline-any cline-neutral">&nbsp;</span>
1138
- <span class="cline-any cline-neutral">&nbsp;</span>
1139
- <span class="cline-any cline-neutral">&nbsp;</span>
1140
- <span class="cline-any cline-yes">214×</span>
1141
- <span class="cline-any cline-no">&nbsp;</span>
1142
- <span class="cline-any cline-no">&nbsp;</span>
1143
- <span class="cline-any cline-neutral">&nbsp;</span>
1144
- <span class="cline-any cline-neutral">&nbsp;</span>
1145
- <span class="cline-any cline-yes">214×</span>
1146
- <span class="cline-any cline-neutral">&nbsp;</span>
1147
- <span class="cline-any cline-neutral">&nbsp;</span>
1148
- <span class="cline-any cline-yes">214×</span>
1149
- <span class="cline-any cline-neutral">&nbsp;</span>
1150
- <span class="cline-any cline-neutral">&nbsp;</span>
1151
- <span class="cline-any cline-neutral">&nbsp;</span>
1152
- <span class="cline-any cline-neutral">&nbsp;</span>
1153
- <span class="cline-any cline-neutral">&nbsp;</span>
1154
- <span class="cline-any cline-neutral">&nbsp;</span>
1155
- <span class="cline-any cline-yes">214×</span>
1156
- <span class="cline-any cline-yes">8×</span>
1157
- <span class="cline-any cline-yes">8×</span>
1158
- <span class="cline-any cline-neutral">&nbsp;</span>
1159
- <span class="cline-any cline-neutral">&nbsp;</span>
1160
- <span class="cline-any cline-neutral">&nbsp;</span>
1161
- <span class="cline-any cline-neutral">&nbsp;</span>
1162
- <span class="cline-any cline-neutral">&nbsp;</span>
1163
- <span class="cline-any cline-neutral">&nbsp;</span>
1164
- <span class="cline-any cline-neutral">&nbsp;</span>
1165
- <span class="cline-any cline-neutral">&nbsp;</span>
1166
- <span class="cline-any cline-neutral">&nbsp;</span>
1167
- <span class="cline-any cline-neutral">&nbsp;</span>
1168
- <span class="cline-any cline-neutral">&nbsp;</span>
1169
- <span class="cline-any cline-yes">130×</span>
1170
- <span class="cline-any cline-yes">130×</span>
1171
- <span class="cline-any cline-yes">130×</span>
1172
- <span class="cline-any cline-neutral">&nbsp;</span>
1173
- <span class="cline-any cline-yes">130×</span>
1174
- <span class="cline-any cline-neutral">&nbsp;</span>
1175
- <span class="cline-any cline-yes">52×</span>
1176
- <span class="cline-any cline-yes">52×</span>
1177
- <span class="cline-any cline-yes">51×</span>
1178
- <span class="cline-any cline-yes">51×</span>
1179
- <span class="cline-any cline-neutral">&nbsp;</span>
1180
- <span class="cline-any cline-neutral">&nbsp;</span>
1181
- <span class="cline-any cline-neutral">&nbsp;</span>
1182
- <span class="cline-any cline-yes">130×</span>
1183
- <span class="cline-any cline-yes">130×</span>
1184
- <span class="cline-any cline-yes">130×</span>
1185
- <span class="cline-any cline-yes">79×</span>
1186
- <span class="cline-any cline-neutral">&nbsp;</span>
1187
- <span class="cline-any cline-neutral">&nbsp;</span>
1188
- <span class="cline-any cline-no">&nbsp;</span>
1189
- <span class="cline-any cline-no">&nbsp;</span>
1190
- <span class="cline-any cline-neutral">&nbsp;</span>
1191
- <span class="cline-any cline-neutral">&nbsp;</span>
1192
- <span class="cline-any cline-neutral">&nbsp;</span>
1193
- <span class="cline-any cline-neutral">&nbsp;</span>
1194
- <span class="cline-any cline-neutral">&nbsp;</span>
1195
- <span class="cline-any cline-neutral">&nbsp;</span>
1196
- <span class="cline-any cline-neutral">&nbsp;</span>
1197
- <span class="cline-any cline-neutral">&nbsp;</span>
1198
- <span class="cline-any cline-neutral">&nbsp;</span>
1199
- <span class="cline-any cline-neutral">&nbsp;</span>
1200
- <span class="cline-any cline-yes">130×</span>
1201
- <span class="cline-any cline-neutral">&nbsp;</span>
1202
- <span class="cline-any cline-neutral">&nbsp;</span>
1203
- <span class="cline-any cline-yes">130×</span>
1204
- <span class="cline-any cline-yes">104×</span>
1205
- <span class="cline-any cline-neutral">&nbsp;</span>
1206
- <span class="cline-any cline-neutral">&nbsp;</span>
1207
- <span class="cline-any cline-neutral">&nbsp;</span>
1208
- <span class="cline-any cline-yes">130×</span>
1209
- <span class="cline-any cline-yes">78×</span>
1210
- <span class="cline-any cline-neutral">&nbsp;</span>
1211
- <span class="cline-any cline-neutral">&nbsp;</span>
1212
- <span class="cline-any cline-yes">130×</span>
1213
- <span class="cline-any cline-neutral">&nbsp;</span>
1214
- <span class="cline-any cline-neutral">&nbsp;</span>
1215
- <span class="cline-any cline-neutral">&nbsp;</span>
1216
- <span class="cline-any cline-neutral">&nbsp;</span>
1217
- <span class="cline-any cline-neutral">&nbsp;</span>
1218
- <span class="cline-any cline-neutral">&nbsp;</span>
1219
- <span class="cline-any cline-neutral">&nbsp;</span>
1220
- <span class="cline-any cline-neutral">&nbsp;</span>
1221
- <span class="cline-any cline-neutral">&nbsp;</span>
1222
- <span class="cline-any cline-neutral">&nbsp;</span>
1223
- <span class="cline-any cline-yes">1×</span>
1224
- <span class="cline-any cline-yes">52×</span>
1225
- <span class="cline-any cline-neutral">&nbsp;</span>
1226
- <span class="cline-any cline-neutral">&nbsp;</span>
1227
- <span class="cline-any cline-yes">52×</span>
1228
- <span class="cline-any cline-neutral">&nbsp;</span>
1229
- <span class="cline-any cline-yes">1×</span>
1230
- <span class="cline-any cline-yes">50×</span>
1231
- <span class="cline-any cline-yes">50×</span>
1232
- <span class="cline-any cline-neutral">&nbsp;</span>
1233
- <span class="cline-any cline-neutral">&nbsp;</span>
1234
- <span class="cline-any cline-yes">1×</span>
1235
- <span class="cline-any cline-yes">2×</span>
1236
- <span class="cline-any cline-yes">2×</span>
1237
- <span class="cline-any cline-yes">2×</span>
1238
- <span class="cline-any cline-neutral">&nbsp;</span>
1239
- <span class="cline-any cline-neutral">&nbsp;</span>
1240
- <span class="cline-any cline-neutral">&nbsp;</span>
1241
- <span class="cline-any cline-yes">52×</span>
1242
- <span class="cline-any cline-yes">50×</span>
1243
- <span class="cline-any cline-neutral">&nbsp;</span>
1244
- <span class="cline-any cline-neutral">&nbsp;</span>
1245
- <span class="cline-any cline-no">&nbsp;</span>
1246
- <span class="cline-any cline-no">&nbsp;</span>
1247
- <span class="cline-any cline-neutral">&nbsp;</span>
1248
- <span class="cline-any cline-neutral">&nbsp;</span>
1249
- <span class="cline-any cline-neutral">&nbsp;</span>
1250
- <span class="cline-any cline-yes">2×</span>
1251
- <span class="cline-any cline-neutral">&nbsp;</span>
1252
- <span class="cline-any cline-neutral">&nbsp;</span>
1253
- <span class="cline-any cline-neutral">&nbsp;</span>
1254
- <span class="cline-any cline-neutral">&nbsp;</span>
1255
- <span class="cline-any cline-neutral">&nbsp;</span>
1256
- <span class="cline-any cline-neutral">&nbsp;</span>
1257
- <span class="cline-any cline-neutral">&nbsp;</span>
1258
- <span class="cline-any cline-neutral">&nbsp;</span>
1259
- <span class="cline-any cline-neutral">&nbsp;</span>
1260
- <span class="cline-any cline-neutral">&nbsp;</span>
1261
- <span class="cline-any cline-neutral">&nbsp;</span>
1262
- <span class="cline-any cline-yes">130×</span>
1263
- <span class="cline-any cline-yes">130×</span>
1264
- <span class="cline-any cline-neutral">&nbsp;</span>
1265
- <span class="cline-any cline-neutral">&nbsp;</span>
1266
- <span class="cline-any cline-neutral">&nbsp;</span>
1267
- <span class="cline-any cline-neutral">&nbsp;</span>
1268
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import HtmlParser from 'prescribe';
1269
- import * as utils from './utils';
1270
- &nbsp;
1271
- /**
1272
- * Turn on to debug how each chunk affected the DOM.
1273
- * @type {boolean}
1274
- */
1275
- const DEBUG_CHUNK = false;
1276
- &nbsp;
1277
- /**
1278
- * Prefix for data attributes on DOM elements.
1279
- * @type {string}
1280
- */
1281
- const BASEATTR = 'data-ps-';
1282
- &nbsp;
1283
- /**
1284
- * ID for the style proxy
1285
- * @type {string}
1286
- */
1287
- const PROXY_STYLE = 'ps-style';
1288
- &nbsp;
1289
- /**
1290
- * ID for the script proxy
1291
- * @type {string}
1292
- */
1293
- const PROXY_SCRIPT = 'ps-script';
1294
- &nbsp;
1295
- /**
1296
- * Get data attributes
1297
- *
1298
- * @param {Object} el The DOM element.
1299
- * @param {String} name The attribute name.
1300
- * @returns {String}
1301
- */
1302
- function getData(el, name) {
1303
- const attr = BASEATTR + name;
1304
- &nbsp;
1305
- const val = el.getAttribute(attr);
1306
- &nbsp;
1307
- // IE 8 returns a number if it's a number
1308
- return !utils.existy(val) ? val : String(val);
1309
- }
1310
- &nbsp;
1311
- /**
1312
- * Set data attributes
1313
- *
1314
- * @param {Object} el The DOM element.
1315
- * @param {String} name The attribute name.
1316
- * @param {null|*} value The attribute value.
1317
- */
1318
- function setData(el, name, value = null) {
1319
- const attr = BASEATTR + name;
1320
- &nbsp;
1321
- if (utils.existy(value) &amp;&amp; value !== '') {
1322
- el.setAttribute(attr, value);
1323
- } else {
1324
- el.removeAttribute(attr);
1325
- }
1326
- }
1327
- &nbsp;
1328
- /**
1329
- * Stream static html to an element, where "static html" denotes "html
1330
- * without scripts".
1331
- *
1332
- * This class maintains a *history of writes devoid of any attributes* or
1333
- * "proxy history".
1334
- *
1335
- * Injecting the proxy history into a temporary div has no side-effects,
1336
- * other than to create proxy elements for previously written elements.
1337
- *
1338
- * Given the `staticHtml` of a new write, a `tempDiv`'s innerHTML is set to
1339
- * `proxy_history + staticHtml`.
1340
- * The *structure* of `tempDiv`'s contents, (i.e., the placement of new nodes
1341
- * beside or inside of proxy elements), reflects the DOM structure that would
1342
- * have resulted if all writes had been squashed into a single write.
1343
- *
1344
- * For each descendent `node` of `tempDiv` whose parentNode is a *proxy*,
1345
- * `node` is appended to the corresponding *real* element within the DOM.
1346
- *
1347
- * Proxy elements are mapped to *actual* elements in the DOM by injecting a
1348
- * `data-id` attribute into each start tag in `staticHtml`.
1349
- *
1350
- */
1351
- export default class WriteStream {
1352
- /**
1353
- * Constructor.
1354
- *
1355
- * @param {Object} root The root element
1356
- * @param {?Object} options The options
1357
- */
1358
- constructor(root, options = <span class="branch-0 cbranch-no" title="branch not covered" >{}) {</span>
1359
- this.root = root;
1360
- this.options = options;
1361
- this.doc = root.ownerDocument;
1362
- t</span>his.win = this.doc.defaultView || <span class="branch-1 cbranch-no" title="branch not covered" >this.doc.parentWindow;
1363
- this.parser = new HtmlParser('', {autoFix: options.autoFix});
1364
- &nbsp;
1365
- // Actual elements by id.
1366
- this.actuals = [root];
1367
- &nbsp;
1368
- // Embodies the "structure" of what's been written so far,
1369
- // devoid of attributes.
1370
- this.proxyHistory = '';
1371
- &nbsp;
1372
- // Create a proxy of the root element.
1373
- this.proxyRoot = this.doc.createElement(root.nodeName);
1374
- &nbsp;
1375
- this.scriptStack = [];
1376
- this.writeQueue = [];
1377
- &nbsp;
1378
- setData(this.proxyRoot, 'proxyof', 0);
1379
- }
1380
- &nbsp;
1381
- /**
1382
- * Writes the given strings.
1383
- *
1384
- * @param {...String} str The strings to write
1385
- */
1386
- write(...str) {
1387
- this.writeQueue.push(...str);
1388
- &nbsp;
1389
- // Process writes
1390
- // When new script gets pushed or pending this will stop
1391
- // because new writeQueue gets pushed
1392
- while (!this.deferredRemote &amp;&amp; this.writeQueue.length) {
1393
- const arg = this.writeQueue.shift();
1394
- &nbsp;
1395
- if (utils.isFunction(arg)) {
1396
- this._callFunction(arg);
1397
- } else {
1398
- this._writeImpl(arg);
1399
- }
1400
- }
1401
- }
1402
- &nbsp;
1403
- /**
1404
- * Calls the given function.
1405
- *
1406
- * @param {Function} fn The function to call
1407
- * @private
1408
- */
1409
- _callFunction(fn) {
1410
- const tok = {type: 'function', value: fn.name || fn.toString()};
1411
- this._onScriptStart(tok);
1412
- fn.call(this.win, this.doc);
1413
- this._onScriptDone(tok);
1414
- }
1415
- &nbsp;
1416
- /**
1417
- * The write implementation
1418
- *
1419
- * @param {String} html The HTML to write.
1420
- * @private
1421
- */
1422
- _writeImpl(html) {
1423
- this.parser.append(html);
1424
- &nbsp;
1425
- let tok;
1426
- let script;
1427
- let style;
1428
- const tokens = [];
1429
- &nbsp;
1430
- // stop if we see a script token
1431
- while ((tok = this.parser.readToken()) &amp;&amp;
1432
- !(script = utils.isScript(tok)) &amp;&amp;
1433
- !(style = utils.isStyle(tok))) {
1434
- tok = this.options.beforeWriteToken(tok);
1435
- &nbsp;
1436
- <span class="missing-if-branch" title="else path not taken" >E</span>if (tok) {
1437
- tokens.push(tok);
1438
- }
1439
- }
1440
- &nbsp;
1441
- if (tokens.length &gt; 0) {
1442
- this._writeStaticTokens(tokens);
1443
- }
1444
- &nbsp;
1445
- if (script) {
1446
- this._handleScriptToken(tok);
1447
- }
1448
- &nbsp;
1449
- if (style) {
1450
- this._handleStyleToken(tok);
1451
- }
1452
- }
1453
- &nbsp;
1454
- /**
1455
- * Write a contiguous non-script tokens (a chunk)
1456
- *
1457
- * @param {Array&lt;Object&gt;} tokens The tokens
1458
- * @returns {{tokens, raw, actual, proxy}|null}
1459
- * @private
1460
- */
1461
- _writeStaticTokens(tokens) {
1462
- const chunk = this._buildChunk(tokens);
1463
- &nbsp;
1464
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!chunk.actual) {
1465
- // e.g., no tokens, or a noscript that got ignored
1466
- <span class="cstat-no" title="statement not covered" > r</span>eturn null;
1467
- }
1468
- &nbsp;
1469
- chunk.html = this.proxyHistory + chunk.actual;
1470
- this.proxyHistory += chunk.proxy;
1471
- this.proxyRoot.innerHTML = chunk.html;
1472
- &nbsp;
1473
- <span class="missing-if-branch" title="if path not taken" >I</span>if (DEBUG_CHUNK) {
1474
- <span class="cstat-no" title="statement not covered" > c</span>hunk.proxyInnerHTML = this.proxyRoot.innerHTML;
1475
- }
1476
- &nbsp;
1477
- this._walkChunk();
1478
- &nbsp;
1479
- <span class="missing-if-branch" title="if path not taken" >I</span>if (DEBUG_CHUNK) {
1480
- <span class="cstat-no" title="statement not covered" > c</span>hunk.actualInnerHTML = this.root.innerHTML;
1481
- }
1482
- &nbsp;
1483
- return chunk;
1484
- }
1485
- &nbsp;
1486
- /**
1487
- * Build a chunk.
1488
- *
1489
- * @param {Array&lt;Object&gt;} tokens The tokens to use.
1490
- * @returns {{tokens: *, raw: string, actual: string, proxy: string}}
1491
- * @private
1492
- */
1493
- _buildChunk(tokens) {
1494
- let nextId = this.actuals.length;
1495
- &nbsp;
1496
- // The raw html of this chunk.
1497
- const raw = [];
1498
- &nbsp;
1499
- // The html to create the nodes in the tokens (with id's injected).
1500
- const actual = [];
1501
- &nbsp;
1502
- // Html that can later be used to proxy the nodes in the tokens.
1503
- const proxy = [];
1504
- &nbsp;
1505
- const len = tokens.length;
1506
- for (let i = 0; i &lt; len; i++) {
1507
- const tok = tokens[i];
1508
- const tokenRaw = tok.toString();
1509
- &nbsp;
1510
- raw.push(tokenRaw);
1511
- &nbsp;
1512
- if (tok.attrs) { // tok.attrs &lt;==&gt; startTag or atomicTag or cursor
1513
- // Ignore noscript tags. They are atomic, so we don't have to worry about children.
1514
- <span class="missing-if-branch" title="else path not taken" >E</span>if (!(/^noscript$/i).test(tok.tagName)) {
1515
- const id = nextId++;
1516
- &nbsp;
1517
- // Actual: inject id attribute: replace '&gt;' at end of start tag with id attribute + '&gt;'
1518
- actual.push(tokenRaw.replace(/(\/?&gt;)/, ` ${BASEATTR}id=${id} $1`));
1519
- &nbsp;
1520
- // Don't proxy scripts: they have no bearing on DOM structure.
1521
- if (tok.attrs.id !== PROXY_SCRIPT &amp;&amp; tok.attrs.id !== PROXY_STYLE) {
1522
- // Proxy: strip all attributes and inject proxyof attribute
1523
- proxy.push(
1524
- // ignore atomic tags (e.g., style): they have no "structural" effect
1525
- t</span>ok.type === 'atomicTag' ? <span class="branch-0 cbranch-no" title="branch not covered" >'' :
1526
- `&lt;${tok.tagName} ${BASEATTR}proxyof=${id}` + (tok.unary ? ' /&gt;' : '&gt;')
1527
- );
1528
- }
1529
- }
1530
- } else {
1531
- // Visit any other type of token
1532
- // Actual: append.
1533
- actual.push(tokenRaw);
1534
- &nbsp;
1535
- // Proxy: append endTags. Ignore everything else.
1536
- proxy.push(tok.type === 'endTag' ? tokenRaw : '');
1537
- }
1538
- }
1539
- &nbsp;
1540
- return {
1541
- tokens,
1542
- raw: raw.join(''),
1543
- actual: actual.join(''),
1544
- proxy: proxy.join('')
1545
- };
1546
- }
1547
- &nbsp;
1548
- /**
1549
- * Walk the chunks.
1550
- *
1551
- * @private
1552
- */
1553
- _walkChunk() {
1554
- let node;
1555
- const stack = [this.proxyRoot];
1556
- &nbsp;
1557
- // use shift/unshift so that children are walked in document order
1558
- &nbsp;
1559
- while (utils.existy(node = stack.shift())) {
1560
- const isElement = node.nodeType === 1;
1561
- const isProxy = isElement &amp;&amp; getData(node, 'proxyof');
1562
- &nbsp;
1563
- // Ignore proxies
1564
- if (!isProxy) {
1565
- if (isElement) {
1566
- // New actual element: register it and remove the the id attr.
1567
- this.actuals[getData(node, 'id')] = node;
1568
- setData(node, 'id');
1569
- }
1570
- &nbsp;
1571
- // Is node's parent a proxy?
1572
- const parentIsProxyOf = node.parentNode &amp;&amp;
1573
- getData(node.parentNode, 'proxyof');
1574
- if (parentIsProxyOf) {
1575
- // Move node under actual parent.
1576
- this.actuals[parentIsProxyOf].appendChild(node);
1577
- }
1578
- }
1579
- &nbsp;
1580
- // prepend childNodes to stack
1581
- stack.unshift.apply(stack, utils.toArray(node.childNodes));
1582
- }
1583
- }
1584
- &nbsp;
1585
- /**
1586
- * Handles Script tokens
1587
- *
1588
- * @param {Object} tok The token
1589
- */
1590
- _handleScriptToken(tok) {
1591
- const remainder = this.parser.clear();
1592
- &nbsp;
1593
- if (remainder) {
1594
- // Write remainder immediately behind this script.
1595
- this.writeQueue.unshift(remainder);
1596
- }
1597
- &nbsp;
1598
- tok.src = tok.attrs.src || tok.attrs.SRC;
1599
- &nbsp;
1600
- tok = this.options.beforeWriteToken(tok);
1601
- if (!tok) {
1602
- // User has removed this token
1603
- return;
1604
- }
1605
- &nbsp;
1606
- if (tok.src &amp;&amp; this.scriptStack.length) {
1607
- // Defer this script until scriptStack is empty.
1608
- // Assumption 1: This script will not start executing until
1609
- // scriptStack is empty.
1610
- this.deferredRemote = tok;
1611
- } else {
1612
- this._onScriptStart(tok);
1613
- }
1614
- &nbsp;
1615
- // Put the script node in the DOM.
1616
- this._writeScriptToken(tok, () =&gt; {
1617
- this._onScriptDone(tok);
1618
- });
1619
- }
1620
- &nbsp;
1621
- /**
1622
- * Handles style tokens
1623
- *
1624
- * @param {Object} tok The token
1625
- */
1626
- _handleStyleToken(tok) {
1627
- const remainder = this.parser.clear();
1628
- &nbsp;
1629
- if (remainder) {
1630
- // Write remainder immediately behind this style.
1631
- this.writeQueue.unshift(remainder);
1632
- }
1633
- &nbsp;
1634
- tok.type = tok.attrs.type || tok.attrs.TYPE || 'text/css';
1635
- &nbsp;
1636
- tok = this.options.beforeWriteToken(tok);
1637
- &nbsp;
1638
- if (tok) {
1639
- // Put the style node in the DOM.
1640
- this._writeStyleToken(tok);
1641
- }
1642
- &nbsp;
1643
- if (remainder) {
1644
- this.write();
1645
- }
1646
- }
1647
- &nbsp;
1648
- /**
1649
- * Build a style and insert it into the DOM.
1650
- *
1651
- * @param {Object} tok The token
1652
- */
1653
- _writeStyleToken(tok) {
1654
- const el = this._buildStyle(tok);
1655
- &nbsp;
1656
- this._insertStyle(el);
1657
- &nbsp;
1658
- // Set content
1659
- <span class="missing-if-branch" title="else path not taken" >E</span>if (tok.content) {
1660
- <span class="missing-if-branch" title="if path not taken" >I</span>i</span>f (el.styleSheet &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >!el.sheet) {
1661
- <span class="cstat-no" title="statement not covered" > e</span>l.styleSheet.cssText = tok.content;
1662
- } else {
1663
- el.appendChild(this.doc.createTextNode(tok.content));
1664
- }
1665
- }
1666
- }
1667
- &nbsp;
1668
- /**
1669
- * Build a style element from an atomic style token.
1670
- *
1671
- * @param {Object} tok The token
1672
- * @returns {Element}
1673
- */
1674
- _buildStyle(tok) {
1675
- const el = this.doc.createElement(tok.tagName);
1676
- &nbsp;
1677
- el.setAttribute('type', tok.type);
1678
- &nbsp;
1679
- // Set attributes
1680
- utils.eachKey(tok.attrs, (name, value) =&gt; {
1681
- el.setAttribute(name, value);
1682
- });
1683
- &nbsp;
1684
- return el;
1685
- }
1686
- &nbsp;
1687
- /**
1688
- * Append a span to the stream. That span will act as a cursor
1689
- * (i.e. insertion point) for the style.
1690
- *
1691
- * @param {String} id The ID of the span.
1692
- * @private
1693
- */
1694
- _insertSpan(id) {
1695
- this._writeImpl(`&lt;span id="${id}"/&gt;`);
1696
- &nbsp;
1697
- // Grab that span from the DOM.
1698
- return this.doc.getElementById(id);
1699
- }
1700
- &nbsp;
1701
- /**
1702
- * Insert style into DOM where it would naturally be written.
1703
- *
1704
- * @param {Object} el The element
1705
- */
1706
- _insertStyle(el) {
1707
- const cursor = this._insertSpan(PROXY_STYLE);
1708
- &nbsp;
1709
- // Replace cursor with style.
1710
- <span class="missing-if-branch" title="else path not taken" >E</span>if (cursor) {
1711
- cursor.parentNode.replaceChild(el, cursor);
1712
- }
1713
- }
1714
- &nbsp;
1715
- /**
1716
- * Insert script into DOM where it would naturally be written.
1717
- *
1718
- * @param {Object} el The element
1719
- */
1720
- _insertScript(el) {
1721
- const cursor = this._insertSpan(PROXY_SCRIPT);
1722
- &nbsp;
1723
- // Replace cursor with script.
1724
- <span class="missing-if-branch" title="else path not taken" >E</span>if (cursor) {
1725
- cursor.parentNode.replaceChild(el, cursor);
1726
- }
1727
- }
1728
- &nbsp;
1729
- /**
1730
- * Called when a script is started.
1731
- *
1732
- * @param {Object} tok The token
1733
- * @private
1734
- */
1735
- _onScriptStart(tok) {
1736
- tok.outerWrites = this.writeQueue;
1737
- this.writeQueue = [];
1738
- this.scriptStack.unshift(tok);
1739
- }
1740
- &nbsp;
1741
- /**
1742
- * Called when a script is done.
1743
- *
1744
- * @param {Object} tok The token
1745
- * @private
1746
- */
1747
- _onScriptDone(tok) {
1748
- // Pop script and check nesting.
1749
- <span class="missing-if-branch" title="if path not taken" >I</span>if (tok !== this.scriptStack[0]) {
1750
- <span class="cstat-no" title="statement not covered" > t</span>his.options.error({message: 'Bad script nesting or script finished twice'});
1751
- <span class="cstat-no" title="statement not covered" > r</span>eturn;
1752
- }
1753
- &nbsp;
1754
- this.scriptStack.shift();
1755
- &nbsp;
1756
- // Append outer writes to queue and process them.
1757
- this.write.apply(this, tok.outerWrites);
1758
- &nbsp;
1759
- // Check for pending remote
1760
- &nbsp;
1761
- // Assumption 2: if remote_script1 writes remote_script2 then
1762
- // the we notice remote_script1 finishes before remote_script2 starts.
1763
- // I think this is equivalent to assumption 1
1764
- if (!this.scriptStack.length &amp;&amp; this.deferredRemote) {
1765
- this._onScriptStart(this.deferredRemote);
1766
- this.deferredRemote = null;
1767
- }
1768
- }
1769
- &nbsp;
1770
- /**
1771
- * Build a script and insert it into the DOM.
1772
- * Done is called once script has executed.
1773
- *
1774
- * @param {Object} tok The token
1775
- * @param {Function} done The callback when complete
1776
- */
1777
- _writeScriptToken(tok, done) {
1778
- const el = this._buildScript(tok);
1779
- const asyncRelease = this._shouldRelease(el);
1780
- const afterAsync = this.options.afterAsync;
1781
- &nbsp;
1782
- if (tok.src) {
1783
- // Fix for attribute "SRC" (capitalized). IE does not recognize it.
1784
- el.src = tok.src;
1785
- this._scriptLoadHandler(el, !asyncRelease ? () =&gt; {
1786
- done();
1787
- afterAsync();
1788
- } : afterAsync);
1789
- }
1790
- &nbsp;
1791
- try {
1792
- this._insertScript(el);
1793
- if (!el.src || asyncRelease) {
1794
- done();
1795
- }
1796
- } catch (e) {
1797
- <span class="cstat-no" title="statement not covered" > t</span>his.options.error(e);
1798
- <span class="cstat-no" title="statement not covered" > d</span>one();
1799
- }
1800
- }
1801
- &nbsp;
1802
- /**
1803
- * Build a script element from an atomic script token.
1804
- *
1805
- * @param {Object} tok The token
1806
- * @returns {Element}
1807
- */
1808
- _buildScript(tok) {
1809
- const el = this.doc.createElement(tok.tagName);
1810
- &nbsp;
1811
- // Set attributes
1812
- utils.eachKey(tok.attrs, (name, value) =&gt; {
1813
- el.setAttribute(name, value);
1814
- });
1815
- &nbsp;
1816
- // Set content
1817
- if (tok.content) {
1818
- el.text = tok.content;
1819
- }
1820
- &nbsp;
1821
- return el;
1822
- }
1823
- &nbsp;
1824
- /**
1825
- * Setup the script load handler on an element.
1826
- *
1827
- * @param {Object} el The element
1828
- * @param {Function} done The callback
1829
- * @private
1830
- */
1831
- _scriptLoadHandler(el, done) {
1832
- function cleanup() {
1833
- el = el.onload = el.onreadystatechange = el.onerror = null;
1834
- }
1835
- &nbsp;
1836
- const error = this.options.error;
1837
- &nbsp;
1838
- function success() {
1839
- cleanup();
1840
- done();
1841
- }
1842
- &nbsp;
1843
- function failure(err) {
1844
- cleanup();
1845
- error(err);
1846
- done();
1847
- }
1848
- &nbsp;
1849
- // Set handlers
1850
- Object.assign(el, {
1851
- onload: () =&gt; success(),
1852
- &nbsp;
1853
- onreadystatechange: <span class="fstat-no" title="function not covered" >() =&gt; {</span>
1854
- <span class="cstat-no" title="statement not covered" > if (/^(loaded|complete)$/.test(el.readyState)) {</span>
1855
- <span class="cstat-no" title="statement not covered" > s</span>uccess();
1856
- }
1857
- },
1858
- &nbsp;
1859
- onerror: () =&gt; failure({message: `remote script failed ${el.src}`})
1860
- });
1861
- }
1862
- &nbsp;
1863
- /**
1864
- * Determines whether to release.
1865
- *
1866
- * @param {Object} el The element
1867
- * @returns {boolean}
1868
- * @private
1869
- */
1870
- _shouldRelease(el) {
1871
- const isScript = (/^script$/i).test(el.nodeName);
1872
- return !isScript || !!(this.options.releaseAsync &amp;&amp; el.src &amp;&amp; el.hasAttribute('async'));
1873
- }
1874
- &nbsp;
1875
- }
1876
- &nbsp;
1877
- &nbsp;</pre></td></tr>
1878
- </table></pre>
1879
- <div class='push'></div><!-- for sticky footer -->
1880
- </div><!-- /wrapper -->
1881
- <div class='footer quiet pad2 space-top1 center small'>
1882
- Code coverage
1883
- generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Wed Apr 27 2016 01:39:53 GMT+0000 (UTC)
1884
- </div>
1885
- </div>
1886
- <script src="../prettify.js"></script>
1887
- <script>
1888
- window.onload = function () {
1889
- if (typeof prettyPrint === 'function') {
1890
- prettyPrint();
1891
- }
1892
- };
1893
- </script>
1894
- <script src="../sorter.js"></script>
1895
- </body>
1896
- </html>