diff --git a/coverage/cobertura-coverage.xml b/coverage/cobertura-coverage.xml index 23d7c2e180..0b86cb7223 100644 --- a/coverage/cobertura-coverage.xml +++ b/coverage/cobertura-coverage.xml @@ -1,6 +1,6 @@ - + /home/runner/work/lxd-ui/lxd-ui @@ -30,9 +30,9 @@ - + - + @@ -104,9 +104,9 @@ - + - + @@ -149,9 +149,9 @@ - + - + @@ -219,9 +219,9 @@ - + - + @@ -294,9 +294,9 @@ - + - + @@ -339,9 +339,9 @@ - + - + @@ -399,426 +399,426 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -828,9 +828,9 @@ - + - + @@ -840,26 +840,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -896,28 +896,28 @@ - - + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -1154,14 +1154,14 @@ - + - + - + - + @@ -1194,9 +1194,9 @@ - + - + @@ -1211,11 +1211,11 @@ - - - - - + + + + + @@ -1223,20 +1223,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -1250,8 +1250,8 @@ - - + + @@ -1508,11 +1508,11 @@ - - - - - + + + + + @@ -1538,14 +1538,14 @@ - + - + - + - + @@ -1558,9 +1558,9 @@ - + - + @@ -1570,20 +1570,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -1738,15 +1738,15 @@ - - - - - - - - - + + + + + + + + + @@ -1756,8 +1756,8 @@ - - + + @@ -1776,8 +1776,8 @@ - - + + @@ -1785,8 +1785,8 @@ - - + + @@ -1794,8 +1794,8 @@ - - + + @@ -1808,8 +1808,8 @@ - - + + @@ -1822,8 +1822,8 @@ - - + + @@ -1969,19 +1969,19 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -1992,8 +1992,8 @@ - - + + @@ -2003,8 +2003,8 @@ - - + + @@ -2017,8 +2017,8 @@ - - + + @@ -2045,8 +2045,8 @@ - - + + @@ -2067,8 +2067,8 @@ - - + + @@ -2373,14 +2373,14 @@ - + - + - + - + @@ -2648,9 +2648,9 @@ - + - + @@ -2778,13 +2778,13 @@ - - - - - - - + + + + + + + @@ -3126,8 +3126,8 @@ - - + + @@ -3141,9 +3141,9 @@ - + - + @@ -3196,9 +3196,9 @@ - + - + @@ -3228,18 +3228,18 @@ - - - - - - - - - - - - + + + + + + + + + + + + @@ -3686,14 +3686,14 @@ - + - + - + - + @@ -3701,14 +3701,14 @@ - + - + - + - + @@ -3721,24 +3721,24 @@ - + - + - + - + - + - + - + - + @@ -3748,44 +3748,44 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -3993,14 +3993,14 @@ - + - + - + - + @@ -4008,14 +4008,14 @@ - + - + - + - + @@ -4058,14 +4058,14 @@ - + - + - + - + @@ -4090,30 +4090,30 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -4124,8 +4124,8 @@ - - + + @@ -4139,8 +4139,8 @@ - - + + @@ -4156,8 +4156,8 @@ - - + + @@ -4176,14 +4176,14 @@ - + - + - + - + @@ -4251,9 +4251,9 @@ - + - + @@ -4278,22 +4278,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -4306,8 +4306,8 @@ - - + + @@ -4315,8 +4315,8 @@ - - + + @@ -4330,8 +4330,8 @@ - - + + @@ -4534,9 +4534,9 @@ - + - + @@ -4669,9 +4669,9 @@ - + - + @@ -4706,24 +4706,24 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -4738,8 +4738,8 @@ - - + + @@ -4749,8 +4749,8 @@ - - + + @@ -4762,8 +4762,8 @@ - - + + @@ -4779,8 +4779,8 @@ - - + + @@ -4807,8 +4807,8 @@ - - + + @@ -4828,8 +4828,8 @@ - - + + @@ -4845,8 +4845,8 @@ - - + + @@ -4864,8 +4864,8 @@ - - + + @@ -4882,8 +4882,8 @@ - - + + @@ -4896,8 +4896,8 @@ - - + + @@ -4910,8 +4910,8 @@ - - + + @@ -4923,8 +4923,8 @@ - - + + @@ -4939,26 +4939,26 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - + + + + + + @@ -4978,8 +4978,8 @@ - - + + @@ -5013,8 +5013,8 @@ - - + + @@ -5029,8 +5029,8 @@ - - + + @@ -5053,8 +5053,8 @@ - - + + @@ -5432,18 +5432,18 @@ - + - + - + - + @@ -5451,90 +5451,90 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -5544,9 +5544,9 @@ - + - + @@ -5554,9 +5554,9 @@ - + - + @@ -5570,10 +5570,10 @@ - - - - + + + + @@ -5582,18 +5582,18 @@ - - - - - - - - - - - - + + + + + + + + + + + + @@ -5610,9 +5610,9 @@ - + - + @@ -5629,31 +5629,31 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - + @@ -5695,19 +5695,19 @@ - + - + - + - + - + - + @@ -5715,19 +5715,19 @@ - + - + - + - + - + - + @@ -5777,24 +5777,24 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -5802,122 +5802,122 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -5927,29 +5927,29 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -5964,9 +5964,9 @@ - + - + @@ -5982,30 +5982,30 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -6078,47 +6078,47 @@ - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6138,9 +6138,9 @@ - + - + @@ -6155,39 +6155,39 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - + + - + @@ -6202,9 +6202,9 @@ - + - + @@ -6214,22 +6214,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -6292,8 +6292,8 @@ - - + + @@ -6313,9 +6313,9 @@ - + - + @@ -6335,12 +6335,12 @@ - - - - - - + + + + + + @@ -6352,10 +6352,10 @@ - - - - + + + + @@ -6367,39 +6367,39 @@ - + - + - + - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -6409,33 +6409,33 @@ - + - + - + - + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -6445,34 +6445,34 @@ - + - + - + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -6487,50 +6487,50 @@ - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6545,9 +6545,9 @@ - + - + @@ -6560,15 +6560,15 @@ - - - - - - - - - + + + + + + + + + @@ -6580,141 +6580,141 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6736,19 +6736,19 @@ - + - + - + - + - + - + @@ -6778,37 +6778,37 @@ - + - + - + - + - + - + - + - + @@ -6816,14 +6816,14 @@ - + - + - + - + @@ -6836,603 +6836,598 @@ - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -7442,9 +7437,9 @@ - + - + @@ -7454,11 +7449,11 @@ - - - - - + + + + + @@ -7483,34 +7478,34 @@ - - + + - + - + - + - + - + - - - - - + + + + + @@ -7541,8 +7536,8 @@ - - + + @@ -7552,34 +7547,34 @@ - + - + - + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -7589,51 +7584,51 @@ - + - + - + - + - + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - + + - - - - + + + + @@ -7668,29 +7663,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -7698,28 +7693,28 @@ - - + + - - + + - - - - - - + + + + + + - - + + - - + + @@ -7794,41 +7789,41 @@ - + - + - + - + - - - - - - - - - - - - + + + + + + + + + + + + - - + + - - - - - + + + + + @@ -7868,9 +7863,9 @@ - + - + @@ -7922,17 +7917,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -7942,26 +7937,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -7995,30 +7990,30 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -8045,14 +8040,14 @@ - + - + - + - + @@ -8073,41 +8068,41 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -8124,9 +8119,9 @@ - + - + @@ -8140,16 +8135,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -8176,14 +8171,14 @@ - + - + - + - + @@ -8203,34 +8198,34 @@ - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -8247,9 +8242,9 @@ - + - + @@ -8277,9 +8272,9 @@ - + - + @@ -8287,9 +8282,9 @@ - + - + @@ -8297,9 +8292,9 @@ - + - + @@ -8322,9 +8317,9 @@ - + - + @@ -8361,110 +8356,110 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - + + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -8501,51 +8496,51 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -8572,9 +8567,9 @@ - + - + @@ -8604,39 +8599,39 @@ - - - - - - - - - - - + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -8644,13 +8639,13 @@ - - - - - - - + + + + + + + @@ -8661,12 +8656,12 @@ - - - - - - + + + + + + @@ -8713,9 +8708,9 @@ - + - + @@ -8728,9 +8723,9 @@ - + - + @@ -8738,9 +8733,9 @@ - + - + @@ -8748,19 +8743,19 @@ - + - + - + - + - + - + @@ -8787,13 +8782,13 @@ - - - - - - - + + + + + + + @@ -8805,13 +8800,13 @@ - - - - - - - + + + + + + + @@ -8822,26 +8817,26 @@ - - - - - - - + + + + + + + - - - - - - - - - - + + + + + + + + + + @@ -8855,44 +8850,44 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -9116,102 +9111,102 @@ - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -9221,9 +9216,9 @@ - + - + @@ -9236,9 +9231,9 @@ - + - + @@ -9262,39 +9257,39 @@ - - - - - - - + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - + + + + + + - + @@ -9331,14 +9326,14 @@ - + - + - + - + @@ -9346,9 +9341,9 @@ - + - + @@ -9363,102 +9358,102 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -9473,9 +9468,9 @@ - + - + @@ -9489,14 +9484,14 @@ - - - - - - - - + + + + + + + + @@ -9513,14 +9508,14 @@ - + - + - + - + @@ -9530,76 +9525,76 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + @@ -9632,9 +9627,9 @@ - + - + @@ -9662,14 +9657,14 @@ - + - + - + - + @@ -9677,19 +9672,19 @@ - + - + - + - + - + - + @@ -9702,9 +9697,9 @@ - + - + @@ -9717,9 +9712,9 @@ - + - + @@ -9727,9 +9722,9 @@ - + - + @@ -9739,74 +9734,74 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -9817,8 +9812,8 @@ - - + + @@ -9830,61 +9825,61 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -9913,72 +9908,72 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -9988,42 +9983,42 @@ - + - + - + - + - - - - - - - - - - + + + + + + + + + + - - - + + + - - + + - - - - - + + + + + @@ -10031,14 +10026,14 @@ - - - - - - - - + + + + + + + + @@ -10564,9 +10559,9 @@ - + - + @@ -10605,50 +10600,50 @@ - - + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -10662,24 +10657,24 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - + + + + + + + + @@ -10706,9 +10701,9 @@ - + - + @@ -10744,87 +10739,97 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + @@ -10857,9 +10862,9 @@ - + - + @@ -10867,9 +10872,9 @@ - + - + @@ -10892,16 +10897,6 @@ - - - - - - - - - - @@ -10972,16 +10967,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -10995,8 +10990,8 @@ - - + + @@ -11010,8 +11005,8 @@ - - + + @@ -11021,10 +11016,10 @@ - - - - + + + + @@ -11201,27 +11196,27 @@ - - - - - + + + + + - - - - - - - - - - + + + + + + + + + + @@ -11248,9 +11243,9 @@ - + - + @@ -11258,9 +11253,9 @@ - + - + @@ -11268,9 +11263,9 @@ - + - + @@ -11283,14 +11278,14 @@ - + - + - + - + @@ -11314,7 +11309,7 @@ - + @@ -11322,18 +11317,18 @@ - - + + - - - - - - + + + + + + @@ -11418,15 +11413,15 @@ - - - + + + - - + + @@ -11468,9 +11463,9 @@ - + - + @@ -11519,26 +11514,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -11551,19 +11546,19 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -11576,80 +11571,80 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - + + + + @@ -11661,9 +11656,9 @@ - + - + @@ -11689,22 +11684,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -11713,17 +11708,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -11733,8 +11728,8 @@ - - + + @@ -11748,16 +11743,16 @@ - - + + - - + + @@ -11775,8 +11770,8 @@ - - + + @@ -11787,10 +11782,10 @@ - - - - + + + + @@ -11805,9 +11800,9 @@ - + - + @@ -11825,14 +11820,14 @@ - + - + - + - + @@ -11861,79 +11856,79 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - + - + - + - + - + - + @@ -11943,12 +11938,12 @@ - - - - - - + + + + + + @@ -11970,9 +11965,9 @@ - + - + @@ -11996,41 +11991,41 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -12067,14 +12062,14 @@ - + - + - + - + @@ -12123,67 +12118,67 @@ - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + @@ -12200,9 +12195,9 @@ - + - + @@ -12245,24 +12240,24 @@ - + - + - + - + - + - + - + - + @@ -12312,111 +12307,111 @@ - - + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - - - + + + - + - + - - - - - + + + + + - + - - + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - + + + + @@ -12430,43 +12425,43 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - + + + + + + + + @@ -12964,14 +12959,14 @@ - + - + - + - + @@ -12979,9 +12974,9 @@ - + - + @@ -12989,9 +12984,9 @@ - + - + @@ -13040,90 +13035,90 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -13140,9 +13135,9 @@ - + - + @@ -13160,27 +13155,27 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -13242,44 +13237,44 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -13338,143 +13333,143 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -13813,37 +13808,37 @@ - + - + - + - + - + - + - + - - - - - - - - - - + + + + + + + + + + @@ -13852,20 +13847,20 @@ - - + + - + - + - + @@ -13878,101 +13873,101 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -14017,9 +14012,9 @@ - + - + @@ -14042,14 +14037,14 @@ - + - + - + - + @@ -14057,53 +14052,53 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -14111,10 +14106,10 @@ - - - - + + + + @@ -14169,9 +14164,9 @@ - + - + @@ -14204,40 +14199,40 @@ - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -14270,10 +14265,10 @@ - - - - + + + + @@ -14319,7 +14314,7 @@ - + @@ -14389,7 +14384,7 @@ - + @@ -14466,66 +14461,66 @@ - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - + - - - - - - + + + + + + - - - - - - + + + + + + @@ -14545,9 +14540,9 @@ - + - + @@ -14560,9 +14555,9 @@ - + - + @@ -14570,9 +14565,9 @@ - + - + @@ -14580,127 +14575,127 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -14720,78 +14715,78 @@ - + - + - + - + - + - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -14826,9 +14821,9 @@ - + - + @@ -14896,9 +14891,9 @@ - + - + @@ -14921,9 +14916,9 @@ - + - + @@ -14951,9 +14946,9 @@ - + - + @@ -14996,111 +14991,111 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - + + - + - - + + @@ -15108,8 +15103,8 @@ - - + + @@ -15126,8 +15121,8 @@ - - + + @@ -15150,58 +15145,58 @@ - - + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -15216,9 +15211,9 @@ - + - + @@ -15232,15 +15227,15 @@ - - - - - - - - - + + + + + + + + + @@ -15255,27 +15250,27 @@ - + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -15295,41 +15290,41 @@ - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -15344,25 +15339,25 @@ - + - + - - - - - - - - - - - - + + + + + + + + + + + + @@ -15382,9 +15377,9 @@ - + - + @@ -15399,14 +15394,14 @@ - - + + - - - + + + @@ -15421,39 +15416,39 @@ - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -15753,57 +15748,57 @@ - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - + + + + + @@ -15823,9 +15818,9 @@ - + - + @@ -15854,46 +15849,46 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -16002,9 +15997,9 @@ - + - + @@ -16041,110 +16036,110 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -16165,11 +16160,11 @@ - - - - - + + + + + @@ -16305,9 +16300,9 @@ - + - + @@ -16315,9 +16310,9 @@ - + - + @@ -16336,13 +16331,13 @@ - - - - - - - + + + + + + + @@ -16359,40 +16354,40 @@ - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -16414,9 +16409,9 @@ - + - + @@ -16435,17 +16430,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -16482,9 +16477,9 @@ - + - + @@ -16508,12 +16503,12 @@ - - - - - - + + + + + + @@ -16529,29 +16524,29 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -16694,14 +16689,14 @@ - + - + - + - + @@ -16737,42 +16732,42 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -16789,9 +16784,9 @@ - + - + @@ -16804,9 +16799,9 @@ - + - + @@ -16841,29 +16836,29 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -16927,45 +16922,45 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -18511,9 +18506,9 @@ - + - + @@ -18534,31 +18529,31 @@ - - - + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -18667,9 +18662,9 @@ - + - + @@ -18690,38 +18685,38 @@ - - - + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - + @@ -18850,14 +18845,14 @@ - + - + - + - + @@ -18910,9 +18905,9 @@ - + - + @@ -19121,34 +19116,34 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - + + + + @@ -19159,22 +19154,22 @@ - - + + - - + + - - + + - - + + @@ -19182,8 +19177,8 @@ - - + + @@ -19191,8 +19186,8 @@ - - + + @@ -19211,8 +19206,8 @@ - - + + @@ -19253,13 +19248,13 @@ - - - - - - - + + + + + + + @@ -19301,24 +19296,24 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - + + + + + @@ -19338,21 +19333,21 @@ - - + + - - - + + + - - - + + + @@ -19364,19 +19359,19 @@ - - + + - - + + - - + + @@ -19386,57 +19381,57 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + @@ -19454,44 +19449,44 @@ - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -19690,9 +19685,9 @@ - + - + @@ -19824,31 +19819,31 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - + + - - - - - - - + + + + + + + @@ -19886,9 +19881,9 @@ - - - + + + @@ -19898,12 +19893,12 @@ - - + + - - + + @@ -19917,53 +19912,53 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - + + + @@ -19982,46 +19977,46 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -20058,39 +20053,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -20098,81 +20093,81 @@ - + - + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - + - + - - - - - - - - - + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -20539,9 +20534,9 @@ - + - + @@ -20578,97 +20573,97 @@ - - - - - - - + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - - - - + + + + + + @@ -20715,9 +20710,9 @@ - + - + @@ -20759,29 +20754,29 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -20824,44 +20819,44 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - + + + + - - - - - - - + + + + + + + @@ -21517,9 +21512,9 @@ - + - + @@ -21535,23 +21530,23 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -21568,14 +21563,14 @@ - + - + - + - + @@ -21585,123 +21580,33 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -21722,9 +21627,9 @@ - + - + @@ -21747,19 +21652,19 @@ - + - + - + - + - + - + @@ -21772,14 +21677,14 @@ - + - + - + - + @@ -21807,14 +21712,14 @@ - + - + - + - + @@ -21822,9 +21727,9 @@ - + - + @@ -21832,24 +21737,24 @@ - + - + - + - + - + - + - + - + @@ -21857,9 +21762,9 @@ - + - + @@ -21867,14 +21772,14 @@ - + - + - + - + @@ -21882,9 +21787,9 @@ - + - + @@ -21927,522 +21832,612 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - + - + - - + + - + - - - - - - - - + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -22455,42 +22450,42 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -22500,100 +22495,100 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -22695,9 +22690,9 @@ - + - + @@ -22731,117 +22726,117 @@ - - - - + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -22858,9 +22853,9 @@ - + - + @@ -22882,104 +22877,104 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -22991,19 +22986,19 @@ - + - + - + - + - + - + @@ -23011,9 +23006,9 @@ - + - + @@ -23021,9 +23016,9 @@ - + - + @@ -23049,44 +23044,44 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -23108,7 +23103,7 @@ - + @@ -23118,7 +23113,7 @@ - + @@ -23130,18 +23125,18 @@ - - - - - - + + + + + + - - - - - + + + + + @@ -23158,14 +23153,14 @@ - + - + - + - + @@ -23173,9 +23168,9 @@ - + - + @@ -23200,74 +23195,74 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -23279,24 +23274,24 @@ - + - + - + - + - + - + - + - + @@ -23319,24 +23314,24 @@ - + - + - + - + - + - + - + - + @@ -23367,67 +23362,67 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -23906,69 +23901,69 @@ - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -25401,9 +25396,9 @@ - + - + @@ -25411,9 +25406,9 @@ - + - + @@ -25443,14 +25438,14 @@ - - - - - - - - + + + + + + + + @@ -25481,45 +25476,45 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -25623,9 +25618,9 @@ - + - + @@ -25652,15 +25647,15 @@ - - - - - - - - - + + + + + + + + + @@ -25695,32 +25690,32 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -26270,48 +26265,48 @@ - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -26494,24 +26489,24 @@ - + - + - + - + - + - + - + - + @@ -26765,9 +26760,9 @@ - + - + @@ -26800,16 +26795,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -26844,40 +26839,40 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -26889,51 +26884,51 @@ - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -26978,14 +26973,14 @@ - + - + - + - + @@ -27005,34 +27000,34 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -27067,36 +27062,36 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -28458,9 +28453,9 @@ - + - + @@ -28501,55 +28496,55 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -28560,18 +28555,18 @@ - - - - - - - - - - - - + + + + + + + + + + + + @@ -28873,9 +28868,9 @@ - + - + @@ -28975,51 +28970,51 @@ - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -29034,51 +29029,51 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - + + + + + @@ -29225,8 +29220,8 @@ - - + + @@ -29252,17 +29247,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -29300,9 +29295,9 @@ - + - + @@ -29310,9 +29305,9 @@ - + - + @@ -29320,9 +29315,9 @@ - + - + @@ -29330,19 +29325,19 @@ - + - + - + - + - + - + @@ -29383,48 +29378,48 @@ - - - + + + - - - + + + - - - - + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - + + - - + + @@ -29432,52 +29427,52 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -30026,9 +30021,9 @@ - + - + @@ -30062,23 +30057,23 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -30101,43 +30096,43 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -30209,9 +30204,9 @@ - + - + @@ -30279,15 +30274,15 @@ - - - - - - - - - + + + + + + + + + @@ -30295,30 +30290,30 @@ - - - - - - - - + + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + @@ -30339,60 +30334,60 @@ - - - + + + - - + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -30531,9 +30526,9 @@ - + - + @@ -30541,9 +30536,9 @@ - + - + @@ -30564,75 +30559,75 @@ - - - - - - - + + + + + + + - - + + - - - - - - - + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - - + + + + + @@ -30674,9 +30669,9 @@ - + - + @@ -30705,30 +30700,30 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -30745,34 +30740,34 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - + - - - - - - - - - - + + + + + + + + + + @@ -31038,14 +31033,14 @@ - + - + - + - + @@ -31062,24 +31057,24 @@ - + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -31730,9 +31725,9 @@ - + - + @@ -31763,13 +31758,13 @@ - - - - - - - + + + + + + + @@ -31787,42 +31782,42 @@ - - - - - - - - + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -32116,9 +32111,9 @@ - + - + @@ -32312,23 +32307,23 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - + + + + @@ -32346,28 +32341,28 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - + + + + + + + @@ -32386,12 +32381,12 @@ - - - - - - + + + + + + @@ -32408,9 +32403,9 @@ - + - + @@ -32427,58 +32422,58 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -32495,9 +32490,9 @@ - + - + @@ -32514,56 +32509,56 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -32572,20 +32567,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -32602,9 +32597,9 @@ - + - + @@ -32622,46 +32617,46 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -32670,50 +32665,50 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -32730,9 +32725,9 @@ - + - + @@ -32750,58 +32745,58 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - + + @@ -32810,22 +32805,22 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - + + @@ -32848,12 +32843,12 @@ - - - - - - + + + + + + @@ -33100,9 +33095,9 @@ - + - + @@ -33140,99 +33135,99 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -33249,9 +33244,9 @@ - + - + @@ -33268,38 +33263,38 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -33351,9 +33346,9 @@ - + - + @@ -33452,25 +33447,25 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - + + + + @@ -33481,88 +33476,88 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -33574,9 +33569,9 @@ - + - + @@ -33589,9 +33584,9 @@ - + - + @@ -33626,145 +33621,145 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -34147,9 +34142,9 @@ - + - + @@ -34165,43 +34160,43 @@ - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -34246,9 +34241,9 @@ - + - + @@ -34289,91 +34284,91 @@ - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -34425,6 +34420,16 @@ + + + + + + + + + + @@ -34450,16 +34455,6 @@ - - - - - - - - - - @@ -34481,12 +34476,12 @@ - - - - - - + + + + + + @@ -34504,31 +34499,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -34596,18 +34591,18 @@ - + - + - + - + @@ -34620,9 +34615,9 @@ - + - + @@ -34630,14 +34625,14 @@ - + - + - + - + @@ -34650,14 +34645,14 @@ - + - + - + - + @@ -34701,222 +34696,222 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -34928,46 +34923,46 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -34989,9 +34984,9 @@ - + - + @@ -35011,25 +35006,25 @@ - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -35041,9 +35036,9 @@ - + - + @@ -35056,9 +35051,9 @@ - + - + @@ -35066,9 +35061,9 @@ - + - + @@ -35076,14 +35071,14 @@ - + - + - + - + @@ -35091,9 +35086,9 @@ - + - + @@ -35101,9 +35096,9 @@ - + - + @@ -35142,252 +35137,252 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -35399,9 +35394,9 @@ - + - + @@ -35424,24 +35419,24 @@ - + - + - + - + - + - + - + - + @@ -35469,63 +35464,63 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + - + - + @@ -35538,9 +35533,9 @@ - + - + @@ -35558,9 +35553,9 @@ - + - + @@ -35573,14 +35568,14 @@ - + - + - + - + @@ -35629,51 +35624,51 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - + + + @@ -35726,15 +35721,15 @@ - - - - - + + + + + - - + + @@ -35749,16 +35744,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -35766,23 +35761,23 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -35816,39 +35811,39 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -35856,8 +35851,8 @@ - - + + @@ -35865,9 +35860,9 @@ - - - + + + @@ -35879,22 +35874,22 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - + + + + @@ -36534,9 +36529,9 @@ - + - + @@ -36557,31 +36552,31 @@ - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -36618,9 +36613,9 @@ - + - + @@ -36658,12 +36653,12 @@ - - - - - - + + + + + + @@ -36673,90 +36668,90 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + @@ -36773,9 +36768,9 @@ - + - + @@ -36796,47 +36791,47 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -36853,9 +36848,9 @@ - + - + @@ -36873,33 +36868,33 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -37214,74 +37209,74 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -37447,9 +37442,9 @@ - + - + @@ -37492,9 +37487,9 @@ - + - + @@ -37502,14 +37497,14 @@ - + - + - + - + @@ -37522,14 +37517,14 @@ - + - + - + - + @@ -37599,92 +37594,92 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -37702,8 +37697,8 @@ - - + + @@ -37723,184 +37718,184 @@ - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - + + - - - + + + - + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -38096,6 +38091,16 @@ + + + + + + + + + + @@ -38121,9 +38126,9 @@ - + - + @@ -38176,9 +38181,9 @@ - + - + @@ -38186,9 +38191,9 @@ - + - + @@ -38216,29 +38221,19 @@ - - - - - - - - - - - + - + - + - + @@ -38342,69 +38337,69 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -38421,11 +38416,11 @@ - - - - - + + + + + @@ -38433,8 +38428,8 @@ - - + + @@ -38452,8 +38447,8 @@ - - + + @@ -38461,8 +38456,8 @@ - - + + @@ -38496,15 +38491,15 @@ - - + + - - - - + + + + @@ -38519,34 +38514,34 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -38638,53 +38633,53 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -38693,39 +38688,39 @@ - - - - - - + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + @@ -38737,10 +38732,10 @@ - - - - + + + + @@ -38752,9 +38747,9 @@ - + - + @@ -38802,14 +38797,14 @@ - + - + - + - + @@ -38864,89 +38859,89 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - + + + + - - - - - - - + + + + + + + - - + + - - - - - - - - - - - + + + + + + + + + + + @@ -38962,10 +38957,10 @@ - - - - + + + + @@ -38985,67 +38980,67 @@ - - + + - - + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -39433,9 +39428,9 @@ - + - + @@ -39476,31 +39471,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -39549,26 +39544,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -39615,24 +39610,24 @@ - + - + - + - + - + - + - + - + @@ -39664,146 +39659,146 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - + + + + + + @@ -39812,51 +39807,51 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -39868,19 +39863,19 @@ - + - + - + - + - + - + @@ -39888,9 +39883,9 @@ - + - + @@ -39919,129 +39914,129 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -40054,10 +40049,10 @@ - - - - + + + + @@ -40104,9 +40099,9 @@ - + - + @@ -40145,29 +40140,29 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -40210,26 +40205,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -40246,9 +40241,9 @@ - + - + @@ -40262,9 +40257,9 @@ - - - + + + @@ -40561,7 +40556,7 @@ - + @@ -40645,9 +40640,9 @@ - + - + @@ -40768,43 +40763,43 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - + + + + - - - - - + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -40827,9 +40822,9 @@ - - - + + + @@ -40841,62 +40836,62 @@ - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + + - - - - - - - + + + + + + + @@ -40914,34 +40909,34 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -41028,9 +41023,9 @@ - + - + @@ -41152,35 +41147,35 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - + + - - - - - - - - - - - + + + + + + + + + + + @@ -41205,20 +41200,20 @@ - - - + + + - - + + - - + + @@ -41226,12 +41221,12 @@ - - - - - - + + + + + + @@ -41241,47 +41236,47 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - + + + - - - + + + - - - - - - - - - - - + + + + + + + + + + + - - - + + + @@ -41300,45 +41295,45 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -41360,9 +41355,9 @@ - + - + @@ -41391,88 +41386,88 @@ - - - - - - - - - - - - + + + + + + + + + + + + - + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -41514,9 +41509,9 @@ - + - + @@ -41546,35 +41541,35 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -41591,36 +41586,36 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -42161,9 +42156,9 @@ - + - + @@ -42185,20 +42180,20 @@ - - - - - - - - - + + + + + + + + + - + @@ -42210,9 +42205,9 @@ - + - + @@ -42220,14 +42215,14 @@ - + - + - + - + @@ -42235,14 +42230,14 @@ - + - + - + - + @@ -42260,9 +42255,9 @@ - + - + @@ -42319,232 +42314,232 @@ - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -42621,9 +42616,9 @@ - + - + @@ -42651,9 +42646,9 @@ - + - + @@ -42681,9 +42676,9 @@ - + - + @@ -42741,90 +42736,90 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - + + + - - + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -42859,9 +42854,9 @@ - - - + + + @@ -42872,11 +42867,11 @@ - - - - - + + + + + @@ -42886,10 +42881,10 @@ - - - - + + + + @@ -43114,9 +43109,9 @@ - + - + @@ -43124,9 +43119,9 @@ - + - + @@ -43154,18 +43149,18 @@ - - - - - - - - - - - - + + + + + + + + + + + + @@ -43180,47 +43175,47 @@ - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -43291,9 +43286,9 @@ - + - + @@ -43325,47 +43320,47 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -43412,6 +43407,11 @@ + + + + + @@ -43422,11 +43422,6 @@ - - - - - @@ -43490,8 +43485,8 @@ - - + + @@ -43552,7 +43547,7 @@ - + @@ -43596,9 +43591,9 @@ - + - + @@ -43611,9 +43606,9 @@ - + - + @@ -43695,38 +43690,38 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -43768,32 +43763,32 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -43855,9 +43850,9 @@ - + - + @@ -43921,31 +43916,31 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -43973,30 +43968,30 @@ - - - + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -44005,29 +44000,29 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -44044,9 +44039,9 @@ - + - + @@ -44058,29 +44053,29 @@ - - - + + + - - - - + + + + - - - + + + - - + + - + @@ -44127,9 +44122,9 @@ - + - + @@ -44158,166 +44153,166 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - + - + - + - + - + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - + + + + + - + - + - + - + - + - + - - - - - - - + + + + + + + - - - - - + + + + + @@ -44337,9 +44332,9 @@ - + - + @@ -44352,14 +44347,14 @@ - + - + - + - + @@ -44367,9 +44362,9 @@ - + - + @@ -44384,58 +44379,58 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -44445,28 +44440,28 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -44478,9 +44473,9 @@ - + - + @@ -44488,54 +44483,54 @@ - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -44544,34 +44539,34 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -44615,14 +44610,14 @@ - + - + - + - + @@ -44654,26 +44649,26 @@ - - - - - - - - - - - + + + + + + + + + + + - + - - - - + + + + @@ -44690,36 +44685,36 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -44755,14 +44750,14 @@ - + - + - + - + @@ -44799,29 +44794,29 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -44893,54 +44888,54 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -44996,109 +44991,109 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -45155,39 +45150,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -45242,83 +45237,83 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -45345,9 +45340,9 @@ - + - + @@ -45388,44 +45383,44 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -45517,14 +45512,14 @@ - + - + - + - + @@ -45649,78 +45644,78 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -45729,156 +45724,156 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - + + + + + + + @@ -45905,9 +45900,9 @@ - + - + @@ -45948,59 +45943,59 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -46017,9 +46012,9 @@ - + - + @@ -46044,48 +46039,48 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -46117,9 +46112,9 @@ - + - + @@ -46171,82 +46166,82 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -46272,9 +46267,9 @@ - + - + @@ -46297,26 +46292,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -46363,9 +46358,9 @@ - + - + @@ -46378,14 +46373,14 @@ - + - + - + - + @@ -46398,9 +46393,9 @@ - + - + @@ -46423,8 +46418,8 @@ - - + + @@ -46433,20 +46428,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -46464,85 +46459,85 @@ - - + + - - - - - - - + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -46667,69 +46662,69 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -46748,71 +46743,71 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -46844,9 +46839,9 @@ - + - + @@ -46854,9 +46849,9 @@ - + - + @@ -46864,9 +46859,9 @@ - + - + @@ -46915,59 +46910,59 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -46977,10 +46972,10 @@ - - - - + + + + @@ -47002,14 +46997,14 @@ - + - + - + - + @@ -47027,9 +47022,9 @@ - + - + @@ -47037,9 +47032,9 @@ - + - + @@ -47074,167 +47069,167 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -47242,31 +47237,31 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - + @@ -47320,9 +47315,9 @@ - + - + @@ -47380,38 +47375,38 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -47434,46 +47429,46 @@ - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + @@ -47984,9 +47979,9 @@ - + - + @@ -48022,43 +48017,43 @@ - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -48085,9 +48080,9 @@ - + - + @@ -48116,37 +48111,37 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -49049,9 +49044,9 @@ - + - + @@ -49059,9 +49054,9 @@ - + - + @@ -49074,9 +49069,9 @@ - + - + @@ -49084,9 +49079,9 @@ - + - + @@ -49115,74 +49110,74 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -49264,14 +49259,14 @@ - + - + - + - + @@ -49284,9 +49279,9 @@ - + - + @@ -49321,65 +49316,65 @@ - - - - - + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -49453,11 +49448,11 @@ - - - - - + + + + + @@ -49498,42 +49493,42 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -49614,11 +49609,11 @@ - - - - - + + + + + @@ -49734,9 +49729,9 @@ - + - + @@ -49764,86 +49759,86 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + - + - + - - - - - - - - - - - + + + + + + + + + + + - - + + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - + + + + + + + + + + + @@ -49885,9 +49880,9 @@ - + - + @@ -49920,32 +49915,32 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -49968,44 +49963,44 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - + + + + + - + @@ -50017,9 +50012,9 @@ - + - + @@ -50043,31 +50038,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -50244,9 +50239,9 @@ - + - + @@ -50254,14 +50249,14 @@ - + - + - + - + @@ -50269,9 +50264,9 @@ - + - + @@ -50289,46 +50284,46 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - + @@ -50340,14 +50335,14 @@ - + - + - + - + @@ -50355,14 +50350,14 @@ - + - + - + - + @@ -50385,9 +50380,9 @@ - + - + @@ -50400,9 +50395,9 @@ - + - + @@ -50466,39 +50461,39 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -50508,52 +50503,52 @@ - - - - + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -50608,32 +50603,32 @@ - - - - - - - - - + + + + + + + + + - - - + + + - - + + - + - - - - + + + + @@ -50671,9 +50666,9 @@ - - - + + + @@ -50720,51 +50715,51 @@ - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -50776,14 +50771,14 @@ - + - + - + - + @@ -50791,19 +50786,19 @@ - + - + - + - + - + - + @@ -50811,14 +50806,14 @@ - + - + - + - + @@ -50885,399 +50880,399 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - + + - + - - + + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -51289,24 +51284,24 @@ - + - + - + - + - + - + - + - + @@ -51329,24 +51324,24 @@ - + - + - + - + - + - + - + - + @@ -51387,65 +51382,65 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -51462,9 +51457,9 @@ - + - + @@ -51473,29 +51468,29 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -51507,9 +51502,9 @@ - + - + @@ -51562,9 +51557,9 @@ - + - + @@ -51616,30 +51611,30 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - + + + + + - - + + @@ -51680,50 +51675,50 @@ - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -51734,28 +51729,28 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -52192,14 +52187,14 @@ - + - + - + - + @@ -52207,9 +52202,9 @@ - + - + @@ -52235,41 +52230,41 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - + - + - + - + - + - - - - - + + + + + @@ -52298,33 +52293,33 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -52410,9 +52405,9 @@ - + - + @@ -52431,21 +52426,21 @@ - - - - - - - - - - + + + + + + + + + + - - + + @@ -52463,27 +52458,27 @@ - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + @@ -52500,9 +52495,9 @@ - + - + @@ -52520,27 +52515,27 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -52597,9 +52592,9 @@ - + - + @@ -52607,9 +52602,9 @@ - + - + @@ -52655,13 +52650,13 @@ - - - - - - - + + + + + + + @@ -52674,8 +52669,8 @@ - - + + @@ -52686,36 +52681,36 @@ - - - + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -52736,14 +52731,14 @@ - - - - - - - - + + + + + + + + @@ -52900,9 +52895,9 @@ - + - + @@ -52910,9 +52905,9 @@ - + - + @@ -52966,8 +52961,8 @@ - - + + @@ -52991,8 +52986,8 @@ - - + + @@ -53269,9 +53264,9 @@ - + - + @@ -53330,8 +53325,8 @@ - - + + @@ -53432,9 +53427,9 @@ - + - + @@ -53488,8 +53483,8 @@ - - + + @@ -53639,14 +53634,14 @@ - + - + - + - + @@ -53831,20 +53826,20 @@ - - - - - - + + + + + + - - - - - - + + + + + + @@ -53862,38 +53857,38 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - + + @@ -53912,12 +53907,12 @@ - - - - - - + + + + + + @@ -54032,14 +54027,14 @@ - + - + - + - + @@ -54078,60 +54073,60 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + - - - - + + + + @@ -54148,45 +54143,45 @@ - - - - - - - - - - + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -54232,12 +54227,12 @@ - - - - - - + + + + + + @@ -54259,9 +54254,9 @@ - + - + @@ -54295,71 +54290,71 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -54551,9 +54546,9 @@ - + - + @@ -54916,9 +54911,9 @@ - + - + @@ -54931,14 +54926,14 @@ - + - + - + - + @@ -55065,19 +55060,19 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -55086,84 +55081,79 @@ - - - - + + + + - - - - - - - + + + + + + + - - + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - + + + + + + + - - - - - @@ -55174,6 +55164,11 @@ + + + + + @@ -55305,9 +55300,9 @@ - + - + @@ -55347,69 +55342,69 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -55419,40 +55414,40 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -55479,9 +55474,9 @@ - + - + @@ -55521,105 +55516,105 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - + + + + + + + + + - + - + - + - + - + - + - + - + @@ -55646,81 +55641,81 @@ - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + @@ -56015,7 +56010,7 @@ - + @@ -56156,24 +56151,24 @@ - + - + - + - + - + - + - + - + @@ -56189,124 +56184,124 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -56321,24 +56316,24 @@ - + - + - + - + - + - + - + - + @@ -56346,85 +56341,85 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -56449,9 +56444,9 @@ - + - + @@ -56464,9 +56459,9 @@ - + - + @@ -56479,9 +56474,9 @@ - + - + @@ -56489,9 +56484,9 @@ - + - + @@ -56514,9 +56509,9 @@ - + - + @@ -56524,14 +56519,14 @@ - + - + - + - + @@ -56554,9 +56549,9 @@ - + - + @@ -56569,34 +56564,44 @@ - + + + + + + + + + + + - + - + - + - + - + - + - + - + - + - + - + @@ -56609,14 +56614,14 @@ - + - + - + - + @@ -56624,14 +56629,9 @@ - + - - - - - - + @@ -56639,11 +56639,6 @@ - - - - - @@ -56679,129 +56674,129 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -56829,47 +56824,47 @@ - - - + + + - - + + - - - + + + - - - + + + - - + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - + + + @@ -56878,11 +56873,11 @@ - - - - - + + + + + @@ -56896,9 +56891,9 @@ - - - + + + @@ -56930,16 +56925,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -56989,14 +56984,14 @@ - + - + - + - + @@ -57009,12 +57004,12 @@ - - - - - - + + + + + + @@ -57044,9 +57039,9 @@ - + - + @@ -57074,9 +57069,9 @@ - + - + @@ -57191,39 +57186,39 @@ - - - - - - - - - - + + + + + + + + + + - - + + - - - - - - - - - + + + + + + + + + @@ -57236,20 +57231,20 @@ - + - + - - - + + + @@ -57296,9 +57291,9 @@ - + - + @@ -57311,9 +57306,9 @@ - + - + @@ -57344,19 +57339,19 @@ - - - - - - - - - - + + + + + + + + + + - + @@ -57518,9 +57513,9 @@ - + - + @@ -57543,9 +57538,9 @@ - + - + @@ -57553,9 +57548,9 @@ - + - + @@ -57563,9 +57558,9 @@ - + - + @@ -57583,19 +57578,19 @@ - + - + - + - + - + - + @@ -57623,24 +57618,24 @@ - + - + - + - + - + - + - + - + @@ -57648,49 +57643,49 @@ - + - + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - + + @@ -57700,29 +57695,29 @@ - - - - + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -57735,17 +57730,17 @@ - - - + + + - - - - - + + + + + @@ -57755,27 +57750,27 @@ - - - + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -57804,13 +57799,13 @@ - - - - - - - + + + + + + + @@ -57828,35 +57823,35 @@ - - + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -57867,15 +57862,15 @@ - - + + - - + + @@ -57884,8 +57879,8 @@ - - + + @@ -57894,52 +57889,52 @@ - - + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - + + + + + @@ -58127,9 +58122,9 @@ - + - + @@ -58139,49 +58134,49 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -58198,8 +58193,8 @@ - - + + @@ -58208,22 +58203,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -58245,9 +58240,9 @@ - + - + @@ -58283,13 +58278,13 @@ - + - - + + @@ -58331,19 +58326,19 @@ - + - + - + - + - + - + @@ -58369,69 +58364,69 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - + + + + + + + + @@ -58477,9 +58472,9 @@ - + - + @@ -58494,29 +58489,29 @@ - - - - - - - - - - - - + + + + + + + + + + + + - + - + - - - + + + @@ -58528,7 +58523,7 @@ - + @@ -58588,8 +58583,8 @@ - - + + @@ -58737,9 +58732,9 @@ - + - + @@ -58754,30 +58749,30 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -58812,8 +58807,8 @@ - - + + @@ -58821,35 +58816,35 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -58864,9 +58859,9 @@ - + - + @@ -58904,39 +58899,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -58952,74 +58947,74 @@ - - - - - - - - + + + + + + + + - - + + - - - - - - - + + + + + + + - - - - + + + + - - - - - - - + + + + + + + - - - + + + - - - - - - + + + + + + - - - - - - - + + + + + + + - - - + + + @@ -59059,9 +59054,9 @@ - + - + @@ -59096,24 +59091,24 @@ - - - - - + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -59138,24 +59133,24 @@ - + - + - + - + - + - + - + - + @@ -59169,43 +59164,43 @@ - - - + + + - - - - - + + + + + - - - - - - - + + + + + + + - - + + - - - - - - - - - - + + + + + + + + + + @@ -59214,34 +59209,34 @@ - - - - - - + + + + + + - - + + - - - - + + + + - - - - - - + + + + + + @@ -59256,14 +59251,14 @@ - + - + - + - + @@ -59271,9 +59266,9 @@ - + - + @@ -59281,19 +59276,19 @@ - + - + - + - + - + - + @@ -59317,47 +59312,47 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -59367,9 +59362,9 @@ - + - + @@ -59383,51 +59378,51 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -59437,9 +59432,9 @@ - + - + @@ -59447,14 +59442,14 @@ - + - + - + - + @@ -59502,9 +59497,9 @@ - + - + @@ -59512,14 +59507,14 @@ - + - + - + - + @@ -59532,14 +59527,14 @@ - + - + - + - + @@ -59549,90 +59544,90 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - + + + + @@ -59644,8 +59639,8 @@ - - + + @@ -59659,90 +59654,90 @@ - - - - - - + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -59750,34 +59745,34 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -59812,9 +59807,9 @@ - + - + @@ -59827,34 +59822,34 @@ - + - + - + - + - + - + - + - + - - - - - + + + + + @@ -59869,168 +59864,168 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -60057,29 +60052,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -60092,174 +60087,174 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -60306,7 +60301,7 @@ - + @@ -60348,9 +60343,9 @@ - + - + @@ -60398,123 +60393,123 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -60524,8 +60519,8 @@ - - + + @@ -60564,8 +60559,8 @@ - - + + @@ -60633,8 +60628,8 @@ - - + + @@ -60644,49 +60639,49 @@ - - + + - - - - - - + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -60717,21 +60712,21 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -60793,9 +60788,9 @@ - + - + @@ -60848,13 +60843,13 @@ - + - - + + @@ -60873,9 +60868,9 @@ - + - + @@ -60901,86 +60896,86 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - + + - - + + - - - + + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -61087,9 +61082,9 @@ - + - + @@ -61097,106 +61092,106 @@ - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -61206,59 +61201,59 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + @@ -61268,9 +61263,9 @@ - - - + + + @@ -61280,9 +61275,9 @@ - + - + @@ -61300,9 +61295,9 @@ - + - + @@ -61320,19 +61315,19 @@ - + - + - + - + - + - + @@ -61340,72 +61335,72 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - + - + - + - + - + - + - + - + @@ -61421,10 +61416,10 @@ - - - - + + + + @@ -61434,16 +61429,16 @@ - + - + - - - + + + @@ -61508,32 +61503,32 @@ - + - + - - - - - - - - - - - - - + + + + + + + + + + + + + - - + + @@ -61549,8 +61544,8 @@ - - + + @@ -61566,8 +61561,8 @@ - - + + @@ -61587,13 +61582,13 @@ - - - + + + - - + + @@ -61601,9 +61596,9 @@ - - - + + + @@ -61623,9 +61618,9 @@ - + - + @@ -61633,19 +61628,19 @@ - + - + - + - + - + - + @@ -61670,30 +61665,30 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -61703,9 +61698,9 @@ - - - + + + @@ -61759,14 +61754,14 @@ - + - + - + - + @@ -61828,31 +61823,31 @@ - - - + + + - - + + - - - - - - - + + + + + + + - - - + + + @@ -61930,7 +61925,7 @@ - + @@ -62012,24 +62007,24 @@ - + - + - + - + - + - + - + - + @@ -62037,19 +62032,19 @@ - + - + - + - + - + - + @@ -62057,47 +62052,47 @@ - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -62108,69 +62103,69 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - + + + + - - - - + + + + - - - - - - - - + + + + + + + + @@ -62181,11 +62176,11 @@ - - - - - + + + + + @@ -62193,38 +62188,38 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - + - + - + - + - - - - + + + + @@ -62234,9 +62229,9 @@ - + - + @@ -62245,34 +62240,34 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -62398,9 +62393,9 @@ - + - + @@ -62408,24 +62403,24 @@ - + - + - - - - - - - - - - - + + + + + + + + + + + @@ -62447,11 +62442,11 @@ - - - - - + + + + + @@ -62497,14 +62492,14 @@ - + - + - + - + @@ -62527,14 +62522,14 @@ - + - + - + - + @@ -62572,8 +62567,8 @@ - - + + @@ -62620,25 +62615,25 @@ - + - - - - - - - - - + + + + + + + + + - - - + + + @@ -62649,27 +62644,27 @@ - - - + + + - - + + - - + + - - - - - - - - + + + + + + + + @@ -62761,9 +62756,9 @@ - + - + @@ -62838,52 +62833,52 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -62894,8 +62889,8 @@ - - + + @@ -62909,67 +62904,67 @@ - - - - - - - - - - - + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + + + @@ -62984,9 +62979,9 @@ - + - + @@ -63004,14 +62999,14 @@ - + - + - + - + @@ -63021,58 +63016,58 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - + + - - - - + + + + - + - + - + - + - + - + - + - + - + - + @@ -63090,25 +63085,25 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - + + + + @@ -63116,36 +63111,36 @@ - - - - - - + + + + + + - + - + - + - + - + - + - + @@ -63153,78 +63148,78 @@ - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -63234,30 +63229,30 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - + + - - + + @@ -65531,9 +65526,9 @@ - + - + @@ -65674,11 +65669,11 @@ - - - - - + + + + + @@ -65691,15 +65686,15 @@ - - - + + + - - - - + + + + @@ -65732,9 +65727,9 @@ - - - + + + @@ -65936,7 +65931,7 @@ - + @@ -65965,9 +65960,9 @@ - + - + @@ -65985,14 +65980,14 @@ - + - + - + - + @@ -66077,8 +66072,8 @@ - - + + @@ -66108,18 +66103,18 @@ - + - - - + + + - - + + @@ -66260,9 +66255,9 @@ - + - + @@ -66270,9 +66265,9 @@ - + - + @@ -66389,8 +66384,8 @@ - - + + @@ -66403,7 +66398,7 @@ - + @@ -66411,7 +66406,7 @@ - + @@ -66491,7 +66486,7 @@ - + @@ -66508,9 +66503,9 @@ - + - + @@ -66523,9 +66518,9 @@ - + - + @@ -66603,39 +66598,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -66643,9 +66638,9 @@ - + - + @@ -66718,9 +66713,9 @@ - + - + @@ -66738,9 +66733,9 @@ - + - + @@ -66753,9 +66748,9 @@ - + - + @@ -66943,9 +66938,9 @@ - + - + @@ -66953,19 +66948,19 @@ - + - + - + - + - + - + @@ -66978,19 +66973,19 @@ - + - + - + - + - + - + @@ -67167,8 +67162,8 @@ - - + + @@ -67176,18 +67171,18 @@ - - - - - - - + + + + + + + - + @@ -67353,31 +67348,31 @@ - - - - + + + + - - + + - - - - - - - + + + + + + + - + - - + + @@ -67399,43 +67394,43 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - + + + + + + + + + + - - + + @@ -67444,43 +67439,43 @@ - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - + @@ -67488,7 +67483,7 @@ - + @@ -67556,9 +67551,9 @@ - - - + + + @@ -67581,14 +67576,14 @@ - + - - + + - - - + + + @@ -67650,16 +67645,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -68180,12 +68175,12 @@ - - - - - - + + + + + + @@ -68195,10 +68190,10 @@ - - - - + + + + @@ -68207,32 +68202,32 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - + + + + + - - - - - - - - + + + + + + + + @@ -68245,18 +68240,18 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -68270,19 +68265,19 @@ - - - - - - + + + + + + - - - - - - + + + + + + @@ -68292,10 +68287,10 @@ - - - - + + + + @@ -68947,134 +68942,134 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -69082,24 +69077,24 @@ - + - + - + - + - + - + - + - + @@ -69107,14 +69102,14 @@ - + - + - + - + @@ -69154,216 +69149,216 @@ - - + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - + + - + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - - + + - + - - + + - + - - - - - - + + + + + + - - - + + + - - - - - - + + + + + + - - - - - - + + + + + + - - - - - - + + + + + + - + - + - + - + - + - + @@ -69374,37 +69369,37 @@ - + - + - - + + - - + + - - + + - - - + + + - - - + + + @@ -69854,9 +69849,9 @@ - + - + @@ -69937,15 +69932,15 @@ - - - - - - - - - + + + + + + + + + @@ -69970,8 +69965,8 @@ - - + + @@ -71056,9 +71051,9 @@ - + - + @@ -71136,38 +71131,38 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - + + + + + + + @@ -71323,34 +71318,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -71475,33 +71470,33 @@ - - - - - - - - - - + + + + + + + + + + - - - - - + + + + + - - - - - + + + + + @@ -71528,62 +71523,62 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -76127,13 +76122,13 @@ - + - + - + - + @@ -76141,19 +76136,19 @@ - + - + - + - + - + - + @@ -76202,10 +76197,10 @@ - - - - + + + + @@ -76223,37 +76218,37 @@ - - + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -76261,44 +76256,44 @@ - - - - - - + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - + + + + + + - - - - - - + + + + + + - - - - - + + + + + @@ -76316,8 +76311,8 @@ - - + + @@ -76464,18 +76459,18 @@ - + - + - + - + - + - + @@ -76483,9 +76478,9 @@ - + - + @@ -76493,34 +76488,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -76548,14 +76543,14 @@ - + - + - + - + @@ -76603,12 +76598,12 @@ - - + + - - - + + + @@ -76619,14 +76614,14 @@ - - - - - - - - + + + + + + + + @@ -76637,9 +76632,9 @@ - - - + + + @@ -76658,66 +76653,66 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - + + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -76726,44 +76721,44 @@ - - - - + + + + - - + + - - - + + + - - - - - - - - + + + + + + + + - - - + + + - - - - - - - + + + + + + + @@ -76857,24 +76852,24 @@ - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -76894,10 +76889,10 @@ - - - - + + + + @@ -77196,11 +77191,11 @@ - + - + - + @@ -77219,12 +77214,12 @@ - - - - - - + + + + + + @@ -77233,13 +77228,13 @@ - - - - - - - + + + + + + + @@ -78421,7 +78416,7 @@ - + @@ -78862,16 +78857,16 @@ - + - + - + @@ -78949,14 +78944,14 @@ - + - + - + - + @@ -78964,14 +78959,14 @@ - + - + - + - + @@ -78984,9 +78979,9 @@ - + - + @@ -79009,19 +79004,19 @@ - + - + - + - + - + - + @@ -79029,9 +79024,9 @@ - + - + @@ -79039,14 +79034,14 @@ - + - + - + - + @@ -79054,9 +79049,9 @@ - + - + @@ -79069,14 +79064,14 @@ - + - + - + - + @@ -79089,19 +79084,19 @@ - + - + - + - + - + - + @@ -79109,9 +79104,9 @@ - + - + @@ -79119,14 +79114,14 @@ - + - + - + - + @@ -79139,9 +79134,9 @@ - + - + @@ -79209,9 +79204,9 @@ - + - + @@ -79269,9 +79264,9 @@ - + - + @@ -79284,14 +79279,14 @@ - + - + - + - + @@ -79299,11 +79294,6 @@ - - - - - @@ -79394,7 +79384,7 @@ - + @@ -79490,13 +79480,13 @@ - + - + @@ -79508,7 +79498,7 @@ - + @@ -79602,7 +79592,7 @@ - + @@ -79773,143 +79763,143 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -79920,12 +79910,12 @@ - - - - - - + + + + + + @@ -79934,9 +79924,9 @@ - - - + + + @@ -79950,23 +79940,23 @@ - - - + + + - - - - + + + + - - - + + + @@ -79977,13 +79967,13 @@ - - - + + + - - - + + + @@ -79994,138 +79984,138 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - + + + + - - + + - - - - - - - - + + + + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - + + + - - + + @@ -80147,26 +80137,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -80189,20 +80179,20 @@ - - - - + + + + - - + + - - - - + + + + @@ -80213,9 +80203,9 @@ - - - + + + @@ -80257,19 +80247,19 @@ - - - - - - + + + + + + - - + + - + @@ -80529,12 +80519,12 @@ - - - - - - + + + + + + @@ -80676,29 +80666,29 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - + - - - + + + @@ -80728,11 +80718,11 @@ - + - + - + @@ -80740,29 +80730,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -80770,9 +80760,9 @@ - + - + @@ -80780,14 +80770,14 @@ - + - + - + - + @@ -80795,24 +80785,24 @@ - + - + - + - + - + - + - + - + @@ -80825,9 +80815,9 @@ - + - + @@ -80835,9 +80825,9 @@ - + - + @@ -81095,9 +81085,9 @@ - + - + @@ -81105,9 +81095,9 @@ - + - + @@ -81120,24 +81110,24 @@ - + - + - + - + - + - + - + - + @@ -81145,19 +81135,19 @@ - + - + - + - + - + - + @@ -81315,9 +81305,9 @@ - + - + @@ -81325,9 +81315,9 @@ - + - + @@ -81335,14 +81325,14 @@ - + - + - + - + @@ -81390,9 +81380,9 @@ - + - + @@ -81425,9 +81415,9 @@ - + - + @@ -81475,19 +81465,19 @@ - + - + - + - + - + - + @@ -81520,24 +81510,24 @@ - + - + - + - + - + - + - + - + @@ -81599,60 +81589,60 @@ - - - + + + - - - - + + + + - - - - - - - + + + + + + + - - - - - - + + + + + + - + - - - - - + + + + + - - - - - - - + + + + + + + - - - - + + + + - + @@ -81668,48 +81658,48 @@ - - + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - + + + @@ -81721,31 +81711,31 @@ - - - + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - + + + - - - + + + @@ -81758,17 +81748,17 @@ - - - - + + + + - - - + + + @@ -81784,12 +81774,12 @@ - - - - - - + + + + + + @@ -81797,7 +81787,7 @@ - + @@ -82683,29 +82673,29 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - + + + + + @@ -82734,7 +82724,7 @@ - + @@ -82747,35 +82737,35 @@ - - - + + + - - - - - - - + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - + + + + + + + @@ -82784,31 +82774,31 @@ - - - + + + - - - - - + + + + + - - - - - + + + + + - - - - + + + + - - - + + + @@ -82891,11 +82881,11 @@ - + - + @@ -83062,41 +83052,41 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + @@ -83135,9 +83125,9 @@ - - - + + + @@ -83179,15 +83169,15 @@ - - - - - - - - - + + + + + + + + + @@ -83338,40 +83328,40 @@ - - - + + + - - - + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - + - - - + + + @@ -83415,39 +83405,39 @@ - - - + + + - - - - - + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + @@ -83458,31 +83448,31 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -83490,39 +83480,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -83547,10 +83537,10 @@ - - - - + + + + @@ -83569,17 +83559,17 @@ - - - - + + + + - - - + + + @@ -83587,34 +83577,34 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - + + + + + + + + - - - + + + @@ -83622,9 +83612,9 @@ - - - + + + @@ -83632,116 +83622,116 @@ - - - + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - + - + - + - + @@ -83749,34 +83739,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -83784,9 +83774,9 @@ - + - + @@ -83806,13 +83796,13 @@ - - - - + + + + - + @@ -83829,121 +83819,121 @@ - - - - - - + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - + + + + + + + + - - - - + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - + + + + + + - - - - - - - + + + + + + + - + - + - + @@ -83959,9 +83949,9 @@ - - - + + + @@ -85726,33 +85716,33 @@ - + - + - + - + - + - + - + - + - + - + @@ -85760,14 +85750,14 @@ - + - + - + - + @@ -85780,19 +85770,19 @@ - + - + - + - + - + - + @@ -85800,9 +85790,9 @@ - + - + @@ -85941,31 +85931,31 @@ - - - - - + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -85978,25 +85968,25 @@ - - - + + + - - - + + + - - + + - - - + + + @@ -86085,9 +86075,9 @@ - + - + @@ -86095,9 +86085,9 @@ - + - + @@ -86140,9 +86130,9 @@ - + - + @@ -86428,17 +86418,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -86487,17 +86477,17 @@ - - - + + + - - + + @@ -86790,30 +86780,30 @@ - - - - - + + + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + @@ -86838,9 +86828,9 @@ - + - + @@ -86857,34 +86847,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -87054,57 +87044,57 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - + - - - - + + + + - - + + - - + + - - - - - - - - + + + + + + + + @@ -87245,19 +87235,19 @@ - + - + - + - + - + - + @@ -87363,23 +87353,23 @@ - - - + + + - - - - - + + + + + - - - - - + + + + + @@ -87410,7 +87400,7 @@ - + @@ -87492,14 +87482,14 @@ - + - + - + - + @@ -87532,9 +87522,9 @@ - + - + @@ -87542,9 +87532,9 @@ - + - + @@ -87562,24 +87552,24 @@ - + - + - + - + - + - + - + - + @@ -87597,14 +87587,14 @@ - + - + - + - + @@ -87837,9 +87827,9 @@ - - - + + + @@ -87921,13 +87911,13 @@ - - - + + + - - + + @@ -88110,21 +88100,21 @@ - - - - + + + + - - - - - - - - - - + + + + + + + + + + @@ -88139,16 +88129,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -88159,8 +88149,8 @@ - - + + @@ -88180,28 +88170,28 @@ - - - + + + - - - - + + + + - - - - - + + + + + - - - - + + + + @@ -88229,17 +88219,17 @@ - - + + - - - - + + + + - - - + + + @@ -88478,19 +88468,19 @@ - + - + - + - + - + - + @@ -88503,19 +88493,19 @@ - + - + - + - + - + - + @@ -88523,29 +88513,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -88652,34 +88642,34 @@ - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - - + + - - - + + + @@ -88690,74 +88680,74 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + @@ -88810,7 +88800,7 @@ - + @@ -88822,24 +88812,24 @@ - + - + - + - + - + - + - + - + @@ -88847,19 +88837,19 @@ - + - + - + - + - + - + @@ -88908,35 +88898,35 @@ - - - + + + - + - - + + - - - + + + - - - + + + - - + + - - - - - + + + + + @@ -88947,40 +88937,40 @@ - - - - - - - - - + + + + + + + + + - - + + - - - - - - - - - - + + + + + + + + + + - - - - - - - + + + + + + + @@ -89001,19 +88991,19 @@ - + - + - + - + - + - + @@ -89119,23 +89109,23 @@ - - - + + + - - - - - + + + + + - - - - - + + + + + @@ -100713,7 +100703,7 @@ - + @@ -101135,7 +101125,7 @@ - + @@ -101147,9 +101137,9 @@ - + - + @@ -101162,19 +101152,19 @@ - + - + - + - + - + - + @@ -101197,9 +101187,9 @@ - + - + @@ -101212,9 +101202,9 @@ - + - + @@ -101252,9 +101242,9 @@ - + - + @@ -101297,9 +101287,9 @@ - + - + @@ -101322,19 +101312,19 @@ - + - + - + - + - + - + @@ -101342,14 +101332,14 @@ - + - + - + - + @@ -101357,34 +101347,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -101408,27 +101398,27 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - + + + + + @@ -101453,9 +101443,9 @@ - - - + + + @@ -101472,59 +101462,59 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + - - - - - - + + + + + + - - + + - - + + @@ -101579,9 +101569,9 @@ - - - + + + @@ -101609,9 +101599,9 @@ - - - + + + @@ -101697,11 +101687,11 @@ - - - - - + + + + + @@ -101797,9 +101787,9 @@ - - - + + + @@ -101834,25 +101824,25 @@ - - + + - - - - - - - - - - - + + + + + + + + + + + @@ -101873,17 +101863,17 @@ - - - - - + + + + + - - - - + + + + @@ -101899,55 +101889,55 @@ - - - - - - - + + + + + + + - - - - + + + + - - + + - - + + - - + + - - - + + + - - - + + + - - - + + + - + @@ -102009,9 +101999,9 @@ - + - + @@ -102203,16 +102193,16 @@ - - + + - - - - - + + + + + @@ -102227,9 +102217,9 @@ - + - + @@ -102273,15 +102263,15 @@ - - + + - - + + @@ -102297,7 +102287,7 @@ - + @@ -102309,9 +102299,9 @@ - + - + @@ -102359,9 +102349,9 @@ - + - + @@ -102379,14 +102369,14 @@ - + - + - + - + @@ -102434,9 +102424,9 @@ - + - + @@ -102454,54 +102444,54 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -102519,19 +102509,19 @@ - + - + - + - + - + - + @@ -102539,9 +102529,9 @@ - + - + @@ -102549,9 +102539,9 @@ - + - + @@ -102569,14 +102559,14 @@ - + - + - + - + @@ -102766,15 +102756,15 @@ - - - - + + + + - - - + + + @@ -102784,8 +102774,8 @@ - - + + @@ -102921,15 +102911,15 @@ - - + + - - - + + + @@ -102992,25 +102982,25 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - + + + @@ -103081,9 +103071,9 @@ - - - + + + @@ -103110,20 +103100,20 @@ - - + + - - - - - - - - + + + + + + + + @@ -103167,57 +103157,57 @@ - - - - - + + + + + - - - - - - + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -103228,29 +103218,29 @@ - - - - - + + + + + - - - + + + - - - - - + + + + + @@ -103272,19 +103262,19 @@ - - + + - - - - - + + + + + - - + + @@ -103350,18 +103340,18 @@ - - - - + + + + - - + + @@ -103393,19 +103383,19 @@ - + - - - - - - + + + + + + - - + + @@ -104027,21 +104017,21 @@ - + - + - + - + - + @@ -104049,14 +104039,14 @@ - + - + - + - + @@ -104069,9 +104059,9 @@ - + - + @@ -104140,42 +104130,42 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - + + + - - + + - - - - - - - - - - - + + + + + + + + + + + @@ -104188,25 +104178,25 @@ - - - + + + - - - - - - - - - - - + + + + + + + + + + + @@ -104915,14 +104905,14 @@ - + - + - + - + @@ -104980,9 +104970,9 @@ - + - + @@ -104995,9 +104985,9 @@ - + - + @@ -105040,9 +105030,9 @@ - + - + @@ -105050,9 +105040,9 @@ - + - + @@ -105065,9 +105055,9 @@ - + - + @@ -105090,9 +105080,9 @@ - + - + @@ -105120,9 +105110,9 @@ - + - + @@ -105144,10 +105134,10 @@ - - - - + + + + @@ -105173,11 +105163,11 @@ - - - - - + + + + + @@ -105399,14 +105389,14 @@ - - + + - + @@ -105427,10 +105417,10 @@ - - - - + + + + @@ -105439,8 +105429,8 @@ - - + + @@ -105494,17 +105484,17 @@ - - - + + + - - + + @@ -105529,11 +105519,11 @@ - - - - - + + + + + @@ -105580,8 +105570,8 @@ - - + + @@ -105623,12 +105613,12 @@ - + - - - - + + + + @@ -106120,9 +106110,9 @@ - + - + @@ -106151,17 +106141,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -106306,9 +106296,9 @@ - + - + @@ -106321,14 +106311,14 @@ - + - + - + - + @@ -106425,13 +106415,13 @@ - - - + + + - - - + + + @@ -106468,20 +106458,20 @@ - - - + + + - + - - - + + + @@ -106563,7 +106553,7 @@ - + @@ -106820,9 +106810,9 @@ - + - + @@ -106830,44 +106820,44 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -106880,49 +106870,49 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -106985,9 +106975,9 @@ - + - + @@ -107119,7 +107109,7 @@ - + @@ -107981,30 +107971,30 @@ - - - - - + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + @@ -108014,169 +108004,169 @@ - - - - - + + + + + - - - + + + - - - - - - - - + + + + + + + + - - - - - - - + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - + + + + + + - - - - - + + + + + - + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -108188,40 +108178,40 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -108231,44 +108221,44 @@ - - - + + + - - + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + @@ -108277,20 +108267,20 @@ - - - + + + - - - - - - - - - - + + + + + + + + + + @@ -108437,26 +108427,26 @@ - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + @@ -108707,7 +108697,7 @@ - + @@ -108844,9 +108834,9 @@ - + - + @@ -108869,24 +108859,24 @@ - + - + - + - + - + - + - + - + @@ -108899,34 +108889,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -109377,23 +109367,23 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -109452,13 +109442,13 @@ - - - - - - - + + + + + + + @@ -109479,45 +109469,45 @@ - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - + + + + - - - + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -109557,186 +109547,186 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -109754,111 +109744,111 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - + + + + - - - - - - - + + + + + + + - - - - + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - + - + @@ -109871,30 +109861,30 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - + + + + + + + @@ -111109,14 +111099,14 @@ - + - + - + - + @@ -111205,9 +111195,9 @@ - - - + + + @@ -111218,18 +111208,18 @@ - - - + + + - - + + - - - + + + @@ -112295,9 +112285,9 @@ - + - + @@ -112330,9 +112320,9 @@ - + - + @@ -112385,8 +112375,8 @@ - - + + @@ -112420,8 +112410,8 @@ - - + + @@ -114005,19 +113995,19 @@ - + - + - + - + - + - + @@ -114035,9 +114025,9 @@ - + - + @@ -114045,34 +114035,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -114080,24 +114070,24 @@ - + - + - + - + - + - + - + - + @@ -114105,9 +114095,9 @@ - + - + @@ -114115,9 +114105,9 @@ - + - + @@ -114165,14 +114155,14 @@ - + - + - + - + @@ -114260,18 +114250,18 @@ - - - - + + + + - - - + + + - - - + + + @@ -114320,32 +114310,32 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -114361,15 +114351,15 @@ - - - - - - - - - + + + + + + + + + @@ -114386,8 +114376,8 @@ - - + + @@ -114395,59 +114385,59 @@ - - - - - - - - + + + + + + + + - - + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - + + + + + + + @@ -114480,25 +114470,25 @@ - - - + + + - - - - + + + + - - - - - + + + + + @@ -114516,27 +114506,27 @@ - - + + - - - - - - - - + + + + + + + + - - + + @@ -114615,20 +114605,20 @@ - - + + - + - - - - - - - - + + + + + + + + @@ -114644,21 +114634,21 @@ - + - + - + - + - + - + - + @@ -114666,9 +114656,9 @@ - + - + @@ -114676,19 +114666,19 @@ - + - + - + - + - + - + @@ -114696,9 +114686,9 @@ - + - + @@ -114722,60 +114712,60 @@ - - - - + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -114783,29 +114773,29 @@ - - - - - + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -114814,18 +114804,18 @@ - - - + + + - - - - - + + + + + @@ -114836,20 +114826,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -114928,36 +114918,36 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -114970,9 +114960,9 @@ - + - + @@ -114995,9 +114985,9 @@ - + - + @@ -115035,9 +115025,9 @@ - + - + @@ -115075,9 +115065,9 @@ - + - + @@ -115085,9 +115075,9 @@ - + - + @@ -115110,9 +115100,9 @@ - + - + @@ -115140,9 +115130,9 @@ - + - + @@ -115242,9 +115232,9 @@ - - - + + + @@ -115276,34 +115266,34 @@ - - + + - + - - - - - - + + + + + + - - - + + + - - + + - - - + + + @@ -115314,8 +115304,8 @@ - - + + @@ -115413,15 +115403,15 @@ - - - - - - - - - + + + + + + + + + @@ -115546,32 +115536,32 @@ - - - - - + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + @@ -115613,9 +115603,9 @@ - - - + + + @@ -115662,14 +115652,14 @@ - - - - - - - - + + + + + + + + @@ -115696,12 +115686,12 @@ - - - - - - + + + + + + @@ -115714,14 +115704,14 @@ - - - - - - - - + + + + + + + + @@ -115763,8 +115753,8 @@ - - + + @@ -116401,24 +116391,24 @@ - + - + - + - + - + - + - + - + @@ -116431,9 +116421,9 @@ - + - + @@ -116443,25 +116433,25 @@ - - - + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -116494,8 +116484,8 @@ - - + + @@ -116526,9 +116516,9 @@ - + - + @@ -116659,58 +116649,58 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -116759,9 +116749,9 @@ - + - + @@ -118747,26 +118737,26 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - + + + + + + + @@ -118934,16 +118924,16 @@ - + - + - + - + - + @@ -118951,9 +118941,9 @@ - + - + @@ -118974,44 +118964,44 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - + + + - - - - - - + + + + + + - - - - - - - - + + + + + + + + @@ -119410,21 +119400,21 @@ - + - + - + - + - + - + - + @@ -119432,9 +119422,9 @@ - + - + @@ -119457,14 +119447,14 @@ - + - + - + - + @@ -119472,9 +119462,9 @@ - + - + @@ -119482,9 +119472,9 @@ - + - + @@ -119497,9 +119487,9 @@ - + - + @@ -119630,78 +119620,78 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - - + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - + + - - - - - - - - - - + + + + + + + + + + @@ -119716,41 +119706,41 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -119836,16 +119826,16 @@ - - + + - - - - - - + + + + + + @@ -119863,8 +119853,8 @@ - - + + @@ -119880,12 +119870,12 @@ - - - - - - + + + + + + @@ -119922,7 +119912,7 @@ - + @@ -119960,14 +119950,14 @@ - - - - - - - - + + + + + + + + @@ -120241,14 +120231,14 @@ - + - + - + - + @@ -120256,9 +120246,9 @@ - + - + @@ -120281,29 +120271,29 @@ - - + + - - - - + + + + - + - - - + + + - + @@ -120320,9 +120310,9 @@ - + - + @@ -120350,9 +120340,9 @@ - + - + @@ -120425,9 +120415,9 @@ - + - + @@ -120435,14 +120425,14 @@ - + - + - + - + @@ -120450,44 +120440,44 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -120495,19 +120485,19 @@ - + - + - + - + - + - + @@ -120515,19 +120505,19 @@ - + - + - + - + - + - + @@ -120550,14 +120540,14 @@ - + - + - + - + @@ -120575,14 +120565,14 @@ - + - + - + - + @@ -120590,9 +120580,9 @@ - + - + @@ -120722,9 +120712,9 @@ - - - + + + @@ -120809,37 +120799,37 @@ - - - - - - - - + + + + + + + + - - - - - - - + + + + + + + - - + + - - - - - - - + + + + + + + @@ -120878,9 +120868,9 @@ - - - + + + @@ -121009,19 +120999,19 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -121036,7 +121026,7 @@ - + @@ -121046,16 +121036,16 @@ - - - + + + - - - + + + @@ -121067,30 +121057,30 @@ - - - + + + - - - - + + + + - - - + + + - - - - + + + + @@ -121099,34 +121089,34 @@ - - + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - + + @@ -121138,70 +121128,70 @@ - - + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - + + + + - - - - + + + + - - + + - - - - - + + + + + @@ -121237,65 +121227,65 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + @@ -121332,13 +121322,13 @@ - - - - - - - + + + + + + + @@ -121404,13 +121394,13 @@ - - - - - - - + + + + + + + @@ -121434,11 +121424,11 @@ - + - - - + + + @@ -121447,39 +121437,39 @@ - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -122972,9 +122962,9 @@ - + - + @@ -122982,9 +122972,9 @@ - + - + @@ -123053,25 +123043,25 @@ - - - - - - - + + + + + + + - - - + + + - - + + @@ -123119,7 +123109,7 @@ - + @@ -123136,9 +123126,9 @@ - + - + @@ -123151,24 +123141,24 @@ - + - + - + - + - + - + - + - + @@ -123233,9 +123223,9 @@ - - - + + + @@ -123254,30 +123244,30 @@ - - - + + + - - - + + + - - - + + + - - - - - + + + + + @@ -123493,9 +123483,9 @@ - + - + @@ -123983,7 +123973,7 @@ - + @@ -123991,8 +123981,8 @@ - - + + @@ -126255,9 +126245,9 @@ - + - + @@ -126265,14 +126255,14 @@ - + - + - + - + @@ -126430,11 +126420,11 @@ - - - - - + + + + + @@ -126447,8 +126437,8 @@ - - + + @@ -126459,7 +126449,7 @@ - + @@ -126467,33 +126457,33 @@ - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -126551,14 +126541,14 @@ - + - + - + - + @@ -126581,29 +126571,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -126621,9 +126611,9 @@ - + - + @@ -126631,14 +126621,14 @@ - + - + - + - + @@ -126681,14 +126671,14 @@ - + - + - + - + @@ -126701,9 +126691,9 @@ - + - + @@ -126897,20 +126887,20 @@ - - + + - - + + - - + + @@ -126956,19 +126946,19 @@ - - - - - - + + + + + + - - - - - + + + + + @@ -126980,14 +126970,14 @@ - - - - - - - - + + + + + + + + @@ -127031,8 +127021,8 @@ - - + + @@ -127042,21 +127032,21 @@ - - - - + + + + - - - - - - - - - + + + + + + + + + @@ -127194,41 +127184,41 @@ - - + + - - - - - - + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - + + + - - + + @@ -127272,9 +127262,9 @@ - + - + @@ -127317,14 +127307,14 @@ - + - + - + - + @@ -127332,14 +127322,14 @@ - + - + - + - + @@ -127347,24 +127337,24 @@ - + - + - + - + - + - + - + - + @@ -127563,84 +127553,84 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + @@ -127648,37 +127638,37 @@ - - - - - - - + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -127691,44 +127681,44 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - + + + + + + + + + - - - - + + + + - - + + @@ -127749,9 +127739,9 @@ - + - + @@ -127882,9 +127872,9 @@ - - - + + + @@ -128248,9 +128238,9 @@ - + - + @@ -128263,19 +128253,19 @@ - + - + - + - + - + - + @@ -128313,9 +128303,9 @@ - + - + @@ -128338,9 +128328,9 @@ - + - + @@ -128353,14 +128343,14 @@ - + - + - + - + @@ -128368,9 +128358,9 @@ - + - + @@ -128480,20 +128470,20 @@ - - + + - - - - - - - - - - + + + + + + + + + + @@ -128509,34 +128499,34 @@ - - - - - - - - - + + + + + + + + + - - - - - + + + + + - - - - - + + + + + - - + + @@ -128597,8 +128587,8 @@ - - + + @@ -128647,8 +128637,8 @@ - - + + @@ -128679,27 +128669,27 @@ - - + + - - - + + + - - - - - + + + + + - - + + @@ -128723,9 +128713,9 @@ - + - + @@ -128758,9 +128748,9 @@ - + - + @@ -128768,19 +128758,19 @@ - + - + - + - + - + - + @@ -128803,9 +128793,9 @@ - + - + @@ -128813,9 +128803,9 @@ - + - + @@ -128828,9 +128818,9 @@ - + - + @@ -128838,14 +128828,14 @@ - + - + - + - + @@ -128853,24 +128843,24 @@ - + - + - + - + - + - + - + - + @@ -128960,11 +128950,11 @@ - - - - - + + + + + @@ -129035,15 +129025,15 @@ - - - - - - - - - + + + + + + + + + @@ -129063,20 +129053,20 @@ - - - - - - - - + + + + + + + + - - - - + + + + @@ -129084,19 +129074,19 @@ - - + + - + - - - - - - + + + + + + @@ -129106,10 +129096,10 @@ - - - - + + + + @@ -129151,20 +129141,20 @@ - - - - + + + + - - - - + + + + @@ -129190,8 +129180,8 @@ - - + + @@ -129201,8 +129191,8 @@ - - + + @@ -129258,7 +129248,7 @@ - + @@ -129267,7 +129257,7 @@ - + @@ -129276,16 +129266,16 @@ - - + + - - - - - - + + + + + + @@ -129293,47 +129283,47 @@ - - - - + + + + - - - - + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - + + + + + - - + + - - - - - + + + + + @@ -129503,14 +129493,14 @@ - + - + - + - + @@ -129717,26 +129707,26 @@ - - - - + + + + - + - - - - + + + + - + @@ -130030,7 +130020,7 @@ - + @@ -135612,16 +135602,16 @@ - + - + - + @@ -135684,24 +135674,24 @@ - + - + - + - + - + - + - + - + @@ -135709,9 +135699,9 @@ - + - + @@ -135729,64 +135719,64 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -135804,9 +135794,9 @@ - + - + @@ -135839,24 +135829,24 @@ - + - + - + - + - + - + - + - + @@ -135894,9 +135884,9 @@ - + - + @@ -135904,29 +135894,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -136175,40 +136165,40 @@ - - - - - - + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -136224,11 +136214,11 @@ - - - - - + + + + + @@ -136285,44 +136275,44 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - + + + - - - + + + - - - - + + + + - - - - - + + + + + @@ -136337,8 +136327,8 @@ - - + + @@ -136356,123 +136346,123 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -136492,19 +136482,19 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -136547,29 +136537,29 @@ - - + + - - - + + + - - - - + + + + - - - - - - - - - + + + + + + + + + @@ -136620,14 +136610,14 @@ - - - - + + + + - + @@ -136647,71 +136637,71 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -136911,9 +136901,9 @@ - + - + @@ -136926,15 +136916,15 @@ - - - - - - - - - + + + + + + + + + @@ -136943,8 +136933,8 @@ - - + + @@ -136954,24 +136944,24 @@ - + - + - + - + - + - + - + - + @@ -137009,9 +136999,9 @@ - + - + @@ -137019,9 +137009,9 @@ - + - + @@ -137029,14 +137019,14 @@ - + - + - + - + @@ -137044,24 +137034,24 @@ - + - + - + - + - + - + - + - + @@ -137069,19 +137059,19 @@ - + - + - + - + - + - + @@ -137188,58 +137178,58 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - + + + + - - + + @@ -137295,12 +137285,12 @@ - + - + @@ -137312,22 +137302,22 @@ - - - - - - - + + + + + + + - - + + - - - + + + @@ -137341,31 +137331,31 @@ - - + + - - + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -137379,43 +137369,43 @@ - - - - - - + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -137453,14 +137443,14 @@ - + - + - + - + @@ -137468,14 +137458,14 @@ - + - + - + - + @@ -137483,14 +137473,14 @@ - + - + - + - + @@ -137530,12 +137520,12 @@ - - + + - - + + @@ -137546,35 +137536,35 @@ - - + + - - + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - + + + @@ -137588,29 +137578,29 @@ - - + + - - - - - + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -137641,9 +137631,9 @@ - + - + @@ -137661,14 +137651,14 @@ - + - + - + - + @@ -137762,7 +137752,7 @@ - + @@ -137788,9 +137778,9 @@ - - - + + + @@ -137891,14 +137881,14 @@ - - - + + + - - - + + + @@ -138203,9 +138193,9 @@ - + - + @@ -138228,8 +138218,8 @@ - - + + @@ -138248,7 +138238,7 @@ - + @@ -138277,9 +138267,9 @@ - + - + @@ -138726,16 +138716,16 @@ - - - - + + + + - - - - + + + + @@ -141118,7 +141108,7 @@ - + @@ -141205,19 +141195,19 @@ - + - + - + - + - + - + @@ -141225,9 +141215,9 @@ - + - + @@ -141250,9 +141240,9 @@ - + - + @@ -141260,9 +141250,9 @@ - + - + @@ -141275,9 +141265,9 @@ - + - + @@ -141285,19 +141275,19 @@ - + - + - + - + - + - + @@ -141310,9 +141300,9 @@ - + - + @@ -141882,8 +141872,8 @@ - - + + @@ -141898,68 +141888,68 @@ - - - - + + + + - - - + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - + + + - - - - + + + + @@ -141969,9 +141959,9 @@ - - - + + + @@ -141985,10 +141975,10 @@ - - - - + + + + @@ -141998,8 +141988,8 @@ - - + + @@ -142009,20 +141999,20 @@ - - - - - - - - - - - + + + + + + + + + + + - - + + @@ -142042,18 +142032,18 @@ - - - - + + + + - - - + + + - + @@ -142116,31 +142106,31 @@ - - - + + + - - - - + + + + - - - - + + + + - - - - - + + + + + @@ -142157,17 +142147,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -142196,42 +142186,42 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - + + + - - - + + + @@ -142328,9 +142318,9 @@ - + - + @@ -142348,9 +142338,9 @@ - + - + @@ -142388,14 +142378,14 @@ - + - + - + - + @@ -142954,8 +142944,8 @@ - - + + @@ -143012,8 +143002,8 @@ - - + + @@ -143055,14 +143045,14 @@ - + - + @@ -143175,12 +143165,12 @@ - - + + - - + + @@ -143637,9 +143627,9 @@ - + - + @@ -143755,8 +143745,8 @@ - - + + @@ -144070,9 +144060,9 @@ - + - + @@ -144135,9 +144125,9 @@ - + - + @@ -144160,19 +144150,19 @@ - + - + - + - + - + - + @@ -144185,9 +144175,9 @@ - + - + @@ -144230,14 +144220,14 @@ - + - + - + - + @@ -144245,9 +144235,9 @@ - + - + @@ -144275,9 +144265,9 @@ - + - + @@ -144340,16 +144330,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -144378,7 +144368,7 @@ - + @@ -144482,62 +144472,62 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -144598,12 +144588,12 @@ - - + + - - - + + + @@ -144614,35 +144604,35 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + @@ -144664,36 +144654,36 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + @@ -144768,8 +144758,8 @@ - - + + @@ -144779,34 +144769,34 @@ - - - + + + - + - - + + - + - + - - + + - - + + @@ -144828,7 +144818,7 @@ - + @@ -144839,11 +144829,11 @@ - - - - - + + + + + @@ -145385,7 +145375,7 @@ - + @@ -145827,9 +145817,9 @@ - + - + @@ -145837,9 +145827,9 @@ - + - + @@ -145847,14 +145837,14 @@ - + - + - + - + @@ -145862,9 +145852,9 @@ - + - + @@ -145887,9 +145877,9 @@ - + - + @@ -145902,14 +145892,14 @@ - + - + - + - + @@ -145949,37 +145939,37 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - - + + @@ -145989,17 +145979,17 @@ - - - + + + - - + + @@ -146047,9 +146037,9 @@ - - - + + + @@ -146069,18 +146059,18 @@ - - - - + + + + - - - - + + + + @@ -146617,7 +146607,7 @@ - + @@ -146629,24 +146619,24 @@ - + - + - + - + - + - + - + - + @@ -146654,9 +146644,9 @@ - + - + @@ -146689,9 +146679,9 @@ - + - + @@ -146714,9 +146704,9 @@ - + - + @@ -146729,39 +146719,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -146789,19 +146779,19 @@ - + - + - + - + - + - + @@ -146858,42 +146848,42 @@ - - - + + + - - - - - + + + + + - - + + - - + + - - - - - - + + + + + + @@ -146969,10 +146959,10 @@ - - - - + + + + @@ -147040,12 +147030,12 @@ - - + + - - - + + + @@ -147081,11 +147071,11 @@ - - - - - + + + + + @@ -147128,8 +147118,8 @@ - - + + @@ -147142,34 +147132,34 @@ - - + + - - + + - - + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -147187,20 +147177,20 @@ - - - - + + + + - - - - - - - - + + + + + + + + @@ -147210,37 +147200,37 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - + + - - - - - - + + + + + + @@ -147248,9 +147238,9 @@ - - - + + + @@ -147259,23 +147249,23 @@ - - - - - - - + + + + + + + - - - - - - - - + + + + + + + + @@ -147339,43 +147329,43 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -147389,43 +147379,43 @@ - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -147436,9 +147426,9 @@ - + - + @@ -147461,9 +147451,9 @@ - + - + @@ -147491,9 +147481,9 @@ - + - + @@ -147506,19 +147496,19 @@ - + - + - + - + - + - + @@ -147526,24 +147516,24 @@ - + - + - + - + - + - + - + - + @@ -147551,14 +147541,14 @@ - + - + - + - + @@ -147566,19 +147556,19 @@ - + - + - + - + - + - + @@ -147586,19 +147576,19 @@ - + - + - + - + - + - + @@ -147645,19 +147635,19 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -147688,20 +147678,20 @@ - - - - - + + + + + - - - - - - - - + + + + + + + + @@ -147719,8 +147709,8 @@ - - + + @@ -147731,25 +147721,25 @@ - - - - - - - - + + + + + + + + - - - - - + + + + + - - + + @@ -147770,56 +147760,56 @@ - - - - - + + + + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -147838,22 +147828,22 @@ - - - - - + + + + + - - + + - - - - + + + + @@ -147874,23 +147864,23 @@ - - - - - - + + + + + + - - + + - - - - - + + + + + @@ -148217,9 +148207,9 @@ - + - + @@ -148227,19 +148217,19 @@ - + - + - + - + - + - + @@ -148247,14 +148237,14 @@ - + - + - + - + @@ -148293,24 +148283,24 @@ - - - - - - + + + + + + - - - - + + + + - - - - + + + + @@ -148319,14 +148309,14 @@ - - + + - - + + - - + + @@ -148334,27 +148324,27 @@ - - + + - - - - - - - - + + + + + + + + - - - - - - + + + + + + @@ -148363,32 +148353,32 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - + - + @@ -148400,14 +148390,14 @@ - + - + - + - + @@ -148435,9 +148425,9 @@ - + - + @@ -148450,14 +148440,14 @@ - + - + - + - + @@ -148470,54 +148460,54 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -148550,29 +148540,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -148585,9 +148575,9 @@ - + - + @@ -148643,16 +148633,16 @@ - - - - - - + + + + + + - - - + + + @@ -148673,8 +148663,8 @@ - - + + @@ -148689,24 +148679,24 @@ - - - - - + + + + + - - - - + + + + - - - - - + + + + + @@ -148730,25 +148720,25 @@ - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + @@ -148793,97 +148783,97 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - + + + + + - - + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -149023,16 +149013,16 @@ - - - - - + + + + + - + @@ -149056,11 +149046,11 @@ - - - - - + + + + + @@ -149089,13 +149079,13 @@ - + - + @@ -149105,53 +149095,53 @@ - + - - + + - - - + + + - - - - - - - - - - + + + + + + + + + + - - - + + + - - - + + + - - + + - - - + + + @@ -149173,14 +149163,14 @@ - - - - + + + + - + @@ -149209,9 +149199,9 @@ - + - + @@ -149234,9 +149224,9 @@ - + - + @@ -149254,9 +149244,9 @@ - + - + @@ -149380,15 +149370,15 @@ - - - - - - - - - + + + + + + + + + @@ -149403,8 +149393,8 @@ - - + + @@ -149444,15 +149434,15 @@ - - - - - + + + + + - - - + + + @@ -149537,14 +149527,14 @@ - + - + - + - + @@ -149567,9 +149557,9 @@ - + - + @@ -149577,19 +149567,19 @@ - + - + - + - + - + - + @@ -149597,9 +149587,9 @@ - + - + @@ -149645,14 +149635,14 @@ - - - - - + + + + + - - + + @@ -149666,28 +149656,28 @@ - - + + - - - - - - - - + + + + + + + + - - - - - + + + + + @@ -149705,28 +149695,28 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - + + + + + @@ -149746,20 +149736,20 @@ - - - + + + - - - - - - - - - + + + + + + + + + @@ -149789,12 +149779,12 @@ - - - + + + - - + + @@ -149841,15 +149831,15 @@ - - - - - + + + + + - - - + + + @@ -149864,9 +149854,9 @@ - + - + @@ -149874,9 +149864,9 @@ - + - + @@ -149899,14 +149889,14 @@ - + - + - + - + @@ -149999,26 +149989,26 @@ - - - - - + + + + + - - - - + + + + - - - - - + + + + + @@ -150032,20 +150022,20 @@ - - - - - - - - - + + + + + + + + + - - - + + + @@ -150066,11 +150056,11 @@ - - - - - + + + + + @@ -150088,15 +150078,15 @@ - - - - - - + + + + + + - - + + @@ -150116,38 +150106,38 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -150160,19 +150150,19 @@ - + - + - + - + - + - + @@ -150195,9 +150185,9 @@ - + - + @@ -150235,14 +150225,14 @@ - + - + - + - + @@ -150297,11 +150287,11 @@ - - - - - + + + + + @@ -150309,26 +150299,26 @@ - - - + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -150336,53 +150326,53 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -150429,24 +150419,24 @@ - - + + - - - - - - - - - - + + + + + + + + + + - - + + @@ -150460,8 +150450,8 @@ - - + + @@ -150592,12 +150582,12 @@ - - - - - - + + + + + + @@ -150642,21 +150632,21 @@ - + - - - - - + + + + + - - - - - + + + + + @@ -150702,8 +150692,8 @@ - - + + @@ -150786,9 +150776,9 @@ - + - + @@ -150796,9 +150786,9 @@ - + - + @@ -150821,9 +150811,9 @@ - + - + @@ -150836,19 +150826,19 @@ - + - + - + - + - + - + @@ -150916,17 +150906,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -150938,9 +150928,9 @@ - - - + + + @@ -150954,8 +150944,8 @@ - - + + @@ -150966,63 +150956,63 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - - - - - + + + + + @@ -151036,79 +151026,79 @@ - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - + + + @@ -151216,9 +151206,9 @@ - + - + @@ -151226,9 +151216,9 @@ - + - + @@ -151256,9 +151246,9 @@ - + - + @@ -151266,19 +151256,19 @@ - + - + - + - + - + - + @@ -151328,16 +151318,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -151348,9 +151338,9 @@ - - - + + + @@ -151378,8 +151368,8 @@ - - + + @@ -151387,25 +151377,25 @@ - - - - - - - - - - - + + + + + + + + + + + - - - + + + @@ -151413,67 +151403,67 @@ - - - - + + + + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - + + + + + - - - + + + @@ -151493,9 +151483,9 @@ - + - + @@ -151513,9 +151503,9 @@ - + - + @@ -151538,8 +151528,8 @@ - - + + @@ -151566,10 +151556,10 @@ - - - - + + + + @@ -151759,14 +151749,14 @@ - + - + - + - + @@ -151774,29 +151764,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -151804,29 +151794,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -151844,9 +151834,9 @@ - + - + @@ -151854,19 +151844,19 @@ - + - + - + - + - + - + @@ -151879,14 +151869,14 @@ - + - + - + - + @@ -152037,45 +152027,45 @@ - - - - - + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -152095,67 +152085,67 @@ - - + + - + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -152165,96 +152155,96 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + @@ -152280,35 +152270,35 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - + + + - - - - - + + + + + - + @@ -152352,37 +152342,37 @@ - - - - + + + + - - - - - - - - + + + + + + + + - - - - - + + + + + - - - + + + - - + + @@ -152405,18 +152395,18 @@ - - - - + + + + - - - - - - + + + + + + @@ -152424,10 +152414,10 @@ - - - - + + + + @@ -152436,7 +152426,7 @@ - + @@ -152721,9 +152711,9 @@ - + - + @@ -152756,14 +152746,14 @@ - + - + - + - + @@ -152771,9 +152761,9 @@ - + - + @@ -152801,9 +152791,9 @@ - + - + @@ -152846,19 +152836,19 @@ - + - + - + - + - + - + @@ -152866,14 +152856,14 @@ - + - + - + - + @@ -152891,14 +152881,14 @@ - + - + - + - + @@ -152906,14 +152896,14 @@ - + - + - + - + @@ -152958,8 +152948,8 @@ - - + + @@ -153104,42 +153094,42 @@ - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + @@ -153149,10 +153139,10 @@ - - - - + + + + @@ -153163,15 +153153,15 @@ - - - - - - - - - + + + + + + + + + @@ -153223,21 +153213,21 @@ - + - - + + - - - - - + + + + + @@ -153393,30 +153383,30 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -153424,8 +153414,8 @@ - - + + @@ -153436,7 +153426,7 @@ - + @@ -153446,35 +153436,35 @@ - + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -153516,52 +153506,52 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -153569,27 +153559,27 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - - + + + + + + @@ -153685,22 +153675,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -153714,63 +153704,63 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + @@ -153790,14 +153780,14 @@ - + - + - + - + @@ -153820,9 +153810,9 @@ - + - + @@ -153830,19 +153820,19 @@ - + - + - + - + - + - + @@ -153888,15 +153878,15 @@ - - - - - - + + + + + + - - + + @@ -153910,8 +153900,8 @@ - - + + @@ -153919,53 +153909,53 @@ - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -153990,14 +153980,14 @@ - + - + - + - + @@ -154071,19 +154061,19 @@ - - - - - - - - - - + + + + + + + + + + - - + + @@ -154124,14 +154114,14 @@ - + - + - + - + @@ -154154,9 +154144,9 @@ - + - + @@ -154164,19 +154154,19 @@ - + - + - + - + - + - + @@ -154212,11 +154202,11 @@ - - + + - - + + @@ -154230,8 +154220,8 @@ - - + + @@ -154239,45 +154229,45 @@ - - - - - - - - + + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -154287,24 +154277,24 @@ - + - + - + - + - + - + - + - + @@ -154457,14 +154447,14 @@ - + - + - + - + @@ -154472,9 +154462,9 @@ - + - + @@ -154497,9 +154487,9 @@ - + - + @@ -154522,14 +154512,14 @@ - + - + - + - + @@ -154647,9 +154637,9 @@ - + - + @@ -154672,9 +154662,9 @@ - + - + @@ -154697,9 +154687,9 @@ - + - + @@ -154881,90 +154871,90 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - + + + - - - + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -155599,32 +155589,32 @@ - - - + + + - + - - + + - - - - - + + + + + @@ -155665,8 +155655,8 @@ - - + + @@ -155701,39 +155691,39 @@ - + - - + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -156132,9 +156122,9 @@ - - - + + + @@ -156154,9 +156144,9 @@ - - - + + + @@ -156181,45 +156171,45 @@ - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -157321,9 +157311,9 @@ - + - + @@ -157429,16 +157419,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -157544,19 +157534,19 @@ - + - + - + - + - + - + @@ -157569,24 +157559,24 @@ - + - + - + - + - + - + - + - + @@ -157594,9 +157584,9 @@ - + - + @@ -157604,9 +157594,9 @@ - + - + @@ -157624,19 +157614,19 @@ - + - + - + - + - + - + @@ -157688,59 +157678,59 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - + + + + + + - - - + + + @@ -157767,9 +157757,9 @@ - - - + + + @@ -157794,55 +157784,55 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -157901,10 +157891,10 @@ - - - - + + + + @@ -157921,23 +157911,23 @@ - + - - - + + + - - - + + + - - + + @@ -157947,17 +157937,17 @@ - - - - - + + + + + - - + + @@ -157972,35 +157962,35 @@ - - + + - - - + + + - - - - - - - - - + + + + + + + + + - - + + - - - - + + + + @@ -158032,14 +158022,14 @@ - - - - - - - - + + + + + + + + @@ -158086,7 +158076,7 @@ - + @@ -158135,8 +158125,8 @@ - - + + @@ -158383,14 +158373,14 @@ - + - + - + - + @@ -158449,14 +158439,14 @@ - - - - - + + + + + - - + + @@ -158528,9 +158518,9 @@ - + - + @@ -158538,19 +158528,19 @@ - + - + - + - + - + - + @@ -158607,43 +158597,43 @@ - - + + - - - + + + - - - - - + + + + + - - + + - - - - - - - + + + + + + + - - - + + + @@ -158694,9 +158684,9 @@ - + - + @@ -158704,9 +158694,9 @@ - + - + @@ -158729,9 +158719,9 @@ - + - + @@ -158764,14 +158754,14 @@ - + - + - + - + @@ -158878,20 +158868,20 @@ - - - - - - + + + + + + - - - + + + @@ -158905,8 +158895,8 @@ - - + + @@ -159144,45 +159134,45 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - + + + + + - - - + + + @@ -159203,9 +159193,9 @@ - + - + @@ -159223,19 +159213,19 @@ - + - + - + - + - + - + @@ -159243,14 +159233,14 @@ - + - + - + - + @@ -159258,14 +159248,14 @@ - + - + - + - + @@ -159297,14 +159287,14 @@ - - - - - - - - + + + + + + + + @@ -159359,31 +159349,31 @@ - - - - - + + + + + - - - - - + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -159400,58 +159390,58 @@ - - - - - + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - - + + @@ -159461,24 +159451,24 @@ - - - + + + - - - - - - - + + + + + + + - - - - + + + + @@ -159487,38 +159477,38 @@ - - + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -159549,9 +159539,9 @@ - + - + @@ -159564,9 +159554,9 @@ - + - + @@ -159594,9 +159584,9 @@ - + - + @@ -159614,44 +159604,44 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -159762,22 +159752,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -159825,9 +159815,9 @@ - - - + + + @@ -159846,8 +159836,8 @@ - - + + @@ -159861,11 +159851,11 @@ - + - - - + + + @@ -159876,72 +159866,72 @@ - - - - - + + + + + - - - + + + - + - - - - - - - - - - + + + + + + + + + + - - - - - - - - + + + + + + + + - - + + - + - - - + + + - - + + - - + + - - - - - - + + + + + + @@ -159958,9 +159948,9 @@ - - - + + + @@ -159979,58 +159969,58 @@ - - - - + + + + - - - + + + - - - - - - + + + + + + - - - - - - + + + + + + - - - - - + + + + + - - - - - - - - - + + + + + + + + + - - - - - + + + + + @@ -160079,9 +160069,9 @@ - + - + @@ -160094,9 +160084,9 @@ - + - + @@ -160298,19 +160288,19 @@ - - - - - - - - + + + + + + + + - - - - + + + + @@ -160321,8 +160311,8 @@ - - + + @@ -160631,9 +160621,9 @@ - + - + @@ -160641,9 +160631,9 @@ - + - + @@ -160666,9 +160656,9 @@ - + - + @@ -160676,14 +160666,14 @@ - + - + - + - + @@ -160691,19 +160681,19 @@ - + - + - + - + - + - + @@ -160753,13 +160743,13 @@ - - - + + + - + @@ -160768,8 +160758,8 @@ - - + + @@ -160783,106 +160773,106 @@ - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + @@ -160938,11 +160928,11 @@ - - - - - + + + + + @@ -160952,7 +160942,7 @@ - + @@ -160977,15 +160967,15 @@ - - - - - + + + + + - - - + + + @@ -161000,46 +160990,46 @@ - - - - + + + + - - - + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - + @@ -161063,9 +161053,9 @@ - + - + @@ -161088,9 +161078,9 @@ - + - + @@ -161192,9 +161182,9 @@ - - - + + + @@ -161231,31 +161221,31 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - + - + @@ -161337,14 +161327,14 @@ - + - + - + - + @@ -161357,9 +161347,9 @@ - + - + @@ -161372,9 +161362,9 @@ - + - + @@ -161417,9 +161407,9 @@ - + - + @@ -161437,9 +161427,9 @@ - + - + @@ -161502,14 +161492,14 @@ - + - + - + - + @@ -161597,9 +161587,9 @@ - + - + @@ -161612,9 +161602,9 @@ - + - + @@ -161652,9 +161642,9 @@ - + - + @@ -161752,9 +161742,9 @@ - + - + @@ -161772,9 +161762,9 @@ - + - + @@ -161797,9 +161787,9 @@ - + - + @@ -161822,29 +161812,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -161887,9 +161877,9 @@ - + - + @@ -161902,9 +161892,9 @@ - + - + @@ -162067,9 +162057,9 @@ - + - + @@ -162112,9 +162102,9 @@ - + - + @@ -162127,9 +162117,9 @@ - + - + @@ -162162,14 +162152,14 @@ - + - + - + - + @@ -162197,14 +162187,14 @@ - + - + - + - + @@ -162522,13 +162512,13 @@ - - - - - - - + + + + + + + @@ -162665,12 +162655,12 @@ - - + + - - + + @@ -162681,11 +162671,11 @@ - - - - - + + + + + @@ -162710,11 +162700,11 @@ - - - - - + + + + + @@ -162802,14 +162792,14 @@ - - - - - - - - + + + + + + + + @@ -162834,11 +162824,11 @@ - - - - - + + + + + @@ -162947,18 +162937,18 @@ - - - - - + + + + + - - - - - + + + + + @@ -163139,11 +163129,11 @@ - - - - - + + + + + @@ -163159,11 +163149,11 @@ - - - - - + + + + + @@ -163241,8 +163231,8 @@ - - + + @@ -163461,12 +163451,12 @@ - - - - - - + + + + + + @@ -163498,14 +163488,14 @@ - - - - - - - - + + + + + + + + @@ -163539,11 +163529,11 @@ - + - - - + + + @@ -163574,54 +163564,54 @@ - + - - - + + + - - + + - - - - - - + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - + + - - - + + + @@ -163714,24 +163704,24 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -163747,12 +163737,12 @@ - - - - - - + + + + + + @@ -163801,17 +163791,17 @@ - - + + - + - - - - + + + + @@ -163820,7 +163810,7 @@ - + @@ -163869,27 +163859,27 @@ - - - - + + + + - + - + - + - + - - + + @@ -164033,8 +164023,8 @@ - - + + @@ -164167,13 +164157,13 @@ - - - - - - - + + + + + + + @@ -164193,10 +164183,10 @@ - - - - + + + + @@ -164359,8 +164349,8 @@ - - + + @@ -164368,9 +164358,9 @@ - - - + + + @@ -164420,24 +164410,24 @@ - - - - - - + + + + + + - - - - - - - - - - + + + + + + + + + + @@ -172580,7 +172570,7 @@ - + @@ -172599,19 +172589,19 @@ - + - + - + - + - + - + @@ -172624,14 +172614,14 @@ - + - + - + - + @@ -172664,9 +172654,9 @@ - + - + @@ -172804,8 +172794,8 @@ - - + + @@ -172820,78 +172810,78 @@ - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - + + + + + @@ -172910,22 +172900,22 @@ - - + + - - - + + + - - + + - - - + + + @@ -173009,9 +172999,9 @@ - - - + + + @@ -173960,9 +173950,9 @@ - + - + @@ -173980,9 +173970,9 @@ - + - + @@ -174002,8 +173992,8 @@ - - + + @@ -174018,36 +174008,36 @@ - - + + - + - + - + - + - + - + - + - + - + - + @@ -174055,9 +174045,9 @@ - + - + @@ -174173,49 +174163,49 @@ - - + + - - + + - - + + - - + + - - + + - - - - - + + + + + - - + + - - + + - - + + - - - - + + + + @@ -174274,14 +174264,14 @@ - + - + - + - + @@ -174294,9 +174284,9 @@ - + - + @@ -174304,24 +174294,24 @@ - + - + - + - + - + - + - + - + @@ -174375,18 +174365,18 @@ - - - - - + + + + + - - - - - + + + + + @@ -174426,8 +174416,8 @@ - - + + @@ -174440,7 +174430,7 @@ - + @@ -174448,58 +174438,58 @@ - - - - + + + + - - - - - - + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - + + + + + + - - - - - - - - + + + + + + + + @@ -174517,7 +174507,7 @@ - + @@ -174700,7 +174690,7 @@ - + @@ -174717,14 +174707,14 @@ - + - + - + - + @@ -174732,9 +174722,9 @@ - + - + @@ -174855,16 +174845,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -175038,14 +175028,14 @@ - - - + + + - - - + + + @@ -175317,13 +175307,13 @@ - - - - - - - + + + + + + + @@ -176577,7 +176567,7 @@ - + @@ -176599,9 +176589,9 @@ - + - + @@ -176614,9 +176604,9 @@ - + - + @@ -177185,10 +177175,10 @@ - - - - + + + + @@ -178000,11 +177990,11 @@ - - - - - + + + + + @@ -178053,39 +178043,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -178128,9 +178118,9 @@ - + - + @@ -178203,62 +178193,62 @@ - - + + - - - - - + + + + + - - - - - - - - - - + + + + + + + + + + - - + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - + + + @@ -178268,50 +178258,50 @@ - - - - - + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -178462,9 +178452,9 @@ - - - + + + @@ -178537,9 +178527,9 @@ - + - + @@ -178634,12 +178624,12 @@ - - - - - - + + + + + + @@ -179153,9 +179143,9 @@ - + - + @@ -179211,24 +179201,24 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -179286,9 +179276,9 @@ - + - + @@ -179425,11 +179415,11 @@ - - + + - + @@ -179479,9 +179469,9 @@ - + - + @@ -179489,14 +179479,14 @@ - + - + - + - + @@ -179519,9 +179509,9 @@ - + - + @@ -179564,9 +179554,9 @@ - + - + @@ -179589,9 +179579,9 @@ - + - + @@ -179614,20 +179604,20 @@ - - + + - - + + - - + + @@ -179644,8 +179634,8 @@ - - + + @@ -179671,8 +179661,8 @@ - - + + @@ -179689,15 +179679,15 @@ - - - - - - - - - + + + + + + + + + @@ -179708,98 +179698,98 @@ - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - - - - - - - + + + + + + + + - + - - + + - - + + - - + + @@ -179808,13 +179798,13 @@ - - - - - - - + + + + + + + @@ -179830,14 +179820,14 @@ - + - + - + - + @@ -179845,9 +179835,9 @@ - + - + @@ -179890,9 +179880,9 @@ - + - + @@ -179969,12 +179959,12 @@ - - + + - - + + @@ -179997,16 +179987,16 @@ - - - - + + + + - - + + @@ -180160,16 +180150,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -180243,39 +180233,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -180288,9 +180278,9 @@ - + - + @@ -180513,11 +180503,11 @@ - - - - - + + + + + @@ -180547,12 +180537,12 @@ - - - - - - + + + + + + @@ -180589,22 +180579,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -180650,44 +180640,44 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - + - - - + + + - + - - - + + + @@ -180699,11 +180689,11 @@ - - - - - + + + + + @@ -180731,9 +180721,9 @@ - - - + + + @@ -180784,19 +180774,19 @@ - + - + - + - + - + - + @@ -180809,44 +180799,44 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -180884,14 +180874,14 @@ - + - + - + - + @@ -180964,14 +180954,14 @@ - + - + - + - + @@ -181093,35 +181083,35 @@ - - - + + + - + - - - - - + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -181142,74 +181132,74 @@ - - - - - - + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - + - - - - - - - - + + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -181218,13 +181208,13 @@ - - - + + + - - + + @@ -181340,28 +181330,28 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - + + @@ -181494,12 +181484,12 @@ - - + + - - + + @@ -182740,14 +182730,14 @@ - + - + - + - + @@ -182765,9 +182755,9 @@ - + - + @@ -182810,9 +182800,9 @@ - + - + @@ -182930,9 +182920,9 @@ - + - + @@ -182960,9 +182950,9 @@ - + - + @@ -182970,9 +182960,9 @@ - + - + @@ -183005,9 +182995,9 @@ - + - + @@ -183015,9 +183005,9 @@ - + - + @@ -183030,9 +183020,9 @@ - + - + @@ -183070,9 +183060,9 @@ - + - + @@ -183080,14 +183070,14 @@ - + - + - + - + @@ -183100,9 +183090,9 @@ - + - + @@ -183145,9 +183135,9 @@ - + - + @@ -183155,9 +183145,9 @@ - + - + @@ -183200,9 +183190,9 @@ - + - + @@ -183225,9 +183215,9 @@ - + - + @@ -183350,9 +183340,9 @@ - + - + @@ -183360,9 +183350,9 @@ - + - + @@ -184275,11 +184265,11 @@ - - + + - - + + @@ -184382,8 +184372,8 @@ - - + + @@ -184467,8 +184457,8 @@ - - + + @@ -184723,12 +184713,12 @@ - - - + + + - + @@ -184892,29 +184882,29 @@ - - + + - - - - - + + + + + - + - - - - - - - - - - - - + + + + + + + + + + + + @@ -184931,8 +184921,8 @@ - - + + @@ -185163,10 +185153,10 @@ - - - - + + + + @@ -185180,8 +185170,8 @@ - - + + @@ -185211,10 +185201,10 @@ - - - - + + + + @@ -185677,20 +185667,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -185713,28 +185703,28 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -185756,31 +185746,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -185871,167 +185861,167 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -186061,14 +186051,14 @@ - - + + - - - + + + @@ -186333,13 +186323,13 @@ - + - - - - + + + + @@ -186358,11 +186348,11 @@ - - - - - + + + + + @@ -186649,8 +186639,8 @@ - - + + @@ -186830,13 +186820,13 @@ - - - - + + + + - + @@ -188216,14 +188206,14 @@ - - + + - - - + + + @@ -188244,15 +188234,15 @@ - - - - - - - - - + + + + + + + + + @@ -189355,9 +189345,9 @@ - + - + @@ -189388,8 +189378,8 @@ - - + + @@ -189405,34 +189395,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -189440,9 +189430,9 @@ - + - + @@ -189481,58 +189471,58 @@ - - - - - - - - - + + + + + + + + + - - + + - - - - - + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -189547,55 +189537,55 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - + + - - - + + + - - - + + + - - - + + + - + @@ -189652,29 +189642,29 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - + @@ -189693,9 +189683,9 @@ - + - + @@ -189773,12 +189763,12 @@ - - + + - - + + @@ -190892,9 +190882,9 @@ - + - + @@ -191060,8 +191050,8 @@ - - + + @@ -191194,41 +191184,41 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -191246,9 +191236,9 @@ - + - + @@ -191261,9 +191251,9 @@ - + - + @@ -191306,9 +191296,9 @@ - - - + + + @@ -191317,12 +191307,12 @@ - - - - - - + + + + + + @@ -191331,52 +191321,52 @@ - - + + - - + + - + - - - - - - - - + + + + + + + + - - - + + + - - + + - - + + - - - + + + @@ -191420,8 +191410,8 @@ - - + + @@ -191443,12 +191433,12 @@ - - - - - - + + + + + + @@ -191461,19 +191451,19 @@ - + - + - + - + - + - + @@ -191531,44 +191521,44 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -191601,9 +191591,9 @@ - + - + @@ -191611,9 +191601,9 @@ - + - + @@ -191636,9 +191626,9 @@ - + - + @@ -191700,32 +191690,32 @@ - + - - - - - - - + + + + + + + - - + + - - + + @@ -191910,67 +191900,67 @@ - - + + - + - - - - - - - - - - + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + @@ -192017,8 +192007,8 @@ - - + + @@ -192037,14 +192027,14 @@ - - - + + + - - + + @@ -192136,8 +192126,8 @@ - - + + @@ -192152,14 +192142,14 @@ - + - + - + - + @@ -192203,31 +192193,31 @@ - - - - - - - + + + + + + + - + - - + + - - - + + + - + - + @@ -192370,12 +192360,12 @@ - - - - - - + + + + + + @@ -192536,9 +192526,9 @@ - + - + @@ -192556,19 +192546,19 @@ - + - + - + - + - + - + @@ -192576,19 +192566,19 @@ - + - + - + - + - + - + @@ -192619,12 +192609,12 @@ - - + + - - - + + + @@ -192665,26 +192655,26 @@ - - - + + + - + - - - + + + - - - - - - - + + + + + + + @@ -192701,43 +192691,43 @@ - - - + + + - - - - - + + + + + - + - - - + + + - - - + + + - - - - - - + + + + + + @@ -193292,10 +193282,10 @@ - + - - + + @@ -193311,19 +193301,19 @@ - + - + - + - + - + - + @@ -193378,31 +193368,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -193419,15 +193409,15 @@ - - - - - - - - - + + + + + + + + + @@ -193438,65 +193428,65 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -193515,9 +193505,9 @@ - + - + @@ -193535,9 +193525,9 @@ - + - + @@ -193580,9 +193570,9 @@ - + - + @@ -193600,9 +193590,9 @@ - + - + @@ -193891,9 +193881,9 @@ - - - + + + @@ -193931,8 +193921,8 @@ - - + + @@ -194092,8 +194082,8 @@ - - + + @@ -194120,8 +194110,8 @@ - - + + @@ -195111,9 +195101,9 @@ - + - + @@ -195146,9 +195136,9 @@ - + - + @@ -195161,9 +195151,9 @@ - + - + @@ -195256,8 +195246,8 @@ - - + + @@ -195292,8 +195282,8 @@ - - + + @@ -195304,8 +195294,8 @@ - - + + @@ -195616,9 +195606,9 @@ - + - + @@ -195641,11 +195631,11 @@ - - - - - + + + + + @@ -197655,9 +197645,9 @@ - + - + @@ -198508,11 +198498,11 @@ - - - - - + + + + + @@ -198561,7 +198551,7 @@ - + @@ -198709,9 +198699,9 @@ - - - + + + @@ -198859,19 +198849,19 @@ - + - + - + - + - + - + @@ -198879,19 +198869,19 @@ - + - + - + - + - + - + @@ -198969,14 +198959,14 @@ - + - + - + - + @@ -199076,18 +199066,18 @@ - - - + + + - - - + + + - - + + @@ -199104,16 +199094,16 @@ - - - - - + + + + + - - - - + + + + @@ -199135,59 +199125,59 @@ - - - + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -199694,26 +199684,26 @@ - - - - - - - + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -199869,9 +199859,9 @@ - + - + @@ -199967,8 +199957,8 @@ - - + + @@ -204479,14 +204469,14 @@ - + - + - + - + @@ -204871,30 +204861,30 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - - - - + + + + @@ -204919,9 +204909,9 @@ - + - + @@ -205009,9 +204999,9 @@ - + - + @@ -205029,19 +205019,19 @@ - + - + - + - + - + - + @@ -205161,13 +205151,13 @@ - - + + - - - + + + @@ -205454,8 +205444,8 @@ - - + + @@ -205494,16 +205484,16 @@ - - + + - - + + - - + + @@ -206431,19 +206421,19 @@ - + - + - + - + - + - + @@ -206487,16 +206477,16 @@ - - + + - - + + - - + + @@ -206925,9 +206915,9 @@ - + - + @@ -207088,11 +207078,11 @@ - + - - - + + + @@ -207922,9 +207912,9 @@ - + - + @@ -208194,9 +208184,9 @@ - - - + + + @@ -208204,13 +208194,13 @@ - - - - - - - + + + + + + + @@ -208363,7 +208353,7 @@ - + @@ -209044,9 +209034,9 @@ - + - + @@ -209095,11 +209085,11 @@ - - + + - + @@ -209162,19 +209152,19 @@ - + - + - + - + - + - + @@ -209182,9 +209172,9 @@ - + - + @@ -209197,14 +209187,14 @@ - + - + - + - + @@ -209250,44 +209240,44 @@ - - - - - - + + + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -209300,19 +209290,19 @@ - - - + + + - - - - - + + + + + @@ -209322,87 +209312,87 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -209410,92 +209400,92 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - - - + + + + + + + + @@ -209695,106 +209685,106 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + @@ -209808,9 +209798,9 @@ - - - + + + @@ -210073,91 +210063,91 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -210165,14 +210155,14 @@ - + - + - + - + @@ -210185,19 +210175,19 @@ - + - + - + - + - + - + @@ -210205,9 +210195,9 @@ - + - + @@ -210215,14 +210205,14 @@ - + - + - + - + @@ -210245,69 +210235,69 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -210388,54 +210378,54 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -210463,72 +210453,72 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - + + + + + + + - - - - + + + + @@ -210548,18 +210538,18 @@ - - - - - + + + + + - - - - - + + + + + @@ -210576,29 +210566,29 @@ - - - + + + - - - + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -210608,8 +210598,8 @@ - - + + @@ -210619,23 +210609,23 @@ - - - - - - + + + + + + - + - + @@ -210686,101 +210676,101 @@ - - - - - - - - - - - + + + + + + + + + + + - - - + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -210797,55 +210787,55 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -210867,53 +210857,53 @@ - - - - - + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + @@ -210933,31 +210923,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -211001,570 +210991,570 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - + + + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -211837,19 +211827,19 @@ - + - + - + - + - + - + @@ -211867,9 +211857,9 @@ - + - + @@ -211877,9 +211867,9 @@ - + - + @@ -212095,31 +212085,31 @@ - - - + + + - - - - - - + + + + + + - - - - - + + + + + @@ -212137,11 +212127,11 @@ - - - - - + + + + + @@ -212158,7 +212148,7 @@ - + @@ -212175,16 +212165,16 @@ - - - - - - + + + + + + - + @@ -212236,9 +212226,9 @@ - + - + @@ -212251,19 +212241,19 @@ - + - + - + - + - + - + @@ -212276,9 +212266,9 @@ - + - + @@ -212326,9 +212316,9 @@ - + - + @@ -212336,9 +212326,9 @@ - + - + @@ -212346,14 +212336,14 @@ - + - + - + - + @@ -212361,14 +212351,14 @@ - + - + - + - + @@ -212391,14 +212381,14 @@ - + - + - + - + @@ -212411,9 +212401,9 @@ - + - + @@ -212466,19 +212456,19 @@ - + - + - + - + - + - + @@ -212486,29 +212476,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -212516,14 +212506,14 @@ - + - + - + - + @@ -212536,34 +212526,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -212571,19 +212561,19 @@ - + - + - + - + - + - + @@ -212661,9 +212651,9 @@ - + - + @@ -212671,24 +212661,24 @@ - + - + - + - + - + - + - + - + @@ -212711,9 +212701,9 @@ - + - + @@ -212726,9 +212716,9 @@ - + - + @@ -212756,9 +212746,9 @@ - + - + @@ -212781,19 +212771,19 @@ - + - + - + - + - + - + @@ -212806,14 +212796,14 @@ - + - + - + - + @@ -212836,9 +212826,9 @@ - + - + @@ -212856,14 +212846,14 @@ - + - + - + - + @@ -212876,19 +212866,19 @@ - + - + - + - + - + - + @@ -212901,14 +212891,14 @@ - + - + - + - + @@ -212921,14 +212911,14 @@ - + - + - + - + @@ -212936,9 +212926,9 @@ - + - + @@ -213026,9 +213016,9 @@ - + - + @@ -213036,14 +213026,14 @@ - + - + - + - + @@ -213051,24 +213041,24 @@ - + - + - + - + - + - + - + - + @@ -213116,16 +213106,6 @@ - - - - - - - - - - @@ -213321,8 +213301,8 @@ - - + + @@ -213468,9 +213448,9 @@ - - - + + + @@ -213493,10 +213473,10 @@ - - - - + + + + @@ -213648,28 +213628,28 @@ - - + + - - + + - - + + - - + + @@ -213694,15 +213674,15 @@ - - + + - - - + + + @@ -213760,13 +213740,13 @@ - - - + + + - - + + @@ -213779,8 +213759,8 @@ - - + + @@ -213842,26 +213822,26 @@ - - - - - + + + + + - - - - + + + + - - - + + + - - - + + + @@ -213869,41 +213849,41 @@ - - - + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - + + + @@ -213915,17 +213895,17 @@ - - - + + + - - - - - - + + + + + + @@ -213948,214 +213928,214 @@ - - - - - - - - - + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -214175,10 +214155,10 @@ - - - - + + + + @@ -214187,63 +214167,63 @@ - - - - + + + + - - - + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - + + + + @@ -214622,81 +214602,81 @@ - - + + - - + + - - - - - - - - + + + + + + + + - + - - - - - - - - - + + + + + + + + + - - + + - - + + - + - + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - + + + + + + + + @@ -214729,34 +214709,34 @@ - - - - + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -214764,10 +214744,10 @@ - - - - + + + + @@ -214807,12 +214787,12 @@ - - - - - - + + + + + + @@ -214837,18 +214817,18 @@ - - + + - - - - + + + + - - + + @@ -214914,94 +214894,94 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -215009,8 +214989,8 @@ - - + + @@ -215036,8 +215016,8 @@ - - + + @@ -215068,13 +215048,13 @@ - - - + + + - - - + + + @@ -215109,26 +215089,26 @@ - - - - - - - + + + + + + + - - - - + + + + - - - - - + + + + + @@ -215143,21 +215123,21 @@ - - - - + + + + - - - - - - - - - + + + + + + + + + @@ -215174,45 +215154,45 @@ - + - - - - - - + + + + + + - + - - - - - - + + + + + + - + - + - + - + - - - - + + + + @@ -215423,12 +215403,12 @@ - - - + + + - + @@ -215452,20 +215432,20 @@ - - + + - - - - - - - - - - + + + + + + + + + + @@ -215475,47 +215455,47 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - + + + + + - + - - - - + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -215623,9 +215603,9 @@ - + - + @@ -215645,23 +215625,23 @@ - - - - + + + + - + - + - + - + - + @@ -215669,9 +215649,9 @@ - + - + @@ -215749,34 +215729,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -215802,51 +215782,51 @@ - - - - - - + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -215881,16 +215861,16 @@ - - - - - + + + + + - + @@ -216211,24 +216191,24 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -216237,26 +216217,26 @@ - + - - - - - - - - + + + + + + + + - - - - - + + + + + @@ -216265,14 +216245,14 @@ - + - - - - - - + + + + + + @@ -216280,37 +216260,37 @@ - - - - - - + + + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -216323,22 +216303,22 @@ - - - - - - + + + + + + - + - + @@ -216350,9 +216330,9 @@ - + - + @@ -216360,9 +216340,9 @@ - + - + @@ -216375,9 +216355,9 @@ - + - + @@ -216395,14 +216375,14 @@ - + - + - + - + @@ -216420,29 +216400,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -216450,14 +216430,14 @@ - + - + - + - + @@ -216470,14 +216450,14 @@ - + - + - + - + @@ -216495,9 +216475,9 @@ - + - + @@ -216515,29 +216495,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -216545,9 +216525,9 @@ - + - + @@ -216600,8 +216580,8 @@ - - + + @@ -216615,21 +216595,21 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -216688,17 +216668,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -216777,26 +216757,26 @@ - - + + - - - - - - - + + + + + + + - - - - + + + + @@ -216818,46 +216798,46 @@ - - + + - - - + + + - - - - - - - - - - - + + + + + + + + + + + - - + + - - - + + + - + @@ -216880,19 +216860,19 @@ - - - - - + + + + + - - - - - - + + + + + + @@ -216901,10 +216881,10 @@ - - - - + + + + @@ -216926,19 +216906,19 @@ - - - - - - - - - - + + + + + + + + + + - - + + @@ -216949,24 +216929,24 @@ - - - - - - - + + + + + + + - - - + + + - - - - - + + + + + @@ -216987,56 +216967,56 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -217046,20 +217026,20 @@ - - - - - - - + + + + + + + - - - - - + + + + + @@ -217071,13 +217051,13 @@ - - - - - - - + + + + + + + @@ -217102,9 +217082,9 @@ - + - + @@ -217112,9 +217092,9 @@ - + - + @@ -217142,9 +217122,9 @@ - + - + @@ -217162,14 +217142,14 @@ - + - + - + - + @@ -217177,29 +217157,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -217232,14 +217212,14 @@ - + - + - + - + @@ -217272,9 +217252,9 @@ - + - + @@ -217292,24 +217272,24 @@ - + - + - + - + - + - + - + - + @@ -217452,10 +217432,10 @@ - - - - + + + + @@ -217467,10 +217447,10 @@ - - - - + + + + @@ -217495,9 +217475,9 @@ - - - + + + @@ -217521,12 +217501,12 @@ - - + + - - + + @@ -217552,32 +217532,32 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -217596,57 +217576,57 @@ - - - - - + + + + + - - + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - + + @@ -217784,17 +217764,17 @@ - - + + - - - - - + + + + + - + @@ -217864,14 +217844,14 @@ - - - + + + - - - - + + + + @@ -217909,34 +217889,34 @@ - - - - - + + + + + - - - - - + + + + + - - - - + + + + - - - - - - - - + + + + + + + + @@ -217944,11 +217924,11 @@ - - - - - + + + + + @@ -218008,9 +217988,9 @@ - + - + @@ -218027,29 +218007,29 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -218058,9 +218038,9 @@ - + - + @@ -218093,14 +218073,14 @@ - + - + - + - + @@ -218108,9 +218088,9 @@ - + - + @@ -218118,9 +218098,9 @@ - + - + @@ -218158,9 +218138,9 @@ - + - + @@ -218234,9 +218214,9 @@ - - - + + + @@ -218283,8 +218263,8 @@ - - + + @@ -218303,19 +218283,19 @@ - - - + + + - - - - + + + + @@ -218324,10 +218304,10 @@ - - - - + + + + @@ -218371,34 +218351,34 @@ - - - - - - + + + + + + - - - + + + - - - - + + + + - - + + - - + + @@ -218879,21 +218859,21 @@ - - - - - - - - - + + + + + + + + + - - - - - + + + + + @@ -219012,7 +218992,7 @@ - + @@ -219080,9 +219060,9 @@ - + - + @@ -219095,14 +219075,14 @@ - + - + - + - + @@ -219138,7 +219118,7 @@ - + @@ -219151,32 +219131,32 @@ - + - - + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -219197,17 +219177,17 @@ - + - - - + + + - - - - + + + + @@ -219344,18 +219324,18 @@ - + - + - + - + - + @@ -219363,24 +219343,24 @@ - + - + - + - + - + - + - + - + @@ -219393,9 +219373,9 @@ - + - + @@ -219408,9 +219388,9 @@ - + - + @@ -219418,19 +219398,19 @@ - + - + - + - + - + - + @@ -219448,9 +219428,9 @@ - + - + @@ -219463,14 +219443,14 @@ - + - + - + - + @@ -219498,9 +219478,9 @@ - + - + @@ -219608,14 +219588,14 @@ - + - + - + - + @@ -219623,9 +219603,9 @@ - + - + @@ -219633,19 +219613,19 @@ - + - + - + - + - + - + @@ -219658,9 +219638,9 @@ - + - + @@ -219673,9 +219653,9 @@ - + - + @@ -219773,12 +219753,12 @@ - - + + - - + + @@ -219817,22 +219797,22 @@ - - + + - - + + - - + + - - - - - - - + + + + + + + @@ -219860,23 +219840,23 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -219898,39 +219878,39 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - + + - - + + - - + + @@ -219938,12 +219918,12 @@ - - - - - - + + + + + + @@ -219980,27 +219960,27 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -220053,16 +220033,16 @@ - - + + - - - - - - - + + + + + + + @@ -220087,15 +220067,15 @@ - - - - - - - - - + + + + + + + + + @@ -220253,17 +220233,17 @@ - - + + - - + + - - + + @@ -220271,15 +220251,15 @@ - - + + - - + + - - + + @@ -220316,8 +220296,8 @@ - - + + @@ -220336,8 +220316,8 @@ - - + + @@ -220384,9 +220364,9 @@ - + - + @@ -220394,44 +220374,44 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -220460,11 +220440,11 @@ - - - - - + + + + + @@ -220482,101 +220462,101 @@ - - - - + + + + - - - + + + - - - - - - - - - - + + + + + + + + + + - + - - - - + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - + + + + + + + + @@ -220612,24 +220592,24 @@ - + - + - + - + - + - + - + - + @@ -220652,19 +220632,19 @@ - + - + - + - + - + - + @@ -220769,7 +220749,7 @@ - + @@ -220791,53 +220771,53 @@ - - - - - + + + + + - - + + - - - - - - - + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -220909,83 +220889,83 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -220996,74 +220976,74 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -221126,9 +221106,9 @@ - - - + + + @@ -221148,12 +221128,12 @@ - - - - - - + + + + + + @@ -221178,14 +221158,14 @@ - + - + - + - + @@ -221213,9 +221193,9 @@ - + - + @@ -221293,17 +221273,17 @@ - + - - - + + + - - + + @@ -221347,13 +221327,13 @@ - - + + - - - + + + @@ -221364,24 +221344,24 @@ - + - + - + - + - + - + - + - + @@ -221389,9 +221369,9 @@ - + - + @@ -221415,63 +221395,63 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -221482,69 +221462,69 @@ - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - + - + - + - + - + - + - + @@ -221552,9 +221532,9 @@ - + - + @@ -221582,95 +221562,95 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - + + + - - - + + + - - + + @@ -221769,9 +221749,9 @@ - + - + @@ -221779,24 +221759,24 @@ - + - + - + - + - + - + - + - + @@ -221809,49 +221789,49 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -221878,9 +221858,9 @@ - - - + + + @@ -221890,11 +221870,11 @@ - - - + + + - + @@ -221904,9 +221884,9 @@ - - - + + + @@ -221918,22 +221898,22 @@ - - - - - - - - - + + + + + + + + + - - - - - - + + + + + + @@ -221950,75 +221930,75 @@ - - - - - + + + + + - - - + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - - - + + + + + + + + + + + @@ -222026,31 +222006,31 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -222074,155 +222054,155 @@ - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -222243,10 +222223,10 @@ - - - - + + + + @@ -222258,107 +222238,107 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - + + + + + - - - - + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - + + + + + @@ -222387,10 +222367,10 @@ - + - - + + @@ -222401,9 +222381,9 @@ - + - + @@ -222416,14 +222396,14 @@ - + - + - + - + @@ -222473,8 +222453,8 @@ - - + + @@ -222505,21 +222485,21 @@ - - - - - - + + + + + + - - - - + + + + @@ -222527,21 +222507,21 @@ - + - - - - - - + + + + + + - - - - - + + + + + @@ -222571,21 +222551,21 @@ - + - + - + - + - + - + - + @@ -222593,34 +222573,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -222681,22 +222661,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -222715,54 +222695,54 @@ - - - - - - + + + + + + - - + + - - - - - + + + + + - - - - + + + + - - - - - - + + + + + + - - - - - - + + + + + + @@ -222773,9 +222753,9 @@ - - - + + + @@ -222784,139 +222764,139 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -223034,9 +223014,9 @@ - + - + @@ -223088,14 +223068,14 @@ - + - + - + - + @@ -223118,9 +223098,9 @@ - + - + @@ -223133,69 +223113,69 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -223223,19 +223203,19 @@ - + - + - + - + - + - + @@ -223248,9 +223228,9 @@ - + - + @@ -223258,14 +223238,14 @@ - + - + - + - + @@ -223293,9 +223273,9 @@ - + - + @@ -223303,9 +223283,9 @@ - + - + @@ -223343,9 +223323,9 @@ - + - + @@ -223368,16 +223348,6 @@ - - - - - - - - - - @@ -223606,21 +223576,21 @@ - - - - - - - - + + + + + + + + - - - - - + + + + + @@ -223735,8 +223705,8 @@ - - + + @@ -223749,103 +223719,103 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - + + + + + + + - + - - - - - - - - + + + + + + + + @@ -223863,36 +223833,36 @@ - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -223902,39 +223872,39 @@ - - - - - - - + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - + + + + + + + - - - - - + + + + + @@ -223944,149 +223914,149 @@ - - - - - - + + + + + + - - - - - + + + + + - - + + - - + + - - - - - - - - - - + + + + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -224135,9 +224105,9 @@ - - - + + + @@ -224403,66 +224373,66 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -224477,13 +224447,13 @@ - - + + - - - + + + @@ -224577,76 +224547,76 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -224667,35 +224637,35 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - + + + + @@ -224854,71 +224824,71 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -224930,20 +224900,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -225099,17 +225069,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -225197,16 +225167,16 @@ - + - + - + @@ -225219,9 +225189,9 @@ - + - + @@ -225229,9 +225199,9 @@ - + - + @@ -225239,29 +225209,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -225274,29 +225244,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -225309,9 +225279,9 @@ - + - + @@ -225339,9 +225309,9 @@ - + - + @@ -225412,8 +225382,8 @@ - - + + @@ -225421,68 +225391,68 @@ - - + + - - + + - - + + - - + + - - - - - + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - + + + + @@ -225520,24 +225490,24 @@ - - + + - - + + - - + + - - + + - - + + @@ -225556,17 +225526,17 @@ - - - - + + + + - - + + - - + + @@ -225849,9 +225819,9 @@ - - - + + + @@ -226170,9 +226140,9 @@ - + - + @@ -226185,9 +226155,9 @@ - + - + @@ -226271,26 +226241,26 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + @@ -226332,12 +226302,12 @@ - - - - - - + + + + + + @@ -227856,9 +227826,9 @@ - + - + @@ -227886,14 +227856,14 @@ - + - + - + - + @@ -227901,14 +227871,14 @@ - + - + - + - + @@ -227964,13 +227934,13 @@ - - + + - - - + + + @@ -228002,16 +227972,16 @@ - - + + - - - - - - + + + + + + @@ -228028,17 +227998,17 @@ - - - - - - + + + + + + - - - + + + @@ -228184,9 +228154,9 @@ - + - + @@ -228238,8 +228208,8 @@ - - + + @@ -228799,14 +228769,14 @@ - + - + - + - + @@ -228923,12 +228893,12 @@ - - + + - - + + @@ -229557,9 +229527,9 @@ - + - + @@ -229637,14 +229607,14 @@ - + - + - + - + @@ -229704,9 +229674,9 @@ - - - + + + @@ -230065,25 +230035,25 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - + + + + + + + @@ -232227,33 +232197,33 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -232285,49 +232255,49 @@ - - + + - - + + - - - + + + - - + + - - + + - + - + - + - + - + - + @@ -232340,24 +232310,24 @@ - - + + - - - - - - - - - - + + + + + + + + + + - - + + @@ -232388,9 +232358,9 @@ - + - + @@ -232516,32 +232486,32 @@ - - - - - - + + + + + + - - + + - - - - - - - + + + + + + + - + @@ -232558,19 +232528,19 @@ - + - + - + - + - + - + @@ -232583,14 +232553,14 @@ - + - + - + - + @@ -232608,14 +232578,14 @@ - + - + - + - + @@ -232659,59 +232629,59 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - + - - + + - - + + @@ -232737,35 +232707,35 @@ - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - + + + + @@ -232833,50 +232803,50 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -232886,49 +232856,49 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -232936,9 +232906,9 @@ - + - + @@ -232951,34 +232921,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -232986,9 +232956,9 @@ - + - + @@ -233001,9 +232971,9 @@ - + - + @@ -233095,66 +233065,66 @@ - - - - - + + + + + - - + + - + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - + + - - + + - - - - - + + + + + - - - + + + - - - - + + + + - - - + + + @@ -233162,9 +233132,9 @@ - - - + + + @@ -233177,8 +233147,8 @@ - - + + @@ -233186,50 +233156,50 @@ - - + + - - + + - - + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -233290,21 +233260,21 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -233315,8 +233285,8 @@ - - + + @@ -234140,9 +234110,9 @@ - + - + @@ -234155,14 +234125,14 @@ - + - + - + - + @@ -234215,8 +234185,8 @@ - - + + @@ -234304,22 +234274,22 @@ - - + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -234396,7 +234366,7 @@ - + @@ -234434,19 +234404,19 @@ - + - + - + - + - + - + @@ -234454,9 +234424,9 @@ - + - + @@ -234464,39 +234434,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -234515,35 +234485,35 @@ - - - - - - + + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -234564,35 +234534,35 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -234600,15 +234570,15 @@ - - - - - - - - - + + + + + + + + + @@ -234618,7 +234588,7 @@ - + @@ -234628,11 +234598,11 @@ - - - - - + + + + + @@ -234642,55 +234612,55 @@ - - - - - + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - + + + + + @@ -234699,12 +234669,12 @@ - - - - - - + + + + + + @@ -234712,67 +234682,67 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + - - - - - - - + + + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - + - + @@ -234780,9 +234750,9 @@ - + - + @@ -234806,22 +234776,22 @@ - - - - - - - - + + + + + + + + - - + + @@ -234847,9 +234817,9 @@ - + - + @@ -234912,9 +234882,9 @@ - + - + @@ -234947,9 +234917,9 @@ - + - + @@ -234957,34 +234927,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -235012,14 +234982,14 @@ - + - + - + - + @@ -235027,9 +234997,9 @@ - + - + @@ -235037,9 +235007,9 @@ - + - + @@ -235047,9 +235017,9 @@ - + - + @@ -235109,8 +235079,8 @@ - - + + @@ -235331,10 +235301,10 @@ - + - - + + @@ -235434,12 +235404,12 @@ - - - + + + - + @@ -235471,12 +235441,12 @@ - - - - - - + + + + + + @@ -235484,27 +235454,27 @@ - - - - - - - + + + + + + + - + - - - - - - - - + + + + + + + + @@ -235517,35 +235487,35 @@ - - - - - + + + + + - - - - - - + + + + + + - - - - + + + + - - - - - + + + + + @@ -235554,20 +235524,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -235633,41 +235603,41 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + @@ -235677,72 +235647,72 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -235753,46 +235723,46 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -235817,18 +235787,18 @@ - - - - - - - - - - - - + + + + + + + + + + + + @@ -235852,7 +235822,7 @@ - + @@ -235900,18 +235870,18 @@ - - - - - - - - - - - - + + + + + + + + + + + + @@ -235928,7 +235898,7 @@ - + @@ -235942,9 +235912,9 @@ - - - + + + @@ -235989,14 +235959,14 @@ - + - + - + - + @@ -236019,14 +235989,14 @@ - + - + - + - + @@ -236034,19 +236004,19 @@ - + - + - + - + - + - + @@ -236079,9 +236049,9 @@ - + - + @@ -236099,24 +236069,24 @@ - + - + - + - + - + - + - + - + @@ -236124,14 +236094,14 @@ - + - + - + - + @@ -236139,9 +236109,9 @@ - + - + @@ -236154,9 +236124,9 @@ - + - + @@ -236189,9 +236159,9 @@ - + - + @@ -236199,9 +236169,9 @@ - + - + @@ -236214,9 +236184,9 @@ - + - + @@ -236224,19 +236194,19 @@ - + - + - + - + - + - + @@ -236244,9 +236214,9 @@ - + - + @@ -236289,47 +236259,47 @@ - - - - - - - - - - - + + + + + + + + + + + - - + + - - - + + + - - + + - - - - - - - - - - + + + + + + + + + + - - - - - - - + + + + + + + @@ -236366,49 +236336,49 @@ - - + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + @@ -236472,33 +236442,33 @@ - - + + - - + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - + + - - + + @@ -236512,57 +236482,57 @@ - - - - - - - - - + + + + + + + + + - + - - - - + + + + - - - - - - + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - + + + + + + + + + @@ -236576,32 +236546,32 @@ - - - - - - - - + + + + + + + + - + - - - + + + - - + + - - - + + + @@ -236609,17 +236579,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -236644,8 +236614,8 @@ - - + + @@ -236667,9 +236637,9 @@ - - - + + + @@ -236682,9 +236652,9 @@ - - - + + + @@ -236696,38 +236666,38 @@ - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - + + + + + + @@ -236755,19 +236725,19 @@ - + - + - + - + - + - + @@ -236785,19 +236755,19 @@ - + - + - + - + - + - + @@ -236820,14 +236790,14 @@ - + - + - + - + @@ -236840,29 +236810,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -236875,14 +236845,14 @@ - + - + - + - + @@ -236969,76 +236939,76 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - - - - - - - - - + + + + + + + + + - - - - - + + + + + - - - - - - - - - - + + + + + + + + + + @@ -237048,31 +237018,31 @@ - + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -237108,27 +237078,27 @@ - - - - + + + + - - - - - - - + + + + + + + - - - - - - + + + + + + @@ -237230,16 +237200,16 @@ - - - - + + + + - - - - + + + + @@ -237272,20 +237242,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -237305,129 +237275,129 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - - - - - + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -237441,14 +237411,14 @@ - - - - - - - - + + + + + + + + @@ -237477,14 +237447,14 @@ - - - - - - - - + + + + + + + + @@ -237494,49 +237464,49 @@ - - - - - - - - - + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -237738,119 +237708,119 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -237907,35 +237877,35 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -237962,67 +237932,67 @@ - - - + + + - - - + + + - + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - + + + + + + @@ -238041,19 +238011,19 @@ - + - + - + - + - + - + @@ -238107,41 +238077,41 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - + @@ -238160,9 +238130,9 @@ - + - + @@ -238227,12 +238197,12 @@ - + - - - + + + @@ -238252,9 +238222,9 @@ - + - + @@ -238267,14 +238237,14 @@ - + - + - + - + @@ -238282,14 +238252,14 @@ - + - + - + - + @@ -238297,19 +238267,19 @@ - + - + - + - + - + - + @@ -238317,9 +238287,9 @@ - + - + @@ -238332,9 +238302,9 @@ - + - + @@ -238342,9 +238312,9 @@ - + - + @@ -238357,54 +238327,54 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -238497,9 +238467,9 @@ - + - + @@ -238585,8 +238555,8 @@ - - + + @@ -238598,20 +238568,20 @@ - - - - - + + + + + - - - - - - - + + + + + + + @@ -238626,21 +238596,21 @@ - - - - - - - - - - + + + + + + + + + + - - - - + + + + @@ -238648,14 +238618,14 @@ - - - + + + - - - + + + @@ -238667,16 +238637,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -238717,66 +238687,66 @@ - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + @@ -238785,10 +238755,10 @@ - - - - + + + + @@ -238802,10 +238772,10 @@ - - - - + + + + @@ -238817,8 +238787,8 @@ - - + + @@ -238832,58 +238802,58 @@ - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - + + + + + + + + + + + + - + - - - + + + - - + + - - + + - - + + @@ -238967,14 +238937,14 @@ - - - + + + - - - - + + + + @@ -239989,9 +239959,9 @@ - + - + @@ -240004,9 +239974,9 @@ - + - + @@ -240014,9 +239984,9 @@ - + - + @@ -240024,9 +239994,9 @@ - + - + @@ -240034,14 +240004,14 @@ - + - + - + - + @@ -240112,9 +240082,9 @@ - - - + + + @@ -240127,9 +240097,9 @@ - - - + + + @@ -240138,40 +240108,40 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + @@ -240179,78 +240149,78 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -240361,14 +240331,14 @@ - + - + - + - + @@ -240426,29 +240396,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -240456,24 +240426,24 @@ - + - + - + - + - + - + - + - + @@ -240491,9 +240461,9 @@ - + - + @@ -240501,9 +240471,9 @@ - + - + @@ -240511,9 +240481,9 @@ - + - + @@ -240521,9 +240491,9 @@ - + - + @@ -240621,19 +240591,19 @@ - + - + - + - + - + - + @@ -240751,9 +240721,9 @@ - + - + @@ -240776,9 +240746,9 @@ - + - + @@ -240821,14 +240791,14 @@ - + - + - + - + @@ -240950,17 +240920,17 @@ - + - - + + - - - - - - + + + + + + @@ -240972,12 +240942,12 @@ - - - - - - + + + + + + @@ -241056,26 +241026,26 @@ - - - + + + - - - + + + - - - - - - - - - + + + + + + + + + @@ -241084,29 +241054,29 @@ - - - + + + - - - + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -241298,9 +241268,9 @@ - - - + + + @@ -241475,47 +241445,47 @@ - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + @@ -241538,18 +241508,18 @@ - - + + - - - - + + + + @@ -241557,45 +241527,45 @@ - - - - - - + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -241847,14 +241817,14 @@ - - + + - - + + - - + + @@ -241963,8 +241933,8 @@ - - + + @@ -241987,16 +241957,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -242110,22 +242080,22 @@ - - - + + + - - - - + + + + - + - + @@ -242157,9 +242127,9 @@ - + - + @@ -242172,9 +242142,9 @@ - + - + @@ -242207,24 +242177,24 @@ - + - + - + - + - + - + - + - + @@ -242257,39 +242227,39 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -242302,9 +242272,9 @@ - + - + @@ -242312,14 +242282,14 @@ - + - + - + - + @@ -242327,9 +242297,9 @@ - + - + @@ -242352,9 +242322,9 @@ - + - + @@ -242367,9 +242337,9 @@ - + - + @@ -242387,19 +242357,19 @@ - + - + - + - + - + - + @@ -242856,13 +242826,13 @@ - - + + - - - + + + @@ -242884,35 +242854,35 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - - + + + + - + @@ -243037,48 +243007,48 @@ - - + + - - - - - + + + + + - - - + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -243259,139 +243229,139 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -243428,12 +243398,12 @@ - - - - - - + + + + + + @@ -243442,59 +243412,59 @@ - - - - - - - - - + + + + + + + + + - - - - + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - + + + + + + + + + @@ -243517,16 +243487,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -243551,9 +243521,9 @@ - - - + + + @@ -243565,13 +243535,13 @@ - - - - - - - + + + + + + + @@ -243582,7 +243552,7 @@ - + @@ -243650,9 +243620,9 @@ - - - + + + @@ -243673,8 +243643,8 @@ - - + + @@ -243691,16 +243661,16 @@ - - + + - - + + - - - + + + @@ -244194,9 +244164,9 @@ - + - + @@ -244228,9 +244198,9 @@ - + - + @@ -244258,14 +244228,14 @@ - + - + - + - + @@ -244378,10 +244348,10 @@ - - - - + + + + @@ -244586,91 +244556,91 @@ - - - - - - - - - - + + + + + + + + + + - - - - - + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -256243,9 +256213,9 @@ - + - + @@ -256283,9 +256253,9 @@ - + - + @@ -256651,8 +256621,8 @@ - - + + @@ -256761,8 +256731,8 @@ - - + + @@ -259126,9 +259096,9 @@ - + - + @@ -261731,18 +261701,18 @@ - + - + - + - + @@ -261775,9 +261745,9 @@ - + - + @@ -261835,14 +261805,14 @@ - + - + - + - + @@ -262134,9 +262104,9 @@ - - - + + + @@ -262206,30 +262176,30 @@ - + - - + + - - + + - - + + - - + + - - + + - + @@ -262326,19 +262296,19 @@ - - - - - - - - + + + + + + + + - - - - + + + + @@ -262353,47 +262323,47 @@ - - + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - + + @@ -262568,20 +262538,20 @@ - - + + - - - - - - + + + + + + @@ -263321,14 +263291,14 @@ - + - + - + - + @@ -263465,29 +263435,29 @@ - + - - + + - - + + - - + + - - + + - - + + @@ -263497,14 +263467,14 @@ - + - + - + - + @@ -263522,19 +263492,19 @@ - + - + - + - + - + - + @@ -263747,38 +263717,38 @@ - - - - + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - + + + + + + - - + + @@ -263786,9 +263756,9 @@ - - - + + + @@ -263805,12 +263775,12 @@ - - - - - - + + + + + + @@ -264231,24 +264201,24 @@ - + - + - + - + - + - + - + - + @@ -264256,19 +264226,19 @@ - + - + - + - + - + - + @@ -264281,9 +264251,9 @@ - + - + @@ -264291,34 +264261,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -264356,24 +264326,24 @@ - + - + - + - + - + - + - + - + @@ -264456,26 +264426,26 @@ - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + @@ -264489,17 +264459,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -264527,16 +264497,16 @@ - - + + - - + + - - + + @@ -264547,50 +264517,50 @@ - - + + - - + + - - + + - - + + - - + + - + - + - - - + + + - + - + - - - - - + + + + + @@ -264666,42 +264636,42 @@ - - - - - - - - + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - + + + + + @@ -264717,33 +264687,33 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -264762,47 +264732,47 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -264862,9 +264832,9 @@ - + - + @@ -264948,21 +264918,21 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -264979,11 +264949,11 @@ - - + + - - + + @@ -265057,34 +265027,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -265092,9 +265062,9 @@ - + - + @@ -265120,19 +265090,19 @@ - - - - + + + + - - - - - + + + + + @@ -265144,39 +265114,39 @@ - - - - - - + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -265207,9 +265177,9 @@ - - - + + + @@ -265224,36 +265194,36 @@ - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + @@ -265275,30 +265245,30 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -278762,7 +278732,7 @@ - + @@ -279970,7 +279940,7 @@ - + @@ -280002,9 +279972,9 @@ - + - + @@ -280062,8 +280032,8 @@ - - + + @@ -280123,7 +280093,7 @@ - + @@ -280266,10 +280236,10 @@ - - - - + + + + @@ -280729,7 +280699,7 @@ - + @@ -280741,19 +280711,19 @@ - + - + - + - + - + - + @@ -280771,9 +280741,9 @@ - + - + @@ -280905,35 +280875,35 @@ - - + + - - + + - + - - + + - - - + + + - - - - - - - - - - - + + + + + + + + + + + @@ -280942,14 +280912,14 @@ - - - - - - - - + + + + + + + + @@ -281017,60 +280987,60 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - + + + + - - - + + + - - - - + + + + @@ -281268,16 +281238,16 @@ - + - + - + @@ -281295,34 +281265,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -281448,33 +281418,33 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -281485,7 +281455,7 @@ - + @@ -281506,13 +281476,13 @@ - - - - - - - + + + + + + + @@ -281532,58 +281502,58 @@ - - - - - - - - + + + + + + + + - - - + + + - - - - - + + + + + - - - + + + - + - - - + + + - + - - - - - + + + + + - - + + @@ -282198,16 +282168,16 @@ - + - + - + - + - + @@ -282256,24 +282226,24 @@ - - - - - + + + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -282494,7 +282464,7 @@ - + @@ -282506,9 +282476,9 @@ - + - + @@ -282536,14 +282506,14 @@ - + - + - + - + @@ -282551,19 +282521,19 @@ - + - + - + - + - + - + @@ -282627,20 +282597,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -282656,7 +282626,7 @@ - + @@ -282671,12 +282641,12 @@ - - + + - - - + + + @@ -282706,38 +282676,38 @@ - - - - - - - - - + + + + + + + + + - + - - - - - + + + + + - - - - - - + + + + + + @@ -282753,10 +282723,10 @@ - - - - + + + + @@ -282766,27 +282736,27 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - + + + + + + @@ -282795,27 +282765,27 @@ - - - + + + - - - + + + - - - + + + - + - + @@ -282867,14 +282837,14 @@ - + - + - + - + @@ -282970,23 +282940,23 @@ - - - + + + - - - - - - + + + + + + - - - - - - + + + + + + @@ -286128,7 +286098,7 @@ - + @@ -286162,19 +286132,19 @@ - + - + - + - + - + - + @@ -286261,34 +286231,34 @@ - - - - - - - - + + + + + + + + - - - - + + + + - - - + + + - - - - - - - - + + + + + + + + @@ -286308,18 +286278,18 @@ - - - - - - - - - - - - + + + + + + + + + + + + @@ -286330,15 +286300,15 @@ - - - + + + - - + + @@ -286376,7 +286346,7 @@ - + @@ -286393,9 +286363,9 @@ - + - + @@ -286617,47 +286587,47 @@ - - - + + + - - - - + + + + - - - - + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - + + + @@ -286759,10 +286729,10 @@ - - - - + + + + @@ -286779,12 +286749,12 @@ - - + + - - - + + + @@ -287434,9 +287404,9 @@ - + - + @@ -287503,14 +287473,14 @@ - + - + - + - + @@ -287548,19 +287518,19 @@ - + - + - + - + - + - + @@ -287568,9 +287538,9 @@ - + - + @@ -287588,9 +287558,9 @@ - + - + @@ -287698,19 +287668,19 @@ - + - + - + - + - + - + @@ -288027,65 +287997,65 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - + + + + + + + + @@ -288214,20 +288184,20 @@ - - + + - - - - - + + + + + - - - + + + @@ -288265,17 +288235,17 @@ - - + + - - - + + + @@ -288305,8 +288275,8 @@ - - + + @@ -288653,48 +288623,48 @@ - - + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + @@ -288704,12 +288674,12 @@ - - - - - - + + + + + + @@ -288729,18 +288699,18 @@ - - + + - - - - - - - - + + + + + + + + @@ -288785,15 +288755,15 @@ - + - - - - - + + + + + @@ -292966,9 +292936,9 @@ - + - + @@ -293076,20 +293046,20 @@ - - - - - - - - - + + + + + + + + + - - - - + + + + @@ -293098,7 +293068,7 @@ - + @@ -293441,9 +293411,9 @@ - + - + @@ -293463,13 +293433,13 @@ - - - + + + - - - + + + @@ -299868,18 +299838,18 @@ - + - + - + - + @@ -299892,29 +299862,29 @@ - + - + - + - + - + - + - + - + - + - + @@ -299992,74 +299962,74 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - + - - + + - - - - - + + + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - + - - + + @@ -300072,7 +300042,7 @@ - + @@ -300081,62 +300051,62 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -300153,32 +300123,32 @@ - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - + + + @@ -300224,16 +300194,16 @@ - + - + - + - + - + @@ -300241,14 +300211,14 @@ - + - + - + - + @@ -300256,24 +300226,24 @@ - + - + - + - + - + - + - + - + @@ -300286,9 +300256,9 @@ - + - + @@ -300296,19 +300266,19 @@ - + - + - + - + - + - + @@ -300390,28 +300360,28 @@ - - - - - - - + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + @@ -300419,38 +300389,38 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - - + + + - - + + @@ -300469,9 +300439,9 @@ - - - + + + @@ -300483,12 +300453,12 @@ - - - - - - + + + + + + @@ -300510,156 +300480,156 @@ - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - + @@ -300689,9 +300659,9 @@ - - - + + + @@ -300760,20 +300730,20 @@ - - + + - - + + - - - - - - + + + + + + @@ -300927,21 +300897,21 @@ - + - + - + - + - + @@ -300975,13 +300945,13 @@ - - + + - + - + @@ -300998,16 +300968,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -301018,11 +300988,11 @@ - + - - + + @@ -301030,21 +301000,21 @@ - + - + - + - + - + - + - + @@ -301057,9 +301027,9 @@ - + - + @@ -301082,9 +301052,9 @@ - + - + @@ -301207,9 +301177,9 @@ - + - + @@ -301372,41 +301342,41 @@ - - - - - + + + + + - - + + - + - - + + - - - - - - - - + + + + + + + + - - - - + + + + @@ -301453,7 +301423,7 @@ - + @@ -301484,15 +301454,15 @@ - - - - - - - - - + + + + + + + + + @@ -301505,14 +301475,14 @@ - - - - - - - - + + + + + + + + @@ -301545,31 +301515,31 @@ - - + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + @@ -301578,15 +301548,15 @@ - - - - + + + + - - - + + + @@ -301849,23 +301819,23 @@ - - - - - + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -302062,9 +302032,9 @@ - - - + + + @@ -302723,21 +302693,21 @@ - + - + - + - + - + - + - + @@ -302820,19 +302790,19 @@ - + - + - + - + - + - + @@ -302858,26 +302828,26 @@ - + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + @@ -302888,9 +302858,9 @@ - - - + + + @@ -303095,46 +303065,46 @@ - - - + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - + + - - - - + + + + - - + + - - + + @@ -303149,21 +303119,21 @@ - + - + - + - + - + - + - + @@ -303196,9 +303166,9 @@ - + - + @@ -303226,24 +303196,24 @@ - + - + - + - + - + - + - + - + @@ -303318,26 +303288,26 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - + + + + + + + @@ -303346,12 +303316,12 @@ - - - - - - + + + + + + @@ -303360,17 +303330,17 @@ - - - - - - + + + + + + - + @@ -303454,7 +303424,7 @@ - + @@ -303512,12 +303482,12 @@ - + - - - + + + @@ -303562,16 +303532,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -303607,7 +303577,7 @@ - + @@ -303644,90 +303614,90 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + @@ -303737,87 +303707,87 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - + + @@ -303831,51 +303801,51 @@ - + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -303960,32 +303930,32 @@ - - - - + + + + - - - + + + - - - - - - - - - - - - + + + + + + + + + + + + @@ -303995,11 +303965,11 @@ - - - - - + + + + + @@ -304049,21 +304019,21 @@ - - - - - - + + + + + + - - + + - - + + @@ -304079,11 +304049,11 @@ - + - + @@ -304100,7 +304070,7 @@ - + @@ -304137,19 +304107,19 @@ - + - + - + - + - + - + @@ -304162,9 +304132,9 @@ - + - + @@ -304192,9 +304162,9 @@ - + - + @@ -304207,9 +304177,9 @@ - + - + @@ -304217,19 +304187,19 @@ - + - + - + - + - + - + @@ -304267,9 +304237,9 @@ - + - + @@ -304297,9 +304267,9 @@ - + - + @@ -304307,34 +304277,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -304362,34 +304332,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -304397,14 +304367,14 @@ - + - + - + - + @@ -304647,21 +304617,21 @@ - - + + - + - - - - + + + + @@ -304669,21 +304639,21 @@ - - - - - - - - + + + + + + + + - - - - + + + + @@ -304700,8 +304670,8 @@ - - + + @@ -304766,11 +304736,11 @@ - - + + - - + + @@ -304784,79 +304754,79 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -304868,23 +304838,23 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -304904,12 +304874,12 @@ - - - - - - + + + + + + @@ -304920,85 +304890,85 @@ - + - - - - - - - + + + + + + + - - + + - - - - - - - + + + + + + + - - + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + @@ -305090,22 +305060,22 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -305166,35 +305136,35 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - + + - - - + + + - - - - + + + + @@ -305202,139 +305172,139 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + - - + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - + + + @@ -305370,48 +305340,48 @@ - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - - - - + + + + + + - - - + + + - - - - - - - - - + + + + + + + + + @@ -305419,15 +305389,15 @@ - - - + + + - - - - - + + + + + @@ -305443,11 +305413,11 @@ - + - + - + @@ -305480,9 +305450,9 @@ - + - + @@ -305530,9 +305500,9 @@ - + - + @@ -305565,9 +305535,9 @@ - + - + @@ -305607,9 +305577,9 @@ - - - + + + @@ -305789,11 +305759,11 @@ - - - - - + + + + + @@ -305837,8 +305807,8 @@ - - + + @@ -305939,19 +305909,19 @@ - - - + + + - - - - - - + + + + + + @@ -306046,11 +306016,11 @@ - + - + - + @@ -306068,39 +306038,24 @@ - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + @@ -306132,9 +306087,9 @@ - - - + + + @@ -306207,94 +306162,94 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + - - + + @@ -306302,36 +306257,36 @@ - - - - - - - - + + + + + + + + - - - - - - - + + + + + + + - - - - + + + + - - - + + + @@ -306343,25 +306298,25 @@ - - - - - - - + + + + + + + - - - + + + - - - + + + - + @@ -306388,19 +306343,14 @@ - - - - - - + - + - + - + @@ -306472,9 +306422,9 @@ - - - + + + @@ -306489,13 +306439,13 @@ - - - + + + - - - + + + @@ -306594,11 +306544,11 @@ - + - + - + @@ -306606,9 +306556,9 @@ - + - + @@ -306630,20 +306580,20 @@ - + - - + + - - - - + + + + @@ -306688,8 +306638,8 @@ - - + + @@ -307312,9 +307262,9 @@ - + - + @@ -307733,16 +307683,16 @@ - - - - - - - - - - + + + + + + + + + + @@ -307768,7 +307718,7 @@ - + @@ -308452,13 +308402,13 @@ - + - + - + - + @@ -308553,15 +308503,15 @@ - - + + - - + + - - + + @@ -308576,7 +308526,7 @@ - + @@ -308733,14 +308683,14 @@ - + - + - + - + @@ -308748,9 +308698,9 @@ - + - + @@ -308763,9 +308713,9 @@ - + - + @@ -309022,38 +308972,38 @@ - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + @@ -309147,11 +309097,11 @@ - - + + - + @@ -309254,20 +309204,20 @@ - + - - - - - - - - - - - + + + + + + + + + + + @@ -309510,12 +309460,12 @@ - - - - - - + + + + + + @@ -309528,61 +309478,61 @@ - - - - - - - - + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -309594,9 +309544,9 @@ - - - + + + @@ -309618,9 +309568,9 @@ - - - + + + @@ -314678,9 +314628,9 @@ - + - + @@ -314688,9 +314638,9 @@ - + - + @@ -314718,14 +314668,14 @@ - + - + - + - + @@ -315334,12 +315284,12 @@ - - - - - - + + + + + + @@ -315361,10 +315311,10 @@ - - - - + + + + @@ -315418,28 +315368,28 @@ - - - - + + + + - - - - - - + + + + + + - - - + + + - + @@ -315789,9 +315739,9 @@ - + - + @@ -315799,19 +315749,19 @@ - + - + - + - + - + - + @@ -315819,14 +315769,14 @@ - + - + - + - + @@ -315874,9 +315824,9 @@ - + - + @@ -315992,8 +315942,8 @@ - - + + @@ -316003,7 +315953,7 @@ - + @@ -316017,46 +315967,46 @@ - - - + + + - - - - - - - - - + + + + + + + + + - - - - - - - - + + + + + + + + - - - - + + + + - - + + - + @@ -316084,9 +316034,9 @@ - - - + + + @@ -316247,8 +316197,8 @@ - - + + @@ -317980,24 +317930,24 @@ - + - + - + - + - + - + - + - + @@ -318010,9 +317960,9 @@ - + - + @@ -318095,21 +318045,21 @@ - - - + + + - - - + + + - - - + + + - - - + + + @@ -318162,9 +318112,9 @@ - - - + + + @@ -318311,9 +318261,9 @@ - + - + @@ -318336,9 +318286,9 @@ - + - + @@ -318356,9 +318306,9 @@ - + - + @@ -318460,8 +318410,8 @@ - - + + @@ -318614,8 +318564,8 @@ - - + + @@ -318730,14 +318680,14 @@ - - - - - - - - + + + + + + + + @@ -318967,19 +318917,19 @@ - + - + - + - + - + - + @@ -319017,9 +318967,9 @@ - + - + @@ -319027,9 +318977,9 @@ - + - + @@ -319037,14 +318987,14 @@ - + - + - + - + @@ -319072,24 +319022,24 @@ - + - + - + - + - + - + - + - + @@ -319097,9 +319047,9 @@ - + - + @@ -319122,14 +319072,14 @@ - + - + - + - + @@ -319147,9 +319097,9 @@ - + - + @@ -319243,37 +319193,37 @@ - - - + + + - - - - - - + + + + + + - - - - - + + + + + - - - - + + + + - - + + @@ -319329,8 +319279,8 @@ - - + + @@ -319341,24 +319291,24 @@ - - - - - - - - - - - - + + + + + + + + + + + + - + @@ -319375,29 +319325,29 @@ - - - - + + + + - + - - - - + + + + - - - + + + - + @@ -319473,55 +319423,55 @@ - - - - - - - + + + + + + + - - + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - + + + + + - - - + + + @@ -319549,11 +319499,11 @@ - - - - - + + + + + @@ -319656,21 +319606,21 @@ - - - - - - - + + + + + + + - + - - - - + + + + @@ -319742,45 +319692,45 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -319790,73 +319740,73 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + @@ -319931,15 +319881,15 @@ - - - - - - - - - + + + + + + + + + @@ -319957,9 +319907,9 @@ - - - + + + @@ -319989,11 +319939,11 @@ - - - - - + + + + + @@ -320002,46 +319952,46 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -320117,9 +320067,9 @@ - + - + @@ -320132,9 +320082,9 @@ - + - + @@ -320217,9 +320167,9 @@ - - - + + + @@ -320231,8 +320181,8 @@ - - + + @@ -322299,13 +322249,13 @@ - + - + - + - + @@ -322363,9 +322313,9 @@ - + - + @@ -322447,9 +322397,9 @@ - - - + + + @@ -322771,20 +322721,20 @@ - - - - + + + + - - + + - - - + + + @@ -323013,16 +322963,16 @@ - + - + - + @@ -323070,34 +323020,34 @@ - + - + - + - + - + - + - + - + - + - + - + - + @@ -323105,24 +323055,24 @@ - + - + - + - + - + - + - + - + @@ -323130,9 +323080,9 @@ - + - + @@ -323140,16 +323090,6 @@ - - - - - - - - - - @@ -323182,9 +323122,9 @@ - - - + + + @@ -323311,76 +323251,76 @@ - - - - - - - - - + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - + - - + + @@ -323418,63 +323358,63 @@ - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + @@ -323485,86 +323425,86 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - + + + + @@ -324321,14 +324261,14 @@ - + - + - + - + @@ -324522,23 +324462,23 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -324562,9 +324502,9 @@ - + - + @@ -324577,14 +324517,14 @@ - + - + - + - + @@ -324597,9 +324537,9 @@ - + - + @@ -324707,9 +324647,9 @@ - + - + @@ -324742,19 +324682,19 @@ - + - + - + - + - + - + @@ -324859,8 +324799,8 @@ - - + + @@ -324871,12 +324811,12 @@ - - + + - - + + @@ -324893,13 +324833,13 @@ - - + + - - - + + + @@ -325195,9 +325135,9 @@ - - - + + + @@ -325274,20 +325214,20 @@ - - - - - + + + + + - - - + + + - - - + + + @@ -325295,18 +325235,18 @@ - - - - - + + + + + - + - - - + + + @@ -326139,9 +326079,9 @@ - + - + @@ -326149,9 +326089,9 @@ - + - + @@ -326204,14 +326144,14 @@ - + - + - + - + @@ -326219,14 +326159,14 @@ - + - + - + - + @@ -326299,14 +326239,14 @@ - + - + - + - + @@ -326329,9 +326269,9 @@ - + - + @@ -326359,9 +326299,9 @@ - + - + @@ -326435,13 +326375,13 @@ - - - - - - - + + + + + + + @@ -326453,12 +326393,12 @@ - - + + - - - + + + @@ -326581,16 +326521,16 @@ - - + + - + - - - - + + + + @@ -326600,8 +326540,8 @@ - - + + @@ -326693,24 +326633,24 @@ - - - - - + + + + + - - - - - - - - - - - + + + + + + + + + + + @@ -326763,11 +326703,11 @@ - + - - - + + + @@ -326832,11 +326772,11 @@ - + - - - + + + @@ -326913,9 +326853,9 @@ - + - + @@ -327187,9 +327127,9 @@ - + - + @@ -327232,9 +327172,9 @@ - + - + @@ -327412,9 +327352,9 @@ - + - + @@ -327742,9 +327682,9 @@ - + - + @@ -328585,8 +328525,8 @@ - - + + @@ -328652,9 +328592,9 @@ - - - + + + @@ -328899,9 +328839,9 @@ - - - + + + @@ -329474,13 +329414,13 @@ - - - - - - - + + + + + + + @@ -331891,9 +331831,9 @@ - + - + @@ -331936,8 +331876,8 @@ - - + + @@ -332058,14 +331998,14 @@ - + - + - + - + @@ -332103,9 +332043,9 @@ - + - + @@ -332133,9 +332073,9 @@ - + - + @@ -332153,9 +332093,9 @@ - + - + @@ -332242,36 +332182,36 @@ - - - + + + - - - - - - - + + + + + + + - - - - - + + + + + - - - - - - + + + + + + @@ -332279,12 +332219,12 @@ - - - - - - + + + + + + @@ -332441,10 +332381,10 @@ - - + + - + @@ -332454,25 +332394,25 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -332518,8 +332458,8 @@ - - + + @@ -344475,14 +344415,14 @@ - + - + - + - + @@ -344540,9 +344480,9 @@ - + - + @@ -344819,14 +344759,14 @@ - - + + - - + + @@ -344964,15 +344904,15 @@ - - + + - - - - - - + + + + + + @@ -345369,9 +345309,9 @@ - + - + @@ -345424,9 +345364,9 @@ - + - + @@ -345560,13 +345500,13 @@ - - - - - - - + + + + + + + @@ -346045,10 +345985,10 @@ - - - - + + + + @@ -346057,9 +345997,9 @@ - - - + + + @@ -346402,9 +346342,9 @@ - + - + @@ -346429,9 +346369,9 @@ - - - + + + @@ -346445,9 +346385,9 @@ - + - + @@ -346504,14 +346444,14 @@ - - - - - - - - + + + + + + + + @@ -347061,9 +347001,9 @@ - + - + @@ -347126,9 +347066,9 @@ - + - + @@ -347221,9 +347161,9 @@ - + - + @@ -347733,13 +347673,13 @@ - - + + - - - - + + + + @@ -347935,17 +347875,17 @@ - + - - - + + + - - - + + + @@ -348395,17 +348335,17 @@ - + - - - + + + - - - + + + @@ -355060,6 +355000,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -355085,21 +355095,6 @@ - - - - - - - - - - - - - - - @@ -355110,16 +355105,6 @@ - - - - - - - - - - @@ -355130,51 +355115,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -357079,2555 +357019,59 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/coverage/cobertura-coverage.zip b/coverage/cobertura-coverage.zip index ee2c48d489..0bf444c60c 100644 Binary files a/coverage/cobertura-coverage.zip and b/coverage/cobertura-coverage.zip differ diff --git a/coverage/home/runner/work/lxd-ui/lxd-ui/index.html b/coverage/home/runner/work/lxd-ui/lxd-ui/index.html index 6dee6a56ad..9fb624d885 100644 --- a/coverage/home/runner/work/lxd-ui/lxd-ui/index.html +++ b/coverage/home/runner/work/lxd-ui/lxd-ui/index.html @@ -101,7 +101,7 @@

All files home/runner/work/lxd-ui/lx - - - - - - \ No newline at end of file diff --git a/coverage/src/components/ExpandableList.tsx.html b/coverage/src/components/ExpandableList.tsx.html deleted file mode 100644 index 5db078c6ac..0000000000 --- a/coverage/src/components/ExpandableList.tsx.html +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - Code coverage report for src/components/ExpandableList.tsx - - - - - - - - - -
-
-

All files / src/components ExpandableList.tsx

-
- -
- 100% - Statements - 33/33 -
- - -
- 33.33% - Branches - 1/3 -
- - -
- 100% - Functions - 0/0 -
- - -
- 100% - Lines - 33/33 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -341x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
import { FC, ReactNode, useState } from "react";
-import { Button } from "@canonical/react-components";
- 
-const DISPLAY_COUNT = 5;
- 
-interface Props {
-  items: ReactNode[];
-}
- 
-const ExpandableList: FC<Props> = ({ items }) => {
-  const [displayCount, setDisplayCount] = useState(DISPLAY_COUNT);
- 
-  return (
-    <>
-      {items.slice(0, displayCount)}
-      {displayCount < items.length && (
-        <Button
-          appearance="link"
-          className="u-no-margin--bottom"
-          small
-          onClick={(e) => {
-            setDisplayCount(items.length);
-            e.stopPropagation();
-          }}
-        >
-          Show all
-        </Button>
-      )}
-    </>
-  );
-};
- 
-export default ExpandableList;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/components/PageHeader.tsx.html b/coverage/src/components/PageHeader.tsx.html deleted file mode 100644 index d98c16d3a1..0000000000 --- a/coverage/src/components/PageHeader.tsx.html +++ /dev/null @@ -1,205 +0,0 @@ - - - - - - Code coverage report for src/components/PageHeader.tsx - - - - - - - - - -
-
-

All files / src/components PageHeader.tsx

-
- -
- 75% - Statements - 30/40 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 75% - Lines - 30/40 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -411x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -1x -1x -1x -1x -1x -  -  -  -  -  -  -1x -1x -1x -1x -5x -5x -5x -5x -1x -1x -1x -1x -  -  - 
import { FC, PropsWithChildren } from "react";
- 
-const Left: FC<PropsWithChildren> = ({ children }) => {
-  return <div className="page-header__left">{children}</div>;
-};
- 
-const Title: FC<PropsWithChildren> = ({ children }) => {
-  return <h1 className="p-heading--4 u-no-margin--bottom">{children}</h1>;
-};
- 
-const Search: FC<PropsWithChildren> = ({ children }) => {
-  return (
-    <div className="page-header__search margin-right u-no-margin--bottom">
-      {children}
-    </div>
-  );
-};
- 
-const BaseActions: FC<PropsWithChildren> = ({ children }) => {
-  return <div className="page-header__base-actions">{children}</div>;
-};
-
-const Header: FC<PropsWithChildren> = ({ children }) => {
-  return <div className="p-panel__header page-header">{children}</div>;
-};
-
-type PageHeaderComponents = FC<PropsWithChildren> & {
-  Left: FC<PropsWithChildren>;
-  Title: FC<PropsWithChildren>;
-  Search: FC<PropsWithChildren>;
-  BaseActions: FC<PropsWithChildren>;
-};
- 
-const PageHeader = Header as PageHeaderComponents;
-PageHeader.Left = Left;
-PageHeader.Title = Title;
-PageHeader.Search = Search;
-PageHeader.BaseActions = BaseActions;
-
-export default PageHeader;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/components/ScrollableTable.tsx.html b/coverage/src/components/ScrollableTable.tsx.html deleted file mode 100644 index 610be9e27c..0000000000 --- a/coverage/src/components/ScrollableTable.tsx.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - - Code coverage report for src/components/ScrollableTable.tsx - - - - - - - - - -
-
-

All files / src/components ScrollableTable.tsx

-
- -
- 93.33% - Statements - 42/45 -
- - -
- 50% - Branches - 2/4 -
- - -
- 100% - Functions - 1/1 -
- - -
- 93.33% - Lines - 42/45 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -461x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
import { DependencyList, FC, ReactNode, useEffect } from "react";
-import useEventListener from "@use-it/event-listener";
-import {
-  getAbsoluteHeightBelowById,
-  getParentsBottomSpacing,
-} from "util/helpers";
- 
-interface Props {
-  children: ReactNode;
-  dependencies: DependencyList;
-  tableId: string;
-  belowIds?: string[];
-}
- 
-const ScrollableTable: FC<Props> = ({
-  dependencies,
-  children,
-  tableId,
-  belowIds = [],
-}) => {
-  const updateTBodyHeight = () => {
-    const table = document.getElementById(tableId);
-    if (!table || table.children.length !== 2) {
-      return;
-    }
- 
-    const tBody = table.children[1];
-    const above = tBody.getBoundingClientRect().top + 1;
-    const below = belowIds.reduce(
-      (acc, belowId) => acc + getAbsoluteHeightBelowById(belowId),
-      0,
-    );
-    const parentsBottomSpacing = getParentsBottomSpacing(table);
-    const offset = Math.ceil(above + below + parentsBottomSpacing);
-    const style = `height: calc(100vh - ${offset}px); min-height: calc(100vh - ${offset}px)`;
-    tBody.setAttribute("style", style);
-  };
- 
-  useEventListener("resize", updateTBodyHeight);
-  useEffect(updateTBodyHeight, [...dependencies]);
- 
-  return <div className="scrollable-table">{children}</div>;
-};
- 
-export default ScrollableTable;
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/components/SelectableMainTable.tsx.html b/coverage/src/components/SelectableMainTable.tsx.html deleted file mode 100644 index e4162c2c33..0000000000 --- a/coverage/src/components/SelectableMainTable.tsx.html +++ /dev/null @@ -1,742 +0,0 @@ - - - - - - Code coverage report for src/components/SelectableMainTable.tsx - - - - - - - - - -
-
-

All files / src/components SelectableMainTable.tsx

-
- -
- 32.87% - Statements - 72/219 -
- - -
- 40% - Branches - 2/5 -
- - -
- 50% - Functions - 1/2 -
- - -
- 32.87% - Lines - 72/219 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -2201x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC, PointerEvent, useState } from "react";
-import {
-  MainTableRow,
-  Props as MainTableProps,
-} from "@canonical/react-components/dist/components/MainTable/MainTable";
-import {
-  CheckboxInput,
-  ContextualMenu,
-  Icon,
-  MainTable,
-} from "@canonical/react-components";
-import classnames from "classnames";
-import useEventListener from "@use-it/event-listener";
-import { pluralize } from "util/instanceBulkActions";
- 
-interface SelectableMainTableProps {
-  filteredNames: string[];
-  itemName: string;
-  parentName: string;
-  selectedNames: string[];
-  setSelectedNames: (val: string[], isUnselectAll?: boolean) => void;
-  processingNames: string[];
-  rows: MainTableRow[];
-  indeterminateNames?: string[];
-  disableSelect?: boolean;
-  onToggleRow?: (rowName: string) => void;
-  hideContextualMenu?: boolean;
-}
-
-type Props = SelectableMainTableProps & MainTableProps;
- 
-const SelectableMainTable: FC<Props> = ({
-  filteredNames,
-  itemName,
-  parentName,
-  selectedNames,
-  setSelectedNames,
-  processingNames,
-  rows,
-  headers,
-  indeterminateNames = [],
-  disableSelect = false,
-  onToggleRow,
-  hideContextualMenu,
-  ...props
-}: Props) => {
-  const [currentSelectedIndex, setCurrentSelectedIndex] = useState<number>();
-  const isAllSelected =
-    selectedNames.length === filteredNames.length && selectedNames.length > 0;
-  const isSomeSelected = selectedNames.length + indeterminateNames.length > 0;
- 
-  const isCheckBoxTarget = (target: HTMLElement) => {
-    return target.className === "p-checkbox__label";
-  };
- 
-  // This is required to prevent default behaviour of text selection for the SHIFT + click mouse event
-  useEventListener<"mousedown">("mousedown", (event) => {
-    if (event.shiftKey && isCheckBoxTarget(event.target as HTMLElement)) {
-      event.preventDefault();
-    }
-  });
- 
-  const selectAll = () => {
-    setSelectedNames(filteredNames);
-    setCurrentSelectedIndex(undefined);
-  };
- 
-  const selectPage = () => {
-    const allNames = rows
-      .filter((row) => !!row.name)
-      .map((row) => row.name ?? "");
-    setSelectedNames(allNames);
-    setCurrentSelectedIndex(undefined);
-  };
- 
-  const selectNone = () => {
-    const isUnselectAll = true;
-    setSelectedNames([], isUnselectAll);
-    setCurrentSelectedIndex(undefined);
-  };
-
-  const headersWithCheckbox = [
-    {
-      content: (
-        <>
-          <CheckboxInput
-            label={<div className="u-off-screen">Select all</div>}
-            labelClassName="multiselect-checkbox"
-            checked={isAllSelected}
-            indeterminate={isSomeSelected && !isAllSelected}
-            onChange={isSomeSelected ? selectNone : selectPage}
-            disabled={disableSelect}
-          />
-          {!hideContextualMenu && (
-            <ContextualMenu
-              className="select-context-menu"
-              position="left"
-              title="Multiselect"
-              toggleAppearance="base"
-              toggleClassName="has-icon u-no-margin--bottom"
-              toggleLabel={<Icon name="chevron-down" />}
-              toggleProps={{
-                "aria-label": "multiselect rows",
-                disabled: disableSelect,
-              }}
-              links={[
-                {
-                  children: `Select all ${pluralize(itemName, 2)} on this page`,
-                  onClick: selectPage,
-                },
-                {
-                  children: `Select all ${parentName} ${pluralize(itemName, 2)}`,
-                  onClick: selectAll,
-                },
-              ]}
-            />
-          )}
-        </>
-      ),
-      className: classnames("select select-header", {
-        "no-menu": hideContextualMenu,
-      }),
-      "aria-label": "select",
-    },
-    ...(headers ?? []),
-  ];
-
-  const selectedNamesLookup = new Set(selectedNames);
-  const processingNamesLookup = new Set(processingNames);
-  const indeterminateNamesLookup = new Set(indeterminateNames);
-  const rowsWithCheckbox = rows.map((row, rowIndex) => {
-    const isRowSelected = selectedNamesLookup.has(row.name ?? "");
-    const isRowProcessing = processingNamesLookup.has(row.name ?? "");
-    const isRowIndeterminate = indeterminateNamesLookup.has(row.name ?? "");
-
-    const toggleRow = (event: PointerEvent<HTMLInputElement>) => {
-      if (onToggleRow) {
-        onToggleRow(row.name ?? "");
-        return;
-      }
-
-      if (
-        event.nativeEvent.shiftKey &&
-        currentSelectedIndex !== undefined &&
-        !isRowSelected
-      ) {
-        const selectedNamesLookup = new Set(selectedNames);
-        const newSelection = [...selectedNames];
-        const startIndex = Math.min(rowIndex, currentSelectedIndex);
-        const endIndex = Math.max(rowIndex, currentSelectedIndex);
-        for (let i = startIndex; i < endIndex + 1; i++) {
-          const rowName = rows[i].name;
-          if (rowName && !selectedNamesLookup.has(rowName)) {
-            newSelection.push(rowName);
-          }
-        }
-        setSelectedNames(newSelection);
-        setCurrentSelectedIndex(rowIndex);
-        return;
-      }
-
-      const newSelection = isRowSelected
-        ? selectedNames.filter((candidate) => candidate !== row.name)
-        : [...selectedNames, row.name ?? ""];
-      setSelectedNames(newSelection);
-
-      if (isRowSelected) {
-        setCurrentSelectedIndex(undefined);
-      } else {
-        setCurrentSelectedIndex(rowIndex);
-      }
-    };
-
-    const columns = [
-      {
-        content: (
-          <CheckboxInput
-            label={
-              <div className="u-off-screen">Select {row.name ?? "row"}</div>
-            }
-            labelClassName="u-no-margin--bottom"
-            checked={isRowSelected}
-            onChange={toggleRow}
-            disabled={isRowProcessing || !row.name || disableSelect}
-            indeterminate={isRowIndeterminate && !isRowSelected}
-          />
-        ),
-        role: "rowheader",
-        className: "select",
-      },
-      ...(row.columns ?? []),
-    ];
-
-    const className = classnames(row.className, {
-      "selected-row": isRowSelected,
-      "processing-row": isRowProcessing,
-    });
-
-    const key = row.key ?? row.name;
-
-    return {
-      ...row,
-      className,
-      key,
-      columns,
-    };
-  });
-
-  return (
-    <MainTable
-      expanding={true}
-      headers={headersWithCheckbox}
-      rows={[...rowsWithCheckbox]}
-      {...props}
-    />
-  );
-};
-
-export default SelectableMainTable;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/components/SelectedTableNotification.tsx.html b/coverage/src/components/SelectedTableNotification.tsx.html deleted file mode 100644 index 55c615bc54..0000000000 --- a/coverage/src/components/SelectedTableNotification.tsx.html +++ /dev/null @@ -1,325 +0,0 @@ - - - - - - Code coverage report for src/components/SelectedTableNotification.tsx - - - - - - - - - -
-
-

All files / src/components SelectedTableNotification.tsx

-
- -
- 66.25% - Statements - 53/80 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 66.25% - Lines - 53/80 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -811x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC } from "react";
-import { Button } from "@canonical/react-components";
-import { pluralize } from "util/instanceBulkActions";
- 
-interface Props {
-  totalCount: number;
-  filteredNames: string[];
-  itemName: string;
-  parentName?: string;
-  selectedNames: string[];
-  setSelectedNames: (val: string[]) => void;
-  hideActions?: boolean;
-}
- 
-const SelectedTableNotification: FC<Props> = ({
-  totalCount,
-  filteredNames,
-  itemName,
-  parentName,
-  selectedNames,
-  setSelectedNames,
-  hideActions,
-}: Props) => {
-  const isAllSelected = selectedNames.length === filteredNames.length;
- 
-  const selectAll = () => {
-    setSelectedNames(filteredNames);
-  };
- 
-  const selectNone = () => {
-    setSelectedNames([]);
-  };
-
-  return (
-    <div>
-      {isAllSelected ? (
-        <>
-          {filteredNames.length === 1 ? (
-            <>
-              <b>1</b> {itemName} is selected.{" "}
-            </>
-          ) : (
-            <>
-              All <b>{filteredNames.length}</b>{" "}
-              {pluralize(itemName, filteredNames.length)} selected.{" "}
-            </>
-          )}
-          {!hideActions && (
-            <Button
-              appearance="link"
-              className="u-no-margin--bottom u-no-padding--top"
-              onClick={selectNone}
-            >
-              Clear selection
-            </Button>
-          )}
-        </>
-      ) : (
-        <>
-          <b>{selectedNames.length}</b>{" "}
-          {pluralize(itemName, selectedNames.length)} selected.{" "}
-          {!hideActions && (
-            <Button
-              appearance="link"
-              className="u-no-margin--bottom u-no-padding--top"
-              onClick={selectAll}
-            >
-              Select all <b>{filteredNames.length}</b>{" "}
-              {filteredNames.length === totalCount
-                ? `${pluralize(itemName, filteredNames.length)} ${parentName ? `in ${parentName}` : ""}`
-                : `filtered ${pluralize(itemName, filteredNames.length)}`}
-            </Button>
-          )}
-        </>
-      )}
-    </div>
-  );
-};
-
-export default SelectedTableNotification;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/components/SidePanel.tsx.html b/coverage/src/components/SidePanel.tsx.html deleted file mode 100644 index c180ec996f..0000000000 --- a/coverage/src/components/SidePanel.tsx.html +++ /dev/null @@ -1,532 +0,0 @@ - - - - - - Code coverage report for src/components/SidePanel.tsx - - - - - - - - - -
-
-

All files / src/components SidePanel.tsx

-
- -
- 59.06% - Statements - 88/149 -
- - -
- 40% - Branches - 2/5 -
- - -
- 14.28% - Functions - 1/7 -
- - -
- 59.06% - Lines - 88/149 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -1501x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -1x -1x -1x -1x -1x -8x -8x -8x -8x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -1x -1x -  -  -  -  -  -  -  -  -  -1x -1x -  -  -  -  -  -  -  -  -  -  -  -1x -1x -  -  -  -  -  -  -  -1x -1x -  -  -  -  -  -  -  -1x -1x -  -  -  -  - 
import { FC, PropsWithChildren, ReactNode } from "react";
-import classnames from "classnames";
-import { Spinner } from "@canonical/react-components";
-import { createPortal } from "react-dom";
-import usePanelParams from "util/usePanelParams";
-import useEventListener from "@use-it/event-listener";
- 
-interface CommonProps {
-  className?: string;
-}
- 
-// Header components
-const HeaderControls: FC<PropsWithChildren & CommonProps> = ({
-  children,
-  className,
-}) => {
-  return (
-    <div className={classnames("p-panel__controls", className)}>{children}</div>
-  );
-};
- 
-const HeaderTitle: FC<PropsWithChildren & CommonProps> = ({
-  children,
-  className,
-}) => {
-  return (
-    <h2 className={classnames("p-panel__title", className)}>{children}</h2>
-  );
-};
-
-const Sticky: FC<PropsWithChildren & CommonProps> = ({
-  children,
-  className,
-}) => {
-  return (
-    <div className={classnames("sticky-wrapper", className)}>{children}</div>
-  );
-};
- 
-const Header: FC<PropsWithChildren & CommonProps> = ({
-  children,
-  className,
-}) => {
-  return (
-    <div className={classnames("p-panel__header", className)}>{children}</div>
-  );
-};
- 
-// Panel content components
-const Container: FC<PropsWithChildren & CommonProps> = ({
-  children,
-  className,
-}) => {
-  return <div className={classnames("p-panel", className)}>{children}</div>;
-};
- 
-const Content: FC<PropsWithChildren & CommonProps> = ({
-  children,
-  className,
-}) => {
-  return (
-    <div className={classnames("p-panel__content", className)}>{children}</div>
-  );
-};
- 
-// Footer components
-const Footer: FC<PropsWithChildren & CommonProps> = ({
-  children,
-  className,
-}) => {
-  return (
-    <div className={classnames("panel-footer", className)} id="panel-footer">
-      <hr />
-      {children}
-    </div>
-  );
-};
- 
-interface SidePanelProps {
-  isOverlay?: boolean;
-  isSplit?: boolean;
-  children: ReactNode;
-  loading: boolean;
-  hasError: boolean;
-  className?: string;
-  width?: "narrow" | "wide";
-  pinned?: boolean;
-}
-
-const SidePanelComponent: FC<SidePanelProps> = ({
-  children,
-  isOverlay,
-  isSplit = false,
-  loading = false,
-  hasError,
-  className,
-  width,
-  pinned,
-}) => {
-  const panelParams = usePanelParams();
-
-  useEventListener("keydown", (e: KeyboardEvent) => {
-    // Close panel if Escape key is pressed
-    if (e.code === "Escape") panelParams.clear();
-  });
-
-  return createPortal(
-    <aside
-      className={classnames("l-aside", className, {
-        "is-narrow": width === "narrow",
-        "is-wide": width === "wide",
-        "is-pinned": pinned,
-        "is-split": isSplit,
-        "is-overlay": isOverlay,
-      })}
-      aria-label="Side panel"
-    >
-      {loading ? (
-        <div className="loading">
-          <Spinner />
-        </div>
-      ) : (
-        <>{hasError ? <>Loading failed</> : children}</>
-      )}
-    </aside>,
-    document.getElementById("l-application") as Element,
-  );
-};
-
-type SidePanelComponents = FC<SidePanelProps> & {
-  Header: FC<PropsWithChildren & CommonProps>;
-  HeaderTitle: FC<PropsWithChildren & CommonProps>;
-  HeaderControls: FC<PropsWithChildren & CommonProps>;
-  Sticky: FC<PropsWithChildren & CommonProps>;
-  Container: FC<PropsWithChildren & CommonProps>;
-  Content: FC<PropsWithChildren & CommonProps>;
-  Footer: FC<PropsWithChildren & CommonProps>;
-};
-
-const SidePanel = SidePanelComponent as SidePanelComponents;
-SidePanel.Header = Header;
-SidePanel.HeaderTitle = HeaderTitle;
-SidePanel.HeaderControls = HeaderControls;
-SidePanel.Sticky = Sticky;
-SidePanel.Container = Container;
-SidePanel.Content = Content;
-SidePanel.Footer = Footer;
-
-export default SidePanel;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/components/index.html b/coverage/src/components/index.html deleted file mode 100644 index 769dc3bab2..0000000000 --- a/coverage/src/components/index.html +++ /dev/null @@ -1,206 +0,0 @@ - - - - - - Code coverage report for src/components - - - - - - - - - -
-
-

All files src/components

-
- -
- 58.03% - Statements - 343/591 -
- - -
- 44.44% - Branches - 12/27 -
- - -
- 35.71% - Functions - 5/14 -
- - -
- 58.03% - Lines - 343/591 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
ConfirmationForce.tsx -
-
100%25/2550%1/2100%0/0100%25/25
ExpandableList.tsx -
-
100%33/3333.33%1/3100%0/0100%33/33
PageHeader.tsx -
-
75%30/4050%2/450%1/275%30/40
ScrollableTable.tsx -
-
93.33%42/4550%2/4100%1/193.33%42/45
SelectableMainTable.tsx -
-
32.87%72/21940%2/550%1/232.87%72/219
SelectedTableNotification.tsx -
-
66.25%53/8050%2/450%1/266.25%53/80
SidePanel.tsx -
-
59.06%88/14940%2/514.28%1/759.06%88/149
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/InstanceDetailPanel.tsx.html b/coverage/src/pages/instances/InstanceDetailPanel.tsx.html deleted file mode 100644 index 0cd92763ca..0000000000 --- a/coverage/src/pages/instances/InstanceDetailPanel.tsx.html +++ /dev/null @@ -1,328 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/InstanceDetailPanel.tsx - - - - - - - - - -
-
-

All files / src/pages/instances InstanceDetailPanel.tsx

-
- -
- 71.6% - Statements - 58/81 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 71.6% - Lines - 58/81 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -821x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC } from "react";
-import OpenTerminalBtn from "./actions/OpenTerminalBtn";
-import OpenConsoleBtn from "./actions/OpenConsoleBtn";
-import { Button, Icon, List, useNotify } from "@canonical/react-components";
-import { useQuery } from "@tanstack/react-query";
-import { fetchInstance } from "api/instances";
-import { queryKeys } from "util/queryKeys";
-import usePanelParams from "util/usePanelParams";
-import InstanceStateActions from "pages/instances/actions/InstanceStateActions";
-import SidePanel from "components/SidePanel";
-import InstanceDetailPanelContent from "./InstanceDetailPanelContent";
- 
-const InstanceDetailPanel: FC = () => {
-  const notify = useNotify();
-  const panelParams = usePanelParams();
-
-  const {
-    data: instance,
-    error,
-    isLoading,
-  } = useQuery({
-    queryKey: [queryKeys.instances, panelParams.instance, panelParams.project],
-    queryFn: () =>
-      fetchInstance(panelParams.instance ?? "", panelParams.project),
-    enabled: panelParams.instance !== null,
-  });
- 
-  if (error) {
-    notify.failure("Loading instance failed", error);
-  }
- 
-  return (
-    <SidePanel
-      loading={isLoading}
-      hasError={!instance}
-      className="u-hide--medium u-hide--small"
-      width="narrow"
-      pinned
-    >
-      <SidePanel.Container className="detail-panel instance-detail-panel">
-        <SidePanel.Sticky>
-          <SidePanel.Header>
-            <SidePanel.HeaderTitle>Instance summary</SidePanel.HeaderTitle>
-            <SidePanel.HeaderControls>
-              <Button
-                appearance="base"
-                className="u-no-margin--bottom"
-                hasIcon
-                onClick={panelParams.clear}
-                aria-label="Close"
-              >
-                <Icon name="close" />
-              </Button>
-            </SidePanel.HeaderControls>
-          </SidePanel.Header>
-          {instance && (
-            <div className="actions">
-              <List
-                inline
-                className="primary actions-list"
-                items={[
-                  <OpenTerminalBtn key="terminal" instance={instance} />,
-                  <OpenConsoleBtn key="console" instance={instance} />,
-                ]}
-              />
-              <div className="state">
-                <InstanceStateActions instance={instance} />
-              </div>
-            </div>
-          )}
-        </SidePanel.Sticky>
-
-        <SidePanel.Content>
-          {instance && <InstanceDetailPanelContent instance={instance} />}
-        </SidePanel.Content>
-      </SidePanel.Container>
-    </SidePanel>
-  );
-};
-
-export default InstanceDetailPanel;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/InstanceDetailPanelContent.tsx.html b/coverage/src/pages/instances/InstanceDetailPanelContent.tsx.html deleted file mode 100644 index 339b428a3d..0000000000 --- a/coverage/src/pages/instances/InstanceDetailPanelContent.tsx.html +++ /dev/null @@ -1,748 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/InstanceDetailPanelContent.tsx - - - - - - - - - -
-
-

All files / src/pages/instances InstanceDetailPanelContent.tsx

-
- -
- 27.6% - Statements - 61/221 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 27.6% - Lines - 61/221 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -2221x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC } from "react";
-import InstanceLink from "./InstanceLink";
-import { LxdInstance } from "types/instance";
-import InstanceStatusIcon from "./InstanceStatusIcon";
-import { instanceCreationTypes } from "util/instanceOptions";
-import InstanceIps from "./InstanceIps";
-import { isoTimeToString } from "util/helpers";
-import { Link } from "react-router-dom";
-import { List } from "@canonical/react-components";
-import ItemName from "components/ItemName";
-import { useSettings } from "context/useSettings";
-import { isNicDevice } from "util/devices";
-
-const RECENT_SNAPSHOT_LIMIT = 5;
- 
-interface Props {
-  instance: LxdInstance;
-}
- 
-const InstanceDetailPanelContent: FC<Props> = ({ instance }) => {
-  const { data: settings } = useSettings();
-  const networkDevices = Object.values(instance?.expanded_devices ?? {}).filter(
-    isNicDevice,
-  );
-
-  return (
-    <table className="u-table-layout--auto u-no-margin--bottom">
-      <tbody>
-        <tr>
-          <th className="u-text--muted">Name</th>
-          <td>
-            <InstanceLink instance={instance} />
-          </td>
-        </tr>
-        <tr>
-          <th className="u-text--muted">Base image</th>
-          <td>
-            <div
-              className="u-truncate base-image"
-              title={instance.config["image.description"]}
-            >
-              {instance.config["image.description"] ?? "-"}
-            </div>
-          </td>
-        </tr>
-        <tr>
-          <th className="u-text--muted">Status</th>
-          <td>
-            <InstanceStatusIcon instance={instance} />
-          </td>
-        </tr>
-        <tr>
-          <th className="u-text--muted">Description</th>
-          <td>{instance.description ? instance.description : "-"}</td>
-        </tr>
-        <tr>
-          <th className="u-text--muted">Type</th>
-          <td>
-            {
-              instanceCreationTypes.filter(
-                (item) => item.value === instance.type,
-              )[0].label
-            }
-          </td>
-        </tr>
-        <tr>
-          <th className="u-text--muted">IPv4</th>
-          <td>
-            <InstanceIps instance={instance} family="inet" />
-          </td>
-        </tr>
-        <tr>
-          <th className="u-text--muted">IPv6</th>
-          <td>
-            <InstanceIps instance={instance} family="inet6" />
-          </td>
-        </tr>
-        <tr>
-          <th className="u-text--muted">Architecture</th>
-          <td>{instance.architecture}</td>
-        </tr>
-        <tr>
-          <th className="u-text--muted">Location</th>
-          <td>
-            {settings?.environment?.server_clustered ? instance.location : "-"}
-          </td>
-        </tr>
-        <tr>
-          <th className="u-text--muted">Created</th>
-          <td>{isoTimeToString(instance.created_at)}</td>
-        </tr>
-        <tr>
-          <th className="u-text--muted last-used">Last used</th>
-          <td>{isoTimeToString(instance.last_used_at)}</td>
-        </tr>
-        <tr>
-          <th>
-            <h3 className="p-muted-heading p-heading--5">
-              <Link
-                to={`/ui/project/${instance.project}/instance/${instance.name}/configuration`}
-              >
-                Profiles
-              </Link>
-            </h3>
-          </th>
-          <td>
-            <List
-              className="list"
-              items={instance.profiles.map((name) => (
-                <Link
-                  key={name}
-                  to={`/ui/project/${instance.project}/profile/${name}`}
-                >
-                  {name}
-                </Link>
-              ))}
-            />
-          </td>
-        </tr>
-        {networkDevices.length > 0 ? (
-          <tr>
-            <th>
-              <h3 className="p-muted-heading p-heading--5">Networks</h3>
-            </th>
-            <td>
-              <List
-                className="list"
-                items={networkDevices.map((item) => (
-                  <Link
-                    key={item.network}
-                    to={`/ui/project/${instance.project}/network/${item.network}`}
-                  >
-                    {item.network}
-                  </Link>
-                ))}
-              />
-            </td>
-          </tr>
-        ) : (
-          <tr>
-            <td colSpan={2}>
-              <h3 className="p-muted-heading p-heading--5">Networks</h3>
-              <p>
-                No networks found.
-                <br />
-                <Link
-                  to={`/ui/project/${instance.project}/instance/${instance.name}/configuration/networks`}
-                >
-                  Configure instance networks
-                </Link>
-              </p>
-            </td>
-          </tr>
-        )}
-        <tr className="u-no-border">
-          <th colSpan={2} className="snapshots-header">
-            <h3 className="p-muted-heading p-heading--5">
-              <Link
-                to={`/ui/project/${instance.project}/instance/${instance.name}/snapshots`}
-              >
-                Snapshots
-              </Link>
-            </h3>
-          </th>
-        </tr>
-        {instance.snapshots?.length ? (
-          <>
-            {instance.snapshots
-              .slice()
-              .sort((snap1, snap2) => {
-                const a = snap1.created_at;
-                const b = snap2.created_at;
-                return a > b ? -1 : a < b ? 1 : 0;
-              })
-              .slice(0, RECENT_SNAPSHOT_LIMIT)
-              .map((snapshot) => (
-                <tr key={snapshot.name} className="u-no-border">
-                  <th
-                    title={snapshot.name}
-                    className="snapshot-name u-truncate"
-                  >
-                    <ItemName item={snapshot} />
-                  </th>
-                  <td className="u-text--muted">
-                    <i>{isoTimeToString(snapshot.created_at)}</i>
-                  </td>
-                </tr>
-              ))}
-            {instance.snapshots.length > RECENT_SNAPSHOT_LIMIT && (
-              <tr>
-                <td colSpan={2}>
-                  <Link
-                    to={`/ui/project/${instance.project}/instance/${instance.name}/snapshots`}
-                  >
-                    {`View all (${instance.snapshots.length})`}
-                  </Link>
-                </td>
-              </tr>
-            )}
-          </>
-        ) : (
-          <tr>
-            <td colSpan={2}>
-              <p className="no-snapshots">
-                No snapshots found.
-                <br />
-                <Link
-                  to={`/ui/project/${instance.project}/instance/${instance.name}/snapshots`}
-                >
-                  Manage instance snapshots
-                </Link>
-              </p>
-            </td>
-          </tr>
-        )}
-      </tbody>
-    </table>
-  );
-};
-
-export default InstanceDetailPanelContent;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/InstanceIps.tsx.html b/coverage/src/pages/instances/InstanceIps.tsx.html deleted file mode 100644 index a547bc7427..0000000000 --- a/coverage/src/pages/instances/InstanceIps.tsx.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/InstanceIps.tsx - - - - - - - - - -
-
-

All files / src/pages/instances InstanceIps.tsx

-
- -
- 86.66% - Statements - 26/30 -
- - -
- 33.33% - Branches - 1/3 -
- - -
- 100% - Functions - 0/0 -
- - -
- 86.66% - Lines - 26/30 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -311x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  - 
import { FC } from "react";
-import { getIpAddresses } from "util/networks";
-import { LxdInstance } from "types/instance";
-import ExpandableList from "components/ExpandableList";
- 
-interface Props {
-  instance: LxdInstance;
-  family: "inet" | "inet6";
-}
- 
-const InstanceIps: FC<Props> = ({ instance, family }) => {
-  const addresses = getIpAddresses(instance, family);
-  return addresses.length ? (
-    <ExpandableList
-      items={addresses.map((item) => (
-        <div
-          key={item.address}
-          className="ip u-truncate"
-          title={`IP ${item.address} (${item.iface})`}
-        >
-          {item.address} ({item.iface})
-        </div>
-      ))}
-    />
-  ) : (
-    <>-</>
-  );
-};
-
-export default InstanceIps;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/InstanceSearchFilter.tsx.html b/coverage/src/pages/instances/InstanceSearchFilter.tsx.html deleted file mode 100644 index f09dee802c..0000000000 --- a/coverage/src/pages/instances/InstanceSearchFilter.tsx.html +++ /dev/null @@ -1,352 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/InstanceSearchFilter.tsx - - - - - - - - - -
-
-

All files / src/pages/instances InstanceSearchFilter.tsx

-
- -
- 78.65% - Statements - 70/89 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 78.65% - Lines - 70/89 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -901x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -1x -1x -1x -1x -2x -2x -2x -2x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC, memo } from "react";
-import { LxdInstance } from "types/instance";
-import { instanceStatuses, instanceTypes } from "util/instanceFilter";
-import { SearchAndFilter } from "@canonical/react-components";
-import {
-  SearchAndFilterChip,
-  SearchAndFilterData,
-} from "@canonical/react-components/dist/components/SearchAndFilter/types";
-import { useSearchParams } from "react-router-dom";
-import {
-  paramsFromSearchData,
-  searchParamsToChips,
-} from "util/searchAndFilter";
- 
-export const QUERY = "query";
-export const STATUS = "status";
-export const TYPE = "type";
-export const PROFILE = "profile";
- 
-const QUERY_PARAMS = [QUERY, STATUS, TYPE, PROFILE];
- 
-interface Props {
-  instances: LxdInstance[];
-}
-
-const InstanceSearchFilter: FC<Props> = ({ instances }) => {
-  const [searchParams, setSearchParams] = useSearchParams();
-
-  const profileSet = [
-    ...new Set(instances.flatMap((instance) => instance.profiles)),
-  ];
- 
-  const searchAndFilterData: SearchAndFilterData[] = [
-    {
-      id: 1,
-      heading: "Status",
-      chips: instanceStatuses.map((status) => {
-        return { lead: STATUS, value: status };
-      }),
-    },
-    {
-      id: 2,
-      heading: "Instance type",
-      chips: instanceTypes.map((type) => {
-        return { lead: TYPE, value: type };
-      }),
-    },
-    {
-      id: 3,
-      heading: "Profile",
-      chips: profileSet.map((profile) => {
-        return { lead: PROFILE, value: profile };
-      }),
-    },
-  ];
- 
-  const onSearchDataChange = (searchData: SearchAndFilterChip[]) => {
-    const newParams = paramsFromSearchData(
-      searchData,
-      searchParams,
-      QUERY_PARAMS,
-    );
- 
-    if (newParams.toString() !== searchParams.toString()) {
-      setSearchParams(newParams);
-    }
-  };
- 
-  return (
-    <>
-      <h2 className="u-off-screen">Search and filter</h2>
-      <SearchAndFilter
-        existingSearchData={searchParamsToChips(searchParams, QUERY_PARAMS)}
-        filterPanelData={searchAndFilterData}
-        returnSearchData={onSearchDataChange}
-        onExpandChange={() => {
-          window.dispatchEvent(
-            new CustomEvent("resize", { detail: "search-and-filter" }),
-          );
-        }}
-        onPanelToggle={() => {
-          window.dispatchEvent(new CustomEvent("sfp-toggle"));
-        }}
-      />
-    </>
-  );
-};
-
-export default memo(InstanceSearchFilter);
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/actions/FreezeInstanceBtn.tsx.html b/coverage/src/pages/instances/actions/FreezeInstanceBtn.tsx.html deleted file mode 100644 index 6dfb9981ac..0000000000 --- a/coverage/src/pages/instances/actions/FreezeInstanceBtn.tsx.html +++ /dev/null @@ -1,349 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/actions/FreezeInstanceBtn.tsx - - - - - - - - - -
-
-

All files / src/pages/instances/actions FreezeInstanceBtn.tsx

-
- -
- 71.59% - Statements - 63/88 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 71.59% - Lines - 63/88 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -891x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC } from "react";
-import { LxdInstance } from "types/instance";
-import { useQueryClient } from "@tanstack/react-query";
-import { queryKeys } from "util/queryKeys";
-import { freezeInstance } from "api/instances";
-import { useInstanceLoading } from "context/instanceLoading";
-import InstanceLink from "pages/instances/InstanceLink";
-import ItemName from "components/ItemName";
-import { ConfirmationButton, Icon } from "@canonical/react-components";
-import { useEventQueue } from "context/eventQueue";
-import { useToastNotification } from "context/toastNotificationProvider";
- 
-interface Props {
-  instance: LxdInstance;
-}
- 
-const FreezeInstanceBtn: FC<Props> = ({ instance }) => {
-  const eventQueue = useEventQueue();
-  const instanceLoading = useInstanceLoading();
-  const toastNotify = useToastNotification();
-  const queryClient = useQueryClient();
-  const isLoading =
-    instanceLoading.getType(instance) === "Freezing" ||
-    instance.status === "Freezing";
- 
-  const handleFreeze = () => {
-    instanceLoading.setLoading(instance, "Freezing");
-    void freezeInstance(instance)
-      .then((operation) => {
-        eventQueue.set(
-          operation.metadata.id,
-          () =>
-            toastNotify.success(
-              <>
-                Instance <InstanceLink instance={instance} /> frozen.
-              </>,
-            ),
-          (msg) =>
-            toastNotify.failure(
-              "Instance freeze failed",
-              new Error(msg),
-              <InstanceLink instance={instance} />,
-            ),
-          () => {
-            instanceLoading.setFinish(instance);
-            void queryClient.invalidateQueries({
-              queryKey: [queryKeys.instances],
-            });
-          },
-        );
-      })
-      .catch((e) => {
-        toastNotify.failure(
-          "Instance freeze failed",
-          e,
-          <InstanceLink instance={instance} />,
-        );
-        instanceLoading.setFinish(instance);
-      });
-  };
- 
-  const isDisabled = isLoading || instance.status !== "Running";
- 
-  return (
-    <ConfirmationButton
-      appearance="base"
-      loading={isLoading}
-      confirmationModalProps={{
-        title: "Confirm freeze",
-        children: (
-          <p>
-            This will freeze instance <ItemName item={instance} bold />.
-          </p>
-        ),
-        onConfirm: handleFreeze,
-        confirmButtonLabel: "Freeze",
-      }}
-      className="has-icon is-dense"
-      disabled={isDisabled}
-      shiftClickEnabled
-      showShiftClickHint
-    >
-      <Icon name="pause" />
-    </ConfirmationButton>
-  );
-};
-
-export default FreezeInstanceBtn;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/actions/InstanceBulkAction.tsx.html b/coverage/src/pages/instances/actions/InstanceBulkAction.tsx.html deleted file mode 100644 index b1b7cace29..0000000000 --- a/coverage/src/pages/instances/actions/InstanceBulkAction.tsx.html +++ /dev/null @@ -1,490 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/actions/InstanceBulkAction.tsx - - - - - - - - - -
-
-

All files / src/pages/instances/actions InstanceBulkAction.tsx

-
- -
- 48.88% - Statements - 66/135 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 48.88% - Lines - 66/135 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -1361x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC, Fragment, ReactNode } from "react";
-import {
-  LxdInstance,
-  LxdInstanceAction,
-  LxdInstanceStatus,
-} from "types/instance";
-import {
-  instanceAction,
-  pluralize,
-  statusLabel,
-} from "util/instanceBulkActions";
-import { ConfirmationButton, Icon } from "@canonical/react-components";
- 
-interface Props {
-  action: LxdInstanceAction;
-  confirmAppearance?: string;
-  confirmExtra?: ReactNode;
-  confirmLabel: string;
-  icon: string;
-  instances: LxdInstance[];
-  isLoading: boolean;
-  isDisabled: boolean;
-  onClick: () => void;
-}
-
-const InstanceBulkAction: FC<Props> = ({
-  action,
-  confirmAppearance,
-  confirmExtra,
-  confirmLabel,
-  icon,
-  instances,
-  isLoading,
-  isDisabled,
-  onClick,
-}) => {
-  const selectedStates = new Set(instances.map((item) => item.status));
-  const hasDifferentStates = selectedStates.size > 1;
-  const selectedSummary = hasDifferentStates ? (
-    <>
-      <b>{instances.length}</b> {pluralize("instance", instances.length)}{" "}
-      selected:
-      <br />
-      <br />
-    </>
-  ) : null;
- 
-  const hasChangedStates = [...selectedStates].some(
-    (state) => instanceAction(action, state) !== undefined,
-  );
- 
-  const statusLine = (
-    currentState: LxdInstanceStatus,
-    desiredAction: LxdInstanceAction,
-  ) => {
-    const count = instances.filter(
-      (instance) => instance.status === currentState,
-    ).length;
- 
-    if (count === 0) {
-      return null;
-    }
- 
-    const status = statusLabel(currentState) ?? "";
-    const actionRaw = instanceAction(desiredAction, currentState);
- 
-    if (actionRaw === undefined) {
-      const instance = count === 1 ? "instance that is" : "instances that are";
-      const already = desiredAction !== "restart" ? "already " : "";
-      return (
-        <Fragment key={currentState + desiredAction}>
-          - No action for <b>{count}</b> {instance} {already}
-          {currentState.toLowerCase()}.
-          <br />
-        </Fragment>
-      );
-    }
-
-    const indent = hasDifferentStates ? "- " : "";
-
-    return (
-      <Fragment key={currentState + desiredAction}>
-        {indent}
-        This will {desiredAction} <b>{count}</b>
-        {` ${status} ${pluralize("instance", count)}.`}
-        <br />
-      </Fragment>
-    );
-  };
-
-  // no action states should be last
-  const getLineOrder = (): LxdInstanceStatus[] => {
-    switch (action) {
-      case "start":
-        return ["Frozen", "Stopped", "Running"];
-      case "restart":
-        return ["Running", "Freezing", "Stopped", "Frozen"];
-      case "freeze":
-        return ["Running", "Stopped", "Frozen"];
-      case "stop":
-        return ["Frozen", "Freezing", "Running", "Starting", "Stopped"];
-      default:
-        return [];
-    }
-  };
-
-  return (
-    <ConfirmationButton
-      appearance="base"
-      disabled={isDisabled || !hasChangedStates}
-      loading={isLoading}
-      className="u-no-margin--right u-no-margin--bottom bulk-action has-icon"
-      confirmationModalProps={{
-        title: `Confirm ${confirmLabel.toLowerCase()}`,
-        children: (
-          <p>
-            {selectedSummary}
-            {getLineOrder().map((state) => statusLine(state, action))}
-          </p>
-        ),
-        confirmExtra: confirmExtra,
-        onConfirm: onClick,
-        confirmButtonLabel: confirmLabel,
-        confirmButtonAppearance: confirmAppearance,
-      }}
-      shiftClickEnabled
-      showShiftClickHint
-    >
-      <Icon name={icon} />
-      <span>{confirmLabel}</span>
-    </ConfirmationButton>
-  );
-};
-
-export default InstanceBulkAction;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/actions/InstanceBulkActions.tsx.html b/coverage/src/pages/instances/actions/InstanceBulkActions.tsx.html deleted file mode 100644 index 1a0bbec653..0000000000 --- a/coverage/src/pages/instances/actions/InstanceBulkActions.tsx.html +++ /dev/null @@ -1,490 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/actions/InstanceBulkActions.tsx - - - - - - - - - -
-
-

All files / src/pages/instances/actions InstanceBulkActions.tsx

-
- -
- 39.25% - Statements - 53/135 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 39.25% - Lines - 53/135 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -1361x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC, useState } from "react";
-import { updateInstanceBulkAction } from "api/instances";
-import { useQueryClient } from "@tanstack/react-query";
-import { queryKeys } from "util/queryKeys";
-import ConfirmationForce from "components/ConfirmationForce";
-import { LxdInstance, LxdInstanceAction } from "types/instance";
-import {
-  instanceActionLabel,
-  instanceActions,
-  pluralize,
-} from "util/instanceBulkActions";
-import InstanceBulkAction from "pages/instances/actions/InstanceBulkAction";
-import { getPromiseSettledCounts } from "util/helpers";
-import { useEventQueue } from "context/eventQueue";
-import { useToastNotification } from "context/toastNotificationProvider";
- 
-interface Props {
-  instances: LxdInstance[];
-  onStart: () => void;
-  onFinish: () => void;
-}
-
-const InstanceBulkActions: FC<Props> = ({ instances, onStart, onFinish }) => {
-  const eventQueue = useEventQueue();
-  const toastNotify = useToastNotification();
-  const queryClient = useQueryClient();
-  const [activeAction, setActiveAction] = useState<LxdInstanceAction | null>(
-    null,
-  );
-  const [isForce, setForce] = useState(false);
- 
-  const handleAction = (desiredAction: LxdInstanceAction) => {
-    setActiveAction(desiredAction);
-    onStart();
-    const actions = instanceActions(instances, desiredAction);
- 
-    void updateInstanceBulkAction(actions, isForce, eventQueue).then(
-      (results) => {
-        const action = instanceActionLabel(desiredAction);
-        const count = actions.length;
-        const { fulfilledCount, rejectedCount } =
-          getPromiseSettledCounts(results);
-        if (fulfilledCount === count) {
-          toastNotify.success(
-            <>
-              <b>{count}</b> {pluralize("instance", count)} {action}.
-            </>,
-          );
-        } else if (rejectedCount === count) {
-          toastNotify.failure(
-            `Instance ${desiredAction} failed`,
-            undefined,
-            <>
-              <b>{count}</b> {pluralize("instance", count)} could not be{" "}
-              {action}.
-            </>,
-          );
-        } else {
-          toastNotify.failure(
-            `Instance ${desiredAction} partially failed`,
-            undefined,
-            <>
-              <b>{fulfilledCount}</b> {pluralize("instance", fulfilledCount)}{" "}
-              {action}
-              .<br />
-              <b>{rejectedCount}</b> {pluralize("instance", rejectedCount)}{" "}
-              could not be {action}.
-            </>,
-          );
-        }
-        setForce(false);
-        onFinish();
-        setActiveAction(null);
-        void queryClient.invalidateQueries({
-          queryKey: [queryKeys.instances],
-        });
-      },
-    );
-  };
-
-  return (
-    <div className="p-segmented-control bulk-actions">
-      <div className="p-segmented-control__list bulk-action-frame">
-        <InstanceBulkAction
-          icon="play"
-          isLoading={activeAction === "start"}
-          isDisabled={activeAction === "start"}
-          onClick={() => handleAction("start")}
-          confirmAppearance="positive"
-          action="start"
-          instances={instances}
-          confirmLabel="Start"
-        />
-        <InstanceBulkAction
-          icon="restart"
-          isLoading={activeAction === "restart"}
-          isDisabled={activeAction === "restart"}
-          onClick={() => handleAction("restart")}
-          action="restart"
-          instances={instances}
-          confirmLabel="Restart"
-          confirmExtra={
-            <ConfirmationForce
-              label="Force restart"
-              force={[isForce, setForce]}
-            />
-          }
-        />
-        <InstanceBulkAction
-          icon="pause"
-          isLoading={activeAction === "freeze"}
-          isDisabled={activeAction === "freeze"}
-          onClick={() => handleAction("freeze")}
-          action="freeze"
-          instances={instances}
-          confirmLabel="Freeze"
-        />
-        <InstanceBulkAction
-          icon="stop"
-          isLoading={activeAction === "stop"}
-          isDisabled={false}
-          onClick={() => handleAction("stop")}
-          action="stop"
-          instances={instances}
-          confirmLabel="Stop"
-          confirmExtra={
-            <ConfirmationForce label="Force stop" force={[isForce, setForce]} />
-          }
-        />
-      </div>
-    </div>
-  );
-};
-
-export default InstanceBulkActions;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/actions/InstanceBulkDelete.tsx.html b/coverage/src/pages/instances/actions/InstanceBulkDelete.tsx.html deleted file mode 100644 index 138d4fc65d..0000000000 --- a/coverage/src/pages/instances/actions/InstanceBulkDelete.tsx.html +++ /dev/null @@ -1,460 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/actions/InstanceBulkDelete.tsx - - - - - - - - - -
-
-

All files / src/pages/instances/actions InstanceBulkDelete.tsx

-
- -
- 43.2% - Statements - 54/125 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 43.2% - Lines - 54/125 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -1261x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC, useState } from "react";
-import { deleteInstanceBulk } from "api/instances";
-import { LxdInstance } from "types/instance";
-import { pluralize } from "util/instanceBulkActions";
-import { queryKeys } from "util/queryKeys";
-import { useQueryClient } from "@tanstack/react-query";
-import { deletableStatuses } from "util/instanceDelete";
-import { getPromiseSettledCounts } from "util/helpers";
-import { ConfirmationButton, Icon } from "@canonical/react-components";
-import { useEventQueue } from "context/eventQueue";
-import { useToastNotification } from "context/toastNotificationProvider";
- 
-interface Props {
-  instances: LxdInstance[];
-  onStart: (names: string[]) => void;
-  onFinish: () => void;
-}
-
-const InstanceBulkDelete: FC<Props> = ({ instances, onStart, onFinish }) => {
-  const eventQueue = useEventQueue();
-  const toastNotify = useToastNotification();
-  const queryClient = useQueryClient();
-  const [isLoading, setLoading] = useState(false);
- 
-  const deletableInstances = instances.filter((instance) =>
-    deletableStatuses.includes(instance.status),
-  );
-  const totalCount = instances.length;
-  const deleteCount = deletableInstances.length;
-  const ignoredCount = totalCount - deleteCount;
- 
-  const handleDelete = () => {
-    setLoading(true);
-    onStart(deletableInstances.map((item) => item.name));
-    void deleteInstanceBulk(deletableInstances, eventQueue).then((results) => {
-      const { fulfilledCount, rejectedCount } =
-        getPromiseSettledCounts(results);
-      if (fulfilledCount === deleteCount) {
-        toastNotify.success(
-          `${deleteCount} ${pluralize("instance", deleteCount)} deleted`,
-        );
-      } else if (rejectedCount === deleteCount) {
-        toastNotify.failure(
-          "Instance bulk deletion failed",
-          undefined,
-          <>
-            <b>{deleteCount}</b> {pluralize("instance", deleteCount)} could not
-            be deleted.
-          </>,
-        );
-      } else {
-        toastNotify.failure(
-          "Instance bulk deletion partially failed",
-          undefined,
-          <>
-            <b>{fulfilledCount}</b> {pluralize("instance", fulfilledCount)}{" "}
-            deleted.
-            <br />
-            <b>{rejectedCount}</b> {pluralize("instance", rejectedCount)} could
-            not be deleted.
-          </>,
-        );
-      }
-      void queryClient.invalidateQueries({
-        queryKey: [queryKeys.instances],
-      });
-      void queryClient.invalidateQueries({
-        queryKey: [queryKeys.projects, instances[0].project],
-      });
-      setLoading(false);
-      onFinish();
-    });
-  };
-
-  return (
-    <div className="p-segmented-control bulk-actions">
-      <div className="p-segmented-control__list bulk-action-frame">
-        <ConfirmationButton
-          onHoverText="Delete instances"
-          appearance="base"
-          className="u-no-margin--bottom has-icon"
-          loading={isLoading}
-          confirmationModalProps={{
-            title: "Confirm delete",
-            children: (
-              <p>
-                {ignoredCount > 0 && (
-                  <>
-                    <b>{totalCount}</b> instances selected:
-                    <br />
-                    <br />
-                    {`- ${deleteCount} stopped ${pluralize(
-                      "instance",
-                      deleteCount,
-                    )} will be deleted`}
-                    <br />
-                    {`- ${ignoredCount} other ${pluralize(
-                      "instance",
-                      ignoredCount,
-                    )} will be ignored`}
-                    <br />
-                    <br />
-                  </>
-                )}
-                This will permanently delete <b>{deleteCount}</b>{" "}
-                {pluralize("instance", deleteCount)}.{"\n"}This action cannot be
-                undone, and can result in data loss.
-              </p>
-            ),
-            confirmButtonLabel: "Delete",
-            onConfirm: handleDelete,
-          }}
-          disabled={deleteCount === 0}
-          shiftClickEnabled
-          showShiftClickHint
-        >
-          <Icon name="delete" />
-          <span>Delete</span>
-        </ConfirmationButton>
-      </div>
-    </div>
-  );
-};
-
-export default InstanceBulkDelete;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/actions/OpenConsoleBtn.tsx.html b/coverage/src/pages/instances/actions/OpenConsoleBtn.tsx.html deleted file mode 100644 index 392762bdc1..0000000000 --- a/coverage/src/pages/instances/actions/OpenConsoleBtn.tsx.html +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/actions/OpenConsoleBtn.tsx - - - - - - - - - -
-
-

All files / src/pages/instances/actions OpenConsoleBtn.tsx

-
- -
- 81.81% - Statements - 27/33 -
- - -
- 33.33% - Branches - 1/3 -
- - -
- 100% - Functions - 0/0 -
- - -
- 81.81% - Lines - 27/33 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -341x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  - 
import { FC } from "react";
-import { useNavigate } from "react-router-dom";
-import { LxdInstance } from "types/instance";
-import { Button, Icon } from "@canonical/react-components";
- 
-interface Props {
-  instance: LxdInstance;
-}
- 
-const OpenConsoleBtn: FC<Props> = ({ instance }) => {
-  const navigate = useNavigate();
- 
-  const handleOpen = () => {
-    navigate(
-      `/ui/project/${instance.project}/instance/${instance.name}/console`,
-    );
-  };
- 
-  return (
-    <Button
-      aria-label="Open console"
-      appearance="base"
-      dense
-      hasIcon
-      onClick={handleOpen}
-      title="Console"
-    >
-      <Icon name="canvas" />
-    </Button>
-  );
-};
-
-export default OpenConsoleBtn;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/actions/OpenTerminalBtn.tsx.html b/coverage/src/pages/instances/actions/OpenTerminalBtn.tsx.html deleted file mode 100644 index 2f5cb0aaa2..0000000000 --- a/coverage/src/pages/instances/actions/OpenTerminalBtn.tsx.html +++ /dev/null @@ -1,193 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/actions/OpenTerminalBtn.tsx - - - - - - - - - -
-
-

All files / src/pages/instances/actions OpenTerminalBtn.tsx

-
- -
- 75% - Statements - 27/36 -
- - -
- 33.33% - Branches - 1/3 -
- - -
- 100% - Functions - 0/0 -
- - -
- 75% - Lines - 27/36 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -371x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  - 
import { FC } from "react";
-import { useNavigate } from "react-router-dom";
-import { LxdInstance } from "types/instance";
-import { Button, Icon } from "@canonical/react-components";
- 
-interface Props {
-  instance: LxdInstance;
-}
- 
-const OpenTerminalBtn: FC<Props> = ({ instance }) => {
-  const navigate = useNavigate();
- 
-  const handleOpen = () => {
-    navigate(
-      `/ui/project/${instance.project}/instance/${instance.name}/terminal`,
-    );
-  };
- 
-  const isDisabled = instance.status !== "Running";
- 
-  return (
-    <Button
-      appearance="base"
-      dense
-      hasIcon
-      onClick={handleOpen}
-      disabled={isDisabled}
-      title="Terminal"
-      aria-label="Open Terminal"
-    >
-      <Icon name="code" />
-    </Button>
-  );
-};
-
-export default OpenTerminalBtn;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/actions/RestartInstanceBtn.tsx.html b/coverage/src/pages/instances/actions/RestartInstanceBtn.tsx.html deleted file mode 100644 index 3f0bd541c8..0000000000 --- a/coverage/src/pages/instances/actions/RestartInstanceBtn.tsx.html +++ /dev/null @@ -1,379 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/actions/RestartInstanceBtn.tsx - - - - - - - - - -
-
-

All files / src/pages/instances/actions RestartInstanceBtn.tsx

-
- -
- 68.36% - Statements - 67/98 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 68.36% - Lines - 67/98 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -991x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import { FC, useState } from "react";
-import { LxdInstance } from "types/instance";
-import { useQueryClient } from "@tanstack/react-query";
-import { queryKeys } from "util/queryKeys";
-import { restartInstance } from "api/instances";
-import { useInstanceLoading } from "context/instanceLoading";
-import InstanceLink from "pages/instances/InstanceLink";
-import ConfirmationForce from "components/ConfirmationForce";
-import ItemName from "components/ItemName";
-import { ConfirmationButton, Icon } from "@canonical/react-components";
-import { useEventQueue } from "context/eventQueue";
-import { useToastNotification } from "context/toastNotificationProvider";
- 
-interface Props {
-  instance: LxdInstance;
-}
- 
-const RestartInstanceBtn: FC<Props> = ({ instance }) => {
-  const eventQueue = useEventQueue();
-  const instanceLoading = useInstanceLoading();
-  const toastNotify = useToastNotification();
-  const [isForce, setForce] = useState(false);
-  const queryClient = useQueryClient();
-  const isLoading =
-    instanceLoading.getType(instance) === "Restarting" ||
-    instance.status === "Restarting";
- 
-  const handleRestart = () => {
-    instanceLoading.setLoading(instance, "Restarting");
-    void restartInstance(instance, isForce)
-      .then((operation) => {
-        eventQueue.set(
-          operation.metadata.id,
-          () =>
-            toastNotify.success(
-              <>
-                Instance <InstanceLink instance={instance} /> restarted.
-              </>,
-            ),
-          (msg) =>
-            toastNotify.failure(
-              "Instance restart failed",
-              new Error(msg),
-              <InstanceLink instance={instance} />,
-            ),
-          () => {
-            instanceLoading.setFinish(instance);
-            void queryClient.invalidateQueries({
-              queryKey: [queryKeys.instances],
-            });
-          },
-        );
-      })
-      .catch((e) => {
-        toastNotify.failure(
-          "Instance restart failed",
-          e,
-          <InstanceLink instance={instance} />,
-        );
-        instanceLoading.setFinish(instance);
-      });
-  };
- 
-  const disabledStatuses = ["Stopped", "Frozen", "Error"];
-  const isDisabled = isLoading || disabledStatuses.includes(instance.status);
- 
-  return (
-    <ConfirmationButton
-      appearance="base"
-      loading={isLoading}
-      className="has-icon is-dense"
-      confirmationModalProps={{
-        title: "Confirm restart",
-        children: (
-          <p>
-            This will restart instance <ItemName item={instance} bold />.
-          </p>
-        ),
-        onConfirm: handleRestart,
-        close: () => setForce(false),
-        confirmButtonLabel: "Restart",
-        confirmExtra: (
-          <ConfirmationForce
-            label="Force restart"
-            force={[isForce, setForce]}
-          />
-        ),
-      }}
-      disabled={isDisabled}
-      shiftClickEnabled
-      showShiftClickHint
-    >
-      <Icon name="restart" />
-    </ConfirmationButton>
-  );
-};
-
-export default RestartInstanceBtn;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/actions/index.html b/coverage/src/pages/instances/actions/index.html deleted file mode 100644 index 3c4cc1e956..0000000000 --- a/coverage/src/pages/instances/actions/index.html +++ /dev/null @@ -1,206 +0,0 @@ - - - - - - Code coverage report for src/pages/instances/actions - - - - - - - - - -
-
-

All files src/pages/instances/actions

-
- -
- 54.92% - Statements - 357/650 -
- - -
- 46.15% - Branches - 12/26 -
- - -
- 50% - Functions - 5/10 -
- - -
- 54.92% - Lines - 357/650 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
FreezeInstanceBtn.tsx -
-
71.59%63/8850%2/450%1/271.59%63/88
InstanceBulkAction.tsx -
-
48.88%66/13550%2/450%1/248.88%66/135
InstanceBulkActions.tsx -
-
39.25%53/13550%2/450%1/239.25%53/135
InstanceBulkDelete.tsx -
-
43.2%54/12550%2/450%1/243.2%54/125
OpenConsoleBtn.tsx -
-
81.81%27/3333.33%1/3100%0/081.81%27/33
OpenTerminalBtn.tsx -
-
75%27/3633.33%1/3100%0/075%27/36
RestartInstanceBtn.tsx -
-
68.36%67/9850%2/450%1/268.36%67/98
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/instances/index.html b/coverage/src/pages/instances/index.html deleted file mode 100644 index 2776b1a336..0000000000 --- a/coverage/src/pages/instances/index.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - Code coverage report for src/pages/instances - - - - - - - - - -
-
-

All files src/pages/instances

-
- -
- 51.06% - Statements - 215/421 -
- - -
- 46.66% - Branches - 7/15 -
- - -
- 50% - Functions - 3/6 -
- - -
- 51.06% - Lines - 215/421 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
InstanceDetailPanel.tsx -
-
71.6%58/8150%2/450%1/271.6%58/81
InstanceDetailPanelContent.tsx -
-
27.6%61/22150%2/450%1/227.6%61/221
InstanceIps.tsx -
-
86.66%26/3033.33%1/3100%0/086.66%26/30
InstanceSearchFilter.tsx -
-
78.65%70/8950%2/450%1/278.65%70/89
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/operations/actions/CancelOperationBtn.tsx.html b/coverage/src/pages/operations/actions/CancelOperationBtn.tsx.html deleted file mode 100644 index 951c576ab6..0000000000 --- a/coverage/src/pages/operations/actions/CancelOperationBtn.tsx.html +++ /dev/null @@ -1,277 +0,0 @@ - - - - - - Code coverage report for src/pages/operations/actions/CancelOperationBtn.tsx - - - - - - - - - -
-
-

All files / src/pages/operations/actions CancelOperationBtn.tsx

-
- -
- 90.62% - Statements - 58/64 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 90.62% - Lines - 58/64 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -651x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
import { FC, useState } from "react";
-import { LxdOperation } from "types/operation";
-import { cancelOperation } from "api/operations";
-import { useQueryClient } from "@tanstack/react-query";
-import { queryKeys } from "util/queryKeys";
-import { ConfirmationButton, useNotify } from "@canonical/react-components";
-import { useToastNotification } from "context/toastNotificationProvider";
- 
-interface Props {
-  operation: LxdOperation;
-  project?: string;
-}
- 
-const CancelOperationBtn: FC<Props> = ({ operation, project }) => {
-  const notify = useNotify();
-  const toastNotify = useToastNotification();
-  const [isLoading, setLoading] = useState(false);
-  const queryClient = useQueryClient();
-
-  const handleCancel = () => {
-    setLoading(true);
-    cancelOperation(operation.id)
-      .then(() => {
-        toastNotify.success(`Operation ${operation.description} cancelled`);
-      })
-      .catch((e) => {
-        notify.failure("Operation cancellation failed", e);
-      })
-      .finally(() => {
-        setLoading(false);
-        void queryClient.invalidateQueries({
-          queryKey: project
-            ? [queryKeys.operations, project]
-            : [queryKeys.operations],
-        });
-      });
-  };
- 
-  return operation.status !== "Running" ? null : (
-    <ConfirmationButton
-      onHoverText={
-        operation.may_cancel
-          ? "Cancel operation"
-          : "Cannot cancel operation at this stage"
-      }
-      className="u-no-margin--bottom"
-      loading={isLoading}
-      disabled={!operation.may_cancel}
-      confirmationModalProps={{
-        title: "Confirm cancel",
-        children: <p>This will cancel the operation.</p>,
-        confirmButtonLabel: "Cancel operation",
-        onConfirm: handleCancel,
-        cancelButtonLabel: "Go back",
-      }}
-      shiftClickEnabled
-      showShiftClickHint
-    >
-      <span>Cancel</span>
-    </ConfirmationButton>
-  );
-};
- 
-export default CancelOperationBtn;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/pages/operations/actions/index.html b/coverage/src/pages/operations/actions/index.html deleted file mode 100644 index 52f878771b..0000000000 --- a/coverage/src/pages/operations/actions/index.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - Code coverage report for src/pages/operations/actions - - - - - - - - - -
-
-

All files src/pages/operations/actions

-
- -
- 90.62% - Statements - 58/64 -
- - -
- 50% - Branches - 2/4 -
- - -
- 50% - Functions - 1/2 -
- - -
- 90.62% - Lines - 58/64 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
CancelOperationBtn.tsx -
-
90.62%58/6450%2/450%1/290.62%58/64
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/util/devices.tsx.html b/coverage/src/util/devices.tsx.html deleted file mode 100644 index d4d25b4e54..0000000000 --- a/coverage/src/util/devices.tsx.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - Code coverage report for src/util/devices.tsx - - - - - - - - - -
-
-

All files / src/util devices.tsx

-
- -
- 85.71% - Statements - 12/14 -
- - -
- 100% - Branches - 1/1 -
- - -
- 0% - Functions - 0/2 -
- - -
- 85.71% - Lines - 12/14 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -151x -1x -1x -  -1x -1x -  -1x -1x -1x -1x -1x -1x -1x - 
import {
-  LxdDiskDevice,
-  LxdIsoDevice,
-  LxdNicDevice,
-  LxdNoneDevice,
-} from "types/device";
-
-export const isNicDevice = (
-  device: LxdDiskDevice | LxdNicDevice | LxdIsoDevice | LxdNoneDevice,
-): device is LxdNicDevice => device.type === "nic";
- 
-export const isDiskDevice = (
-  device: LxdDiskDevice | LxdNicDevice | LxdIsoDevice | LxdNoneDevice,
-): device is LxdDiskDevice => device.type === "disk";
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/util/index.html b/coverage/src/util/index.html deleted file mode 100644 index a6ef55c01c..0000000000 --- a/coverage/src/util/index.html +++ /dev/null @@ -1,221 +0,0 @@ - - - - - - Code coverage report for src/util - - - - - - - - - -
-
-

All files src/util

-
- -
- 63.01% - Statements - 213/338 -
- - -
- 80% - Branches - 8/10 -
- - -
- 0% - Functions - 0/18 -
- - -
- 63.01% - Lines - 213/338 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
devices.tsx -
-
85.71%12/14100%1/10%0/285.71%12/14
instanceDelete.tsx -
-
100%3/3100%1/1100%0/0100%3/3
instanceFilter.tsx -
-
60.6%20/33100%1/10%0/160.6%20/33
instanceTable.tsx -
-
100%30/30100%1/1100%0/0100%30/30
networks.tsx -
-
53.33%72/135100%1/10%0/853.33%72/135
operations.tsx -
-
74.19%23/31100%1/10%0/274.19%23/31
searchAndFilter.tsx -
-
51.06%24/47100%1/10%0/351.06%24/47
useSortTableData.tsx -
-
64.44%29/4533.33%1/30%0/264.44%29/45
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/util/instanceDelete.tsx.html b/coverage/src/util/instanceDelete.tsx.html deleted file mode 100644 index a4f77979ff..0000000000 --- a/coverage/src/util/instanceDelete.tsx.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - Code coverage report for src/util/instanceDelete.tsx - - - - - - - - - -
-
-

All files / src/util instanceDelete.tsx

-
- -
- 100% - Statements - 3/3 -
- - -
- 100% - Branches - 1/1 -
- - -
- 100% - Functions - 0/0 -
- - -
- 100% - Lines - 3/3 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -41x -1x -1x - 
import { LxdInstanceStatus } from "types/instance";
- 
-export const deletableStatuses: LxdInstanceStatus[] = ["Error", "Stopped"];
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/util/instanceFilter.tsx.html b/coverage/src/util/instanceFilter.tsx.html deleted file mode 100644 index f62bf3f2d9..0000000000 --- a/coverage/src/util/instanceFilter.tsx.html +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - Code coverage report for src/util/instanceFilter.tsx - - - - - - - - - -
-
-

All files / src/util instanceFilter.tsx

-
- -
- 60.6% - Statements - 20/33 -
- - -
- 100% - Branches - 1/1 -
- - -
- 0% - Functions - 0/1 -
- - -
- 60.6% - Lines - 20/33 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -341x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
import { LxdInstanceStatus } from "types/instance";
- 
-export interface InstanceFilters {
-  queries: string[];
-  statuses: LxdInstanceStatus[];
-  types: string[];
-  profileQueries: string[];
-}
-
-export const instanceStatuses: LxdInstanceStatus[] = [
-  "Running",
-  "Stopped",
-  "Frozen",
-  "Error",
-];
-
-export const instanceTypes: string[] = ["Container", "VM"];
-
-export const enrichStatuses = (
-  statuses: LxdInstanceStatus[],
-): LxdInstanceStatus[] => {
-  if (statuses.includes("Frozen")) {
-    statuses.push("Freezing");
-  }
-  if (statuses.includes("Running")) {
-    statuses.push(...(["Restarting", "Starting"] as LxdInstanceStatus[]));
-  }
-  if (statuses.includes("Stopped")) {
-    statuses.push("Stopping");
-  }
- 
-  return statuses;
-};
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/util/instanceTable.tsx.html b/coverage/src/util/instanceTable.tsx.html deleted file mode 100644 index 74c2f1deba..0000000000 --- a/coverage/src/util/instanceTable.tsx.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - Code coverage report for src/util/instanceTable.tsx - - - - - - - - - -
-
-

All files / src/util instanceTable.tsx

-
- -
- 100% - Statements - 30/30 -
- - -
- 100% - Branches - 1/1 -
- - -
- 100% - Functions - 0/0 -
- - -
- 100% - Lines - 30/30 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -311x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
export const STATUS = "Status";
-export const NAME = "Name";
-export const TYPE = "Type";
-export const DESCRIPTION = "Description";
-export const IPV4 = "IPv4";
-export const IPV6 = "IPv6";
-export const SNAPSHOTS = "Snapshots";
-export const ACTIONS = "Actions";
- 
-export const COLUMN_WIDTHS: Record<string, number> = {
-  [NAME]: 170,
-  [TYPE]: 130,
-  [DESCRIPTION]: 150,
-  [IPV4]: 150,
-  [IPV6]: 330,
-  [SNAPSHOTS]: 110,
-  [STATUS]: 160,
-  [ACTIONS]: 210,
-};
- 
-export const SIZE_HIDEABLE_COLUMNS = [
-  SNAPSHOTS,
-  IPV6,
-  IPV4,
-  DESCRIPTION,
-  TYPE,
-  STATUS,
-];
- 
-export const CREATION_SPAN_COLUMNS = [TYPE, DESCRIPTION, IPV4, IPV6, SNAPSHOTS];
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/util/networks.tsx.html b/coverage/src/util/networks.tsx.html deleted file mode 100644 index 2f38260506..0000000000 --- a/coverage/src/util/networks.tsx.html +++ /dev/null @@ -1,490 +0,0 @@ - - - - - - Code coverage report for src/util/networks.tsx - - - - - - - - - -
-
-

All files / src/util networks.tsx

-
- -
- 53.33% - Statements - 72/135 -
- - -
- 100% - Branches - 1/1 -
- - -
- 0% - Functions - 0/8 -
- - -
- 53.33% - Lines - 72/135 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -1361x -  -  -  -  -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -1x -1x -  -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -1x -1x -  -  -  -  -  -  -  -  -  -1x -  -  -  -  -  -  -  -  -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
import { LxdInstance } from "types/instance";
-import { LxdNetwork, LxdNetworkConfig } from "types/network";
-import { LxdConfigOptionsKeys } from "types/config";
-
-export const getIpAddresses = (
-  instance: LxdInstance,
-  family: "inet" | "inet6",
-) => {
-  if (!instance.state?.network) return [];
-  return Object.entries(instance.state.network)
-    .filter(([key, _value]) => key !== "lo")
-    .flatMap(([key, value]) =>
-      value.addresses.map((item) => {
-        return { ...item, iface: key };
-      }),
-    )
-    .filter((item) => item.family === family);
-};
- 
-export const networkFormFieldToPayloadName: Record<
-  string,
-  keyof LxdNetworkConfig
-> = {
-  bridge_driver: "bridge.driver",
-  bridge_hwaddr: "bridge.hwaddr",
-  bridge_mtu: "bridge.mtu",
-  dns_domain: "dns.domain",
-  dns_mode: "dns.mode",
-  dns_nameservers: "dns.nameservers",
-  dns_search: "dns.search",
-  ipv4_address: "ipv4.address",
-  ipv4_dhcp: "ipv4.dhcp",
-  ipv4_dhcp_expiry: "ipv4.dhcp.expiry",
-  ipv4_dhcp_ranges: "ipv4.dhcp.ranges",
-  ipv4_l3only: "ipv4.l3only",
-  ipv4_nat: "ipv4.nat",
-  ipv4_nat_address: "ipv4.nat.address",
-  ipv4_ovn_ranges: "ipv4.ovn.ranges",
-  ipv4_gateway: "ipv4.gateway",
-  ipv4_routes: "ipv4.routes",
-  ipv4_routes_anycast: "ipv4.routes.anycast",
-  ipv6_address: "ipv6.address",
-  ipv6_dhcp: "ipv6.dhcp",
-  ipv6_dhcp_expiry: "ipv6.dhcp.expiry",
-  ipv6_dhcp_ranges: "ipv6.dhcp.ranges",
-  ipv6_dhcp_stateful: "ipv6.dhcp.stateful",
-  ipv6_l3only: "ipv6.l3only",
-  ipv6_nat: "ipv6.nat",
-  ipv6_nat_address: "ipv6.nat.address",
-  ipv6_ovn_ranges: "ipv6.ovn.ranges",
-  ipv6_gateway: "ipv6.gateway",
-  ipv6_routes: "ipv6.routes",
-  ipv6_routes_anycast: "ipv6.routes.anycast",
-  network: "network",
-  ovn_ingress_mode: "ovn.ingress_mode",
-  parent: "parent",
-};
-
-export const getHandledNetworkConfigKeys = () => {
-  return new Set(Object.values(networkFormFieldToPayloadName));
-};
- 
-export const getNetworkKey = (formField: string): keyof LxdNetworkConfig => {
-  if (!(formField in networkFormFieldToPayloadName)) {
-    throw new Error(
-      `Could not find ${formField} in networkFormFieldToPayloadName`,
-    );
-  }
-  return networkFormFieldToPayloadName[formField];
-};
-
-const networkTypeToOptionKey: Record<string, LxdConfigOptionsKeys> = {
-  bridge: "network-bridge",
-  ovn: "network-ovn",
-  macvlan: "network-macvlan",
-  physical: "network-physical",
-  sriov: "network-sriov",
-};
-
-export const networkFormTypeToOptionKey = (
-  type: string,
-): LxdConfigOptionsKeys => {
-  if (!(type in networkTypeToOptionKey)) {
-    throw new Error(`Could not find ${type} in networkTypeToOptionKey`);
-  }
-  return networkTypeToOptionKey[type];
-};
-
-const hasNetworkConfigDiff = (
-  a: Partial<LxdNetworkConfig>,
-  b: Partial<LxdNetworkConfig>,
-): boolean => {
-  return (Object.keys(a) as Array<keyof typeof a>).some((key) => {
-    const isIp = key === "ipv4.address" || key === "ipv6.address";
-    if (isIp && a[key] === "auto" && b[key] !== "") {
-      return false;
-    }
-    return a[key] !== b[key];
-  });
-};
-
-export const areNetworksEqual = (
-  a: Partial<LxdNetwork> & Required<Pick<LxdNetwork, "config">>,
-  b: Partial<LxdNetwork> & Required<Pick<LxdNetwork, "config">>,
-): boolean => {
-  if (hasNetworkConfigDiff(a.config, b.config)) {
-    return false;
-  }
-
-  const hasMainKeyDiff = (Object.keys(a) as Array<keyof typeof a>).some(
-    (key) => (key === "config" || key === "etag" ? false : a[key] !== b[key]),
-  );
-
-  return !hasMainKeyDiff;
-};
-
-export const testValidIp = (ip: string | null | undefined): boolean => {
-  const expression =
-    /((^\s*((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))\s*$)|(^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$))/;
- 
-  if (!ip) {
-    return false;
-  }
-  return expression.test(ip);
-};
- 
-export const testValidPort = (port: string | null | undefined): boolean => {
-  const expression =
-    /^(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])[-,]){0,9}([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])$/;
- 
-  if (!port) {
-    return true;
-  }
-  return expression.test(port);
-};
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/util/operations.tsx.html b/coverage/src/util/operations.tsx.html deleted file mode 100644 index 86c99c7199..0000000000 --- a/coverage/src/util/operations.tsx.html +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - Code coverage report for src/util/operations.tsx - - - - - - - - - -
-
-

All files / src/util operations.tsx

-
- -
- 74.19% - Statements - 23/31 -
- - -
- 100% - Branches - 1/1 -
- - -
- 0% - Functions - 0/2 -
- - -
- 74.19% - Lines - 23/31 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -321x -  -  -  -  -1x -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
import { LxdOperation } from "types/operation";
-
-export const getInstanceName = (operation?: LxdOperation): string => {
-  // the url can be one of below formats
-  // /1.0/instances/<instance_name>
-  // /1.0/instances/<instance_name>?project=<project_name>
-  // /1.0/instances/<instance_name>/snapshots/<snapshot_name>
-  return (
-    operation?.resources?.instances
-      ?.filter((item) => item.startsWith("/1.0/instances/"))
-      .map((item) => item.split("/")[3])
-      .pop()
-      ?.split("?")[0] ?? ""
-  );
-};
- 
-export const getProjectName = (operation: LxdOperation): string => {
-  // the url can be
-  // /1.0/instances/<instance_name>?project=<project_name>
-  // /1.0/instances/<instance_name>?other=params&project=<project_name>
-  // /1.0/instances/testInstance1?other=params&project=<project_name>&other=params
-  // when no project parameter is present, the project will be "default"
- 
-  return (
-    operation.resources?.instances
-      ?.filter((item) => item.startsWith("/1.0/instances/"))
-      .map((item) => item.split("project=")[1])
-      .pop()
-      ?.split("&")[0] ?? "default"
-  );
-};
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/util/searchAndFilter.tsx.html b/coverage/src/util/searchAndFilter.tsx.html deleted file mode 100644 index 9315bfe603..0000000000 --- a/coverage/src/util/searchAndFilter.tsx.html +++ /dev/null @@ -1,226 +0,0 @@ - - - - - - Code coverage report for src/util/searchAndFilter.tsx - - - - - - - - - -
-
-

All files / src/util searchAndFilter.tsx

-
- -
- 51.06% - Statements - 24/47 -
- - -
- 100% - Branches - 1/1 -
- - -
- 0% - Functions - 0/3 -
- - -
- 51.06% - Lines - 24/47 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -481x -  -  -  -  -  -  -  -  -1x -1x -  -  -  -  -  -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
import { SearchAndFilterChip } from "@canonical/react-components/dist/components/SearchAndFilter/types";
-
-export const paramsFromSearchData = (
-  searchData: SearchAndFilterChip[],
-  searchParams: URLSearchParams,
-  queryParams: string[],
-): URLSearchParams => {
-  const newParams = new URLSearchParams(searchParams.toString());
-
-  queryParams.forEach((param) => {
-    newParams.delete(param);
-    searchValuesByLead(searchData, param).forEach((value) =>
-      newParams.append(param, value),
-    );
-  });
-
-  return newParams;
-};
- 
-const searchValuesByLead = (
-  searchData: SearchAndFilterChip[],
-  lead: string,
-): string[] =>
-  searchData
-    .filter(
-      (chip) => chip.lead === lead || (lead === "query" && chip.quoteValue),
-    )
-    .map((chip) => chip.value);
-
-export const searchParamsToChips = (
-  searchParams: URLSearchParams,
-  queryParams: string[],
-): SearchAndFilterChip[] => {
-  const searchData: SearchAndFilterChip[] = [];
-  queryParams.forEach((param) =>
-    searchData.push(
-      ...searchParams
-        .getAll(param)
-        .map((value) =>
-          param === "query"
-            ? { quoteValue: true, value }
-            : { lead: param, value },
-        ),
-    ),
-  );
-  return searchData;
-};
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/src/util/useSortTableData.tsx.html b/coverage/src/util/useSortTableData.tsx.html deleted file mode 100644 index 71d9810e72..0000000000 --- a/coverage/src/util/useSortTableData.tsx.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - - Code coverage report for src/util/useSortTableData.tsx - - - - - - - - - -
-
-

All files / src/util useSortTableData.tsx

-
- -
- 64.44% - Statements - 29/45 -
- - -
- 33.33% - Branches - 1/3 -
- - -
- 0% - Functions - 0/2 -
- - -
- 64.44% - Lines - 29/45 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
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 -461x -1x -1x -1x -1x -1x -1x -1x -  -1x -1x -1x -1x -  -  -  -1x -1x -1x -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  - 
import { SortDirection } from "@canonical/react-components";
-import { useState } from "react";
-import { MainTableRow } from "@canonical/react-components/dist/components/MainTable/MainTable";
- 
-type Props = {
-  rows: MainTableRow[];
-  defaultSort?: string;
-  defaultSortDirection?: SortDirection;
-};
- 
-const useSortTableData = (props: Props) => {
-  const { defaultSort, defaultSortDirection = "ascending", rows } = props;
-  const [sort, setSort] = useState<string | null | undefined>(defaultSort);
-  const [sortDirection, setSortDirection] = useState(defaultSortDirection);
-
-  if (sort) {
-    rows.sort((a, b) => {
-      const aVal = a.sortData ? (a.sortData[sort] as string) : "";
-      const bVal = b.sortData ? (b.sortData[sort] as string) : "";
-      if (aVal > bVal) {
-        return sortDirection === "ascending" ? 1 : -1;
-      }
-      if (aVal < bVal) {
-        return sortDirection === "ascending" ? -1 : 1;
-      }
-      return 0;
-    });
-  }
- 
-  const updateSort = (newSort?: string | null) => {
-    if (newSort === sort) {
-      setSortDirection("descending");
-    } else {
-      setSortDirection("ascending");
-    }
-    setSort(newSort || defaultSort);
-  };
-
-  return {
-    rows,
-    updateSort,
-  };
-};
-
-export default useSortTableData;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/ui/assets/js/index.html b/coverage/ui/assets/js/index.html index 93e1848daf..727fbc6f96 100644 --- a/coverage/ui/assets/js/index.html +++ b/coverage/ui/assets/js/index.html @@ -101,7 +101,7 @@

All files ui/assets/js