Created
September 3, 2013 19:37
-
-
Save jrideout/6428556 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!doctype html> | |
<html lang="en"> | |
<head> | |
<title>Code coverage report for dc.js/dc.js</title> | |
<meta charset="utf-8"> | |
<link rel="stylesheet" href="prettify.css"> | |
<style> | |
body, html { | |
margin:0; padding: 0; | |
} | |
body { | |
font-family: Helvetica Neue, Helvetica,Arial; | |
font-size: 10pt; | |
} | |
div.header, div.footer { | |
background: #eee; | |
padding: 1em; | |
} | |
div.header { | |
z-index: 100; | |
position: fixed; | |
top: 0; | |
border-bottom: 1px solid #666; | |
width: 100%; | |
} | |
div.footer { | |
border-top: 1px solid #666; | |
} | |
div.body { | |
margin-top: 10em; | |
} | |
div.meta { | |
font-size: 90%; | |
text-align: center; | |
} | |
h1, h2, h3 { | |
font-weight: normal; | |
} | |
h1 { | |
font-size: 12pt; | |
} | |
h2 { | |
font-size: 10pt; | |
} | |
pre { | |
font-family: Consolas, Menlo, Monaco, monospace; | |
margin: 0; | |
padding: 0; | |
line-height: 14px; | |
font-size: 14px; | |
-moz-tab-size: 2; | |
-o-tab-size: 2; | |
tab-size: 2; | |
} | |
div.path { font-size: 110%; } | |
div.path a:link, div.path a:visited { color: #000; } | |
table.coverage { border-collapse: collapse; margin:0; padding: 0 } | |
table.coverage td { | |
margin: 0; | |
padding: 0; | |
color: #111; | |
vertical-align: top; | |
} | |
table.coverage td.line-count { | |
width: 50px; | |
text-align: right; | |
padding-right: 5px; | |
} | |
table.coverage td.line-coverage { | |
color: #777 !important; | |
text-align: right; | |
border-left: 1px solid #666; | |
border-right: 1px solid #666; | |
} | |
table.coverage td.text { | |
} | |
table.coverage td span.cline-any { | |
display: inline-block; | |
padding: 0 5px; | |
width: 40px; | |
} | |
table.coverage td span.cline-neutral { | |
background: #eee; | |
} | |
table.coverage td span.cline-yes { | |
background: #b5d592; | |
color: #999; | |
} | |
table.coverage td span.cline-no { | |
background: #fc8c84; | |
} | |
.cstat-yes { color: #111; } | |
.cstat-no { background: #fc8c84; color: #111; } | |
.fstat-no { background: #ffc520; color: #111 !important; } | |
.cbranch-no { background: yellow !important; color: #111; } | |
.missing-if-branch { | |
display: inline-block; | |
margin-right: 10px; | |
position: relative; | |
padding: 0 4px; | |
background: black; | |
color: yellow; | |
xtext-decoration: line-through; | |
} | |
.missing-if-branch .typ { | |
color: inherit !important; | |
} | |
.entity, .metric { font-weight: bold; } | |
.metric { display: inline-block; border: 1px solid #333; padding: 0.3em; background: white; } | |
.metric small { font-size: 80%; font-weight: normal; color: #666; } | |
div.coverage-summary table { border-collapse: collapse; margin: 3em; font-size: 110%; } | |
div.coverage-summary td, div.coverage-summary table th { margin: 0; padding: 0.25em 1em; border-top: 1px solid #666; border-bottom: 1px solid #666; } | |
div.coverage-summary th { text-align: left; border: 1px solid #666; background: #eee; font-weight: normal; } | |
div.coverage-summary th.file { border-right: none !important; } | |
div.coverage-summary th.pic { border-left: none !important; text-align: right; } | |
div.coverage-summary th.pct { border-right: none !important; } | |
div.coverage-summary th.abs { border-left: none !important; text-align: right; } | |
div.coverage-summary td.pct { text-align: right; border-left: 1px solid #666; } | |
div.coverage-summary td.abs { text-align: right; font-size: 90%; color: #444; border-right: 1px solid #666; } | |
div.coverage-summary td.file { text-align: right; border-left: 1px solid #666; white-space: nowrap; } | |
div.coverage-summary td.pic { min-width: 120px !important; } | |
div.coverage-summary a:link { text-decoration: none; color: #000; } | |
div.coverage-summary a:visited { text-decoration: none; color: #333; } | |
div.coverage-summary a:hover { text-decoration: underline; } | |
div.coverage-summary tfoot td { border-top: 1px solid #666; } | |
div.coverage-summary .yui3-datatable-sort-indicator, div.coverage-summary .dummy-sort-indicator { | |
height: 10px; | |
width: 7px; | |
display: inline-block; | |
margin-left: 0.5em; | |
} | |
div.coverage-summary .yui3-datatable-sort-indicator { | |
background: url("http://yui.yahooapis.com/3.6.0/build/datatable-sort/assets/skins/sam/sort-arrow-sprite.png") no-repeat scroll 0 0 transparent; | |
} | |
div.coverage-summary .yui3-datatable-sorted .yui3-datatable-sort-indicator { | |
background-position: 0 -20px; | |
} | |
div.coverage-summary .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator { | |
background-position: 0 -10px; | |
} | |
.high { background: #b5d592 !important; } | |
.medium { background: #ffe87c !important; } | |
.low { background: #fc8c84 !important; } | |
span.cover-fill, span.cover-empty { | |
display:inline-block; | |
border:1px solid #444; | |
background: white; | |
height: 12px; | |
} | |
span.cover-fill { | |
background: #ccc; | |
border-right: 1px solid #444; | |
} | |
span.cover-empty { | |
background: white; | |
border-left: none; | |
} | |
span.cover-full { | |
border-right: none !important; | |
} | |
pre.prettyprint { | |
border: none !important; | |
padding: 0 !important; | |
margin: 0 !important; | |
} | |
.com { color: #999 !important; } | |
</style> | |
</head> | |
<body> | |
<div class="header high"> | |
<h1>Code coverage report for <span class="entity">dc.js/dc.js</span></h1> | |
<h2> | |
Statements: <span class="metric">87.95% <small>(1948 / 2215)</small></span> | |
Branches: <span class="metric">79.37% <small>(500 / 630)</small></span> | |
Functions: <span class="metric">84.49% <small>(474 / 561)</small></span> | |
Lines: <span class="metric">89.2% <small>(1874 / 2101)</small></span> | |
</h2> | |
<div class="path"><a href="../index.html">All files</a> » <a href="index.html">dc.js/</a> » dc.js</div> | |
</div> | |
<div class="body"> | |
<pre><table class="coverage"> | |
<tr><td class="line-count">1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
42 | |
43 | |
44 | |
45 | |
46 | |
47 | |
48 | |
49 | |
50 | |
51 | |
52 | |
53 | |
54 | |
55 | |
56 | |
57 | |
58 | |
59 | |
60 | |
61 | |
62 | |
63 | |
64 | |
65 | |
66 | |
67 | |
68 | |
69 | |
70 | |
71 | |
72 | |
73 | |
74 | |
75 | |
76 | |
77 | |
78 | |
79 | |
80 | |
81 | |
82 | |
83 | |
84 | |
85 | |
86 | |
87 | |
88 | |
89 | |
90 | |
91 | |
92 | |
93 | |
94 | |
95 | |
96 | |
97 | |
98 | |
99 | |
100 | |
101 | |
102 | |
103 | |
104 | |
105 | |
106 | |
107 | |
108 | |
109 | |
110 | |
111 | |
112 | |
113 | |
114 | |
115 | |
116 | |
117 | |
118 | |
119 | |
120 | |
121 | |
122 | |
123 | |
124 | |
125 | |
126 | |
127 | |
128 | |
129 | |
130 | |
131 | |
132 | |
133 | |
134 | |
135 | |
136 | |
137 | |
138 | |
139 | |
140 | |
141 | |
142 | |
143 | |
144 | |
145 | |
146 | |
147 | |
148 | |
149 | |
150 | |
151 | |
152 | |
153 | |
154 | |
155 | |
156 | |
157 | |
158 | |
159 | |
160 | |
161 | |
162 | |
163 | |
164 | |
165 | |
166 | |
167 | |
168 | |
169 | |
170 | |
171 | |
172 | |
173 | |
174 | |
175 | |
176 | |
177 | |
178 | |
179 | |
180 | |
181 | |
182 | |
183 | |
184 | |
185 | |
186 | |
187 | |
188 | |
189 | |
190 | |
191 | |
192 | |
193 | |
194 | |
195 | |
196 | |
197 | |
198 | |
199 | |
200 | |
201 | |
202 | |
203 | |
204 | |
205 | |
206 | |
207 | |
208 | |
209 | |
210 | |
211 | |
212 | |
213 | |
214 | |
215 | |
216 | |
217 | |
218 | |
219 | |
220 | |
221 | |
222 | |
223 | |
224 | |
225 | |
226 | |
227 | |
228 | |
229 | |
230 | |
231 | |
232 | |
233 | |
234 | |
235 | |
236 | |
237 | |
238 | |
239 | |
240 | |
241 | |
242 | |
243 | |
244 | |
245 | |
246 | |
247 | |
248 | |
249 | |
250 | |
251 | |
252 | |
253 | |
254 | |
255 | |
256 | |
257 | |
258 | |
259 | |
260 | |
261 | |
262 | |
263 | |
264 | |
265 | |
266 | |
267 | |
268 | |
269 | |
270 | |
271 | |
272 | |
273 | |
274 | |
275 | |
276 | |
277 | |
278 | |
279 | |
280 | |
281 | |
282 | |
283 | |
284 | |
285 | |
286 | |
287 | |
288 | |
289 | |
290 | |
291 | |
292 | |
293 | |
294 | |
295 | |
296 | |
297 | |
298 | |
299 | |
300 | |
301 | |
302 | |
303 | |
304 | |
305 | |
306 | |
307 | |
308 | |
309 | |
310 | |
311 | |
312 | |
313 | |
314 | |
315 | |
316 | |
317 | |
318 | |
319 | |
320 | |
321 | |
322 | |
323 | |
324 | |
325 | |
326 | |
327 | |
328 | |
329 | |
330 | |
331 | |
332 | |
333 | |
334 | |
335 | |
336 | |
337 | |
338 | |
339 | |
340 | |
341 | |
342 | |
343 | |
344 | |
345 | |
346 | |
347 | |
348 | |
349 | |
350 | |
351 | |
352 | |
353 | |
354 | |
355 | |
356 | |
357 | |
358 | |
359 | |
360 | |
361 | |
362 | |
363 | |
364 | |
365 | |
366 | |
367 | |
368 | |
369 | |
370 | |
371 | |
372 | |
373 | |
374 | |
375 | |
376 | |
377 | |
378 | |
379 | |
380 | |
381 | |
382 | |
383 | |
384 | |
385 | |
386 | |
387 | |
388 | |
389 | |
390 | |
391 | |
392 | |
393 | |
394 | |
395 | |
396 | |
397 | |
398 | |
399 | |
400 | |
401 | |
402 | |
403 | |
404 | |
405 | |
406 | |
407 | |
408 | |
409 | |
410 | |
411 | |
412 | |
413 | |
414 | |
415 | |
416 | |
417 | |
418 | |
419 | |
420 | |
421 | |
422 | |
423 | |
424 | |
425 | |
426 | |
427 | |
428 | |
429 | |
430 | |
431 | |
432 | |
433 | |
434 | |
435 | |
436 | |
437 | |
438 | |
439 | |
440 | |
441 | |
442 | |
443 | |
444 | |
445 | |
446 | |
447 | |
448 | |
449 | |
450 | |
451 | |
452 | |
453 | |
454 | |
455 | |
456 | |
457 | |
458 | |
459 | |
460 | |
461 | |
462 | |
463 | |
464 | |
465 | |
466 | |
467 | |
468 | |
469 | |
470 | |
471 | |
472 | |
473 | |
474 | |
475 | |
476 | |
477 | |
478 | |
479 | |
480 | |
481 | |
482 | |
483 | |
484 | |
485 | |
486 | |
487 | |
488 | |
489 | |
490 | |
491 | |
492 | |
493 | |
494 | |
495 | |
496 | |
497 | |
498 | |
499 | |
500 | |
501 | |
502 | |
503 | |
504 | |
505 | |
506 | |
507 | |
508 | |
509 | |
510 | |
511 | |
512 | |
513 | |
514 | |
515 | |
516 | |
517 | |
518 | |
519 | |
520 | |
521 | |
522 | |
523 | |
524 | |
525 | |
526 | |
527 | |
528 | |
529 | |
530 | |
531 | |
532 | |
533 | |
534 | |
535 | |
536 | |
537 | |
538 | |
539 | |
540 | |
541 | |
542 | |
543 | |
544 | |
545 | |
546 | |
547 | |
548 | |
549 | |
550 | |
551 | |
552 | |
553 | |
554 | |
555 | |
556 | |
557 | |
558 | |
559 | |
560 | |
561 | |
562 | |
563 | |
564 | |
565 | |
566 | |
567 | |
568 | |
569 | |
570 | |
571 | |
572 | |
573 | |
574 | |
575 | |
576 | |
577 | |
578 | |
579 | |
580 | |
581 | |
582 | |
583 | |
584 | |
585 | |
586 | |
587 | |
588 | |
589 | |
590 | |
591 | |
592 | |
593 | |
594 | |
595 | |
596 | |
597 | |
598 | |
599 | |
600 | |
601 | |
602 | |
603 | |
604 | |
605 | |
606 | |
607 | |
608 | |
609 | |
610 | |
611 | |
612 | |
613 | |
614 | |
615 | |
616 | |
617 | |
618 | |
619 | |
620 | |
621 | |
622 | |
623 | |
624 | |
625 | |
626 | |
627 | |
628 | |
629 | |
630 | |
631 | |
632 | |
633 | |
634 | |
635 | |
636 | |
637 | |
638 | |
639 | |
640 | |
641 | |
642 | |
643 | |
644 | |
645 | |
646 | |
647 | |
648 | |
649 | |
650 | |
651 | |
652 | |
653 | |
654 | |
655 | |
656 | |
657 | |
658 | |
659 | |
660 | |
661 | |
662 | |
663 | |
664 | |
665 | |
666 | |
667 | |
668 | |
669 | |
670 | |
671 | |
672 | |
673 | |
674 | |
675 | |
676 | |
677 | |
678 | |
679 | |
680 | |
681 | |
682 | |
683 | |
684 | |
685 | |
686 | |
687 | |
688 | |
689 | |
690 | |
691 | |
692 | |
693 | |
694 | |
695 | |
696 | |
697 | |
698 | |
699 | |
700 | |
701 | |
702 | |
703 | |
704 | |
705 | |
706 | |
707 | |
708 | |
709 | |
710 | |
711 | |
712 | |
713 | |
714 | |
715 | |
716 | |
717 | |
718 | |
719 | |
720 | |
721 | |
722 | |
723 | |
724 | |
725 | |
726 | |
727 | |
728 | |
729 | |
730 | |
731 | |
732 | |
733 | |
734 | |
735 | |
736 | |
737 | |
738 | |
739 | |
740 | |
741 | |
742 | |
743 | |
744 | |
745 | |
746 | |
747 | |
748 | |
749 | |
750 | |
751 | |
752 | |
753 | |
754 | |
755 | |
756 | |
757 | |
758 | |
759 | |
760 | |
761 | |
762 | |
763 | |
764 | |
765 | |
766 | |
767 | |
768 | |
769 | |
770 | |
771 | |
772 | |
773 | |
774 | |
775 | |
776 | |
777 | |
778 | |
779 | |
780 | |
781 | |
782 | |
783 | |
784 | |
785 | |
786 | |
787 | |
788 | |
789 | |
790 | |
791 | |
792 | |
793 | |
794 | |
795 | |
796 | |
797 | |
798 | |
799 | |
800 | |
801 | |
802 | |
803 | |
804 | |
805 | |
806 | |
807 | |
808 | |
809 | |
810 | |
811 | |
812 | |
813 | |
814 | |
815 | |
816 | |
817 | |
818 | |
819 | |
820 | |
821 | |
822 | |
823 | |
824 | |
825 | |
826 | |
827 | |
828 | |
829 | |
830 | |
831 | |
832 | |
833 | |
834 | |
835 | |
836 | |
837 | |
838 | |
839 | |
840 | |
841 | |
842 | |
843 | |
844 | |
845 | |
846 | |
847 | |
848 | |
849 | |
850 | |
851 | |
852 | |
853 | |
854 | |
855 | |
856 | |
857 | |
858 | |
859 | |
860 | |
861 | |
862 | |
863 | |
864 | |
865 | |
866 | |
867 | |
868 | |
869 | |
870 | |
871 | |
872 | |
873 | |
874 | |
875 | |
876 | |
877 | |
878 | |
879 | |
880 | |
881 | |
882 | |
883 | |
884 | |
885 | |
886 | |
887 | |
888 | |
889 | |
890 | |
891 | |
892 | |
893 | |
894 | |
895 | |
896 | |
897 | |
898 | |
899 | |
900 | |
901 | |
902 | |
903 | |
904 | |
905 | |
906 | |
907 | |
908 | |
909 | |
910 | |
911 | |
912 | |
913 | |
914 | |
915 | |
916 | |
917 | |
918 | |
919 | |
920 | |
921 | |
922 | |
923 | |
924 | |
925 | |
926 | |
927 | |
928 | |
929 | |
930 | |
931 | |
932 | |
933 | |
934 | |
935 | |
936 | |
937 | |
938 | |
939 | |
940 | |
941 | |
942 | |
943 | |
944 | |
945 | |
946 | |
947 | |
948 | |
949 | |
950 | |
951 | |
952 | |
953 | |
954 | |
955 | |
956 | |
957 | |
958 | |
959 | |
960 | |
961 | |
962 | |
963 | |
964 | |
965 | |
966 | |
967 | |
968 | |
969 | |
970 | |
971 | |
972 | |
973 | |
974 | |
975 | |
976 | |
977 | |
978 | |
979 | |
980 | |
981 | |
982 | |
983 | |
984 | |
985 | |
986 | |
987 | |
988 | |
989 | |
990 | |
991 | |
992 | |
993 | |
994 | |
995 | |
996 | |
997 | |
998 | |
999 | |
1000 | |
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 | |
1052 | |
1053 | |
1054 | |
1055 | |
1056 | |
1057 | |
1058 | |
1059 | |
1060 | |
1061 | |
1062 | |
1063 | |
1064 | |
1065 | |
1066 | |
1067 | |
1068 | |
1069 | |
1070 | |
1071 | |
1072 | |
1073 | |
1074 | |
1075 | |
1076 | |
1077 | |
1078 | |
1079 | |
1080 | |
1081 | |
1082 | |
1083 | |
1084 | |
1085 | |
1086 | |
1087 | |
1088 | |
1089 | |
1090 | |
1091 | |
1092 | |
1093 | |
1094 | |
1095 | |
1096 | |
1097 | |
1098 | |
1099 | |
1100 | |
1101 | |
1102 | |
1103 | |
1104 | |
1105 | |
1106 | |
1107 | |
1108 | |
1109 | |
1110 | |
1111 | |
1112 | |
1113 | |
1114 | |
1115 | |
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 | |
2187 | |
2188 | |
2189 | |
2190 | |
2191 | |
2192 | |
2193 | |
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 | |
3167 | |
3168 | |
3169 | |
3170 | |
3171 | |
3172 | |
3173 | |
3174 | |
3175 | |
3176 | |
3177 | |
3178 | |
3179 | |
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</td><td class="line-coverage"><span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">99</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">16</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">28</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">392</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1804</span> | |
<span class="cline-any cline-yes">1759</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">216</span> | |
<span class="cline-any cline-yes">216</span> | |
<span class="cline-any cline-yes">216</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">44</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">44</span> | |
<span class="cline-any cline-yes">56</span> | |
<span class="cline-any cline-yes">56</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">44</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">70</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">70</span> | |
<span class="cline-any cline-yes">10</span> | |
<span class="cline-any cline-yes">60</span> | |
<span class="cline-any cline-yes">52</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">70</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">141</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">141</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">115</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">113</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">133</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">133</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">107</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">2290</span> | |
<span class="cline-any cline-yes">68</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">2288</span> | |
<span class="cline-any cline-yes">2288</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">23</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-yes">23</span> | |
<span class="cline-any cline-yes">23</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">22</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">221</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-yes">370</span> | |
<span class="cline-any cline-yes">370</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">370</span> | |
<span class="cline-any cline-yes">2287</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">370</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">123</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">96</span> | |
<span class="cline-any cline-yes">510</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">96</span> | |
<span class="cline-any cline-yes">96</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">27</span> | |
<span class="cline-any cline-yes">162</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">27</span> | |
<span class="cline-any cline-yes">27</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1772</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">267</span> | |
<span class="cline-any cline-yes">267</span> | |
<span class="cline-any cline-yes">267</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2055</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">22</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">234</span> | |
<span class="cline-any cline-yes">234</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">14</span> | |
<span class="cline-any cline-yes">14</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">164</span> | |
<span class="cline-any cline-yes">164</span> | |
<span class="cline-any cline-yes">164</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">33</span> | |
<span class="cline-any cline-yes">33</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">14</span> | |
<span class="cline-any cline-yes">14</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">19</span> | |
<span class="cline-any cline-yes">19</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">19</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">19</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">19</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">5442</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">7205</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">136</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-yes">38</span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">775</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">3375</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">395</span> | |
<span class="cline-any cline-yes">116</span> | |
<span class="cline-any cline-yes">116</span> | |
<span class="cline-any cline-yes">116</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">800</span> | |
<span class="cline-any cline-yes">118</span> | |
<span class="cline-any cline-yes">118</span> | |
<span class="cline-any cline-yes">118</span> | |
<span class="cline-any cline-yes">118</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">97</span> | |
<span class="cline-any cline-yes">2289</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">258</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">256</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">707</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">350</span> | |
<span class="cline-any cline-yes">104</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">104</span> | |
<span class="cline-any cline-yes">104</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">231</span> | |
<span class="cline-any cline-yes">231</span> | |
<span class="cline-any cline-yes">230</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">200</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">286</span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">149</span> | |
<span class="cline-any cline-yes">149</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">149</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">149</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">42</span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">42</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">38</span> | |
<span class="cline-any cline-yes">38</span> | |
<span class="cline-any cline-yes">38</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">38</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">2789</span> | |
<span class="cline-any cline-yes">178</span> | |
<span class="cline-any cline-yes">178</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">163</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">163</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">162</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">161</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">160</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">160</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">160</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">656</span> | |
<span class="cline-any cline-yes">14</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">642</span> | |
<span class="cline-any cline-yes">642</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">439</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">439</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">439</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">439</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">80</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">10982</span> | |
<span class="cline-any cline-yes">2508</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">80</span> | |
<span class="cline-any cline-yes">80</span> | |
<span class="cline-any cline-yes">80</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">255</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">80</span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">46</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">80</span> | |
<span class="cline-any cline-yes">42</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">38</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">80</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">65</span> | |
<span class="cline-any cline-yes">65</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">435</span> | |
<span class="cline-any cline-yes">435</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">10</span> | |
<span class="cline-any cline-yes">10</span> | |
<span class="cline-any cline-yes">10</span> | |
<span class="cline-any cline-yes">10</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">3037</span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">5116</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">1660</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">769</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">3305</span> | |
<span class="cline-any cline-yes">114</span> | |
<span class="cline-any cline-yes">114</span> | |
<span class="cline-any cline-yes">114</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">488</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-yes">26</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">642</span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">106</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">131</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">81</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">81</span> | |
<span class="cline-any cline-yes">8066</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">81</span> | |
<span class="cline-any cline-yes">488</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">81</span> | |
<span class="cline-any cline-yes">2696</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">81</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">849</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">137</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">137</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">137</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">137</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">1149</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">310</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">4917</span> | |
<span class="cline-any cline-yes">101</span> | |
<span class="cline-any cline-yes">101</span> | |
<span class="cline-any cline-yes">101</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">610</span> | |
<span class="cline-any cline-yes">84</span> | |
<span class="cline-any cline-yes">84</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">119</span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">423</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">51</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-yes">28</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">444</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">94</span> | |
<span class="cline-any cline-yes">94</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">239</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">107</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">107</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">107</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">132</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">132</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">243</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">395</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">470</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-yes">85</span> | |
<span class="cline-any cline-yes">85</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">127</span> | |
<span class="cline-any cline-yes">127</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">127</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">254</span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">164</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">164</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">220</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">94</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">5732</span> | |
<span class="cline-any cline-yes">64</span> | |
<span class="cline-any cline-yes">64</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">134</span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">395</span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">209</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">428</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">158</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">14</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">189</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">284</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">55</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">55</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">55</span> | |
<span class="cline-any cline-yes">55</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">55</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">16</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">161</span> | |
<span class="cline-any cline-yes">119</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">119</span> | |
<span class="cline-any cline-yes">119</span> | |
<span class="cline-any cline-yes">119</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">161</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-yes">110</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">226</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">90</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">165</span> | |
<span class="cline-any cline-yes">165</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">165</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">165</span> | |
<span class="cline-any cline-yes">38</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">165</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">165</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">165</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">306</span> | |
<span class="cline-any cline-yes">52</span> | |
<span class="cline-any cline-yes">52</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-yes">3052</span> | |
<span class="cline-any cline-yes">3052</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3052</span> | |
<span class="cline-any cline-yes">3052</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3052</span> | |
<span class="cline-any cline-yes">3052</span> | |
<span class="cline-any cline-yes">3052</span> | |
<span class="cline-any cline-yes">3052</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1241</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-yes">6697</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">75</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">90</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">63</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">75</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">75</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-yes">3052</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">105</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">370</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">126</span> | |
<span class="cline-any cline-yes">126</span> | |
<span class="cline-any cline-yes">126</span> | |
<span class="cline-any cline-yes">126</span> | |
<span class="cline-any cline-yes">126</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">304</span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">304</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">2290</span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2290</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">2290</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">98</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">98</span> | |
<span class="cline-any cline-yes">1093</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">98</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">98</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">98</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">98</span> | |
<span class="cline-any cline-yes">1093</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">98</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">98</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">196</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">196</span> | |
<span class="cline-any cline-yes">166</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">166</span> | |
<span class="cline-any cline-yes">318</span> | |
<span class="cline-any cline-yes">1910</span> | |
<span class="cline-any cline-yes">1886</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-yes">50</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">196</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">2341</span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">53</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2341</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">2341</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-yes">27</span> | |
<span class="cline-any cline-yes">27</span> | |
<span class="cline-any cline-yes">27</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-yes">27</span> | |
<span class="cline-any cline-yes">27</span> | |
<span class="cline-any cline-yes">27</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">2287</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">2287</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">370</span> | |
<span class="cline-any cline-yes">2287</span> | |
<span class="cline-any cline-yes">2287</span> | |
<span class="cline-any cline-yes">2287</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2287</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-yes">370</span> | |
<span class="cline-any cline-yes">370</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">370</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">98</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">720</span> | |
<span class="cline-any cline-yes">458</span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">458</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">49</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">454</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">421</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">412</span> | |
<span class="cline-any cline-yes">412</span> | |
<span class="cline-any cline-yes">412</span> | |
<span class="cline-any cline-yes">17</span> | |
<span class="cline-any cline-yes">412</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">136</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">136</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-yes">33</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">124</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-yes">33</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">45</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">40</span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">58</span> | |
<span class="cline-any cline-yes">58</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">78</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">40</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">34</span> | |
<span class="cline-any cline-yes">84</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">270</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">455</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">84</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">84</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">84</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">84</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">82</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">82</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">82</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">82</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">74</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-yes">79</span> | |
<span class="cline-any cline-yes">10</span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">431</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">431</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">82</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">82</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">396</span> | |
<span class="cline-any cline-yes">396</span> | |
<span class="cline-any cline-yes">396</span> | |
<span class="cline-any cline-yes">396</span> | |
<span class="cline-any cline-yes">160</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">236</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">396</span> | |
<span class="cline-any cline-yes">396</span> | |
<span class="cline-any cline-yes">171</span> | |
<span class="cline-any cline-yes">225</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">431</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">16</span> | |
<span class="cline-any cline-yes">80</span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">56</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">73</span> | |
<span class="cline-any cline-yes">351</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">478</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">20</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">80</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">89</span> | |
<span class="cline-any cline-yes">446</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">300</span> | |
<span class="cline-any cline-yes">300</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">475</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">515</span> | |
<span class="cline-any cline-yes">515</span> | |
<span class="cline-any cline-yes">195</span> | |
<span class="cline-any cline-yes">515</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">58</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">58</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">58</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">44</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">58</span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">58</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">385</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">262</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">369</span> | |
<span class="cline-any cline-yes">369</span> | |
<span class="cline-any cline-yes">369</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">369</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">369</span> | |
<span class="cline-any cline-yes">16</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">369</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">369</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">58</span> | |
<span class="cline-any cline-yes">29</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">29</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">29</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">29</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-yes">29</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">16</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">14</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-yes">21</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">93</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1918</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1918</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">93</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">93</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">308</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-yes">68</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">962</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">962</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">962</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">68</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">13</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">68</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">134</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">455</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">204</span> | |
<span class="cline-any cline-yes">44</span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">52</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-yes">466</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">466</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-yes">66</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">25</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">12</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">11</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-yes">72</span> | |
<span class="cline-any cline-yes">72</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">94</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">32</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">112</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">52</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">60</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">60</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">60</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">60</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">30</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">112</span> | |
<span class="cline-any cline-yes">112</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-yes">112</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">112</span> | |
<span class="cline-any cline-yes">112</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-yes">112</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">16</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">16</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">16</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-yes">48</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">19</span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">57</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-yes">15</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">24</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">9</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">5</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-yes">348</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">69</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3398</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3398</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3987</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">9209</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-yes">35</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-yes">1699</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-yes">62</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">41</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">8</span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-yes">7</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">2</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">4</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">72</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-yes">6</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">189</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">189</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">189</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">189</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">189</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">36</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">492</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">984</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">189</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">189</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">2079</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">171</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-yes">702</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">702</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">702</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">702</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-yes">132</span> | |
<span class="cline-any cline-yes">132</span> | |
<span class="cline-any cline-yes">597</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-yes">132</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">306</span> | |
<span class="cline-any cline-yes">264</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1194</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1194</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">264</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-yes">153</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1896</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1896</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">117</span> | |
<span class="cline-any cline-yes">117</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-yes">60</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">18</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-no"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">3</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span> | |
<span class="cline-any cline-neutral"> </span> | |
<span class="cline-any cline-yes">1</span></td><td class="text"><pre class="prettyprint lang-js">/*! | |
* dc 1.6.0-dev | |
* http://nickqizhu.github.io/dc.js/ | |
* Copyright 2012 Nick Zhu and other contributors | |
* | |
* Licensed under the Apache License, Version 2.0 (the "License"); | |
* you may not use this file except in compliance with the License. | |
* You may obtain a copy of the License at | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, software | |
* distributed under the License is distributed on an "AS IS" BASIS, | |
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
* See the License for the specific language governing permissions and | |
* limitations under the License. | |
*/ | |
| |
| |
dc = (function(){ | |
'use strict'; | |
| |
var dc = { | |
version: "1.6.0-dev", | |
constants: { | |
CHART_CLASS: "dc-chart", | |
DEBUG_GROUP_CLASS: "debug", | |
STACK_CLASS: "stack", | |
DESELECTED_CLASS: "deselected", | |
SELECTED_CLASS: "selected", | |
NODE_INDEX_NAME: "__index__", | |
GROUP_INDEX_NAME: "__group_index__", | |
DEFAULT_CHART_GROUP: "__default_chart_group__", | |
EVENT_DELAY: 40, | |
NEGLIGIBLE_NUMBER: 1e-10 | |
}, | |
_renderlet: null | |
}; | |
| |
dc.chartRegistry = function() { | |
// chartGroup:string => charts:array | |
var _chartMap = {}; | |
| |
function initializeChartGroup(group) { | |
if (!group) | |
group = dc.constants.DEFAULT_CHART_GROUP; | |
| |
if (!_chartMap[group]) | |
_chartMap[group] = []; | |
| |
return group; | |
} | |
| |
return { | |
has: function(chart) { | |
for (var e in _chartMap) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_chartMap[e].indexOf(chart) >= 0) | |
return true; | |
} | |
return false; | |
}, | |
| |
register: function(chart, group) { | |
group = initializeChartGroup(group); | |
_chartMap[group].push(chart); | |
}, | |
| |
clear: function() { | |
_chartMap = {}; | |
}, | |
| |
list: function(group) { | |
group = initializeChartGroup(group); | |
return _chartMap[group]; | |
} | |
}; | |
}(); | |
| |
dc.registerChart = function(chart, group) { | |
dc.chartRegistry.register(chart, group); | |
}; | |
| |
dc.hasChart = function(chart) { | |
return dc.chartRegistry.has(chart); | |
}; | |
| |
dc.deregisterAllCharts = function() { | |
dc.chartRegistry.clear(); | |
}; | |
| |
dc.filterAll = function(group) { | |
var charts = dc.chartRegistry.list(group); | |
for (var i = 0; i < charts.length; ++i) { | |
charts[i].filterAll(); | |
} | |
}; | |
| |
dc.renderAll = function(group) { | |
var charts = dc.chartRegistry.list(group); | |
for (var i = 0; i < charts.length; ++i) { | |
charts[i].render(); | |
} | |
| |
if(dc._renderlet !== null) | |
dc._renderlet(group); | |
}; | |
| |
dc.redrawAll = function(group) { | |
var charts = dc.chartRegistry.list(group); | |
for (var i = 0; i < charts.length; ++i) { | |
charts[i].redraw(); | |
} | |
| |
if(dc._renderlet !== null) | |
dc._renderlet(group); | |
}; | |
| |
dc.transition = function(selections, duration, callback) { | |
if (duration <= 0 || duration === undefined) | |
return selections; | |
| |
var s = selections | |
.transition() | |
.duration(duration); | |
| |
if (callback instanceof Function) { | |
callback(s); | |
} | |
| |
return s; | |
}; | |
| |
dc.units = {}; | |
dc.units.integers = function(s, e) { | |
return Math.abs(e - s); | |
}; | |
| |
dc.units.ordinal = function(s, e, domain){ | |
return domain; | |
}; | |
dc.units.fp = {}; | |
dc.units.fp.precision = function(precision){ | |
var _f = function(s, e){return Math.ceil(Math.abs((e-s)/_f.resolution));}; | |
_f.resolution = precision; | |
return _f; | |
}; | |
| |
dc.round = {}; | |
dc.round.floor = function(n) { | |
return Math.floor(n); | |
}; | |
dc.round.ceil = <span class="fstat-no" title="function not covered" >function(n) {</span> | |
<span class="cstat-no" title="statement not covered" > return Math.ceil(n);</span> | |
}; | |
dc.round.round = <span class="fstat-no" title="function not covered" >function(n) {</span> | |
<span class="cstat-no" title="statement not covered" > return Math.round(n);</span> | |
}; | |
| |
dc.override = function(obj, functionName, newFunction) { | |
var existingFunction = obj[functionName]; | |
obj["_" + functionName] = existingFunction; | |
obj[functionName] = newFunction; | |
}; | |
| |
dc.renderlet = function(_){ | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if(!arguments.length) <span class="cstat-no" title="statement not covered" >return dc._renderlet;</span> | |
dc._renderlet = _; | |
return dc; | |
}; | |
| |
dc.instanceOfChart = function (o) { | |
return o instanceof Object && o.__dc_flag__; | |
}; | |
| |
dc.errors = {}; | |
| |
dc.errors.Exception = function(msg) { | |
var _msg = msg !== undefined ? msg : <span class="branch-1 cbranch-no" title="branch not covered" >"Unexpected internal error";</span> | |
| |
this.message = _msg; | |
| |
this.toString = function(){ | |
return _msg; | |
}; | |
}; | |
| |
dc.errors.InvalidStateException = function() { | |
dc.errors.Exception.apply(this, arguments); | |
}; | |
| |
dc.dateFormat = d3.time.format("%m/%d/%Y"); | |
| |
dc.printers = {}; | |
| |
dc.printers.filters = function (filters) { | |
var s = ""; | |
| |
for (var i = 0; i < filters.length; ++i) { | |
if (i > 0) s += ", "; | |
s += dc.printers.filter(filters[i]); | |
} | |
| |
return s; | |
}; | |
| |
dc.printers.filter = function (filter) { | |
var s = ""; | |
| |
if (filter) { | |
if (filter instanceof Array) { | |
if (filter.length >= 2) | |
s = "[" + dc.utils.printSingleValue(filter[0]) + " -> " + dc.utils.printSingleValue(filter[1]) + "]"; | |
else <span class="missing-if-branch" title="else path not taken"" >E</span>if (filter.length >= 1) | |
s = dc.utils.printSingleValue(filter[0]); | |
} else { | |
s = dc.utils.printSingleValue(filter); | |
} | |
} | |
| |
return s; | |
}; | |
| |
dc.utils = {}; | |
| |
dc.utils.printSingleValue = function (filter) { | |
var s = "" + filter; | |
| |
if (filter instanceof Date) | |
s = dc.dateFormat(filter); | |
else if (typeof(filter) == "string") | |
s = filter; | |
else if (dc.utils.isFloat(filter)) | |
s = dc.utils.printSingleValue.fformat(filter); | |
else <span class="missing-if-branch" title="else path not taken"" >E</span>if (dc.utils.isInteger(filter)) | |
s = Math.round(filter); | |
| |
return s; | |
}; | |
dc.utils.printSingleValue.fformat = d3.format(".2f"); | |
| |
dc.utils.add = function (l, r) { | |
if (typeof r === "string") | |
r = r.replace("%", ""); | |
| |
if (l instanceof Date) { | |
if (typeof r === "string") r = +r; | |
var d = new Date(); | |
d.setTime(l.getTime()); | |
d.setDate(l.getDate() + r); | |
return d; | |
} else if (typeof r === "string") { | |
var percentage = (+r / 100); | |
return l > 0 ? l * (1 + percentage) : l * (1 - percentage); | |
} else { | |
return l + r; | |
} | |
}; | |
| |
dc.utils.subtract = function (l, r) { | |
if (typeof r === "string") | |
r = r.replace("%", ""); | |
| |
if (l instanceof Date) { | |
if (typeof r === "string") r = +r; | |
var d = new Date(); | |
d.setTime(l.getTime()); | |
d.setDate(l.getDate() - r); | |
return d; | |
} else if (typeof r === "string") { | |
var percentage = (+r / 100); | |
return l < 0 ? l * (1 + percentage) : l * (1 - percentage); | |
} else { | |
return l - r; | |
} | |
}; | |
| |
dc.utils.GroupStack = function () { | |
var _dataLayers = []; | |
var _groups = []; | |
var _defaultAccessor; | |
| |
function initializeDataLayer(i) { | |
if (!_dataLayers[i]) | |
_dataLayers[i] = []; | |
} | |
| |
this.setDataPoint = function (layerIndex, pointIndex, data) { | |
initializeDataLayer(layerIndex); | |
_dataLayers[layerIndex][pointIndex] = data; | |
}; | |
| |
this.getDataPoint = function (x, y) { | |
initializeDataLayer(x); | |
var dataPoint = _dataLayers[x][y]; | |
if (dataPoint === undefined) | |
dataPoint = 0; | |
return dataPoint; | |
}; | |
| |
this.addGroup = function (group, accessor) { | |
if (!accessor) | |
accessor = _defaultAccessor; | |
_groups.push([group, accessor]); | |
return _groups.length - 1; | |
}; | |
| |
this.getGroupByIndex = function (index) { | |
return _groups[index][0]; | |
}; | |
| |
this.getAccessorByIndex = function (index) { | |
return _groups[index][1]; | |
}; | |
| |
this.size = function () { | |
return _groups.length; | |
}; | |
| |
this.clear = function () { | |
_dataLayers = []; | |
_groups = []; | |
}; | |
| |
this.setDefaultAccessor = function (retriever) { | |
_defaultAccessor = retriever; | |
}; | |
| |
this.getDataLayers = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > return _dataLayers;</span> | |
}; | |
| |
this.toLayers = function () { | |
var layers = []; | |
| |
for (var i = 0; i < _dataLayers.length; ++i) { | |
var layer = {index: i, points: []}; | |
var dataPoints = _dataLayers[i]; | |
| |
for (var j = 0; j < dataPoints.length; ++j) | |
layer.points.push(dataPoints[j]); | |
| |
layers.push(layer); | |
} | |
| |
return layers; | |
}; | |
}; | |
| |
dc.utils.isFloat = function (n) { | |
return n===+n && n!==(n|0); | |
}; | |
| |
dc.utils.isInteger = function (n) { | |
return n===+n && n===(n|0); | |
}; | |
| |
dc.utils.isNegligible = function (max) { | |
return max === undefined || (max < dc.constants.NEGLIGIBLE_NUMBER && max > -dc.constants.NEGLIGIBLE_NUMBER); | |
}; | |
| |
dc.utils.groupMax = function (group, accessor) { | |
var max = d3.max(group.all(), function (e) { | |
return accessor(e); | |
}); | |
if (dc.utils.isNegligible(max)) max = 0; | |
return max; | |
}; | |
| |
dc.utils.groupMin = function (group, accessor) { | |
var min = d3.min(group.all(), function (e) { | |
return accessor(e); | |
}); | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (dc.utils.isNegligible(min)) <span class="cstat-no" title="statement not covered" >min = 0;</span> | |
return min; | |
}; | |
| |
dc.utils.nameToId = function (name) { | |
return name.toLowerCase().replace(/[\s]/g, "_").replace(/[\.']/g, ""); | |
}; | |
| |
dc.utils.appendOrSelect = function (parent, name) { | |
var element = parent.select(name); | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (element.empty()) element = parent.append(name); | |
return element; | |
}; | |
| |
dc.utils.createLegendable = function (chart, group, index, accessor) { | |
var legendable = {name: chart.getGroupName(group, accessor), data: group}; | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (typeof chart.colors === 'function') legendable.color = chart.colors()(index); | |
return legendable; | |
}; | |
| |
dc.utils.safeNumber = function(n){return isNaN(n)?<span class="branch-0 cbranch-no" title="branch not covered" >0:</span>n;}; | |
| |
dc.events = { | |
current: null | |
}; | |
| |
dc.events.trigger = function(closure, delay) { | |
if (!delay){ | |
closure(); | |
return; | |
} | |
| |
dc.events.current = closure; | |
| |
setTimeout(<span class="fstat-no" title="function not covered" >function() {</span> | |
<span class="cstat-no" title="statement not covered" > if (closure == dc.events.current)</span> | |
<span class="cstat-no" title="statement not covered" > closure();</span> | |
}, delay); | |
}; | |
| |
dc.cumulative = {}; | |
| |
dc.cumulative.Base = function() { | |
this._keyIndex = []; | |
this._map = {}; | |
| |
this.sanitizeKey = function(key) { | |
key = key + ""; | |
return key; | |
}; | |
| |
this.clear = function() { | |
this._keyIndex = []; | |
this._map = {}; | |
}; | |
| |
this.size = function() { | |
return this._keyIndex.length; | |
}; | |
| |
this.getValueByKey = function(key) { | |
key = this.sanitizeKey(key); | |
var value = this._map[key]; | |
return value; | |
}; | |
| |
this.setValueByKey = function(key, value) { | |
key = this.sanitizeKey(key); | |
return this._map[key] = value; | |
}; | |
| |
this.indexOfKey = function(key) { | |
key = this.sanitizeKey(key); | |
return this._keyIndex.indexOf(key); | |
}; | |
| |
this.addToIndex = function(key) { | |
key = this.sanitizeKey(key); | |
this._keyIndex.push(key); | |
}; | |
| |
this.getKeyByIndex = function(index) { | |
return this._keyIndex[index]; | |
}; | |
}; | |
| |
dc.cumulative.Sum = function() { | |
dc.cumulative.Base.apply(this, arguments); | |
| |
this.add = function(key, value) { | |
if (!value) | |
value = 0; | |
| |
if (this.getValueByKey(key) === undefined) { | |
this.addToIndex(key); | |
this.setValueByKey(key, value); | |
} else { | |
this.setValueByKey(key, this.getValueByKey(key) + value); | |
} | |
}; | |
| |
this.minus = function(key, value) { | |
this.setValueByKey(key, this.getValueByKey(key) - value); | |
}; | |
| |
this.cumulativeSum = function(key) { | |
var keyIndex = this.indexOfKey(key); | |
if (keyIndex < 0) return 0; | |
var cumulativeValue = 0; | |
for (var i = 0; i <= keyIndex; ++i) { | |
var k = this.getKeyByIndex(i); | |
cumulativeValue += this.getValueByKey(k); | |
} | |
return cumulativeValue; | |
}; | |
}; | |
dc.cumulative.Sum.prototype = new dc.cumulative.Base(); | |
| |
dc.cumulative.CountUnique = function() { | |
dc.cumulative.Base.apply(this, arguments); | |
| |
function hashSize(hash) { | |
var size = 0, key; | |
for (key in hash) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (hash.hasOwnProperty(key)) size++; | |
} | |
return size; | |
} | |
| |
this.add = function(key, e) { | |
if (this.getValueByKey(key) === undefined) { | |
this.setValueByKey(key, {}); | |
this.addToIndex(key); | |
} | |
| |
if (e !== undefined) { | |
if (this.getValueByKey(key)[e] === undefined) | |
this.getValueByKey(key)[e] = 0; | |
| |
this.getValueByKey(key)[e] += 1; | |
} | |
}; | |
| |
this.minus = function(key, e) { | |
this.getValueByKey(key)[e] -= 1; | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (this.getValueByKey(key)[e] <= 0) | |
delete this.getValueByKey(key)[e]; | |
}; | |
| |
this.count = function(key) { | |
return hashSize(this.getValueByKey(key)); | |
}; | |
| |
this.cumulativeCount = function(key) { | |
var keyIndex = this.indexOfKey(key); | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (keyIndex < 0) <span class="cstat-no" title="statement not covered" >return 0;</span> | |
var cumulativeCount = 0; | |
for (var i = 0; i <= keyIndex; ++i) { | |
var k = this.getKeyByIndex(i); | |
cumulativeCount += this.count(k); | |
} | |
return cumulativeCount; | |
}; | |
}; | |
dc.cumulative.CountUnique.prototype = new dc.cumulative.Base(); | |
| |
dc.baseChart = function (_chart) { | |
_chart.__dc_flag__ = true; | |
| |
var _dimension; | |
var _group; | |
| |
var _anchor; | |
var _root; | |
var _svg; | |
| |
var _width = 200, _height = 200; | |
| |
var _keyAccessor = function (d) { | |
return d.key; | |
}; | |
var _valueAccessor = function (d) { | |
return d.value; | |
}; | |
| |
var _label = function (d) { | |
return d.key; | |
}; | |
var _renderLabel = false; | |
| |
var _title = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > return d.key + ": " + d.value;</span> | |
}; | |
var _renderTitle = false; | |
| |
var _transitionDuration = 750; | |
| |
var _filterPrinter = dc.printers.filters; | |
| |
var _renderlets = []; | |
| |
var _chartGroup = dc.constants.DEFAULT_CHART_GROUP; | |
| |
var NULL_LISTENER = function (chart) { | |
}; | |
var _listeners = { | |
preRender: NULL_LISTENER, | |
postRender: NULL_LISTENER, | |
preRedraw: NULL_LISTENER, | |
postRedraw: NULL_LISTENER, | |
filtered: NULL_LISTENER, | |
zoomed: NULL_LISTENER | |
}; | |
var _legend; | |
| |
var _filters = []; | |
var _filterHandler = function (dimension, filters) { | |
dimension.filter(null); | |
| |
if (filters.length === 0) | |
dimension.filter(null); | |
else if (filters.length === 1) | |
dimension.filter(filters[0]); | |
else | |
dimension.filterFunction(function (d) { | |
return filters.indexOf(d) >= 0; | |
}); | |
| |
return filters; | |
}; | |
| |
_chart.width = function (w) { | |
if (!arguments.length) return _width; | |
_width = w; | |
return _chart; | |
}; | |
| |
_chart.height = function (h) { | |
if (!arguments.length) return _height; | |
_height = h; | |
return _chart; | |
}; | |
| |
_chart.dimension = function (d) { | |
if (!arguments.length) return _dimension; | |
_dimension = d; | |
_chart.expireCache(); | |
return _chart; | |
}; | |
| |
_chart.group = function (g, name) { | |
if (!arguments.length) return _group; | |
_group = g; | |
_chart.expireCache(); | |
if (typeof name === 'string') _chart.setGroupName(_group, name); | |
return _chart; | |
}; | |
| |
_chart.setGroupName = function (g, name, accessor) { | |
if (!g.__names__) g.__names__ = {}; | |
g.__names__[groupNameKey(accessor)] = name; | |
}; | |
| |
function groupNameKey(accessor) { | |
var defaultKey = "default"; | |
return accessor ? (accessor == _chart.valueAccessor() ? defaultKey : accessor) : defaultKey; | |
} | |
| |
_chart.getGroupName = function (g, accessor) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!g.__names__) <span class="cstat-no" title="statement not covered" >g.__names__ = {};</span> | |
return g.__names__[groupNameKey(accessor)]; | |
}; | |
| |
_chart.orderedGroup = function () { | |
return _group.order(function (p) { | |
return p.key; | |
}); | |
}; | |
| |
_chart.filterAll = function () { | |
return _chart.filter(null); | |
}; | |
| |
_chart.dataSet = function () { | |
return _dimension !== undefined && _group !== undefined; | |
}; | |
| |
_chart.select = function (s) { | |
return _root.select(s); | |
}; | |
| |
_chart.selectAll = function (s) { | |
return _root ? _root.selectAll(s) : <span class="branch-1 cbranch-no" title="branch not covered" >null;</span> | |
}; | |
| |
_chart.anchor = function (a, chartGroup) { | |
if (!arguments.length) return _anchor; | |
if (dc.instanceOfChart(a)) { | |
_anchor = a.anchor(); | |
_root = a.root(); | |
} else { | |
_anchor = a; | |
_root = d3.select(_anchor); | |
_root.classed(dc.constants.CHART_CLASS, true); | |
dc.registerChart(_chart, chartGroup); | |
} | |
_chartGroup = chartGroup; | |
return _chart; | |
}; | |
| |
_chart.anchorName = function () { | |
var a = _chart.anchor(); | |
if (a && a.id) return a.id; | |
if (a) return a.replace('#',''); | |
return ''; | |
}; | |
| |
_chart.root = function (r) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (!arguments.length) return _root; | |
<span class="cstat-no" title="statement not covered" > _root = r;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.svg = function (_) { | |
if (!arguments.length) return _svg; | |
_svg = _; | |
return _chart; | |
}; | |
| |
_chart.resetSvg = function () { | |
_chart.select("svg").remove(); | |
return _chart.generateSvg(); | |
}; | |
| |
_chart.generateSvg = function () { | |
_svg = _chart.root().append("svg") | |
.attr("width", _chart.width()) | |
.attr("height", _chart.height()); | |
return _svg; | |
}; | |
| |
_chart.filterPrinter = function (_) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (!arguments.length) return _filterPrinter; | |
<span class="cstat-no" title="statement not covered" > _filterPrinter = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.turnOnControls = function () { | |
if (_root) { | |
_chart.selectAll(".reset").style("display", null); | |
_chart.selectAll(".filter").text(_filterPrinter(_chart.filters())).style("display", null); | |
} | |
return _chart; | |
}; | |
| |
_chart.turnOffControls = function () { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_root) { | |
_chart.selectAll(".reset").style("display", "none"); | |
_chart.selectAll(".filter").style("display", "none").text(_chart.filter()); | |
} | |
return _chart; | |
}; | |
| |
_chart.transitionDuration = function (d) { | |
if (!arguments.length) return _transitionDuration; | |
_transitionDuration = d; | |
return _chart; | |
}; | |
| |
_chart.render = function () { | |
_listeners.preRender(_chart); | |
| |
if (_dimension === undefined) | |
throw new dc.errors.InvalidStateException("Mandatory attribute chart.dimension is missing on chart[#" | |
+ _chart.anchorName() + "]"); | |
| |
if (_group === undefined) | |
throw new dc.errors.InvalidStateException("Mandatory attribute chart.group is missing on chart[#" | |
+ _chart.anchorName() + "]"); | |
| |
var result = _chart.doRender(); | |
| |
if (_legend) _legend.render(); | |
| |
_chart.activateRenderlets("postRender"); | |
| |
return result; | |
}; | |
| |
_chart.activateRenderlets = function (event) { | |
if (_chart.transitionDuration() > 0 && _svg) { | |
_svg.transition().duration(_chart.transitionDuration()) | |
.each("end", <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > runAllRenderlets();</span> | |
<span class="cstat-no" title="statement not covered" > if (event) <span class="cstat-no" title="statement not covered" >_listeners[event](_chart);</span></span> | |
}); | |
} else { | |
runAllRenderlets(); | |
if (event) _listeners[event](_chart); | |
} | |
}; | |
| |
_chart.redraw = function () { | |
_listeners.preRedraw(_chart); | |
| |
var result = _chart.doRedraw(); | |
| |
_chart.activateRenderlets("postRedraw"); | |
| |
return result; | |
}; | |
| |
_chart.invokeFilteredListener = function (f) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (f !== undefined) _listeners.filtered(_chart, f); | |
}; | |
| |
_chart.invokeZoomedListener = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > _listeners.zoomed(_chart);</span> | |
}; | |
| |
_chart.hasFilter = function (filter) { | |
if (!arguments.length) return _filters.length > 0; | |
return _filters.indexOf(filter) >= 0; | |
}; | |
| |
function removeFilter(_) { | |
_filters.splice(_filters.indexOf(_), 1); | |
applyFilters(); | |
_chart.invokeFilteredListener(_); | |
} | |
| |
function addFilter(_) { | |
_filters.push(_); | |
applyFilters(); | |
_chart.invokeFilteredListener(_); | |
} | |
| |
function resetFilters() { | |
_filters = []; | |
applyFilters(); | |
_chart.invokeFilteredListener(null); | |
} | |
| |
function applyFilters() { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_chart.dataSet() && _chart.dimension().filter !== undefined) { | |
var fs = _filterHandler(_chart.dimension(), _filters); | |
_filters = fs ? fs : <span class="branch-1 cbranch-no" title="branch not covered" >_filters;</span> | |
} | |
} | |
| |
_chart.filter = function (_) { | |
if (!arguments.length) return _filters.length > 0 ? _filters[0] : null; | |
| |
if (_ === null) { | |
resetFilters(); | |
} else { | |
if (_chart.hasFilter(_)) | |
removeFilter(_); | |
else | |
addFilter(_); | |
} | |
| |
if (_root !== null && _chart.hasFilter()) { | |
_chart.turnOnControls(); | |
} else { | |
_chart.turnOffControls(); | |
} | |
| |
return _chart; | |
}; | |
| |
_chart.filters = function () { | |
return _filters; | |
}; | |
| |
_chart.highlightSelected = function (e) { | |
d3.select(e).classed(dc.constants.SELECTED_CLASS, true); | |
d3.select(e).classed(dc.constants.DESELECTED_CLASS, false); | |
}; | |
| |
_chart.fadeDeselected = function (e) { | |
d3.select(e).classed(dc.constants.SELECTED_CLASS, false); | |
d3.select(e).classed(dc.constants.DESELECTED_CLASS, true); | |
}; | |
| |
_chart.resetHighlight = function (e) { | |
d3.select(e).classed(dc.constants.SELECTED_CLASS, false); | |
d3.select(e).classed(dc.constants.DESELECTED_CLASS, false); | |
}; | |
| |
_chart.onClick = function (d) { | |
var filter = _chart.keyAccessor()(d); | |
dc.events.trigger(function () { | |
_chart.filter(filter); | |
dc.redrawAll(_chart.chartGroup()); | |
}); | |
}; | |
| |
_chart.filterHandler = function (_) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _filterHandler;</span> | |
_filterHandler = _; | |
return _chart; | |
}; | |
| |
// abstract function stub | |
_chart.doRender = function () { | |
// do nothing in base, should be overridden by sub-function | |
return _chart; | |
}; | |
| |
_chart.doRedraw = function () { | |
// do nothing in base, should be overridden by sub-function | |
return _chart; | |
}; | |
| |
_chart.legendables = <span class="fstat-no" title="function not covered" >function () {</span> | |
// do nothing in base, should be overridden by sub-function | |
<span class="cstat-no" title="statement not covered" > return [];</span> | |
}; | |
| |
_chart.legendHighlight = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
// do nothing in base, should be overridden by sub-function | |
}; | |
| |
_chart.legendReset = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
// do nothing in base, should be overridden by sub-function | |
}; | |
| |
_chart.keyAccessor = function (_) { | |
if (!arguments.length) return _keyAccessor; | |
_keyAccessor = _; | |
return _chart; | |
}; | |
| |
_chart.valueAccessor = function (_) { | |
if (!arguments.length) return _valueAccessor; | |
_valueAccessor = _; | |
return _chart; | |
}; | |
| |
_chart.label = function (_) { | |
if (!arguments.length) return _label; | |
_label = _; | |
_renderLabel = true; | |
return _chart; | |
}; | |
| |
_chart.renderLabel = function (_) { | |
if (!arguments.length) return _renderLabel; | |
_renderLabel = _; | |
return _chart; | |
}; | |
| |
_chart.title = function (_) { | |
if (!arguments.length) return _title; | |
_title = _; | |
_renderTitle = true; | |
return _chart; | |
}; | |
| |
_chart.renderTitle = function (_) { | |
if (!arguments.length) return _renderTitle; | |
_renderTitle = _; | |
return _chart; | |
}; | |
| |
_chart.renderlet = function (_) { | |
_renderlets.push(_); | |
return _chart; | |
}; | |
| |
function runAllRenderlets() { | |
for (var i = 0; i < _renderlets.length; ++i) { | |
_renderlets[i](_chart); | |
} | |
} | |
| |
_chart.chartGroup = function (_) { | |
if (!arguments.length) return _chartGroup; | |
_chartGroup = _; | |
return _chart; | |
}; | |
| |
_chart.on = function (event, listener) { | |
_listeners[event] = listener; | |
return _chart; | |
}; | |
| |
_chart.expireCache = function () { | |
// do nothing in base, should be overridden by sub-function | |
return _chart; | |
}; | |
| |
_chart.legend = function (l) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _legend;</span> | |
_legend = l; | |
_legend.parent(_chart); | |
return _chart; | |
}; | |
| |
return _chart; | |
}; | |
| |
dc.marginable = function (_chart) { | |
var _margin = {top: 10, right: 50, bottom: 30, left: 30}; | |
| |
_chart.margins = function (m) { | |
if (!arguments.length) return _margin; | |
_margin = m; | |
return _chart; | |
}; | |
| |
_chart.effectiveWidth = function () { | |
return _chart.width() - _chart.margins().left - _chart.margins().right; | |
}; | |
| |
_chart.effectiveHeight = function () { | |
return _chart.height() - _chart.margins().top - _chart.margins().bottom; | |
}; | |
| |
return _chart; | |
}; | |
| |
dc.coordinateGridChart = function (_chart) { | |
var GRID_LINE_CLASS = "grid-line"; | |
var HORIZONTAL_CLASS = "horizontal"; | |
var VERTICAL_CLASS = "vertical"; | |
| |
| |
_chart = dc.colorChart(dc.marginable(dc.baseChart(_chart))); | |
| |
_chart.colors(d3.scale.category10()); | |
| |
var _parent; | |
var _g; | |
var _chartBodyG; | |
| |
var _x; | |
var _xOriginalDomain; | |
var _xAxis = d3.svg.axis(); | |
var _xUnits = dc.units.integers; | |
var _xAxisPadding = 0; | |
var _xElasticity = false; | |
| |
var _y; | |
var _yAxis = d3.svg.axis(); | |
var _yAxisPadding = 0; | |
var _yElasticity = false; | |
| |
var _brush = d3.svg.brush(); | |
var _brushOn = true; | |
var _round; | |
| |
var _renderHorizontalGridLine = false; | |
var _renderVerticalGridLine = false; | |
| |
var _refocused = false; | |
var _unitCount; | |
| |
var _rangeChart; | |
var _focusChart; | |
| |
var _mouseZoomable = false; | |
var _clipPadding = 0; | |
| |
_chart.title(function (d) { | |
return d.data.key + ": " + d.data.value; | |
}); | |
| |
_chart.rescale = function () { | |
_unitCount = undefined; | |
_chart.xUnitCount(); | |
}; | |
| |
_chart.rangeChart = <span class="fstat-no" title="function not covered" >function (_) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _rangeChart;</span></span> | |
<span class="cstat-no" title="statement not covered" > _rangeChart = _;</span> | |
<span class="cstat-no" title="statement not covered" > _rangeChart.focusChart(_chart);</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.generateG = function (parent) { | |
if (parent === undefined) | |
_parent = _chart.svg(); | |
else | |
_parent = parent; | |
| |
_g = _parent.append("g"); | |
| |
_chartBodyG = _g.append("g").attr("class", "chart-body") | |
.attr("transform", "translate(" + _chart.margins().left + ", " + _chart.margins().top + ")") | |
.attr("clip-path", "url(#" + getClipPathId() + ")"); | |
| |
return _g; | |
}; | |
| |
_chart.g = function (_) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (!arguments.length) return _g; | |
<span class="cstat-no" title="statement not covered" > _g = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.mouseZoomable = <span class="fstat-no" title="function not covered" >function (z) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _mouseZoomable;</span></span> | |
<span class="cstat-no" title="statement not covered" > _mouseZoomable = z;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.chartBodyG = function (_) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (!arguments.length) return _chartBodyG; | |
<span class="cstat-no" title="statement not covered" > _chartBodyG = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.x = function (_) { | |
if (!arguments.length) return _x; | |
_x = _; | |
_xOriginalDomain = _x.domain(); | |
return _chart; | |
}; | |
| |
_chart.xOriginalDomain = function () { | |
return _xOriginalDomain; | |
}; | |
| |
_chart.xUnits = function (_) { | |
if (!arguments.length) return _xUnits; | |
_xUnits = _; | |
return _chart; | |
}; | |
| |
_chart.xAxis = function (_) { | |
if (!arguments.length) return _xAxis; | |
_xAxis = _; | |
return _chart; | |
}; | |
| |
_chart.elasticX = function (_) { | |
if (!arguments.length) return _xElasticity; | |
_xElasticity = _; | |
return _chart; | |
}; | |
| |
_chart.xAxisPadding = function (_) { | |
if (!arguments.length) return _xAxisPadding; | |
_xAxisPadding = _; | |
return _chart; | |
}; | |
| |
_chart.xUnitCount = function () { | |
if (_unitCount === undefined) { | |
var units = _chart.xUnits()(_chart.x().domain()[0], _chart.x().domain()[1], _chart.x().domain()); | |
| |
if (units instanceof Array) | |
_unitCount = units.length; | |
else | |
_unitCount = units; | |
} | |
| |
return _unitCount; | |
}; | |
| |
_chart.isOrdinal = function () { | |
return _chart.xUnits() === dc.units.ordinal; | |
}; | |
| |
_chart.prepareOrdinalXAxis = function (count) { | |
if (!count) | |
count = _chart.xUnitCount(); | |
var range = []; | |
var currentPosition = 0; | |
var increment = _chart.xAxisLength() / count; | |
for (var i = 0; i < count; i++) { | |
range[i] = currentPosition; | |
currentPosition += increment; | |
} | |
_x.range(range); | |
}; | |
| |
function prepareXAxis(g) { | |
if (_chart.elasticX() && !_chart.isOrdinal()) { | |
_x.domain([_chart.xAxisMin(), _chart.xAxisMax()]); | |
} | |
| |
if (_chart.isOrdinal()) { | |
_chart.prepareOrdinalXAxis(); | |
} else { | |
_x.range([0, _chart.xAxisLength()]); | |
} | |
| |
_xAxis = _xAxis.scale(_chart.x()).orient("bottom"); | |
| |
renderVerticalGridLines(g); | |
} | |
| |
_chart.renderXAxis = function (g) { | |
var axisXG = g.selectAll("g.x"); | |
| |
if (axisXG.empty()) | |
axisXG = g.append("g") | |
.attr("class", "axis x") | |
.attr("transform", "translate(" + _chart.margins().left + "," + _chart.xAxisY() + ")"); | |
| |
dc.transition(axisXG, _chart.transitionDuration()) | |
.call(_xAxis); | |
}; | |
| |
function renderVerticalGridLines(g) { | |
var gridLineG = g.selectAll("g." + VERTICAL_CLASS); | |
| |
if (_renderVerticalGridLine) { | |
if (gridLineG.empty()) | |
gridLineG = g.insert("g", ":first-child") | |
.attr("class", GRID_LINE_CLASS + " " + VERTICAL_CLASS) | |
.attr("transform", "translate(" + _chart.yAxisX() + "," + _chart.margins().top + ")"); | |
| |
var ticks = _xAxis.tickValues() ? <span class="branch-0 cbranch-no" title="branch not covered" >_xAxis.tickValues() </span>: _x.ticks(_xAxis.ticks()[0]); | |
| |
var lines = gridLineG.selectAll("line") | |
.data(ticks); | |
| |
// enter | |
var linesGEnter = lines.enter() | |
.append("line") | |
.attr("x1", function (d) { | |
return _x(d); | |
}) | |
.attr("y1", _chart.xAxisY() - _chart.margins().top) | |
.attr("x2", function (d) { | |
return _x(d); | |
}) | |
.attr("y2", 0) | |
.attr("opacity", 0); | |
dc.transition(linesGEnter, _chart.transitionDuration()) | |
.attr("opacity", 1); | |
| |
// update | |
dc.transition(lines, _chart.transitionDuration()) | |
.attr("x1", function (d) { | |
return _x(d); | |
}) | |
.attr("y1", _chart.xAxisY() - _chart.margins().top) | |
.attr("x2", function (d) { | |
return _x(d); | |
}) | |
.attr("y2", 0); | |
| |
// exit | |
lines.exit().remove(); | |
} | |
else { | |
gridLineG.selectAll("line").remove(); | |
} | |
} | |
| |
_chart.xAxisY = function () { | |
return (_chart.height() - _chart.margins().bottom); | |
}; | |
| |
_chart.xAxisLength = function () { | |
return _chart.effectiveWidth(); | |
}; | |
| |
function prepareYAxis(g) { | |
if (_y === undefined || _chart.elasticY()) { | |
_y = d3.scale.linear(); | |
_y.domain([_chart.yAxisMin(), _chart.yAxisMax()]).rangeRound([_chart.yAxisHeight(), 0]); | |
} | |
| |
_y.range([_chart.yAxisHeight(), 0]); | |
_yAxis = _yAxis.scale(_y).orient("left"); | |
| |
renderHorizontalGridLines(g); | |
} | |
| |
_chart.renderYAxis = function (g) { | |
var axisYG = g.selectAll("g.y"); | |
if (axisYG.empty()) | |
axisYG = g.append("g") | |
.attr("class", "axis y") | |
.attr("transform", "translate(" + _chart.yAxisX() + "," + _chart.margins().top + ")"); | |
| |
dc.transition(axisYG, _chart.transitionDuration()) | |
.call(_yAxis); | |
}; | |
| |
| |
function renderHorizontalGridLines(g) { | |
var gridLineG = g.selectAll("g." + HORIZONTAL_CLASS); | |
if (_renderHorizontalGridLine) { | |
var ticks = _yAxis.tickValues() ? _yAxis.tickValues() : _y.ticks(_yAxis.ticks()[0]); | |
| |
if (gridLineG.empty()) | |
gridLineG = g.insert("g", ":first-child") | |
.attr("class", GRID_LINE_CLASS + " " + HORIZONTAL_CLASS) | |
.attr("transform", "translate(" + _chart.yAxisX() + "," + _chart.margins().top + ")"); | |
| |
var lines = gridLineG.selectAll("line") | |
.data(ticks); | |
| |
// enter | |
var linesGEnter = lines.enter() | |
.append("line") | |
.attr("x1", 1) | |
.attr("y1", function (d) { | |
return _y(d); | |
}) | |
.attr("x2", _chart.xAxisLength()) | |
.attr("y2", function (d) { | |
return _y(d); | |
}) | |
.attr("opacity", 0); | |
dc.transition(linesGEnter, _chart.transitionDuration()) | |
.attr("opacity", 1); | |
| |
// update | |
dc.transition(lines, _chart.transitionDuration()) | |
.attr("x1", 1) | |
.attr("y1", function (d) { | |
return _y(d); | |
}) | |
.attr("x2", _chart.xAxisLength()) | |
.attr("y2", function (d) { | |
return _y(d); | |
}); | |
| |
// exit | |
lines.exit().remove(); | |
} | |
else { | |
gridLineG.selectAll("line").remove(); | |
} | |
} | |
| |
_chart.yAxisX = function () { | |
return _chart.margins().left; | |
}; | |
| |
_chart.y = function (_) { | |
if (!arguments.length) return _y; | |
_y = _; | |
return _chart; | |
}; | |
| |
_chart.yAxis = function (y) { | |
if (!arguments.length) return _yAxis; | |
_yAxis = y; | |
return _chart; | |
}; | |
| |
_chart.elasticY = function (_) { | |
if (!arguments.length) return _yElasticity; | |
_yElasticity = _; | |
return _chart; | |
}; | |
| |
_chart.renderHorizontalGridLines = function (_) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _renderHorizontalGridLine;</span> | |
_renderHorizontalGridLine = _; | |
return _chart; | |
}; | |
| |
_chart.renderVerticalGridLines = function (_) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _renderVerticalGridLine;</span> | |
_renderVerticalGridLine = _; | |
return _chart; | |
}; | |
| |
_chart.xAxisMin = function () { | |
var min = d3.min(_chart.group().all(), function (e) { | |
return _chart.keyAccessor()(e); | |
}); | |
return dc.utils.subtract(min, _xAxisPadding); | |
}; | |
| |
_chart.xAxisMax = function () { | |
var max = d3.max(_chart.group().all(), function (e) { | |
return _chart.keyAccessor()(e); | |
}); | |
return dc.utils.add(max, _xAxisPadding); | |
}; | |
| |
_chart.yAxisMin = function () { | |
var min = d3.min(_chart.group().all(), function (e) { | |
return _chart.valueAccessor()(e); | |
}); | |
min = dc.utils.subtract(min, _yAxisPadding); | |
return min; | |
}; | |
| |
_chart.yAxisMax = function () { | |
var max = d3.max(_chart.group().all(), function (e) { | |
return _chart.valueAccessor()(e); | |
}); | |
max = dc.utils.add(max, _yAxisPadding); | |
return max; | |
}; | |
| |
_chart.yAxisPadding = function (_) { | |
if (!arguments.length) return _yAxisPadding; | |
_yAxisPadding = _; | |
return _chart; | |
}; | |
| |
_chart.yAxisHeight = function () { | |
return _chart.effectiveHeight(); | |
}; | |
| |
_chart.round = function (_) { | |
if (!arguments.length) return _round; | |
_round = _; | |
return _chart; | |
}; | |
| |
dc.override(_chart, "filter", function (_) { | |
if (!arguments.length) return _chart._filter(); | |
| |
_chart._filter(_); | |
| |
if (_) { | |
_chart.brush().extent(_); | |
} else { | |
_chart.brush().clear(); | |
} | |
| |
return _chart; | |
}); | |
| |
_chart.brush = function (_) { | |
if (!arguments.length) return _brush; | |
_brush = _; | |
return _chart; | |
}; | |
| |
function brushHeight() { | |
return _chart.xAxisY() - _chart.margins().top; | |
} | |
| |
_chart.renderBrush = function (g) { | |
if (_chart.isOrdinal()) | |
_brushOn = false; | |
| |
if (_brushOn) { | |
_brush.on("brushstart", brushStart) | |
.on("brush", brushing) | |
.on("brushend", brushEnd); | |
| |
var gBrush = g.append("g") | |
.attr("class", "brush") | |
.attr("transform", "translate(" + _chart.margins().left + "," + _chart.margins().top + ")") | |
.call(_brush.x(_chart.x())); | |
gBrush.selectAll("rect").attr("height", brushHeight()); | |
gBrush.selectAll(".resize").append("path").attr("d", _chart.resizeHandlePath); | |
| |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (_chart.hasFilter()) { | |
<span class="cstat-no" title="statement not covered" > _chart.redrawBrush(g);</span> | |
} | |
} | |
}; | |
| |
<span class="fstat-no" title="function not covered" > function brushStart(p) {</span> | |
} | |
| |
_chart.extendBrush = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > var extent = _brush.extent();</span> | |
<span class="cstat-no" title="statement not covered" > if (_chart.round()) {</span> | |
<span class="cstat-no" title="statement not covered" > extent[0] = extent.map(_chart.round())[0];</span> | |
<span class="cstat-no" title="statement not covered" > extent[1] = extent.map(_chart.round())[1];</span> | |
| |
<span class="cstat-no" title="statement not covered" > _g.select(".brush")</span> | |
.call(_brush.extent(extent)); | |
} | |
<span class="cstat-no" title="statement not covered" > return extent;</span> | |
}; | |
| |
_chart.brushIsEmpty = function (extent) { | |
return _brush.empty() || !extent || extent[1] <= extent[0]; | |
}; | |
| |
<span class="fstat-no" title="function not covered" > function brushing(p) {</span> | |
<span class="cstat-no" title="statement not covered" > var extent = _chart.extendBrush();</span> | |
| |
<span class="cstat-no" title="statement not covered" > _chart.redrawBrush(_g);</span> | |
| |
<span class="cstat-no" title="statement not covered" > if (_chart.brushIsEmpty(extent)) {</span> | |
<span class="cstat-no" title="statement not covered" > dc.events.trigger(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > _chart.filter(null);</span> | |
<span class="cstat-no" title="statement not covered" > dc.redrawAll(_chart.chartGroup());</span> | |
}); | |
} else { | |
<span class="cstat-no" title="statement not covered" > dc.events.trigger(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > _chart.filter(null);</span> | |
<span class="cstat-no" title="statement not covered" > _chart.filter([extent[0], extent[1]]);</span> | |
<span class="cstat-no" title="statement not covered" > dc.redrawAll(_chart.chartGroup());</span> | |
}, dc.constants.EVENT_DELAY); | |
} | |
} | |
| |
<span class="fstat-no" title="function not covered" > function brushEnd(p) {</span> | |
} | |
| |
_chart.redrawBrush = function (g) { | |
if (_brushOn) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (_chart.filter() && _chart.brush().empty()) | |
<span class="cstat-no" title="statement not covered" > _chart.brush().extent(_chart.filter());</span> | |
| |
var gBrush = g.select("g.brush"); | |
gBrush.call(_chart.brush().x(_chart.x())); | |
gBrush.selectAll("rect").attr("height", brushHeight()); | |
} | |
| |
_chart.fadeDeselectedArea(); | |
}; | |
| |
_chart.fadeDeselectedArea = function () { | |
// do nothing, sub-chart should override this function | |
}; | |
| |
// borrowed from Crossfilter example | |
_chart.resizeHandlePath = function (d) { | |
var e = +(d == "e"), x = e ? 1 : -1, y = brushHeight() / 3; | |
return "M" + (0.5 * x) + "," + y | |
+ "A6,6 0 0 " + e + " " + (6.5 * x) + "," + (y + 6) | |
+ "V" + (2 * y - 6) | |
+ "A6,6 0 0 " + e + " " + (0.5 * x) + "," + (2 * y) | |
+ "Z" | |
+ "M" + (2.5 * x) + "," + (y + 8) | |
+ "V" + (2 * y - 8) | |
+ "M" + (4.5 * x) + "," + (y + 8) | |
+ "V" + (2 * y - 8); | |
}; | |
| |
function getClipPathId() { | |
return _chart.anchorName() + "-clip"; | |
} | |
| |
_chart.clipPadding = <span class="fstat-no" title="function not covered" >function (p) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _clipPadding;</span></span> | |
<span class="cstat-no" title="statement not covered" > _clipPadding = p;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
function generateClipPath() { | |
var defs = dc.utils.appendOrSelect(_parent, "defs"); | |
| |
var chartBodyClip = dc.utils.appendOrSelect(defs, "clipPath").attr("id", getClipPathId()); | |
| |
var padding = _clipPadding * 2; | |
| |
dc.utils.appendOrSelect(chartBodyClip, "rect") | |
.attr("width", _chart.xAxisLength() + padding) | |
.attr("height", _chart.yAxisHeight() + padding); | |
} | |
| |
_chart.doRender = function () { | |
if (_x === undefined) | |
throw new dc.errors.InvalidStateException("Mandatory attribute chart.x is missing on chart[#" | |
+ _chart.anchorName() + "]"); | |
| |
_chart.resetSvg(); | |
| |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_chart.dataSet()) { | |
_chart.generateG(); | |
| |
generateClipPath(); | |
prepareXAxis(_chart.g()); | |
prepareYAxis(_chart.g()); | |
| |
_chart.plotData(); | |
| |
_chart.renderXAxis(_chart.g()); | |
_chart.renderYAxis(_chart.g()); | |
| |
_chart.renderBrush(_chart.g()); | |
| |
enableMouseZoom(); | |
} | |
| |
return _chart; | |
}; | |
| |
function enableMouseZoom() { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (_mouseZoomable) { | |
<span class="cstat-no" title="statement not covered" > _chart.root().call(d3.behavior.zoom()</span> | |
.x(_chart.x()) | |
.scaleExtent([1, 100]) | |
.on("zoom", <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > _chart.focus(_chart.x().domain());</span> | |
<span class="cstat-no" title="statement not covered" > _chart.invokeZoomedListener();</span> | |
<span class="cstat-no" title="statement not covered" > updateRangeSelChart();</span> | |
})); | |
} | |
} | |
| |
<span class="fstat-no" title="function not covered" > function updateRangeSelChart() {</span> | |
<span class="cstat-no" title="statement not covered" > if (_rangeChart) {</span> | |
<span class="cstat-no" title="statement not covered" > var refDom = _chart.x().domain();</span> | |
<span class="cstat-no" title="statement not covered" > var origDom = _rangeChart.xOriginalDomain();</span> | |
<span class="cstat-no" title="statement not covered" > var newDom = [</span> | |
refDom[0] < origDom[0] ? refDom[0] : origDom[0], | |
refDom[1] > origDom[1] ? refDom[1] : origDom[1]]; | |
<span class="cstat-no" title="statement not covered" > _rangeChart.focus(newDom);</span> | |
<span class="cstat-no" title="statement not covered" > _rangeChart.filter(null);</span> | |
<span class="cstat-no" title="statement not covered" > _rangeChart.filter(refDom);</span> | |
| |
<span class="cstat-no" title="statement not covered" > dc.events.trigger(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > dc.redrawAll(_chart.chartGroup());</span> | |
}); | |
} | |
} | |
| |
_chart.doRedraw = function () { | |
prepareXAxis(_chart.g()); | |
prepareYAxis(_chart.g()); | |
| |
_chart.plotData(); | |
| |
if (_chart.elasticY()) | |
_chart.renderYAxis(_chart.g()); | |
| |
if (_chart.elasticX() || _refocused) | |
_chart.renderXAxis(_chart.g()); | |
| |
_chart.redrawBrush(_chart.g()); | |
| |
return _chart; | |
}; | |
| |
_chart.subRender = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > if (_chart.dataSet()) {</span> | |
<span class="cstat-no" title="statement not covered" > _chart.plotData();</span> | |
} | |
| |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.brushOn = function (_) { | |
if (!arguments.length) return _brushOn; | |
_brushOn = _; | |
return _chart; | |
}; | |
| |
_chart.getDataWithinXDomain = <span class="fstat-no" title="function not covered" >function (group) {</span> | |
<span class="cstat-no" title="statement not covered" > var data = [];</span> | |
| |
<span class="cstat-no" title="statement not covered" > if (_chart.isOrdinal()) {</span> | |
<span class="cstat-no" title="statement not covered" > data = group.all();</span> | |
} else { | |
<span class="cstat-no" title="statement not covered" > group.all().forEach(<span class="fstat-no" title="function not covered" >function (d) {</span></span> | |
<span class="cstat-no" title="statement not covered" > var key = _chart.keyAccessor()(d);</span> | |
<span class="cstat-no" title="statement not covered" > if (key >= _chart.x().domain()[0] && key <= _chart.x().domain()[1])</span> | |
<span class="cstat-no" title="statement not covered" > data.push(d);</span> | |
}); | |
} | |
| |
<span class="cstat-no" title="statement not covered" > return data;</span> | |
}; | |
| |
function hasRangeSelected(range) { | |
return range instanceof Array && range.length > 1; | |
} | |
| |
_chart.focus = function (range) { | |
_refocused = true; | |
| |
if (hasRangeSelected(range)) { | |
_chart.x().domain(range); | |
} else { | |
_chart.x().domain(_chart.xOriginalDomain()); | |
} | |
| |
_chart.rescale(); | |
| |
_chart.redraw(); | |
| |
if (!hasRangeSelected(range)) | |
_refocused = false; | |
}; | |
| |
_chart.refocused = function () { | |
return _refocused; | |
}; | |
| |
_chart.focusChart = <span class="fstat-no" title="function not covered" >function (c) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _focusChart;</span></span> | |
<span class="cstat-no" title="statement not covered" > _focusChart = c;</span> | |
<span class="cstat-no" title="statement not covered" > _chart.on("filtered", <span class="fstat-no" title="function not covered" >function (chart) {</span></span> | |
<span class="cstat-no" title="statement not covered" > dc.events.trigger(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > _focusChart.focus(chart.filter());</span> | |
<span class="cstat-no" title="statement not covered" > _focusChart.filter(chart.filter());</span> | |
<span class="cstat-no" title="statement not covered" > dc.redrawAll(chart.chartGroup());</span> | |
}); | |
}); | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
return _chart; | |
}; | |
| |
dc.colorChart = function(_chart) { | |
var _colors = d3.scale.category20c(); | |
| |
var _colorDomain = [0, _colors.range().length]; | |
| |
var _colorCalculator = function(value) { | |
var minValue = _colorDomain[0]; | |
var maxValue = _colorDomain[1]; | |
| |
if (isNaN(value)) value = 0; | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if(maxValue === null) <span class="cstat-no" title="statement not covered" >return _colors(value);</span> | |
| |
var colorsLength = _chart.colors().range().length; | |
var denominator = (maxValue - minValue) / colorsLength; | |
var colorValue = Math.abs(Math.min(colorsLength - 1, Math.round((value - minValue) / denominator))); | |
return _chart.colors()(colorValue); | |
}; | |
| |
var _colorAccessor = function(d, i){return i;}; | |
| |
_chart.colors = function(_) { | |
if (!arguments.length) return _colors; | |
| |
if (_ instanceof Array) { | |
_colors = d3.scale.ordinal().range(_); | |
var domain = []; | |
for(var i = 0; i < _.length; ++i){ | |
domain.push(i); | |
} | |
_colors.domain(domain); | |
} else { | |
_colors = _; | |
} | |
| |
_colorDomain = [0, _colors.range().length]; | |
| |
return _chart; | |
}; | |
| |
_chart.colorCalculator = <span class="fstat-no" title="function not covered" >function(_){</span> | |
<span class="cstat-no" title="statement not covered" > if(!arguments.length) <span class="cstat-no" title="statement not covered" >return _colorCalculator;</span></span> | |
<span class="cstat-no" title="statement not covered" > _colorCalculator = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.getColor = function(d, i){ | |
return _colorCalculator(_colorAccessor(d, i)); | |
}; | |
| |
_chart.colorAccessor = function(_){ | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if(!arguments.length) <span class="cstat-no" title="statement not covered" >return _colorAccessor;</span> | |
_colorAccessor = _; | |
return _chart; | |
}; | |
| |
_chart.colorDomain = function(_){ | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if(!arguments.length) <span class="cstat-no" title="statement not covered" >return _colorDomain;</span> | |
_colorDomain = _; | |
return _chart; | |
}; | |
| |
return _chart; | |
}; | |
| |
dc.stackableChart = function (_chart) { | |
var _groupStack = new dc.utils.GroupStack(); | |
var _stackLayout = d3.layout.stack() | |
.offset("zero") | |
.order("default") | |
.values(function (d) { | |
return d.points; | |
}); | |
var _allGroups; | |
var _allValueAccessors; | |
var _allKeyAccessors; | |
var _stackLayers; | |
| |
_chart.stack = function (group, p2, retriever) { | |
if (typeof p2 === 'string') | |
_chart.setGroupName(group, p2, retriever); | |
else if (typeof p2 === 'function') | |
retriever = p2; | |
| |
_groupStack.setDefaultAccessor(_chart.valueAccessor()); | |
_groupStack.addGroup(group, retriever); | |
| |
_chart.expireCache(); | |
| |
return _chart; | |
}; | |
| |
_chart.expireCache = function () { | |
_allGroups = null; | |
_allValueAccessors = null; | |
_allKeyAccessors = null; | |
_stackLayers = null; | |
return _chart; | |
}; | |
| |
_chart.allGroups = function () { | |
if (_allGroups === null) { | |
_allGroups = []; | |
| |
_allGroups.push(_chart.group()); | |
| |
for (var i = 0; i < _groupStack.size(); ++i) | |
_allGroups.push(_groupStack.getGroupByIndex(i)); | |
} | |
| |
return _allGroups; | |
}; | |
| |
_chart.allValueAccessors = function () { | |
if (_allValueAccessors === null) { | |
_allValueAccessors = []; | |
| |
_allValueAccessors.push(_chart.valueAccessor()); | |
| |
for (var i = 0; i < _groupStack.size(); ++i) | |
_allValueAccessors.push(_groupStack.getAccessorByIndex(i)); | |
} | |
| |
return _allValueAccessors; | |
}; | |
| |
_chart.getValueAccessorByIndex = function (groupIndex) { | |
return _chart.allValueAccessors()[groupIndex]; | |
}; | |
| |
_chart.yAxisMin = function () { | |
var min, all = flattenStack(); | |
| |
min = d3.min(all, function (p) { | |
return (p.y + p.y0 < p.y0) ? (p.y + p.y0) : p.y0; | |
}); | |
| |
min = dc.utils.subtract(min, _chart.yAxisPadding()); | |
| |
return min; | |
}; | |
| |
_chart.yAxisMax = function () { | |
var max, all = flattenStack(); | |
| |
max = d3.max(all, function (p) { | |
return p.y + p.y0; | |
}); | |
| |
max = dc.utils.add(max, _chart.yAxisPadding()); | |
| |
return max; | |
}; | |
| |
function flattenStack() { | |
var all = []; | |
| |
if (_chart.x()) { | |
var xDomain = _chart.x().domain(); | |
| |
_chart.stackLayers().forEach(function (e) { | |
e.points.forEach(function (p) { | |
if (p.x >= xDomain[0] && p.x <= xDomain[xDomain.length-1]) | |
all.push(p); | |
}); | |
}); | |
} else { | |
_chart.stackLayers().forEach(function (e) { | |
all = all.concat(e.points); | |
}); | |
} | |
| |
return all; | |
} | |
| |
_chart.allKeyAccessors = function () { | |
if (_allKeyAccessors === null) { | |
_allKeyAccessors = []; | |
| |
_allKeyAccessors.push(_chart.keyAccessor()); | |
| |
for (var i = 0; i < _groupStack.size(); ++i) | |
_allKeyAccessors.push(_chart.keyAccessor()); | |
} | |
| |
return _allKeyAccessors; | |
}; | |
| |
_chart.getKeyAccessorByIndex = function (groupIndex) { | |
return _chart.allKeyAccessors()[groupIndex]; | |
}; | |
| |
_chart.xAxisMin = function () { | |
var min = null; | |
var allGroups = _chart.allGroups(); | |
| |
for (var groupIndex = 0; groupIndex < allGroups.length; ++groupIndex) { | |
var group = allGroups[groupIndex]; | |
var m = dc.utils.groupMin(group, _chart.getKeyAccessorByIndex(groupIndex)); | |
if (min === null || min > m) min = m; | |
} | |
| |
return dc.utils.subtract(min, _chart.xAxisPadding()); | |
}; | |
| |
_chart.xAxisMax = function () { | |
var max = null; | |
var allGroups = _chart.allGroups(); | |
| |
for (var groupIndex = 0; groupIndex < allGroups.length; ++groupIndex) { | |
var group = allGroups[groupIndex]; | |
var m = dc.utils.groupMax(group, _chart.getKeyAccessorByIndex(groupIndex)); | |
if (max === null || max < m) max = m; | |
} | |
| |
return dc.utils.add(max, _chart.xAxisPadding()); | |
}; | |
| |
function getKeyFromData(groupIndex, d) { | |
return _chart.getKeyAccessorByIndex(groupIndex)(d); | |
} | |
| |
function getValueFromData(groupIndex, d) { | |
return _chart.getValueAccessorByIndex(groupIndex)(d); | |
} | |
| |
function calculateDataPointMatrix(data, groupIndex) { | |
for (var dataIndex = 0; dataIndex < data.length; ++dataIndex) { | |
var d = data[dataIndex]; | |
var key = getKeyFromData(groupIndex, d); | |
var value = getValueFromData(groupIndex, d); | |
| |
_groupStack.setDataPoint(groupIndex, dataIndex, {data: d, x: key, y: value}); | |
} | |
} | |
| |
_chart.calculateDataPointMatrixForAll = function () { | |
var groups = _chart.allGroups(); | |
for (var groupIndex = 0; groupIndex < groups.length; ++groupIndex) { | |
var group = groups[groupIndex]; | |
var data = group.all(); | |
| |
calculateDataPointMatrix(data, groupIndex); | |
} | |
}; | |
| |
_chart.getChartStack = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > return _groupStack;</span> | |
}; | |
| |
dc.override(_chart, "valueAccessor", function (_) { | |
if (!arguments.length) return _chart._valueAccessor(); | |
_chart.expireCache(); | |
return _chart._valueAccessor(_); | |
}); | |
| |
dc.override(_chart, "keyAccessor", function (_) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (!arguments.length) return _chart._keyAccessor(); | |
<span class="cstat-no" title="statement not covered" > _chart.expireCache();</span> | |
<span class="cstat-no" title="statement not covered" > return _chart._keyAccessor(_);</span> | |
}); | |
| |
_chart.stackLayout = function (stack) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (!arguments.length) return _stackLayout; | |
<span class="cstat-no" title="statement not covered" > _stackLayout = stack;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.stackLayers = function (_) { | |
if (!arguments.length) { | |
if (_stackLayers === null) { | |
_chart.calculateDataPointMatrixForAll(); | |
_stackLayers = _chart.stackLayout()(_groupStack.toLayers()); | |
} | |
return _stackLayers; | |
} else { | |
_stackLayers = _; | |
} | |
}; | |
| |
_chart.legendables = function () { | |
var items = []; | |
_allGroups.forEach(function (g, i) { | |
items.push(dc.utils.createLegendable(_chart, g, i, _chart.getValueAccessorByIndex(i))); | |
}); | |
return items; | |
}; | |
| |
return _chart; | |
}; | |
| |
dc.abstractBubbleChart = function (_chart) { | |
var _maxBubbleRelativeSize = 0.3; | |
var _minRadiusWithLabel = 10; | |
| |
_chart.BUBBLE_NODE_CLASS = "node"; | |
_chart.BUBBLE_CLASS = "bubble"; | |
_chart.MIN_RADIUS = 10; | |
| |
_chart = dc.colorChart(_chart); | |
| |
_chart.renderLabel(true); | |
_chart.renderTitle(false); | |
| |
var _r = d3.scale.linear().domain([0, 100]); | |
| |
var _rValueAccessor = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > return d.r;</span> | |
}; | |
| |
_chart.r = function (_) { | |
if (!arguments.length) return _r; | |
_r = _; | |
return _chart; | |
}; | |
| |
_chart.radiusValueAccessor = function (_) { | |
if (!arguments.length) return _rValueAccessor; | |
_rValueAccessor = _; | |
return _chart; | |
}; | |
| |
_chart.rMin = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > var min = d3.min(_chart.group().all(), <span class="fstat-no" title="function not covered" >function (e) {</span></span> | |
<span class="cstat-no" title="statement not covered" > return _chart.radiusValueAccessor()(e);</span> | |
}); | |
<span class="cstat-no" title="statement not covered" > return min;</span> | |
}; | |
| |
_chart.rMax = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > var max = d3.max(_chart.group().all(), <span class="fstat-no" title="function not covered" >function (e) {</span></span> | |
<span class="cstat-no" title="statement not covered" > return _chart.radiusValueAccessor()(e);</span> | |
}); | |
<span class="cstat-no" title="statement not covered" > return max;</span> | |
}; | |
| |
_chart.bubbleR = function (d) { | |
var value = _chart.radiusValueAccessor()(d); | |
var r = _chart.r()(value); | |
if (isNaN(r) || value <= 0) | |
r = 0; | |
return r; | |
}; | |
| |
var labelFunction = function (d) { | |
return _chart.label()(d); | |
}; | |
| |
var labelOpacity = function (d) { | |
return (_chart.bubbleR(d) > _minRadiusWithLabel) ? 1 : 0; | |
}; | |
| |
_chart.doRenderLabel = function (bubbleGEnter) { | |
if (_chart.renderLabel()) { | |
var label = bubbleGEnter.select("text"); | |
| |
if (label.empty()) { | |
label = bubbleGEnter.append("text") | |
.attr("text-anchor", "middle") | |
.attr("dy", ".3em") | |
.on("click", _chart.onClick); | |
} | |
| |
label | |
.attr("opacity", 0) | |
.text(labelFunction); | |
dc.transition(label, _chart.transitionDuration()) | |
.attr("opacity", labelOpacity); | |
} | |
}; | |
| |
_chart.doUpdateLabels = function (bubbleGEnter) { | |
if (_chart.renderLabel()) { | |
var labels = bubbleGEnter.selectAll("text") | |
.text(labelFunction); | |
dc.transition(labels, _chart.transitionDuration()) | |
.attr("opacity", labelOpacity); | |
} | |
}; | |
| |
var titleFunction = function (d) { | |
return _chart.title()(d); | |
}; | |
| |
_chart.doRenderTitles = function (g) { | |
if (_chart.renderTitle()) { | |
var title = g.select("title"); | |
| |
if (title.empty()) | |
g.append("title").text(titleFunction); | |
} | |
}; | |
| |
_chart.doUpdateTitles = function (g) { | |
if (_chart.renderTitle()) { | |
g.selectAll("title").text(titleFunction); | |
} | |
}; | |
| |
_chart.minRadiusWithLabel = <span class="fstat-no" title="function not covered" >function (_) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _minRadiusWithLabel;</span></span> | |
<span class="cstat-no" title="statement not covered" > _minRadiusWithLabel = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.maxBubbleRelativeSize = function (_) { | |
if (!arguments.length) return _maxBubbleRelativeSize; | |
_maxBubbleRelativeSize = _; | |
return _chart; | |
}; | |
| |
_chart.initBubbleColor = function (d, i) { | |
this[dc.constants.NODE_INDEX_NAME] = i; | |
return _chart.getColor(d, i); | |
}; | |
| |
_chart.updateBubbleColor = function (d, i) { | |
// a work around to get correct node index since | |
return _chart.getColor(d, this[dc.constants.NODE_INDEX_NAME]); | |
}; | |
| |
_chart.fadeDeselectedArea = function () { | |
if (_chart.hasFilter()) { | |
_chart.selectAll("g." + _chart.BUBBLE_NODE_CLASS).each(function (d) { | |
if (_chart.isSelectedNode(d)) { | |
_chart.highlightSelected(this); | |
} else { | |
_chart.fadeDeselected(this); | |
} | |
}); | |
} else { | |
_chart.selectAll("g." + _chart.BUBBLE_NODE_CLASS).each(function (d) { | |
_chart.resetHighlight(this); | |
}); | |
} | |
}; | |
| |
_chart.isSelectedNode = function (d) { | |
return _chart.hasFilter(d.key); | |
}; | |
| |
_chart.onClick = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > var filter = d.key;</span> | |
<span class="cstat-no" title="statement not covered" > dc.events.trigger(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > _chart.filter(filter);</span> | |
<span class="cstat-no" title="statement not covered" > dc.redrawAll(_chart.chartGroup());</span> | |
}); | |
}; | |
| |
return _chart; | |
}; | |
| |
dc.pieChart = function (parent, chartGroup) { | |
var DEFAULT_MIN_ANGLE_FOR_LABEL = 0.5; | |
| |
var _sliceCssClass = "pie-slice"; | |
| |
var _radius, | |
_innerRadius = 0; | |
| |
var _g; | |
| |
var _minAngleForLabel = DEFAULT_MIN_ANGLE_FOR_LABEL; | |
| |
var _chart = dc.colorChart(dc.baseChart({})); | |
| |
var _slicesCap = Infinity; | |
var _othersLabel = "Others"; | |
var _othersGrouper = <span class="fstat-no" title="function not covered" >function (data, sum) {</span> | |
<span class="cstat-no" title="statement not covered" > data.push({"key": _othersLabel, "value": sum });</span> | |
}; | |
| |
function assemblePieData() { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_slicesCap == Infinity) { | |
return _chart.orderedGroup().top(_slicesCap); // ordered by keys | |
} else { | |
<span class="cstat-no" title="statement not covered" > var topRows = _chart.group().top(_slicesCap); </span>// ordered by value | |
<span class="cstat-no" title="statement not covered" > var topRowsSum = d3.sum(topRows, _chart.valueAccessor());</span> | |
| |
<span class="cstat-no" title="statement not covered" > var allRows = _chart.group().all();</span> | |
<span class="cstat-no" title="statement not covered" > var allRowsSum = d3.sum(allRows, _chart.valueAccessor());</span> | |
| |
<span class="cstat-no" title="statement not covered" > _othersGrouper(topRows, allRowsSum - topRowsSum);</span> | |
| |
<span class="cstat-no" title="statement not covered" > return topRows;</span> | |
} | |
} | |
| |
_chart.label(function (d) { | |
return _chart.keyAccessor()(d.data); | |
}); | |
| |
_chart.renderLabel(true); | |
| |
_chart.title(function (d) { | |
return _chart.keyAccessor()(d.data) + ": " + _chart.valueAccessor()(d.data); | |
}); | |
| |
_chart.transitionDuration(350); | |
| |
_chart.doRender = function () { | |
_chart.resetSvg(); | |
| |
_g = _chart.svg() | |
.append("g") | |
.attr("transform", "translate(" + _chart.cx() + "," + _chart.cy() + ")"); | |
| |
drawChart(); | |
| |
return _chart; | |
}; | |
| |
function drawChart() { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_chart.dataSet()) { | |
var pie = calculateDataPie(); | |
| |
// set radius on basis of chart dimension if missing | |
_radius = _radius ? _radius : d3.min([_chart.width(), _chart.height()]) /2; | |
| |
var arc = _chart.buildArcs(); | |
| |
var pieData = pie(assemblePieData()); | |
| |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_g) { | |
var slices = _g.selectAll("g." + _sliceCssClass) | |
.data(pieData); | |
| |
createElements(slices, arc, pieData); | |
| |
updateElements(pieData, arc); | |
| |
removeElements(slices); | |
| |
highlightFilter(); | |
} | |
} | |
} | |
| |
function createElements(slices, arc, pieData) { | |
var slicesEnter = createSliceNodes(slices); | |
| |
createSlicePath(slicesEnter, arc); | |
| |
createTitles(slicesEnter); | |
| |
createLabels(pieData, arc); | |
} | |
| |
function createSliceNodes(slices) { | |
var slicesEnter = slices | |
.enter() | |
.append("g") | |
.attr("class", function (d, i) { | |
return _sliceCssClass + " _" + i; | |
}); | |
return slicesEnter; | |
} | |
| |
function createSlicePath(slicesEnter, arc) { | |
var slicePath = slicesEnter.append("path") | |
.attr("fill", function (d, i) { | |
return _chart.getColor(d, i); | |
}) | |
.on("click", onClick) | |
.attr("d", function (d, i) { | |
return safeArc(d, i, arc); | |
}); | |
slicePath.transition() | |
.duration(_chart.transitionDuration()) | |
.attrTween("d", tweenPie); | |
} | |
| |
function createTitles(slicesEnter) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_chart.renderTitle()) { | |
slicesEnter.append("title").text(function (d) { | |
return _chart.title()(d); | |
}); | |
} | |
} | |
| |
function createLabels(pieData, arc) { | |
if (_chart.renderLabel()) { | |
var labels = _g.selectAll("text." + _sliceCssClass) | |
.data(pieData); | |
| |
labels.exit().remove(); | |
| |
var labelsEnter = labels | |
.enter() | |
.append("text") | |
.attr("class", function (d, i) { | |
return _sliceCssClass + " _" + i; | |
}) | |
.on("click", onClick); | |
dc.transition(labelsEnter, _chart.transitionDuration()) | |
.attr("transform", function (d) { | |
d.innerRadius = _chart.innerRadius(); | |
d.outerRadius = _radius; | |
var centroid = arc.centroid(d); | |
if (isNaN(centroid[0]) || isNaN(centroid[1])) { | |
return "translate(0,0)"; | |
} else { | |
return "translate(" + centroid + ")"; | |
} | |
}) | |
.attr("text-anchor", "middle") | |
.text(function (d) { | |
var data = d.data; | |
if (sliceHasNoData(data) || sliceTooSmall(d)) | |
return ""; | |
return _chart.label()(d); | |
}); | |
} | |
} | |
| |
function updateElements(pieData, arc) { | |
updateSlicePaths(pieData, arc); | |
updateLabels(pieData, arc); | |
updateTitles(pieData); | |
} | |
| |
function updateSlicePaths(pieData, arc) { | |
var slicePaths = _g.selectAll("g." + _sliceCssClass) | |
.data(pieData) | |
.select("path") | |
.attr("d", function (d, i) { | |
return safeArc(d, i, arc); | |
}); | |
dc.transition(slicePaths, _chart.transitionDuration(), | |
function (s) { | |
s.attrTween("d", tweenPie); | |
}).attr("fill", function (d, i) { | |
return _chart.getColor(d, i); | |
}); | |
} | |
| |
function updateLabels(pieData, arc) { | |
if (_chart.renderLabel()) { | |
var labels = _g.selectAll("text." + _sliceCssClass) | |
.data(pieData); | |
dc.transition(labels, _chart.transitionDuration()) | |
.attr("transform", function (d) { | |
d.innerRadius = _chart.innerRadius(); | |
d.outerRadius = _radius; | |
var centroid = arc.centroid(d); | |
if (isNaN(centroid[0]) || isNaN(centroid[1])) { | |
return "translate(0,0)"; | |
} else { | |
return "translate(" + centroid + ")"; | |
} | |
}) | |
.attr("text-anchor", "middle") | |
.text(function (d) { | |
var data = d.data; | |
if (sliceHasNoData(data) || sliceTooSmall(d)) | |
return ""; | |
return _chart.label()(d); | |
}); | |
} | |
} | |
| |
function updateTitles(pieData) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_chart.renderTitle()) { | |
_g.selectAll("g." + _sliceCssClass) | |
.data(pieData) | |
.select("title") | |
.text(function (d) { | |
return _chart.title()(d); | |
}); | |
} | |
} | |
| |
function removeElements(slices) { | |
slices.exit().remove(); | |
} | |
| |
function highlightFilter() { | |
if (_chart.hasFilter()) { | |
_chart.selectAll("g." + _sliceCssClass).each(function (d) { | |
if (_chart.isSelectedSlice(d)) { | |
_chart.highlightSelected(this); | |
} else { | |
_chart.fadeDeselected(this); | |
} | |
}); | |
} else { | |
_chart.selectAll("g." + _sliceCssClass).each(function (d) { | |
_chart.resetHighlight(this); | |
}); | |
} | |
} | |
| |
_chart.innerRadius = function (r) { | |
if (!arguments.length) return _innerRadius; | |
_innerRadius = r; | |
return _chart; | |
}; | |
| |
_chart.radius = function (r) { | |
if (!arguments.length) return _radius; | |
_radius = r; | |
return _chart; | |
}; | |
| |
_chart.cx = function () { | |
return _chart.width() / 2; | |
}; | |
| |
_chart.cy = function () { | |
return _chart.height() / 2; | |
}; | |
| |
_chart.buildArcs = function () { | |
return d3.svg.arc().outerRadius(_radius).innerRadius(_innerRadius); | |
}; | |
| |
_chart.isSelectedSlice = function (d) { | |
return _chart.hasFilter(_chart.keyAccessor()(d.data)); | |
}; | |
| |
_chart.doRedraw = function () { | |
drawChart(); | |
return _chart; | |
}; | |
| |
_chart.minAngleForLabel = function (_) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _minAngleForLabel;</span> | |
_minAngleForLabel = _; | |
return _chart; | |
}; | |
| |
_chart.slicesCap = <span class="fstat-no" title="function not covered" >function (_) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _slicesCap;</span></span> | |
<span class="cstat-no" title="statement not covered" > _slicesCap = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.othersLabel = <span class="fstat-no" title="function not covered" >function (_) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _othersLabel;</span></span> | |
<span class="cstat-no" title="statement not covered" > _othersLabel = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.othersGrouper = <span class="fstat-no" title="function not covered" >function (_) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _othersGrouper;</span></span> | |
<span class="cstat-no" title="statement not covered" > _othersGrouper = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
function calculateDataPie() { | |
return d3.layout.pie().sort(null).value(function (d) { | |
return _chart.valueAccessor()(d); | |
}); | |
} | |
| |
function sliceTooSmall(d) { | |
var angle = (d.endAngle - d.startAngle); | |
return isNaN(angle) || angle < _minAngleForLabel; | |
} | |
| |
function sliceHasNoData(data) { | |
return _chart.valueAccessor()(data) === 0; | |
} | |
| |
<span class="fstat-no" title="function not covered" > function tweenPie(b) {</span> | |
<span class="cstat-no" title="statement not covered" > b.innerRadius = _chart.innerRadius();</span> | |
<span class="cstat-no" title="statement not covered" > var current = this._current;</span> | |
<span class="cstat-no" title="statement not covered" > if (isOffCanvas(current))</span> | |
<span class="cstat-no" title="statement not covered" > current = {startAngle: 0, endAngle: 0};</span> | |
<span class="cstat-no" title="statement not covered" > var i = d3.interpolate(current, b);</span> | |
<span class="cstat-no" title="statement not covered" > this._current = i(0);</span> | |
<span class="cstat-no" title="statement not covered" > return <span class="fstat-no" title="function not covered" >function (t) {</span></span> | |
<span class="cstat-no" title="statement not covered" > return safeArc(i(t), 0, _chart.buildArcs());</span> | |
}; | |
} | |
| |
<span class="fstat-no" title="function not covered" > function isOffCanvas(current) {</span> | |
<span class="cstat-no" title="statement not covered" > return !current || isNaN(current.startAngle) || isNaN(current.endAngle);</span> | |
} | |
| |
<span class="fstat-no" title="function not covered" > function onClick(d) {</span> | |
<span class="cstat-no" title="statement not covered" > _chart.onClick(d.data);</span> | |
} | |
| |
function safeArc(d, i, arc) { | |
var path = arc(d, i); | |
if (path.indexOf("NaN") >= 0) | |
path = "M0,0"; | |
return path; | |
} | |
| |
return _chart.anchor(parent, chartGroup); | |
}; | |
| |
dc.barChart = function (parent, chartGroup) { | |
var MIN_BAR_WIDTH = 1; | |
var DEFAULT_GAP_BETWEEN_BARS = 2; | |
| |
var _chart = dc.stackableChart(dc.coordinateGridChart({})); | |
| |
var _gap = DEFAULT_GAP_BETWEEN_BARS; | |
var _centerBar = false; | |
| |
var _numberOfBars; | |
var _barWidth; | |
| |
dc.override(_chart, 'rescale', function () { | |
_chart._rescale(); | |
_numberOfBars = undefined; | |
_barWidth = undefined; | |
getNumberOfBars(); | |
}); | |
| |
_chart.plotData = function () { | |
var layers = _chart.chartBodyG().selectAll("g.stack") | |
.data(_chart.stackLayers()); | |
| |
calculateBarWidth(); | |
| |
layers | |
.enter() | |
.append("g") | |
.attr("class", function (d, i) { | |
return "stack " + "_" + i; | |
}); | |
| |
layers.each(function (d, i) { | |
var layer = d3.select(this); | |
| |
renderBars(layer, d, i); | |
}); | |
| |
_chart.stackLayers(null); | |
}; | |
| |
function barHeight(d) { | |
return dc.utils.safeNumber(Math.abs(_chart.y()(d.y + d.y0) - _chart.y()(d.y0))); | |
} | |
| |
function renderBars(layer, d, i) { | |
var bars = layer.selectAll("rect.bar") | |
.data(d.points); | |
| |
bars.enter() | |
.append("rect") | |
.attr("class", "bar") | |
.attr("fill", function (d) { | |
return _chart.colors()(i); | |
}) | |
.append("title").text(_chart.title()); | |
| |
if (_chart.isOrdinal()) | |
bars.on("click", onClick); | |
| |
dc.transition(bars, _chart.transitionDuration()) | |
.attr("x", function (d) { | |
var x = _chart.x()(d.x); | |
if (_centerBar) x -= _barWidth / 2; | |
return dc.utils.safeNumber(x); | |
}) | |
.attr("y", function (d) { | |
var y = _chart.y()(d.y + d.y0); | |
| |
if (d.y < 0) | |
y -= barHeight(d); | |
| |
return dc.utils.safeNumber(y); | |
}) | |
.attr("width", _barWidth) | |
.attr("height", function (d) { | |
return barHeight(d); | |
}) | |
.select("title").text(_chart.title()); | |
| |
dc.transition(bars.exit(), _chart.transitionDuration()) | |
.attr("height", 0) | |
.remove(); | |
} | |
| |
function calculateBarWidth() { | |
if (_barWidth === undefined) { | |
var numberOfBars = _chart.isOrdinal() ? getNumberOfBars() + 1 : getNumberOfBars(); | |
| |
var w = Math.floor((_chart.xAxisLength() - (numberOfBars - 1) * _gap) / numberOfBars); | |
| |
if (w == Infinity || isNaN(w) || w < MIN_BAR_WIDTH) | |
w = MIN_BAR_WIDTH; | |
| |
_barWidth = w; | |
} | |
} | |
| |
function getNumberOfBars() { | |
if (_numberOfBars === undefined) { | |
_numberOfBars = _chart.xUnitCount(); | |
} | |
| |
return _numberOfBars; | |
} | |
| |
_chart.fadeDeselectedArea = function () { | |
var bars = _chart.chartBodyG().selectAll("rect.bar"); | |
var extent = _chart.brush().extent(); | |
| |
if (_chart.isOrdinal()) { | |
if (_chart.hasFilter()) { | |
bars.classed(dc.constants.SELECTED_CLASS, function (d) { | |
return _chart.hasFilter(_chart.keyAccessor()(d.data)); | |
}); | |
bars.classed(dc.constants.DESELECTED_CLASS, function (d) { | |
return !_chart.hasFilter(_chart.keyAccessor()(d.data)); | |
}); | |
} else { | |
bars.classed(dc.constants.SELECTED_CLASS, false); | |
bars.classed(dc.constants.DESELECTED_CLASS, false); | |
} | |
} else { | |
if (!_chart.brushIsEmpty(extent)) { | |
var start = extent[0]; | |
var end = extent[1]; | |
| |
bars.classed(dc.constants.DESELECTED_CLASS, function (d) { | |
var xValue = _chart.keyAccessor()(d.data); | |
return xValue < start || xValue >= end; | |
}); | |
} else { | |
bars.classed(dc.constants.DESELECTED_CLASS, false); | |
} | |
} | |
}; | |
| |
_chart.centerBar = function (_) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _centerBar;</span> | |
_centerBar = _; | |
return _chart; | |
}; | |
| |
<span class="fstat-no" title="function not covered" > function onClick(d) {</span> | |
<span class="cstat-no" title="statement not covered" > _chart.onClick(d.data);</span> | |
} | |
| |
_chart.gap = function (_) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _gap;</span> | |
_gap = _; | |
return _chart; | |
}; | |
| |
_chart.extendBrush = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > var extent = _chart.brush().extent();</span> | |
<span class="cstat-no" title="statement not covered" > if (_chart.round() && !_centerBar) {</span> | |
<span class="cstat-no" title="statement not covered" > extent[0] = extent.map(_chart.round())[0];</span> | |
<span class="cstat-no" title="statement not covered" > extent[1] = extent.map(_chart.round())[1];</span> | |
| |
<span class="cstat-no" title="statement not covered" > _chart.chartBodyG().select(".brush")</span> | |
.call(_chart.brush().extent(extent)); | |
} | |
<span class="cstat-no" title="statement not covered" > return extent;</span> | |
}; | |
| |
dc.override(_chart, "prepareOrdinalXAxis", function () { | |
return this._prepareOrdinalXAxis(_chart.xUnitCount() + 1); | |
}); | |
| |
_chart.legendHighlight = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > _chart.select('.chart-body').selectAll('rect.bar').filter(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > return d3.select(this).attr('fill') == d.color;</span> | |
}).classed('highlight', true); | |
<span class="cstat-no" title="statement not covered" > _chart.select('.chart-body').selectAll('rect.bar').filter(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > return d3.select(this).attr('fill') != d.color;</span> | |
}).classed('fadeout', true); | |
}; | |
| |
_chart.legendReset = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > _chart.selectAll('.chart-body').selectAll('rect.bar').filter(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > return d3.select(this).attr('fill') == d.color;</span> | |
}).classed('highlight', false); | |
<span class="cstat-no" title="statement not covered" > _chart.selectAll('.chart-body').selectAll('rect.bar').filter(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > return d3.select(this).attr('fill') != d.color;</span> | |
}).classed('fadeout', false); | |
}; | |
| |
return _chart.anchor(parent, chartGroup); | |
}; | |
| |
dc.lineChart = function (parent, chartGroup) { | |
var DEFAULT_DOT_RADIUS = 5; | |
var TOOLTIP_G_CLASS = "dc-tooltip"; | |
var DOT_CIRCLE_CLASS = "dot"; | |
var Y_AXIS_REF_LINE_CLASS = "yRef"; | |
var X_AXIS_REF_LINE_CLASS = "xRef"; | |
| |
var _chart = dc.stackableChart(dc.coordinateGridChart({})); | |
var _renderArea = false; | |
var _dotRadius = DEFAULT_DOT_RADIUS; | |
var _interpolate = 'linear'; | |
var _tension = 0.7; | |
| |
_chart.transitionDuration(500); | |
| |
_chart.plotData = function () { | |
var layers = _chart.chartBodyG().selectAll("g.stack") | |
.data(_chart.stackLayers()); | |
| |
var layersEnter = layers | |
.enter() | |
.append("g") | |
.attr("class", function (d, i) { | |
return "stack " + "_" + i; | |
}); | |
| |
drawLine(layersEnter, layers); | |
| |
drawArea(layersEnter, layers); | |
| |
drawDots(layers); | |
| |
_chart.stackLayers(null); | |
}; | |
| |
_chart.interpolate = <span class="fstat-no" title="function not covered" >function(_){</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _interpolate;</span></span> | |
<span class="cstat-no" title="statement not covered" > _interpolate = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.tension = <span class="fstat-no" title="function not covered" >function(_){</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _tension;</span></span> | |
<span class="cstat-no" title="statement not covered" > _tension = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.renderArea = function (_) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _renderArea;</span> | |
_renderArea = _; | |
return _chart; | |
}; | |
| |
function drawLine(layersEnter, layers) { | |
var line = d3.svg.line() | |
.x(function (d) { | |
return _chart.x()(d.x); | |
}) | |
.y(function (d) { | |
return _chart.y()(d.y + d.y0); | |
}) | |
.interpolate(_interpolate) | |
.tension(_tension); | |
| |
layersEnter.append("path") | |
.attr("class", "line") | |
.attr("stroke", function (d, i) { | |
return _chart.colors()(i); | |
}) | |
.attr("fill", function (d, i) { | |
return _chart.colors()(i); | |
}); | |
| |
dc.transition(layers.select("path.line"), _chart.transitionDuration()) | |
.attr("d", function (d) { | |
return safeD(line(d.points)); | |
}); | |
} | |
| |
function drawArea(layersEnter, layers) { | |
if (_renderArea) { | |
var area = d3.svg.area() | |
.x(function (d) { | |
return _chart.x()(d.x); | |
}) | |
.y(function (d) { | |
return _chart.y()(d.y + d.y0); | |
}) | |
.y0(function (d) { | |
return _chart.y()(d.y0); | |
}); | |
| |
layersEnter.append("path") | |
.attr("class", "area") | |
.attr("fill", function (d, i) { | |
return _chart.colors()(i); | |
}) | |
.attr("d", function (d) { | |
return safeD(area(d.points)); | |
}); | |
| |
dc.transition(layers.select("path.area"), _chart.transitionDuration()) | |
.attr("d", function (d) { | |
return safeD(area(d.points)); | |
}); | |
} | |
} | |
| |
function safeD(d){ | |
return d.indexOf("NaN") >= 0 ? <span class="branch-0 cbranch-no" title="branch not covered" >"M0,0" </span>: d; | |
} | |
| |
function drawDots(layersEnter) { | |
if (!_chart.brushOn()) { | |
layersEnter.each(function (d, i) { | |
var layer = d3.select(this); | |
| |
var g = layer.select("g." + TOOLTIP_G_CLASS); | |
if (g.empty()) g = layer.append("g").attr("class", TOOLTIP_G_CLASS); | |
| |
createRefLines(g); | |
| |
var dots = g.selectAll("circle." + DOT_CIRCLE_CLASS) | |
.data(g.datum().points); | |
| |
dots.enter() | |
.append("circle") | |
.attr("class", DOT_CIRCLE_CLASS) | |
.attr("r", _dotRadius) | |
.attr("fill", function (d) { | |
return _chart.colors()(i); | |
}) | |
.style("fill-opacity", 1e-6) | |
.style("stroke-opacity", 1e-6) | |
.on("mousemove", <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > var dot = d3.select(this);</span> | |
<span class="cstat-no" title="statement not covered" > showDot(dot);</span> | |
<span class="cstat-no" title="statement not covered" > showRefLines(dot, g);</span> | |
}) | |
.on("mouseout", <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > var dot = d3.select(this);</span> | |
<span class="cstat-no" title="statement not covered" > hideDot(dot);</span> | |
<span class="cstat-no" title="statement not covered" > hideRefLines(g);</span> | |
}) | |
.append("title").text(_chart.title()); | |
| |
dots.attr("cx", function (d) { | |
return dc.utils.safeNumber(_chart.x()(d.x)); | |
}) | |
.attr("cy", function (d) { | |
return dc.utils.safeNumber(_chart.y()(d.y + d.y0)); | |
}) | |
.select("title").text(_chart.title()); | |
| |
dots.exit().remove(); | |
}); | |
} | |
} | |
| |
function createRefLines(g) { | |
var yRefLine = g.select("path." + Y_AXIS_REF_LINE_CLASS).empty() ? g.append("path").attr("class", Y_AXIS_REF_LINE_CLASS) : g.select("path." + Y_AXIS_REF_LINE_CLASS); | |
yRefLine.style("display", "none").attr("stroke-dasharray", "5,5"); | |
| |
var xRefLine = g.select("path." + X_AXIS_REF_LINE_CLASS).empty() ? g.append("path").attr("class", X_AXIS_REF_LINE_CLASS) : g.select("path." + X_AXIS_REF_LINE_CLASS); | |
xRefLine.style("display", "none").attr("stroke-dasharray", "5,5"); | |
} | |
| |
<span class="fstat-no" title="function not covered" > function showDot(dot) {</span> | |
<span class="cstat-no" title="statement not covered" > dot.style("fill-opacity", 0.8);</span> | |
<span class="cstat-no" title="statement not covered" > dot.style("stroke-opacity", 0.8);</span> | |
<span class="cstat-no" title="statement not covered" > return dot;</span> | |
} | |
| |
<span class="fstat-no" title="function not covered" > function showRefLines(dot, g) {</span> | |
<span class="cstat-no" title="statement not covered" > var x = dot.attr("cx");</span> | |
<span class="cstat-no" title="statement not covered" > var y = dot.attr("cy");</span> | |
<span class="cstat-no" title="statement not covered" > g.select("path." + Y_AXIS_REF_LINE_CLASS).style("display", "").attr("d", "M0 " + y + "L" + (x) + " " + (y));</span> | |
<span class="cstat-no" title="statement not covered" > g.select("path." + X_AXIS_REF_LINE_CLASS).style("display", "").attr("d", "M" + x + " " + _chart.yAxisHeight() + "L" + x + " " + y);</span> | |
} | |
| |
<span class="fstat-no" title="function not covered" > function hideDot(dot) {</span> | |
<span class="cstat-no" title="statement not covered" > dot.style("fill-opacity", 1e-6).style("stroke-opacity", 1e-6);</span> | |
} | |
| |
<span class="fstat-no" title="function not covered" > function hideRefLines(g) {</span> | |
<span class="cstat-no" title="statement not covered" > g.select("path." + Y_AXIS_REF_LINE_CLASS).style("display", "none");</span> | |
<span class="cstat-no" title="statement not covered" > g.select("path." + X_AXIS_REF_LINE_CLASS).style("display", "none");</span> | |
} | |
| |
_chart.dotRadius = function (_) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _dotRadius;</span> | |
_dotRadius = _; | |
return _chart; | |
}; | |
| |
_chart.legendHighlight = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > _chart.selectAll('.chart-body').selectAll('path').filter(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > return d3.select(this).attr('fill') == d.color;</span> | |
}).classed('highlight', true); | |
<span class="cstat-no" title="statement not covered" > _chart.selectAll('.chart-body').selectAll('path').filter(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > return d3.select(this).attr('fill') != d.color;</span> | |
}).classed('fadeout', true); | |
}; | |
| |
_chart.legendReset = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > _chart.selectAll('.chart-body').selectAll('path').filter(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > return d3.select(this).attr('fill') == d.color;</span> | |
}).classed('highlight', false); | |
<span class="cstat-no" title="statement not covered" > _chart.selectAll('.chart-body').selectAll('path').filter(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > return d3.select(this).attr('fill') != d.color;</span> | |
}).classed('fadeout', false); | |
}; | |
| |
return _chart.anchor(parent, chartGroup); | |
}; | |
| |
dc.dataCount = function(parent, chartGroup) { | |
var _formatNumber = d3.format(",d"); | |
var _chart = dc.baseChart({}); | |
| |
_chart.doRender = function() { | |
_chart.selectAll(".total-count").text(_formatNumber(_chart.dimension().size())); | |
_chart.selectAll(".filter-count").text(_formatNumber(_chart.group().value())); | |
| |
return _chart; | |
}; | |
| |
_chart.doRedraw = function(){ | |
return _chart.doRender(); | |
}; | |
| |
return _chart.anchor(parent, chartGroup); | |
}; | |
| |
dc.dataTable = function(parent, chartGroup) { | |
var LABEL_CSS_CLASS = "dc-table-label"; | |
var ROW_CSS_CLASS = "dc-table-row"; | |
var COLUMN_CSS_CLASS = "dc-table-column"; | |
var GROUP_CSS_CLASS = "dc-table-group"; | |
| |
var _chart = dc.baseChart({}); | |
| |
var _size = 25; | |
var _columns = []; | |
var _sortBy = <span class="fstat-no" title="function not covered" >function(d) {</span> | |
<span class="cstat-no" title="statement not covered" > return d;</span> | |
}; | |
var _order = d3.ascending; | |
var _sort; | |
| |
_chart.doRender = function() { | |
_chart.selectAll("tbody").remove(); | |
| |
renderRows(renderGroups()); | |
| |
return _chart; | |
}; | |
| |
function renderGroups() { | |
var groups = _chart.root().selectAll("tbody") | |
.data(nestEntries(), function(d) { | |
return _chart.keyAccessor()(d); | |
}); | |
| |
var rowGroup = groups | |
.enter() | |
.append("tbody"); | |
| |
rowGroup | |
.append("tr") | |
.attr("class", GROUP_CSS_CLASS) | |
.append("td") | |
.attr("class", LABEL_CSS_CLASS) | |
.attr("colspan", _columns.length) | |
.html(function(d) { | |
return _chart.keyAccessor()(d); | |
}); | |
| |
groups.exit().remove(); | |
| |
return rowGroup; | |
} | |
| |
function nestEntries() { | |
if (!_sort) | |
_sort = crossfilter.quicksort.by(_sortBy); | |
| |
var entries = _chart.dimension().top(_size); | |
| |
return d3.nest() | |
.key(_chart.group()) | |
.sortKeys(_order) | |
.sortValues(_order) | |
.entries(_sort(entries, 0, entries.length)); | |
} | |
| |
function renderRows(groups) { | |
var rows = groups.order() | |
.selectAll("tr." + ROW_CSS_CLASS) | |
.data(function(d) { | |
return d.values; | |
}); | |
| |
var rowEnter = rows.enter() | |
.append("tr") | |
.attr("class", ROW_CSS_CLASS); | |
| |
for (var i = 0; i < _columns.length; ++i) { | |
var f = _columns[i]; | |
rowEnter.append("td") | |
.attr("class", COLUMN_CSS_CLASS + " _" + i) | |
.html(function(d) { | |
return f(d); | |
}); | |
} | |
| |
rows.exit().remove(); | |
| |
return rows; | |
} | |
| |
_chart.doRedraw = function() { | |
return _chart.doRender(); | |
}; | |
| |
_chart.size = function(s) { | |
if (!arguments.length) return _size; | |
_size = s; | |
return _chart; | |
}; | |
| |
_chart.columns = function(_) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _columns;</span> | |
_columns = _; | |
return _chart; | |
}; | |
| |
_chart.sortBy = function(_) { | |
if (!arguments.length) return _sortBy; | |
_sortBy = _; | |
return _chart; | |
}; | |
| |
_chart.order = function(_) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (!arguments.length) return _order; | |
<span class="cstat-no" title="statement not covered" > _order = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
return _chart.anchor(parent, chartGroup); | |
}; | |
| |
dc.bubbleChart = function(parent, chartGroup) { | |
var _chart = dc.abstractBubbleChart(dc.coordinateGridChart({})); | |
| |
var _elasticRadius = false; | |
| |
_chart.transitionDuration(750); | |
| |
var bubbleLocator = function(d) { | |
return "translate(" + (bubbleX(d)) + "," + (bubbleY(d)) + ")"; | |
}; | |
| |
_chart.elasticRadius = <span class="fstat-no" title="function not covered" >function(_) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _elasticRadius;</span></span> | |
<span class="cstat-no" title="statement not covered" > _elasticRadius = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.plotData = function() { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (_elasticRadius) | |
<span class="cstat-no" title="statement not covered" > _chart.r().domain([_chart.rMin(), _chart.rMax()]);</span> | |
| |
_chart.r().range([_chart.MIN_RADIUS, _chart.xAxisLength() * _chart.maxBubbleRelativeSize()]); | |
| |
var bubbleG = _chart.chartBodyG().selectAll("g." + _chart.BUBBLE_NODE_CLASS) | |
.data(_chart.group().all()); | |
| |
renderNodes(bubbleG); | |
| |
updateNodes(bubbleG); | |
| |
removeNodes(bubbleG); | |
| |
_chart.fadeDeselectedArea(); | |
}; | |
| |
function renderNodes(bubbleG) { | |
var bubbleGEnter = bubbleG.enter().append("g"); | |
| |
bubbleGEnter | |
.attr("class", _chart.BUBBLE_NODE_CLASS) | |
.attr("transform", bubbleLocator) | |
.append("circle").attr("class", function(d, i) { | |
return _chart.BUBBLE_CLASS + " _" + i; | |
}) | |
.on("click", _chart.onClick) | |
.attr("fill", _chart.initBubbleColor) | |
.attr("r", 0); | |
dc.transition(bubbleG, _chart.transitionDuration()) | |
.attr("r", function(d) { | |
return _chart.bubbleR(d); | |
}) | |
.attr("opacity", function(d) { | |
return (_chart.bubbleR(d) > 0) ? 1 : 0; | |
}); | |
| |
_chart.doRenderLabel(bubbleGEnter); | |
| |
_chart.doRenderTitles(bubbleGEnter); | |
} | |
| |
function updateNodes(bubbleG) { | |
dc.transition(bubbleG, _chart.transitionDuration()) | |
.attr("transform", bubbleLocator) | |
.selectAll("circle." + _chart.BUBBLE_CLASS) | |
.attr("fill", _chart.updateBubbleColor) | |
.attr("r", function(d) { | |
return _chart.bubbleR(d); | |
}) | |
.attr("opacity", function(d) { | |
return (_chart.bubbleR(d) > 0) ? 1 : 0; | |
}); | |
| |
_chart.doUpdateLabels(bubbleG); | |
_chart.doUpdateTitles(bubbleG); | |
} | |
| |
function removeNodes(bubbleG) { | |
bubbleG.exit().remove(); | |
} | |
| |
function bubbleX(d) { | |
var x = _chart.x()(_chart.keyAccessor()(d)) + _chart.margins().left; | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (isNaN(x)) | |
<span class="cstat-no" title="statement not covered" > x = 0;</span> | |
return x; | |
} | |
| |
function bubbleY(d) { | |
var y = _chart.margins().top + _chart.y()(_chart.valueAccessor()(d)); | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (isNaN(y)) | |
<span class="cstat-no" title="statement not covered" > y = 0;</span> | |
return y; | |
} | |
| |
_chart.renderBrush = function(g) { | |
// override default x axis brush from parent chart | |
}; | |
| |
_chart.redrawBrush = function(g) { | |
// override default x axis brush from parent chart | |
_chart.fadeDeselectedArea(); | |
}; | |
| |
return _chart.anchor(parent, chartGroup); | |
}; | |
| |
dc.compositeChart = function (parent, chartGroup) { | |
var SUB_CHART_CLASS = "sub"; | |
| |
var _chart = dc.coordinateGridChart({}); | |
var _children = []; | |
| |
_chart.transitionDuration(500); | |
| |
dc.override(_chart, "generateG", function () { | |
var g = this._generateG(); | |
| |
for (var i = 0; i < _children.length; ++i) { | |
var child = _children[i]; | |
| |
generateChildG(child, i); | |
| |
if (child.dimension() === undefined) child.dimension(_chart.dimension()); | |
if (child.group() === undefined) child.group(_chart.group()); | |
child.chartGroup(_chart.chartGroup()); | |
child.svg(_chart.svg()); | |
child.xUnits(_chart.xUnits()); | |
child.transitionDuration(_chart.transitionDuration()); | |
child.brushOn(_chart.brushOn()); | |
} | |
| |
return g; | |
}); | |
| |
function generateChildG(child, i) { | |
child.generateG(_chart.g()); | |
child.g().attr("class", SUB_CHART_CLASS + " _" + i); | |
} | |
| |
_chart.plotData = function () { | |
for (var i = 0; i < _children.length; ++i) { | |
var child = _children[i]; | |
| |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (child.g() === undefined) { | |
<span class="cstat-no" title="statement not covered" > generateChildG(child, i);</span> | |
} | |
| |
child.x(_chart.x()); | |
child.y(_chart.y()); | |
child.xAxis(_chart.xAxis()); | |
child.yAxis(_chart.yAxis()); | |
| |
child.plotData(); | |
| |
child.activateRenderlets(); | |
} | |
}; | |
| |
_chart.fadeDeselectedArea = function () { | |
for (var i = 0; i < _children.length; ++i) { | |
var child = _children[i]; | |
child.brush(_chart.brush()); | |
child.fadeDeselectedArea(); | |
} | |
}; | |
| |
_chart.compose = function (charts) { | |
_children = charts; | |
for (var i = 0; i < _children.length; ++i) { | |
var child = _children[i]; | |
child.height(_chart.height()); | |
child.width(_chart.width()); | |
child.margins(_chart.margins()); | |
} | |
return _chart; | |
}; | |
| |
_chart.children = function () { | |
return _children; | |
}; | |
| |
function getAllYAxisMinFromChildCharts() { | |
var allMins = []; | |
for (var i = 0; i < _children.length; ++i) { | |
allMins.push(_children[i].yAxisMin()); | |
} | |
return allMins; | |
} | |
| |
_chart.yAxisMin = function () { | |
return d3.min(getAllYAxisMinFromChildCharts()); | |
}; | |
| |
function getAllYAxisMaxFromChildCharts() { | |
var allMaxes = []; | |
for (var i = 0; i < _children.length; ++i) { | |
allMaxes.push(_children[i].yAxisMax()); | |
} | |
return allMaxes; | |
} | |
| |
_chart.yAxisMax = function () { | |
return dc.utils.add(d3.max(getAllYAxisMaxFromChildCharts()), _chart.yAxisPadding()); | |
}; | |
| |
function getAllXAxisMinFromChildCharts() { | |
var allMins = []; | |
for (var i = 0; i < _children.length; ++i) { | |
allMins.push(_children[i].xAxisMin()); | |
} | |
return allMins; | |
} | |
| |
_chart.xAxisMin = function () { | |
return dc.utils.subtract(d3.min(getAllXAxisMinFromChildCharts()), _chart.xAxisPadding()); | |
}; | |
| |
function getAllXAxisMaxFromChildCharts() { | |
var allMaxes = []; | |
for (var i = 0; i < _children.length; ++i) { | |
allMaxes.push(_children[i].xAxisMax()); | |
} | |
return allMaxes; | |
} | |
| |
_chart.xAxisMax = function () { | |
return dc.utils.add(d3.max(getAllXAxisMaxFromChildCharts()), _chart.xAxisPadding()); | |
}; | |
| |
_chart.legendables = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > var items = [];</span> | |
| |
<span class="cstat-no" title="statement not covered" > for (var j = 0; j < _children.length; ++j) {</span> | |
<span class="cstat-no" title="statement not covered" > var childChart = _children[j];</span> | |
<span class="cstat-no" title="statement not covered" > childChart.allGroups().forEach(<span class="fstat-no" title="function not covered" >function (g, i) {</span></span> | |
<span class="cstat-no" title="statement not covered" > items.push(dc.utils.createLegendable(childChart, g, i, childChart.getValueAccessorByIndex(i)));</span> | |
}); | |
} | |
| |
<span class="cstat-no" title="statement not covered" > return items;</span> | |
}; | |
| |
_chart.legendHighlight = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > for (var j = 0; j < _children.length; ++j) {</span> | |
<span class="cstat-no" title="statement not covered" > var child = _children[j];</span> | |
<span class="cstat-no" title="statement not covered" > child.legendHighlight(d);</span> | |
} | |
}; | |
| |
_chart.legendReset = <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > for (var j = 0; j < _children.length; ++j) {</span> | |
<span class="cstat-no" title="statement not covered" > var child = _children[j];</span> | |
<span class="cstat-no" title="statement not covered" > child.legendReset(d);</span> | |
} | |
}; | |
| |
return _chart.anchor(parent, chartGroup); | |
}; | |
| |
dc.geoChoroplethChart = function (parent, chartGroup) { | |
var _chart = dc.colorChart(dc.baseChart({})); | |
| |
_chart.colorAccessor(function (d, i) { | |
return d; | |
}); | |
| |
var _geoPath = d3.geo.path(); | |
var _projectionFlag; | |
| |
var _geoJsons = []; | |
| |
_chart.doRender = function () { | |
_chart.resetSvg(); | |
for (var layerIndex = 0; layerIndex < _geoJsons.length; ++layerIndex) { | |
var states = _chart.svg().append("g") | |
.attr("class", "layer" + layerIndex); | |
| |
var regionG = states.selectAll("g." + geoJson(layerIndex).name) | |
.data(geoJson(layerIndex).data) | |
.enter() | |
.append("g") | |
.attr("class", geoJson(layerIndex).name); | |
| |
regionG | |
.append("path") | |
.attr("fill", "white") | |
.attr("d", _geoPath); | |
| |
regionG.append("title"); | |
| |
plotData(layerIndex); | |
} | |
_projectionFlag = false; | |
}; | |
| |
function plotData(layerIndex) { | |
var maxValue = dc.utils.groupMax(_chart.group(), _chart.valueAccessor()); | |
var data = generateLayeredData(); | |
| |
if (isDataLayer(layerIndex)) { | |
var regionG = renderRegionG(layerIndex); | |
| |
renderPaths(regionG, layerIndex, data, maxValue); | |
| |
renderTitle(regionG, layerIndex, data); | |
} | |
} | |
| |
function generateLayeredData() { | |
var data = {}; | |
var groupAll = _chart.group().all(); | |
for (var i = 0; i < groupAll.length; ++i) { | |
data[_chart.keyAccessor()(groupAll[i])] = _chart.valueAccessor()(groupAll[i]); | |
} | |
return data; | |
} | |
| |
function isDataLayer(layerIndex) { | |
return geoJson(layerIndex).keyAccessor; | |
} | |
| |
function renderRegionG(layerIndex) { | |
var regionG = _chart.svg() | |
.selectAll(layerSelector(layerIndex)) | |
.classed("selected", function (d) { | |
return isSelected(layerIndex, d); | |
}) | |
.classed("deselected", function (d) { | |
return isDeselected(layerIndex, d); | |
}) | |
.attr("class", function (d) { | |
var layerNameClass = geoJson(layerIndex).name; | |
var regionClass = dc.utils.nameToId(geoJson(layerIndex).keyAccessor(d)); | |
var baseClasses = layerNameClass + " " + regionClass; | |
if (isSelected(layerIndex, d)) baseClasses += " selected"; | |
if (isDeselected(layerIndex, d)) baseClasses += " deselected"; | |
return baseClasses; | |
}); | |
return regionG; | |
} | |
| |
function layerSelector(layerIndex) { | |
return "g.layer" + layerIndex + " g." + geoJson(layerIndex).name; | |
} | |
| |
function isSelected(layerIndex, d) { | |
return _chart.hasFilter() && _chart.hasFilter(getKey(layerIndex, d)); | |
} | |
| |
function isDeselected(layerIndex, d) { | |
return _chart.hasFilter() && !_chart.hasFilter(getKey(layerIndex, d)); | |
} | |
| |
function getKey(layerIndex, d) { | |
return geoJson(layerIndex).keyAccessor(d); | |
} | |
| |
function geoJson(index) { | |
return _geoJsons[index]; | |
} | |
| |
function renderPaths(regionG, layerIndex, data) { | |
var paths = regionG | |
.select("path") | |
.attr("fill", function (d) { | |
var currentFill = d3.select(this).attr("fill"); | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (currentFill) | |
return currentFill; | |
<span class="cstat-no" title="statement not covered" > return "none";</span> | |
}) | |
.on("click", <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > return _chart.onClick(d, layerIndex);</span> | |
}); | |
| |
dc.transition(paths, _chart.transitionDuration()).attr("fill", function (d, i) { | |
return _chart.getColor(data[geoJson(layerIndex).keyAccessor(d)], i); | |
}); | |
} | |
| |
_chart.onClick = <span class="fstat-no" title="function not covered" >function (d, layerIndex) {</span> | |
<span class="cstat-no" title="statement not covered" > var selectedRegion = geoJson(layerIndex).keyAccessor(d);</span> | |
<span class="cstat-no" title="statement not covered" > dc.events.trigger(<span class="fstat-no" title="function not covered" >function () {</span></span> | |
<span class="cstat-no" title="statement not covered" > _chart.filter(selectedRegion);</span> | |
<span class="cstat-no" title="statement not covered" > dc.redrawAll(_chart.chartGroup());</span> | |
}); | |
}; | |
| |
function renderTitle(regionG, layerIndex, data) { | |
<span class="missing-if-branch" title="else path not taken"" >E</span>if (_chart.renderTitle()) { | |
regionG.selectAll("title").text(function (d) { | |
var key = getKey(layerIndex, d); | |
var value = data[key]; | |
return _chart.title()({key: key, value: value}); | |
}); | |
} | |
} | |
| |
_chart.doRedraw = function () { | |
for (var layerIndex = 0; layerIndex < _geoJsons.length; ++layerIndex) { | |
plotData(layerIndex); | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if(_projectionFlag) { | |
<span class="cstat-no" title="statement not covered" > _chart.svg().selectAll("g." + geoJson(layerIndex).name + " path").attr("d", _geoPath);</span> | |
} | |
} | |
_projectionFlag = false; | |
}; | |
| |
_chart.overlayGeoJson = function (json, name, keyAccessor) { | |
for (var i = 0; i < _geoJsons.length; ++i) { | |
if (_geoJsons[i].name == name) { | |
_geoJsons[i].data = json; | |
_geoJsons[i].keyAccessor = keyAccessor; | |
return _chart; | |
} | |
} | |
_geoJsons.push({name: name, data: json, keyAccessor: keyAccessor}); | |
return _chart; | |
}; | |
| |
_chart.projection = function (projection) { | |
_geoPath.projection(projection); | |
_projectionFlag = true; | |
return _chart; | |
}; | |
| |
_chart.geoJsons = function () { | |
return _geoJsons; | |
}; | |
| |
_chart.removeGeoJson = function (name) { | |
var geoJsons = []; | |
| |
for (var i = 0; i < _geoJsons.length; ++i) { | |
var layer = _geoJsons[i]; | |
if (layer.name != name) { | |
geoJsons.push(layer); | |
} | |
} | |
| |
_geoJsons = geoJsons; | |
| |
return _chart; | |
}; | |
| |
return _chart.anchor(parent, chartGroup); | |
}; | |
| |
dc.bubbleOverlay = function(root, chartGroup) { | |
var BUBBLE_OVERLAY_CLASS = "bubble-overlay"; | |
var BUBBLE_NODE_CLASS = "node"; | |
var BUBBLE_CLASS = "bubble"; | |
| |
var _chart = dc.abstractBubbleChart(dc.baseChart({})); | |
var _g; | |
var _points = []; | |
| |
_chart.transitionDuration(750); | |
| |
_chart.radiusValueAccessor(function(d) { | |
return d.value; | |
}); | |
| |
_chart.point = function(name, x, y) { | |
_points.push({name: name, x: x, y: y}); | |
return _chart; | |
}; | |
| |
_chart.doRender = function() { | |
_g = initOverlayG(); | |
| |
_chart.r().range([_chart.MIN_RADIUS, _chart.width() * _chart.maxBubbleRelativeSize()]); | |
| |
initializeBubbles(); | |
| |
_chart.fadeDeselectedArea(); | |
| |
return _chart; | |
}; | |
| |
function initOverlayG() { | |
_g = _chart.select("g." + BUBBLE_OVERLAY_CLASS); | |
if (_g.empty()) | |
_g = _chart.svg().append("g").attr("class", BUBBLE_OVERLAY_CLASS); | |
return _g; | |
} | |
| |
function initializeBubbles() { | |
var data = mapData(); | |
| |
_points.forEach(function(point) { | |
var nodeG = getNodeG(point, data); | |
| |
var circle = nodeG.select("circle." + BUBBLE_CLASS); | |
| |
if (circle.empty()) | |
circle = nodeG.append("circle") | |
.attr("class", BUBBLE_CLASS) | |
.attr("r", 0) | |
.attr("fill", _chart.initBubbleColor) | |
.on("click", _chart.onClick); | |
| |
dc.transition(circle, _chart.transitionDuration()) | |
.attr("r", function(d) { | |
return _chart.bubbleR(d); | |
}); | |
| |
_chart.doRenderLabel(nodeG); | |
| |
_chart.doRenderTitles(nodeG); | |
}); | |
} | |
| |
function mapData() { | |
var data = {}; | |
_chart.group().all().forEach(function(datum) { | |
data[_chart.keyAccessor()(datum)] = datum; | |
}); | |
return data; | |
} | |
| |
function getNodeG(point, data) { | |
var bubbleNodeClass = BUBBLE_NODE_CLASS + " " + dc.utils.nameToId(point.name); | |
| |
var nodeG = _g.select("g." + dc.utils.nameToId(point.name)); | |
| |
if (nodeG.empty()) { | |
nodeG = _g.append("g") | |
.attr("class", bubbleNodeClass) | |
.attr("transform", "translate(" + point.x + "," + point.y + ")"); | |
} | |
| |
nodeG.datum(data[point.name]); | |
| |
return nodeG; | |
} | |
| |
_chart.doRedraw = function() { | |
updateBubbles(); | |
| |
_chart.fadeDeselectedArea(); | |
| |
return _chart; | |
}; | |
| |
function updateBubbles() { | |
var data = mapData(); | |
| |
_points.forEach(function(point) { | |
var nodeG = getNodeG(point, data); | |
| |
var circle = nodeG.select("circle." + BUBBLE_CLASS); | |
| |
dc.transition(circle, _chart.transitionDuration()) | |
.attr("r", function(d) { | |
return _chart.bubbleR(d); | |
}) | |
.attr("fill", _chart.updateBubbleColor); | |
| |
_chart.doUpdateLabels(nodeG); | |
| |
_chart.doUpdateTitles(nodeG); | |
}); | |
} | |
| |
_chart.debug = <span class="fstat-no" title="function not covered" >function(flag) {</span> | |
<span class="cstat-no" title="statement not covered" > if(flag){</span> | |
<span class="cstat-no" title="statement not covered" > var debugG = _chart.select("g." + dc.constants.DEBUG_GROUP_CLASS);</span> | |
| |
<span class="cstat-no" title="statement not covered" > if(debugG.empty())</span> | |
<span class="cstat-no" title="statement not covered" > debugG = _chart.svg()</span> | |
.append("g") | |
.attr("class", dc.constants.DEBUG_GROUP_CLASS); | |
| |
<span class="cstat-no" title="statement not covered" > var debugText = debugG.append("text")</span> | |
.attr("x", 10) | |
.attr("y", 20); | |
| |
<span class="cstat-no" title="statement not covered" > debugG</span> | |
.append("rect") | |
.attr("width", _chart.width()) | |
.attr("height", _chart.height()) | |
.on("mousemove", <span class="fstat-no" title="function not covered" >function() {</span> | |
<span class="cstat-no" title="statement not covered" > var position = d3.mouse(debugG.node());</span> | |
<span class="cstat-no" title="statement not covered" > var msg = position[0] + ", " + position[1];</span> | |
<span class="cstat-no" title="statement not covered" > debugText.text(msg);</span> | |
}); | |
}else{ | |
<span class="cstat-no" title="statement not covered" > _chart.selectAll(".debug").remove();</span> | |
} | |
| |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.anchor(root, chartGroup); | |
| |
return _chart; | |
}; | |
| |
dc.rowChart = function (parent, chartGroup) { | |
| |
var _g; | |
| |
var _labelOffsetX = 10; | |
| |
var _labelOffsetY = 15; | |
| |
var _gap = 5; | |
| |
var _rowCssClass = "row"; | |
| |
var _chart = dc.marginable(dc.colorChart(dc.baseChart({}))); | |
| |
var _x; | |
| |
var _elasticX; | |
| |
var _xAxis = d3.svg.axis().orient("bottom"); | |
| |
function calculateAxisScale() { | |
if (!_x || _elasticX) { | |
var extent = d3.extent(_chart.group().all(), _chart.valueAccessor()); | |
if (extent[0] > 0) extent[0] = 0; | |
_x = d3.scale.linear().domain(extent) | |
.range([0, _chart.effectiveWidth()]); | |
| |
_xAxis.scale(_x); | |
} | |
} | |
| |
function drawAxis() { | |
var axisG = _g.select("g.axis"); | |
| |
calculateAxisScale(); | |
| |
if (axisG.empty()) | |
axisG = _g.append("g").attr("class", "axis") | |
.attr("transform", "translate(0, " + _chart.effectiveHeight() + ")"); | |
| |
dc.transition(axisG, _chart.transitionDuration()) | |
.call(_xAxis); | |
} | |
| |
_chart.doRender = function () { | |
_chart.resetSvg(); | |
| |
_g = _chart.svg() | |
.append("g") | |
.attr("transform", "translate(" + _chart.margins().left + "," + _chart.margins().top + ")"); | |
| |
drawAxis(); | |
drawGridLines(); | |
drawChart(); | |
| |
return _chart; | |
}; | |
| |
_chart.title(function (d) { | |
return _chart.keyAccessor()(d) + ": " + _chart.valueAccessor()(d); | |
}); | |
| |
_chart.label(function (d) { | |
return _chart.keyAccessor()(d); | |
}); | |
| |
_chart.x = <span class="fstat-no" title="function not covered" >function(x){</span> | |
<span class="cstat-no" title="statement not covered" > if(!arguments.length) <span class="cstat-no" title="statement not covered" >return _x;</span></span> | |
<span class="cstat-no" title="statement not covered" > _x = x;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
function drawGridLines() { | |
_g.selectAll("g.tick") | |
.select("line.grid-line") | |
.remove(); | |
| |
_g.selectAll("g.tick") | |
.append("line") | |
.attr("class", "grid-line") | |
.attr("x1", 0) | |
.attr("y1", 0) | |
.attr("x2", 0) | |
.attr("y2", function (d) { | |
return -_chart.effectiveHeight(); | |
}); | |
} | |
| |
function drawChart() { | |
drawAxis(); | |
drawGridLines(); | |
| |
var rows = _g.selectAll("g." + _rowCssClass) | |
.data(_chart.group().all()); | |
| |
createElements(rows); | |
removeElements(rows); | |
updateElements(rows); | |
} | |
| |
function createElements(rows) { | |
var rowEnter = rows.enter() | |
.append("g") | |
.attr("class", function (d, i) { | |
return _rowCssClass + " _" + i; | |
}); | |
| |
rowEnter.append("rect").attr("width", 0); | |
| |
createLabels(rowEnter); | |
updateLabels(rows); | |
} | |
| |
function removeElements(rows) { | |
rows.exit().remove(); | |
} | |
| |
function updateElements(rows) { | |
var height = rowHeight(); | |
| |
var rect = rows.attr("transform",function (d, i) { | |
return "translate(0," + ((i + 1) * _gap + i * height) + ")"; | |
}).select("rect") | |
.attr("height", height) | |
.attr("fill", _chart.getColor) | |
.on("click", onClick) | |
.classed("deselected", function (d) { | |
return (_chart.hasFilter()) ? !_chart.isSelectedRow(d) : false; | |
}) | |
.classed("selected", function (d) { | |
return (_chart.hasFilter()) ? _chart.isSelectedRow(d) : false; | |
}); | |
| |
dc.transition(rect, _chart.transitionDuration()) | |
.attr("width", function (d) { | |
return Math.abs(_x(0) - _x(_chart.valueAccessor()(d))); | |
}) | |
.attr("transform", translateX); | |
| |
createTitles(rows); | |
updateLabels(rows); | |
} | |
| |
function createTitles(rows) { | |
if (_chart.renderTitle()) { | |
rows.selectAll("title").remove(); | |
rows.append("title").text(function (d) { | |
return _chart.title()(d); | |
}); | |
} | |
} | |
| |
function createLabels(rowEnter) { | |
if (_chart.renderLabel()) { | |
rowEnter.append("text") | |
.on("click", onClick); | |
} | |
} | |
| |
function updateLabels(rows) { | |
if (_chart.renderLabel()) { | |
var lab = rows.select("text") | |
.attr("x", _labelOffsetX) | |
.attr("y", _labelOffsetY) | |
.attr("class", function (d, i) { | |
return _rowCssClass + " _" + i; | |
}) | |
.text(function (d) { | |
return _chart.label()(d); | |
}); | |
dc.transition(lab, _chart.transitionDuration()) | |
.attr("transform", translateX); | |
} | |
} | |
| |
function numberOfRows() { | |
return _chart.group().all().length; | |
} | |
| |
function rowHeight() { | |
var n = numberOfRows(); | |
return (_chart.effectiveHeight() - (n + 1) * _gap) / n; | |
} | |
| |
<span class="fstat-no" title="function not covered" > function onClick(d) {</span> | |
<span class="cstat-no" title="statement not covered" > _chart.onClick(d);</span> | |
} | |
| |
function translateX(d) { | |
var x = _x(_chart.valueAccessor()(d)), | |
x0 = _x(0), | |
s = x > x0 ? x0 : x; | |
return "translate("+s+",0)"; | |
} | |
| |
_chart.doRedraw = function () { | |
drawChart(); | |
return _chart; | |
}; | |
| |
_chart.xAxis = <span class="fstat-no" title="function not covered" >function () {</span> | |
<span class="cstat-no" title="statement not covered" > return _xAxis;</span> | |
}; | |
| |
_chart.gap = function (g) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _gap;</span> | |
_gap = g; | |
return _chart; | |
}; | |
| |
_chart.elasticX = <span class="fstat-no" title="function not covered" >function (_) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _elasticX;</span></span> | |
<span class="cstat-no" title="statement not covered" > _elasticX = _;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.labelOffsetX = <span class="fstat-no" title="function not covered" >function (o) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _labelOffsetX;</span></span> | |
<span class="cstat-no" title="statement not covered" > _labelOffsetX = o;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.labelOffsetY = <span class="fstat-no" title="function not covered" >function (o) {</span> | |
<span class="cstat-no" title="statement not covered" > if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _labelOffsetY;</span></span> | |
<span class="cstat-no" title="statement not covered" > _labelOffsetY = o;</span> | |
<span class="cstat-no" title="statement not covered" > return _chart;</span> | |
}; | |
| |
_chart.isSelectedRow = function (d) { | |
return _chart.hasFilter(_chart.keyAccessor()(d)); | |
}; | |
| |
return _chart.anchor(parent, chartGroup); | |
}; | |
| |
dc.legend = function () { | |
var LABEL_GAP = 2; | |
| |
var _legend = {}, | |
_parent, | |
_x = 0, | |
_y = 0, | |
_itemHeight = 12, | |
_gap = 5; | |
| |
var _g; | |
| |
_legend.parent = function (p) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _parent;</span> | |
_parent = p; | |
return _legend; | |
}; | |
| |
_legend.render = function () { | |
_g = _parent.svg().append("g") | |
.attr("class", "dc-legend") | |
.attr("transform", "translate(" + _x + "," + _y + ")"); | |
| |
var itemEnter = _g.selectAll('g.dc-legend-item') | |
.data(_parent.legendables()) | |
.enter() | |
.append("g") | |
.attr("class", "dc-legend-item") | |
.attr("transform", function (d, i) { | |
return "translate(0," + i * legendItemHeight() + ")"; | |
}) | |
.on("mouseover", <span class="fstat-no" title="function not covered" >function(d){</span> | |
<span class="cstat-no" title="statement not covered" > _parent.legendHighlight(d);</span> | |
}) | |
.on("mouseout", <span class="fstat-no" title="function not covered" >function (d) {</span> | |
<span class="cstat-no" title="statement not covered" > _parent.legendReset(d);</span> | |
}); | |
| |
itemEnter | |
.append("rect") | |
.attr("width", _itemHeight) | |
.attr("height", _itemHeight) | |
.attr("fill", function(d){return d.color;}); | |
| |
itemEnter.append("text") | |
.text(function(d){return d.name;}) | |
.attr("x", _itemHeight + LABEL_GAP) | |
.attr("y", function(){return _itemHeight / 2 + (this.clientHeight?<span class="branch-0 cbranch-no" title="branch not covered" >this.clientHeight:</span>13) / 2 - 2;}); | |
}; | |
| |
function legendItemHeight() { | |
return _gap + _itemHeight; | |
} | |
| |
_legend.x = function (x) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _x;</span> | |
_x = x; | |
return _legend; | |
}; | |
| |
_legend.y = function (y) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _y;</span> | |
_y = y; | |
return _legend; | |
}; | |
| |
_legend.gap = function (gap) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _gap;</span> | |
_gap = gap; | |
return _legend; | |
}; | |
| |
_legend.itemHeight = function (h) { | |
<span class="missing-if-branch" title="if path not taken"" >I</span>if (!arguments.length) <span class="cstat-no" title="statement not covered" >return _itemHeight;</span> | |
_itemHeight = h; | |
return _legend; | |
}; | |
| |
return _legend; | |
}; | |
return dc;})();</pre></td></tr> | |
</table></pre> | |
</div> | |
<div class="footer"> | |
<div class="meta">Generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Tue Sep 03 2013 15:12:35 GMT-0400 (EDT)</div> | |
</div> | |
<script src="prettify.js"></script> | |
<script src="http://yui.yahooapis.com/3.6.0/build/yui/yui-min.js"></script> | |
<script> | |
YUI().use('datatable', function (Y) { | |
var formatters = { | |
pct: function (o) { | |
o.className += o.record.get('classes')[o.column.key]; | |
try { | |
return o.value.toFixed(2) + '%'; | |
} catch (ex) { return o.value + '%'; } | |
}, | |
html: function (o) { | |
o.className += o.record.get('classes')[o.column.key]; | |
return o.record.get(o.column.key + '_html'); | |
} | |
}, | |
defaultFormatter = function (o) { | |
o.className += o.record.get('classes')[o.column.key]; | |
return o.value; | |
}; | |
function getColumns(theadNode) { | |
var colNodes = theadNode.all('tr th'), | |
cols = [], | |
col; | |
colNodes.each(function (colNode) { | |
col = { | |
key: colNode.getAttribute('data-col'), | |
label: colNode.get('innerHTML') || ' ', | |
sortable: !colNode.getAttribute('data-nosort'), | |
className: colNode.getAttribute('class'), | |
type: colNode.getAttribute('data-type'), | |
allowHTML: colNode.getAttribute('data-html') === 'true' || colNode.getAttribute('data-fmt') === 'html' | |
}; | |
col.formatter = formatters[colNode.getAttribute('data-fmt')] || defaultFormatter; | |
cols.push(col); | |
}); | |
return cols; | |
} | |
function getRowData(trNode, cols) { | |
var tdNodes = trNode.all('td'), | |
i, | |
row = { classes: {} }, | |
node, | |
name; | |
for (i = 0; i < cols.length; i += 1) { | |
name = cols[i].key; | |
node = tdNodes.item(i); | |
row[name] = node.getAttribute('data-value') || node.get('innerHTML'); | |
row[name + '_html'] = node.get('innerHTML'); | |
row.classes[name] = node.getAttribute('class'); | |
//Y.log('Name: ' + name + '; Value: ' + row[name]); | |
if (cols[i].type === 'number') { row[name] = row[name] * 1; } | |
} | |
//Y.log(row); | |
return row; | |
} | |
function getData(tbodyNode, cols) { | |
var data = []; | |
tbodyNode.all('tr').each(function (trNode) { | |
data.push(getRowData(trNode, cols)); | |
}); | |
return data; | |
} | |
function replaceTable(node) { | |
if (!node) { return; } | |
var cols = getColumns(node.one('thead')), | |
data = getData(node.one('tbody'), cols), | |
table, | |
parent = node.get('parentNode'); | |
table = new Y.DataTable({ | |
columns: cols, | |
data: data, | |
sortBy: 'file' | |
}); | |
parent.set('innerHTML', ''); | |
table.render(parent); | |
} | |
Y.on('domready', function () { | |
replaceTable(Y.one('div.coverage-summary table')); | |
if (typeof prettyPrint === 'function') { | |
prettyPrint(); | |
} | |
}); | |
}); | |
</script> | |
</body> | |
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
window.PR_SHOULD_USE_CONTINUATION=true;(function(){var h=["break,continue,do,else,for,if,return,while"];var u=[h,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var p=[u,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var l=[p,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var x=[p,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var R=[x,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"];var r="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes";var w=[p,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var s="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var I=[h,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var f=[h,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var H=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var A=[l,R,w,s+I,f,H];var e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;var C="str";var z="kwd";var j="com";var O="typ";var G="lit";var L="pun";var F="pln";var m="tag";var E="dec";var J="src";var P="atn";var n="atv";var N="nocode";var M="(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function k(Z){var ad=0;var S=false;var ac=false;for(var V=0,U=Z.length;V<U;++V){var ae=Z[V];if(ae.ignoreCase){ac=true}else{if(/[a-z]/i.test(ae.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi,""))){S=true;ac=false;break}}}var Y={b:8,t:9,n:10,v:11,f:12,r:13};function ab(ah){var ag=ah.charCodeAt(0);if(ag!==92){return ag}var af=ah.charAt(1);ag=Y[af];if(ag){return ag}else{if("0"<=af&&af<="7"){return parseInt(ah.substring(1),8)}else{if(af==="u"||af==="x"){return parseInt(ah.substring(2),16)}else{return ah.charCodeAt(1)}}}}function T(af){if(af<32){return(af<16?"\\x0":"\\x")+af.toString(16)}var ag=String.fromCharCode(af);if(ag==="\\"||ag==="-"||ag==="["||ag==="]"){ag="\\"+ag}return ag}function X(am){var aq=am.substring(1,am.length-1).match(new RegExp("\\\\u[0-9A-Fa-f]{4}|\\\\x[0-9A-Fa-f]{2}|\\\\[0-3][0-7]{0,2}|\\\\[0-7]{1,2}|\\\\[\\s\\S]|-|[^-\\\\]","g"));var ak=[];var af=[];var ao=aq[0]==="^";for(var ar=ao?1:0,aj=aq.length;ar<aj;++ar){var ah=aq[ar];if(/\\[bdsw]/i.test(ah)){ak.push(ah)}else{var ag=ab(ah);var al;if(ar+2<aj&&"-"===aq[ar+1]){al=ab(aq[ar+2]);ar+=2}else{al=ag}af.push([ag,al]);if(!(al<65||ag>122)){if(!(al<65||ag>90)){af.push([Math.max(65,ag)|32,Math.min(al,90)|32])}if(!(al<97||ag>122)){af.push([Math.max(97,ag)&~32,Math.min(al,122)&~32])}}}}af.sort(function(av,au){return(av[0]-au[0])||(au[1]-av[1])});var ai=[];var ap=[NaN,NaN];for(var ar=0;ar<af.length;++ar){var at=af[ar];if(at[0]<=ap[1]+1){ap[1]=Math.max(ap[1],at[1])}else{ai.push(ap=at)}}var an=["["];if(ao){an.push("^")}an.push.apply(an,ak);for(var ar=0;ar<ai.length;++ar){var at=ai[ar];an.push(T(at[0]));if(at[1]>at[0]){if(at[1]+1>at[0]){an.push("-")}an.push(T(at[1]))}}an.push("]");return an.join("")}function W(al){var aj=al.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var ah=aj.length;var an=[];for(var ak=0,am=0;ak<ah;++ak){var ag=aj[ak];if(ag==="("){++am}else{if("\\"===ag.charAt(0)){var af=+ag.substring(1);if(af&&af<=am){an[af]=-1}}}}for(var ak=1;ak<an.length;++ak){if(-1===an[ak]){an[ak]=++ad}}for(var ak=0,am=0;ak<ah;++ak){var ag=aj[ak];if(ag==="("){++am;if(an[am]===undefined){aj[ak]="(?:"}}else{if("\\"===ag.charAt(0)){var af=+ag.substring(1);if(af&&af<=am){aj[ak]="\\"+an[am]}}}}for(var ak=0,am=0;ak<ah;++ak){if("^"===aj[ak]&&"^"!==aj[ak+1]){aj[ak]=""}}if(al.ignoreCase&&S){for(var ak=0;ak<ah;++ak){var ag=aj[ak];var ai=ag.charAt(0);if(ag.length>=2&&ai==="["){aj[ak]=X(ag)}else{if(ai!=="\\"){aj[ak]=ag.replace(/[a-zA-Z]/g,function(ao){var ap=ao.charCodeAt(0);return"["+String.fromCharCode(ap&~32,ap|32)+"]"})}}}}return aj.join("")}var aa=[];for(var V=0,U=Z.length;V<U;++V){var ae=Z[V];if(ae.global||ae.multiline){throw new Error(""+ae)}aa.push("(?:"+W(ae)+")")}return new RegExp(aa.join("|"),ac?"gi":"g")}function a(V){var U=/(?:^|\s)nocode(?:\s|$)/;var X=[];var T=0;var Z=[];var W=0;var S;if(V.currentStyle){S=V.currentStyle.whiteSpace}else{if(window.getComputedStyle){S=document.defaultView.getComputedStyle(V,null).getPropertyValue("white-space")}}var Y=S&&"pre"===S.substring(0,3);function aa(ab){switch(ab.nodeType){case 1:if(U.test(ab.className)){return}for(var ae=ab.firstChild;ae;ae=ae.nextSibling){aa(ae)}var ad=ab.nodeName;if("BR"===ad||"LI"===ad){X[W]="\n";Z[W<<1]=T++;Z[(W++<<1)|1]=ab}break;case 3:case 4:var ac=ab.nodeValue;if(ac.length){if(!Y){ac=ac.replace(/[ \t\r\n]+/g," ")}else{ac=ac.replace(/\r\n?/g,"\n")}X[W]=ac;Z[W<<1]=T;T+=ac.length;Z[(W++<<1)|1]=ab}break}}aa(V);return{sourceCode:X.join("").replace(/\n$/,""),spans:Z}}function B(S,U,W,T){if(!U){return}var V={sourceCode:U,basePos:S};W(V);T.push.apply(T,V.decorations)}var v=/\S/;function o(S){var V=undefined;for(var U=S.firstChild;U;U=U.nextSibling){var T=U.nodeType;V=(T===1)?(V?S:U):(T===3)?(v.test(U.nodeValue)?S:V):V}return V===S?undefined:V}function g(U,T){var S={};var V;(function(){var ad=U.concat(T);var ah=[];var ag={};for(var ab=0,Z=ad.length;ab<Z;++ab){var Y=ad[ab];var ac=Y[3];if(ac){for(var ae=ac.length;--ae>=0;){S[ac.charAt(ae)]=Y}}var af=Y[1];var aa=""+af;if(!ag.hasOwnProperty(aa)){ah.push(af);ag[aa]=null}}ah.push(/[\0-\uffff]/);V=k(ah)})();var X=T.length;var W=function(ah){var Z=ah.sourceCode,Y=ah.basePos;var ad=[Y,F];var af=0;var an=Z.match(V)||[];var aj={};for(var ae=0,aq=an.length;ae<aq;++ae){var ag=an[ae];var ap=aj[ag];var ai=void 0;var am;if(typeof ap==="string"){am=false}else{var aa=S[ag.charAt(0)];if(aa){ai=ag.match(aa[1]);ap=aa[0]}else{for(var ao=0;ao<X;++ao){aa=T[ao];ai=ag.match(aa[1]);if(ai){ap=aa[0];break}}if(!ai){ap=F}}am=ap.length>=5&&"lang-"===ap.substring(0,5);if(am&&!(ai&&typeof ai[1]==="string")){am=false;ap=J}if(!am){aj[ag]=ap}}var ab=af;af+=ag.length;if(!am){ad.push(Y+ab,ap)}else{var al=ai[1];var ak=ag.indexOf(al);var ac=ak+al.length;if(ai[2]){ac=ag.length-ai[2].length;ak=ac-al.length}var ar=ap.substring(5);B(Y+ab,ag.substring(0,ak),W,ad);B(Y+ab+ak,al,q(ar,al),ad);B(Y+ab+ac,ag.substring(ac),W,ad)}}ah.decorations=ad};return W}function i(T){var W=[],S=[];if(T.tripleQuotedStrings){W.push([C,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(T.multiLineStrings){W.push([C,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{W.push([C,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(T.verbatimStrings){S.push([C,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var Y=T.hashComments;if(Y){if(T.cStyleComments){if(Y>1){W.push([j,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{W.push([j,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}S.push([C,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])}else{W.push([j,/^#[^\r\n]*/,null,"#"])}}if(T.cStyleComments){S.push([j,/^\/\/[^\r\n]*/,null]);S.push([j,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(T.regexLiterals){var X=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");S.push(["lang-regex",new RegExp("^"+M+"("+X+")")])}var V=T.types;if(V){S.push([O,V])}var U=(""+T.keywords).replace(/^ | $/g,"");if(U.length){S.push([z,new RegExp("^(?:"+U.replace(/[\s,]+/g,"|")+")\\b"),null])}W.push([F,/^\s+/,null," \r\n\t\xA0"]);S.push([G,/^@[a-z_$][a-z_$@0-9]*/i,null],[O,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[F,/^[a-z_$][a-z_$@0-9]*/i,null],[G,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[F,/^\\[\s\S]?/,null],[L,/^.[^\s\w\.$@\'\"\`\/\#\\]*/,null]);return g(W,S)}var K=i({keywords:A,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function Q(V,ag){var U=/(?:^|\s)nocode(?:\s|$)/;var ab=/\r\n?|\n/;var ac=V.ownerDocument;var S;if(V.currentStyle){S=V.currentStyle.whiteSpace}else{if(window.getComputedStyle){S=ac.defaultView.getComputedStyle(V,null).getPropertyValue("white-space")}}var Z=S&&"pre"===S.substring(0,3);var af=ac.createElement("LI");while(V.firstChild){af.appendChild(V.firstChild)}var W=[af];function ae(al){switch(al.nodeType){case 1:if(U.test(al.className)){break}if("BR"===al.nodeName){ad(al);if(al.parentNode){al.parentNode.removeChild(al)}}else{for(var an=al.firstChild;an;an=an.nextSibling){ae(an)}}break;case 3:case 4:if(Z){var am=al.nodeValue;var aj=am.match(ab);if(aj){var ai=am.substring(0,aj.index);al.nodeValue=ai;var ah=am.substring(aj.index+aj[0].length);if(ah){var ak=al.parentNode;ak.insertBefore(ac.createTextNode(ah),al.nextSibling)}ad(al);if(!ai){al.parentNode.removeChild(al)}}}break}}function ad(ak){while(!ak.nextSibling){ak=ak.parentNode;if(!ak){return}}function ai(al,ar){var aq=ar?al.cloneNode(false):al;var ao=al.parentNode;if(ao){var ap=ai(ao,1);var an=al.nextSibling;ap.appendChild(aq);for(var am=an;am;am=an){an=am.nextSibling;ap.appendChild(am)}}return aq}var ah=ai(ak.nextSibling,0);for(var aj;(aj=ah.parentNode)&&aj.nodeType===1;){ah=aj}W.push(ah)}for(var Y=0;Y<W.length;++Y){ae(W[Y])}if(ag===(ag|0)){W[0].setAttribute("value",ag)}var aa=ac.createElement("OL");aa.className="linenums";var X=Math.max(0,((ag-1))|0)||0;for(var Y=0,T=W.length;Y<T;++Y){af=W[Y];af.className="L"+((Y+X)%10);if(!af.firstChild){af.appendChild(ac.createTextNode("\xA0"))}aa.appendChild(af)}V.appendChild(aa)}function D(ac){var aj=/\bMSIE\b/.test(navigator.userAgent);var am=/\n/g;var al=ac.sourceCode;var an=al.length;var V=0;var aa=ac.spans;var T=aa.length;var ah=0;var X=ac.decorations;var Y=X.length;var Z=0;X[Y]=an;var ar,aq;for(aq=ar=0;aq<Y;){if(X[aq]!==X[aq+2]){X[ar++]=X[aq++];X[ar++]=X[aq++]}else{aq+=2}}Y=ar;for(aq=ar=0;aq<Y;){var at=X[aq];var ab=X[aq+1];var W=aq+2;while(W+2<=Y&&X[W+1]===ab){W+=2}X[ar++]=at;X[ar++]=ab;aq=W}Y=X.length=ar;var ae=null;while(ah<T){var af=aa[ah];var S=aa[ah+2]||an;var ag=X[Z];var ap=X[Z+2]||an;var W=Math.min(S,ap);var ak=aa[ah+1];var U;if(ak.nodeType!==1&&(U=al.substring(V,W))){if(aj){U=U.replace(am,"\r")}ak.nodeValue=U;var ai=ak.ownerDocument;var ao=ai.createElement("SPAN");ao.className=X[Z+1];var ad=ak.parentNode;ad.replaceChild(ao,ak);ao.appendChild(ak);if(V<S){aa[ah+1]=ak=ai.createTextNode(al.substring(W,S));ad.insertBefore(ak,ao.nextSibling)}}V=W;if(V>=S){ah+=2}if(V>=ap){Z+=2}}}var t={};function c(U,V){for(var S=V.length;--S>=0;){var T=V[S];if(!t.hasOwnProperty(T)){t[T]=U}else{if(window.console){console.warn("cannot override language handler %s",T)}}}}function q(T,S){if(!(T&&t.hasOwnProperty(T))){T=/^\s*</.test(S)?"default-markup":"default-code"}return t[T]}c(K,["default-code"]);c(g([],[[F,/^[^<?]+/],[E,/^<!\w[^>]*(?:>|$)/],[j,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[L,/^(?:<[%?]|[%?]>)/],["lang-",/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);c(g([[F,/^[\s]+/,null," \t\r\n"],[n,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[m,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[P,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[L,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);c(g([],[[n,/^[\s\S]+/]]),["uq.val"]);c(i({keywords:l,hashComments:true,cStyleComments:true,types:e}),["c","cc","cpp","cxx","cyc","m"]);c(i({keywords:"null,true,false"}),["json"]);c(i({keywords:R,hashComments:true,cStyleComments:true,verbatimStrings:true,types:e}),["cs"]);c(i({keywords:x,cStyleComments:true}),["java"]);c(i({keywords:H,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);c(i({keywords:I,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);c(i({keywords:s,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);c(i({keywords:f,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);c(i({keywords:w,cStyleComments:true,regexLiterals:true}),["js"]);c(i({keywords:r,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);c(g([],[[C,/^[\s\S]+/]]),["regex"]);function d(V){var U=V.langExtension;try{var S=a(V.sourceNode);var T=S.sourceCode;V.sourceCode=T;V.spans=S.spans;V.basePos=0;q(U,T)(V);D(V)}catch(W){if("console" in window){console.log(W&&W.stack?W.stack:W)}}}function y(W,V,U){var S=document.createElement("PRE");S.innerHTML=W;if(U){Q(S,U)}var T={langExtension:V,numberLines:U,sourceNode:S};d(T);return S.innerHTML}function b(ad){function Y(af){return document.getElementsByTagName(af)}var ac=[Y("pre"),Y("code"),Y("xmp")];var T=[];for(var aa=0;aa<ac.length;++aa){for(var Z=0,V=ac[aa].length;Z<V;++Z){T.push(ac[aa][Z])}}ac=null;var W=Date;if(!W.now){W={now:function(){return +(new Date)}}}var X=0;var S;var ab=/\blang(?:uage)?-([\w.]+)(?!\S)/;var ae=/\bprettyprint\b/;function U(){var ag=(window.PR_SHOULD_USE_CONTINUATION?W.now()+250:Infinity);for(;X<T.length&&W.now()<ag;X++){var aj=T[X];var ai=aj.className;if(ai.indexOf("prettyprint")>=0){var ah=ai.match(ab);var am;if(!ah&&(am=o(aj))&&"CODE"===am.tagName){ah=am.className.match(ab)}if(ah){ah=ah[1]}var al=false;for(var ak=aj.parentNode;ak;ak=ak.parentNode){if((ak.tagName==="pre"||ak.tagName==="code"||ak.tagName==="xmp")&&ak.className&&ak.className.indexOf("prettyprint")>=0){al=true;break}}if(!al){var af=aj.className.match(/\blinenums\b(?::(\d+))?/);af=af?af[1]&&af[1].length?+af[1]:true:false;if(af){Q(aj,af)}S={langExtension:ah,sourceNode:aj,numberLines:af};d(S)}}}if(X<T.length){setTimeout(U,250)}else{if(ad){ad()}}}U()}window.prettyPrintOne=y;window.prettyPrint=b;window.PR={createSimpleLexer:g,registerLangHandler:c,sourceDecorator:i,PR_ATTRIB_NAME:P,PR_ATTRIB_VALUE:n,PR_COMMENT:j,PR_DECLARATION:E,PR_KEYWORD:z,PR_LITERAL:G,PR_NOCODE:N,PR_PLAIN:F,PR_PUNCTUATION:L,PR_SOURCE:J,PR_STRING:C,PR_TAG:m,PR_TYPE:O}})();PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_DECLARATION,/^<!\w[^>]*(?:>|$)/],[PR.PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],[PR.PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],["lang-",/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-handlebars",/^<script\b[^>]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-js",/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i],[PR.PR_DECLARATION,/^{{[#^>/]?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{&?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{{>?\s*[\w.][^}]*}}}/],[PR.PR_COMMENT,/^{{![^}]*}}/]]),["handlebars","hbs"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:<!--|-->)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment