From f1a25b2872c7bbe10a16e221131b625cde01f01e Mon Sep 17 00:00:00 2001 From: itozyun Date: Fri, 27 Jul 2012 08:28:12 +0900 Subject: [PATCH] version 0.5.0 --- 0.4.x/json/comics_2.json | 127 + 0.5.x/artwork/h2c.psd | Bin 0 -> 112818 bytes 0.5.x/artwork/icons.ai | 1535 +++++++++ 0.5.x/artwork/icons.psd | Bin 0 -> 46509 bytes 0.5.x/artwork/sprite.psd | Bin 0 -> 163965 bytes 0.5.x/diary/diary.xsl | 140 + 0.5.x/diary/itozyun.xml | 132 + 0.5.x/help/help.xsl | 144 + 0.5.x/help/jp.xml | 166 + 0.5.x/help/wellcom.png | Bin 0 -> 29328 bytes 0.5.x/images/black_50pct.gif | Bin 0 -> 187 bytes 0.5.x/images/black_50pct.png | Bin 0 -> 125 bytes 0.5.x/images/error.png | Bin 0 -> 4039 bytes 0.5.x/images/grid.gif | Bin 0 -> 264 bytes 0.5.x/images/loading.gif | Bin 0 -> 2767 bytes 0.5.x/images/opacity0.gif | Bin 0 -> 45 bytes 0.5.x/images/sprite.gif | Bin 0 -> 5247 bytes 0.5.x/images/white_70pct.png | Bin 0 -> 126 bytes 0.5.x/index.html | 117 + 0.5.x/javascripts/ie5.js | 78 + 0.5.x/javascripts/jquery-1.6.2.min.js | 31 + 0.5.x/javascripts/peta.apps.js | 5032 +++++++++++++++++++++++++++++ 0.5.x/javascripts/peta.common.js | 1054 ++++++ 0.5.x/javascripts/pongame.js | 205 ++ 0.5.x/javascripts/system.js | 3867 ++++++++++++++++++++++ 0.5.x/js/create_new_comic.js | 1 + 0.5.x/js/create_new_panel.js | 1 + 0.5.x/js/register_artist.js | 1 + 0.5.x/js/upload_picture.js | 3 + 0.5.x/json/comics.json | 50 + 0.5.x/json/comics_1.json | 126 + 0.5.x/json/comics_2.json | 127 + 0.5.x/json/comics_3.json | 1 + 0.5.x/json/comics_4.json | 378 +++ 0.5.x/json/images.json | 86 + 0.5.x/json/original_pictures.json | 79 + 0.5.x/json/panels.json | 122 + 0.5.x/json/resource_pictures.json | 1505 +++++++++ 0.5.x/resource_pictures/1.gif | Bin 0 -> 7004 bytes 0.5.x/resource_pictures/1.png | Bin 0 -> 20589 bytes 0.5.x/resource_pictures/10.gif | Bin 0 -> 8386 bytes 0.5.x/resource_pictures/100.gif | Bin 0 -> 9829 bytes 0.5.x/resource_pictures/101.gif | Bin 0 -> 12160 bytes 0.5.x/resource_pictures/102.gif | Bin 0 -> 9895 bytes 0.5.x/resource_pictures/103.gif | Bin 0 -> 10644 bytes 0.5.x/resource_pictures/104.gif | Bin 0 -> 10244 bytes 0.5.x/resource_pictures/105.gif | Bin 0 -> 9888 bytes 0.5.x/resource_pictures/106.gif | Bin 0 -> 10311 bytes 0.5.x/resource_pictures/107.gif | Bin 0 -> 10620 bytes 0.5.x/resource_pictures/108.gif | Bin 0 -> 11836 bytes 0.5.x/resource_pictures/109.gif | Bin 0 -> 11942 bytes 0.5.x/resource_pictures/11.gif | Bin 0 -> 6433 bytes 0.5.x/resource_pictures/110.gif | Bin 0 -> 11048 bytes 0.5.x/resource_pictures/111.gif | Bin 0 -> 10504 bytes 0.5.x/resource_pictures/112.gif | Bin 0 -> 11638 bytes 0.5.x/resource_pictures/113.gif | Bin 0 -> 10150 bytes 0.5.x/resource_pictures/114.gif | Bin 0 -> 10126 bytes 0.5.x/resource_pictures/115.gif | Bin 0 -> 116630 bytes 0.5.x/resource_pictures/116.gif | Bin 0 -> 115967 bytes 0.5.x/resource_pictures/117.gif | Bin 0 -> 55068 bytes 0.5.x/resource_pictures/118.gif | Bin 0 -> 106203 bytes 0.5.x/resource_pictures/119.gif | Bin 0 -> 77390 bytes 0.5.x/resource_pictures/12.gif | Bin 0 -> 5835 bytes 0.5.x/resource_pictures/120.gif | Bin 0 -> 65877 bytes 0.5.x/resource_pictures/121.gif | Bin 0 -> 57888 bytes 0.5.x/resource_pictures/122.jpg | Bin 0 -> 54148 bytes 0.5.x/resource_pictures/123.jpg | Bin 0 -> 46750 bytes 0.5.x/resource_pictures/124.gif | Bin 0 -> 5999 bytes 0.5.x/resource_pictures/125.png | Bin 0 -> 5865 bytes 0.5.x/resource_pictures/126.png | Bin 0 -> 8852 bytes 0.5.x/resource_pictures/127.png | Bin 0 -> 10393 bytes 0.5.x/resource_pictures/128.png | Bin 0 -> 9397 bytes 0.5.x/resource_pictures/129.png | Bin 0 -> 7348 bytes 0.5.x/resource_pictures/13.gif | Bin 0 -> 7057 bytes 0.5.x/resource_pictures/130.png | Bin 0 -> 5950 bytes 0.5.x/resource_pictures/131.png | Bin 0 -> 9024 bytes 0.5.x/resource_pictures/132.png | Bin 0 -> 10106 bytes 0.5.x/resource_pictures/133.png | Bin 0 -> 7257 bytes 0.5.x/resource_pictures/134.png | Bin 0 -> 9762 bytes 0.5.x/resource_pictures/135.png | Bin 0 -> 40593 bytes 0.5.x/resource_pictures/136.png | Bin 0 -> 8267 bytes 0.5.x/resource_pictures/14.gif | Bin 0 -> 7234 bytes 0.5.x/resource_pictures/15.gif | Bin 0 -> 8955 bytes 0.5.x/resource_pictures/16.gif | Bin 0 -> 6358 bytes 0.5.x/resource_pictures/17.gif | Bin 0 -> 7186 bytes 0.5.x/resource_pictures/18.gif | Bin 0 -> 4583 bytes 0.5.x/resource_pictures/19.gif | Bin 0 -> 5935 bytes 0.5.x/resource_pictures/2.gif | Bin 0 -> 4924 bytes 0.5.x/resource_pictures/20.gif | Bin 0 -> 7330 bytes 0.5.x/resource_pictures/21.gif | Bin 0 -> 9162 bytes 0.5.x/resource_pictures/22.gif | Bin 0 -> 7314 bytes 0.5.x/resource_pictures/23.gif | Bin 0 -> 4765 bytes 0.5.x/resource_pictures/24.gif | Bin 0 -> 9090 bytes 0.5.x/resource_pictures/25.gif | Bin 0 -> 7515 bytes 0.5.x/resource_pictures/26.gif | Bin 0 -> 7639 bytes 0.5.x/resource_pictures/27.gif | Bin 0 -> 8614 bytes 0.5.x/resource_pictures/28.gif | Bin 0 -> 8484 bytes 0.5.x/resource_pictures/29.gif | Bin 0 -> 7982 bytes 0.5.x/resource_pictures/3.gif | Bin 0 -> 3984 bytes 0.5.x/resource_pictures/30.gif | Bin 0 -> 7499 bytes 0.5.x/resource_pictures/31.gif | Bin 0 -> 10268 bytes 0.5.x/resource_pictures/32.gif | Bin 0 -> 6459 bytes 0.5.x/resource_pictures/33.gif | Bin 0 -> 6982 bytes 0.5.x/resource_pictures/34.gif | Bin 0 -> 7779 bytes 0.5.x/resource_pictures/35.gif | Bin 0 -> 7096 bytes 0.5.x/resource_pictures/36.gif | Bin 0 -> 7719 bytes 0.5.x/resource_pictures/37.gif | Bin 0 -> 8537 bytes 0.5.x/resource_pictures/38.gif | Bin 0 -> 5915 bytes 0.5.x/resource_pictures/39.gif | Bin 0 -> 13089 bytes 0.5.x/resource_pictures/4.gif | Bin 0 -> 5399 bytes 0.5.x/resource_pictures/40.gif | Bin 0 -> 9433 bytes 0.5.x/resource_pictures/41.gif | Bin 0 -> 7925 bytes 0.5.x/resource_pictures/42.gif | Bin 0 -> 6190 bytes 0.5.x/resource_pictures/43.gif | Bin 0 -> 6262 bytes 0.5.x/resource_pictures/44.gif | Bin 0 -> 6847 bytes 0.5.x/resource_pictures/45.gif | Bin 0 -> 7583 bytes 0.5.x/resource_pictures/46.gif | Bin 0 -> 9100 bytes 0.5.x/resource_pictures/47.gif | Bin 0 -> 8750 bytes 0.5.x/resource_pictures/48.gif | Bin 0 -> 8228 bytes 0.5.x/resource_pictures/49.gif | Bin 0 -> 8795 bytes 0.5.x/resource_pictures/5.gif | Bin 0 -> 17995 bytes 0.5.x/resource_pictures/50.gif | Bin 0 -> 8186 bytes 0.5.x/resource_pictures/51.gif | Bin 0 -> 9084 bytes 0.5.x/resource_pictures/52.gif | Bin 0 -> 7885 bytes 0.5.x/resource_pictures/53.gif | Bin 0 -> 6049 bytes 0.5.x/resource_pictures/54.gif | Bin 0 -> 6837 bytes 0.5.x/resource_pictures/55.gif | Bin 0 -> 6237 bytes 0.5.x/resource_pictures/56.gif | Bin 0 -> 6928 bytes 0.5.x/resource_pictures/57.gif | Bin 0 -> 8835 bytes 0.5.x/resource_pictures/58.gif | Bin 0 -> 6442 bytes 0.5.x/resource_pictures/59.gif | Bin 0 -> 6833 bytes 0.5.x/resource_pictures/6.gif | Bin 0 -> 4625 bytes 0.5.x/resource_pictures/60.gif | Bin 0 -> 7445 bytes 0.5.x/resource_pictures/61.gif | Bin 0 -> 7730 bytes 0.5.x/resource_pictures/62.gif | Bin 0 -> 6887 bytes 0.5.x/resource_pictures/63.gif | Bin 0 -> 8662 bytes 0.5.x/resource_pictures/64.gif | Bin 0 -> 8287 bytes 0.5.x/resource_pictures/65.gif | Bin 0 -> 7442 bytes 0.5.x/resource_pictures/66.gif | Bin 0 -> 9022 bytes 0.5.x/resource_pictures/67.gif | Bin 0 -> 8674 bytes 0.5.x/resource_pictures/68.gif | Bin 0 -> 5276 bytes 0.5.x/resource_pictures/69.gif | Bin 0 -> 5987 bytes 0.5.x/resource_pictures/7.gif | Bin 0 -> 5219 bytes 0.5.x/resource_pictures/70.gif | Bin 0 -> 5801 bytes 0.5.x/resource_pictures/71.gif | Bin 0 -> 7105 bytes 0.5.x/resource_pictures/72.gif | Bin 0 -> 8729 bytes 0.5.x/resource_pictures/73.gif | Bin 0 -> 6478 bytes 0.5.x/resource_pictures/74.gif | Bin 0 -> 6421 bytes 0.5.x/resource_pictures/75.gif | Bin 0 -> 14915 bytes 0.5.x/resource_pictures/76.gif | Bin 0 -> 14081 bytes 0.5.x/resource_pictures/77.gif | Bin 0 -> 13977 bytes 0.5.x/resource_pictures/78.gif | Bin 0 -> 16626 bytes 0.5.x/resource_pictures/79.gif | Bin 0 -> 15216 bytes 0.5.x/resource_pictures/8.gif | Bin 0 -> 4677 bytes 0.5.x/resource_pictures/80.gif | Bin 0 -> 14336 bytes 0.5.x/resource_pictures/81.gif | Bin 0 -> 13957 bytes 0.5.x/resource_pictures/82.gif | Bin 0 -> 14718 bytes 0.5.x/resource_pictures/83.gif | Bin 0 -> 15661 bytes 0.5.x/resource_pictures/84.gif | Bin 0 -> 15285 bytes 0.5.x/resource_pictures/85.gif | Bin 0 -> 15775 bytes 0.5.x/resource_pictures/86.gif | Bin 0 -> 15329 bytes 0.5.x/resource_pictures/87.gif | Bin 0 -> 15273 bytes 0.5.x/resource_pictures/88.gif | Bin 0 -> 14793 bytes 0.5.x/resource_pictures/89.gif | Bin 0 -> 15785 bytes 0.5.x/resource_pictures/9.gif | Bin 0 -> 5122 bytes 0.5.x/resource_pictures/90.gif | Bin 0 -> 13968 bytes 0.5.x/resource_pictures/91.gif | Bin 0 -> 15706 bytes 0.5.x/resource_pictures/92.gif | Bin 0 -> 14093 bytes 0.5.x/resource_pictures/93.gif | Bin 0 -> 13132 bytes 0.5.x/resource_pictures/94.gif | Bin 0 -> 13752 bytes 0.5.x/resource_pictures/95.gif | Bin 0 -> 10227 bytes 0.5.x/resource_pictures/96.gif | Bin 0 -> 10732 bytes 0.5.x/resource_pictures/97.gif | Bin 0 -> 10284 bytes 0.5.x/resource_pictures/98.gif | Bin 0 -> 10082 bytes 0.5.x/resource_pictures/99.gif | Bin 0 -> 10382 bytes 0.5.x/resource_pictures/thumbnail/1.gif | Bin 0 -> 2016 bytes 0.5.x/resource_pictures/thumbnail/10.gif | Bin 0 -> 2358 bytes 0.5.x/resource_pictures/thumbnail/100.gif | Bin 0 -> 2012 bytes 0.5.x/resource_pictures/thumbnail/101.gif | Bin 0 -> 2229 bytes 0.5.x/resource_pictures/thumbnail/102.gif | Bin 0 -> 1840 bytes 0.5.x/resource_pictures/thumbnail/103.gif | Bin 0 -> 1955 bytes 0.5.x/resource_pictures/thumbnail/104.gif | Bin 0 -> 2048 bytes 0.5.x/resource_pictures/thumbnail/105.gif | Bin 0 -> 2432 bytes 0.5.x/resource_pictures/thumbnail/106.gif | Bin 0 -> 1895 bytes 0.5.x/resource_pictures/thumbnail/107.gif | Bin 0 -> 1946 bytes 0.5.x/resource_pictures/thumbnail/108.gif | Bin 0 -> 2137 bytes 0.5.x/resource_pictures/thumbnail/109.gif | Bin 0 -> 2145 bytes 0.5.x/resource_pictures/thumbnail/11.gif | Bin 0 -> 1657 bytes 0.5.x/resource_pictures/thumbnail/110.gif | Bin 0 -> 2113 bytes 0.5.x/resource_pictures/thumbnail/111.gif | Bin 0 -> 1935 bytes 0.5.x/resource_pictures/thumbnail/112.gif | Bin 0 -> 2027 bytes 0.5.x/resource_pictures/thumbnail/113.gif | Bin 0 -> 1914 bytes 0.5.x/resource_pictures/thumbnail/114.gif | Bin 0 -> 1866 bytes 0.5.x/resource_pictures/thumbnail/115.gif | Bin 0 -> 2680 bytes 0.5.x/resource_pictures/thumbnail/116.gif | Bin 0 -> 2668 bytes 0.5.x/resource_pictures/thumbnail/117.gif | Bin 0 -> 2338 bytes 0.5.x/resource_pictures/thumbnail/118.gif | Bin 0 -> 2174 bytes 0.5.x/resource_pictures/thumbnail/119.gif | Bin 0 -> 1758 bytes 0.5.x/resource_pictures/thumbnail/12.gif | Bin 0 -> 1574 bytes 0.5.x/resource_pictures/thumbnail/120.gif | Bin 0 -> 1946 bytes 0.5.x/resource_pictures/thumbnail/121.gif | Bin 0 -> 2086 bytes 0.5.x/resource_pictures/thumbnail/122.jpg | Bin 0 -> 2633 bytes 0.5.x/resource_pictures/thumbnail/123.jpg | Bin 0 -> 25722 bytes 0.5.x/resource_pictures/thumbnail/124.gif | Bin 0 -> 2194 bytes 0.5.x/resource_pictures/thumbnail/125.png | Bin 0 -> 3266 bytes 0.5.x/resource_pictures/thumbnail/126.png | Bin 0 -> 5006 bytes 0.5.x/resource_pictures/thumbnail/127.png | Bin 0 -> 5076 bytes 0.5.x/resource_pictures/thumbnail/128.png | Bin 0 -> 4390 bytes 0.5.x/resource_pictures/thumbnail/129.png | Bin 0 -> 5196 bytes 0.5.x/resource_pictures/thumbnail/13.gif | Bin 0 -> 1679 bytes 0.5.x/resource_pictures/thumbnail/130.png | Bin 0 -> 5402 bytes 0.5.x/resource_pictures/thumbnail/131.png | Bin 0 -> 5243 bytes 0.5.x/resource_pictures/thumbnail/132.png | Bin 0 -> 5947 bytes 0.5.x/resource_pictures/thumbnail/133.png | Bin 0 -> 3993 bytes 0.5.x/resource_pictures/thumbnail/134.png | Bin 0 -> 5673 bytes 0.5.x/resource_pictures/thumbnail/135.png | Bin 0 -> 5357 bytes 0.5.x/resource_pictures/thumbnail/136.png | Bin 0 -> 4337 bytes 0.5.x/resource_pictures/thumbnail/14.gif | Bin 0 -> 1773 bytes 0.5.x/resource_pictures/thumbnail/15.gif | Bin 0 -> 2366 bytes 0.5.x/resource_pictures/thumbnail/16.gif | Bin 0 -> 1333 bytes 0.5.x/resource_pictures/thumbnail/17.gif | Bin 0 -> 2000 bytes 0.5.x/resource_pictures/thumbnail/18.gif | Bin 0 -> 1137 bytes 0.5.x/resource_pictures/thumbnail/19.gif | Bin 0 -> 1470 bytes 0.5.x/resource_pictures/thumbnail/2.gif | Bin 0 -> 1614 bytes 0.5.x/resource_pictures/thumbnail/20.gif | Bin 0 -> 2474 bytes 0.5.x/resource_pictures/thumbnail/21.gif | Bin 0 -> 3087 bytes 0.5.x/resource_pictures/thumbnail/22.gif | Bin 0 -> 1909 bytes 0.5.x/resource_pictures/thumbnail/23.gif | Bin 0 -> 1260 bytes 0.5.x/resource_pictures/thumbnail/24.gif | Bin 0 -> 2888 bytes 0.5.x/resource_pictures/thumbnail/25.gif | Bin 0 -> 1709 bytes 0.5.x/resource_pictures/thumbnail/26.gif | Bin 0 -> 1691 bytes 0.5.x/resource_pictures/thumbnail/27.gif | Bin 0 -> 2507 bytes 0.5.x/resource_pictures/thumbnail/28.gif | Bin 0 -> 2517 bytes 0.5.x/resource_pictures/thumbnail/29.gif | Bin 0 -> 2653 bytes 0.5.x/resource_pictures/thumbnail/3.gif | Bin 0 -> 1911 bytes 0.5.x/resource_pictures/thumbnail/30.gif | Bin 0 -> 1782 bytes 0.5.x/resource_pictures/thumbnail/31.gif | Bin 0 -> 2518 bytes 0.5.x/resource_pictures/thumbnail/32.gif | Bin 0 -> 1599 bytes 0.5.x/resource_pictures/thumbnail/33.gif | Bin 0 -> 1934 bytes 0.5.x/resource_pictures/thumbnail/34.gif | Bin 0 -> 1947 bytes 0.5.x/resource_pictures/thumbnail/35.gif | Bin 0 -> 1716 bytes 0.5.x/resource_pictures/thumbnail/36.gif | Bin 0 -> 1702 bytes 0.5.x/resource_pictures/thumbnail/37.gif | Bin 0 -> 2113 bytes 0.5.x/resource_pictures/thumbnail/38.gif | Bin 0 -> 1543 bytes 0.5.x/resource_pictures/thumbnail/39.gif | Bin 0 -> 3196 bytes 0.5.x/resource_pictures/thumbnail/4.gif | Bin 0 -> 1802 bytes 0.5.x/resource_pictures/thumbnail/40.gif | Bin 0 -> 2059 bytes 0.5.x/resource_pictures/thumbnail/41.gif | Bin 0 -> 1747 bytes 0.5.x/resource_pictures/thumbnail/42.gif | Bin 0 -> 1456 bytes 0.5.x/resource_pictures/thumbnail/43.gif | Bin 0 -> 1725 bytes 0.5.x/resource_pictures/thumbnail/44.gif | Bin 0 -> 2529 bytes 0.5.x/resource_pictures/thumbnail/45.gif | Bin 0 -> 2695 bytes 0.5.x/resource_pictures/thumbnail/46.gif | Bin 0 -> 2161 bytes 0.5.x/resource_pictures/thumbnail/47.gif | Bin 0 -> 1813 bytes 0.5.x/resource_pictures/thumbnail/48.gif | Bin 0 -> 1894 bytes 0.5.x/resource_pictures/thumbnail/49.gif | Bin 0 -> 1912 bytes 0.5.x/resource_pictures/thumbnail/5.gif | Bin 0 -> 1514 bytes 0.5.x/resource_pictures/thumbnail/50.gif | Bin 0 -> 1815 bytes 0.5.x/resource_pictures/thumbnail/51.gif | Bin 0 -> 2360 bytes 0.5.x/resource_pictures/thumbnail/52.gif | Bin 0 -> 1773 bytes 0.5.x/resource_pictures/thumbnail/53.gif | Bin 0 -> 1282 bytes 0.5.x/resource_pictures/thumbnail/54.gif | Bin 0 -> 1672 bytes 0.5.x/resource_pictures/thumbnail/55.gif | Bin 0 -> 1307 bytes 0.5.x/resource_pictures/thumbnail/56.gif | Bin 0 -> 2202 bytes 0.5.x/resource_pictures/thumbnail/57.gif | Bin 0 -> 2551 bytes 0.5.x/resource_pictures/thumbnail/58.gif | Bin 0 -> 2306 bytes 0.5.x/resource_pictures/thumbnail/59.gif | Bin 0 -> 2135 bytes 0.5.x/resource_pictures/thumbnail/6.gif | Bin 0 -> 1378 bytes 0.5.x/resource_pictures/thumbnail/60.gif | Bin 0 -> 2286 bytes 0.5.x/resource_pictures/thumbnail/61.gif | Bin 0 -> 1804 bytes 0.5.x/resource_pictures/thumbnail/62.gif | Bin 0 -> 1508 bytes 0.5.x/resource_pictures/thumbnail/63.gif | Bin 0 -> 1821 bytes 0.5.x/resource_pictures/thumbnail/64.gif | Bin 0 -> 2667 bytes 0.5.x/resource_pictures/thumbnail/65.gif | Bin 0 -> 2657 bytes 0.5.x/resource_pictures/thumbnail/66.gif | Bin 0 -> 1724 bytes 0.5.x/resource_pictures/thumbnail/67.gif | Bin 0 -> 1849 bytes 0.5.x/resource_pictures/thumbnail/68.gif | Bin 0 -> 1263 bytes 0.5.x/resource_pictures/thumbnail/69.gif | Bin 0 -> 1268 bytes 0.5.x/resource_pictures/thumbnail/7.gif | Bin 0 -> 1743 bytes 0.5.x/resource_pictures/thumbnail/70.gif | Bin 0 -> 1731 bytes 0.5.x/resource_pictures/thumbnail/71.gif | Bin 0 -> 1780 bytes 0.5.x/resource_pictures/thumbnail/72.gif | Bin 0 -> 2126 bytes 0.5.x/resource_pictures/thumbnail/73.gif | Bin 0 -> 1822 bytes 0.5.x/resource_pictures/thumbnail/74.gif | Bin 0 -> 2253 bytes 0.5.x/resource_pictures/thumbnail/75.gif | Bin 0 -> 2141 bytes 0.5.x/resource_pictures/thumbnail/76.gif | Bin 0 -> 2082 bytes 0.5.x/resource_pictures/thumbnail/77.gif | Bin 0 -> 2121 bytes 0.5.x/resource_pictures/thumbnail/78.gif | Bin 0 -> 2274 bytes 0.5.x/resource_pictures/thumbnail/79.gif | Bin 0 -> 2203 bytes 0.5.x/resource_pictures/thumbnail/8.gif | Bin 0 -> 1157 bytes 0.5.x/resource_pictures/thumbnail/80.gif | Bin 0 -> 2130 bytes 0.5.x/resource_pictures/thumbnail/81.gif | Bin 0 -> 2149 bytes 0.5.x/resource_pictures/thumbnail/82.gif | Bin 0 -> 2159 bytes 0.5.x/resource_pictures/thumbnail/83.gif | Bin 0 -> 2223 bytes 0.5.x/resource_pictures/thumbnail/84.gif | Bin 0 -> 2229 bytes 0.5.x/resource_pictures/thumbnail/85.gif | Bin 0 -> 2948 bytes 0.5.x/resource_pictures/thumbnail/86.gif | Bin 0 -> 2218 bytes 0.5.x/resource_pictures/thumbnail/87.gif | Bin 0 -> 2189 bytes 0.5.x/resource_pictures/thumbnail/88.gif | Bin 0 -> 2046 bytes 0.5.x/resource_pictures/thumbnail/89.gif | Bin 0 -> 2371 bytes 0.5.x/resource_pictures/thumbnail/9.gif | Bin 0 -> 1268 bytes 0.5.x/resource_pictures/thumbnail/90.gif | Bin 0 -> 2324 bytes 0.5.x/resource_pictures/thumbnail/91.gif | Bin 0 -> 2161 bytes 0.5.x/resource_pictures/thumbnail/92.gif | Bin 0 -> 2034 bytes 0.5.x/resource_pictures/thumbnail/93.gif | Bin 0 -> 2021 bytes 0.5.x/resource_pictures/thumbnail/94.gif | Bin 0 -> 2248 bytes 0.5.x/resource_pictures/thumbnail/95.gif | Bin 0 -> 2123 bytes 0.5.x/resource_pictures/thumbnail/96.gif | Bin 0 -> 2134 bytes 0.5.x/resource_pictures/thumbnail/97.gif | Bin 0 -> 1920 bytes 0.5.x/resource_pictures/thumbnail/98.gif | Bin 0 -> 1836 bytes 0.5.x/resource_pictures/thumbnail/99.gif | Bin 0 -> 1940 bytes 0.5.x/sitemap/sitemap.xml | 43 + 0.5.x/sitemap/sitemap.xsl | 144 + 0.5.x/stylesheets/peta.apps.css | 1473 +++++++++ 0.5.x/stylesheets/peta.common.css | 151 + 0.5.x/stylesheets/site.css | 453 +++ 0.5.x/stylesheets/system.css | 215 ++ 0.5.x/system_pictures/_w0.gif | Bin 0 -> 5451 bytes 0.5.x/system_pictures/_w0_b1.gif | Bin 0 -> 5631 bytes 0.5.x/system_pictures/_w1.gif | Bin 0 -> 9654 bytes 0.5.x/system_pictures/_w10.gif | Bin 0 -> 9506 bytes 0.5.x/system_pictures/_w10_b1.gif | Bin 0 -> 10243 bytes 0.5.x/system_pictures/_w11.gif | Bin 0 -> 9613 bytes 0.5.x/system_pictures/_w11_b1.gif | Bin 0 -> 10384 bytes 0.5.x/system_pictures/_w12.gif | Bin 0 -> 5417 bytes 0.5.x/system_pictures/_w12_b1.gif | Bin 0 -> 5595 bytes 0.5.x/system_pictures/_w13.gif | Bin 0 -> 9610 bytes 0.5.x/system_pictures/_w13_b1.gif | Bin 0 -> 10418 bytes 0.5.x/system_pictures/_w14.gif | Bin 0 -> 9512 bytes 0.5.x/system_pictures/_w14_b1.gif | Bin 0 -> 10333 bytes 0.5.x/system_pictures/_w15.gif | Bin 0 -> 9294 bytes 0.5.x/system_pictures/_w15_b1.gif | Bin 0 -> 10089 bytes 0.5.x/system_pictures/_w16.gif | Bin 0 -> 9419 bytes 0.5.x/system_pictures/_w16_b1.gif | Bin 0 -> 10204 bytes 0.5.x/system_pictures/_w17.gif | Bin 0 -> 9509 bytes 0.5.x/system_pictures/_w17_b1.gif | Bin 0 -> 10244 bytes 0.5.x/system_pictures/_w18.gif | Bin 0 -> 5247 bytes 0.5.x/system_pictures/_w18_b1.gif | Bin 0 -> 5433 bytes 0.5.x/system_pictures/_w19.gif | Bin 0 -> 9464 bytes 0.5.x/system_pictures/_w19_b1.gif | Bin 0 -> 10262 bytes 0.5.x/system_pictures/_w1_b1.gif | Bin 0 -> 10437 bytes 0.5.x/system_pictures/_w2.gif | Bin 0 -> 9565 bytes 0.5.x/system_pictures/_w20.gif | Bin 0 -> 9463 bytes 0.5.x/system_pictures/_w20_b1.gif | Bin 0 -> 10268 bytes 0.5.x/system_pictures/_w21.gif | Bin 0 -> 9354 bytes 0.5.x/system_pictures/_w21_b1.gif | Bin 0 -> 10080 bytes 0.5.x/system_pictures/_w22.gif | Bin 0 -> 9509 bytes 0.5.x/system_pictures/_w22_b1.gif | Bin 0 -> 10355 bytes 0.5.x/system_pictures/_w23.gif | Bin 0 -> 9595 bytes 0.5.x/system_pictures/_w23_b1.gif | Bin 0 -> 10382 bytes 0.5.x/system_pictures/_w2_b1.gif | Bin 0 -> 10343 bytes 0.5.x/system_pictures/_w3.gif | Bin 0 -> 9354 bytes 0.5.x/system_pictures/_w3_b1.gif | Bin 0 -> 10135 bytes 0.5.x/system_pictures/_w4.gif | Bin 0 -> 9487 bytes 0.5.x/system_pictures/_w4_b1.gif | Bin 0 -> 10229 bytes 0.5.x/system_pictures/_w5.gif | Bin 0 -> 9514 bytes 0.5.x/system_pictures/_w5_b1.gif | Bin 0 -> 10309 bytes 0.5.x/system_pictures/_w6.gif | Bin 0 -> 5277 bytes 0.5.x/system_pictures/_w6_b1.gif | Bin 0 -> 5437 bytes 0.5.x/system_pictures/_w7.gif | Bin 0 -> 9512 bytes 0.5.x/system_pictures/_w7_b1.gif | Bin 0 -> 10226 bytes 0.5.x/system_pictures/_w8.gif | Bin 0 -> 9421 bytes 0.5.x/system_pictures/_w8_b1.gif | Bin 0 -> 10216 bytes 0.5.x/system_pictures/_w9.gif | Bin 0 -> 9294 bytes 0.5.x/system_pictures/_w9_b1.gif | Bin 0 -> 10098 bytes 0.5.x/test/1.gif | Bin 0 -> 7004 bytes 0.5.x/test/activex.html | 191 ++ 0.5.x/test/comic-html-structure.html | 442 +++ 0.5.x/test/dynamic-comic-html.html | 216 ++ 0.5.x/test/flip.svg | 1 + 0.5.x/test/html2comic_0.1.html | 367 +++ 0.5.x/test/index.html | 140 + 0.5.x/test/pettanr.css | 137 + 0.5.x/test/pettanr.xml | 32 + 0.5.x/test/pettanr.xsl | 251 ++ 0.5.x/test/svg.html | 211 ++ 0.5.x/test/transform.html | 192 ++ 0.5.x/test/type.html | 234 ++ 0.5.x/test/useragent.html | 241 ++ 0.5.x/test/vertical-center.html | 357 ++ 0.5.x/wiki/wiki.css | 231 ++ 0.5.x/wiki/wiki.js | 432 +++ 0.5.x/wiki/wiki.xsl | 169 + 0.5.x/work.html | 24 + 384 files changed, 21455 insertions(+) create mode 100644 0.4.x/json/comics_2.json create mode 100644 0.5.x/artwork/h2c.psd create mode 100644 0.5.x/artwork/icons.ai create mode 100644 0.5.x/artwork/icons.psd create mode 100644 0.5.x/artwork/sprite.psd create mode 100644 0.5.x/diary/diary.xsl create mode 100644 0.5.x/diary/itozyun.xml create mode 100644 0.5.x/help/help.xsl create mode 100644 0.5.x/help/jp.xml create mode 100644 0.5.x/help/wellcom.png create mode 100644 0.5.x/images/black_50pct.gif create mode 100644 0.5.x/images/black_50pct.png create mode 100644 0.5.x/images/error.png create mode 100644 0.5.x/images/grid.gif create mode 100644 0.5.x/images/loading.gif create mode 100644 0.5.x/images/opacity0.gif create mode 100644 0.5.x/images/sprite.gif create mode 100644 0.5.x/images/white_70pct.png create mode 100644 0.5.x/index.html create mode 100644 0.5.x/javascripts/ie5.js create mode 100644 0.5.x/javascripts/jquery-1.6.2.min.js create mode 100644 0.5.x/javascripts/peta.apps.js create mode 100644 0.5.x/javascripts/peta.common.js create mode 100644 0.5.x/javascripts/pongame.js create mode 100644 0.5.x/javascripts/system.js create mode 100644 0.5.x/js/create_new_comic.js create mode 100644 0.5.x/js/create_new_panel.js create mode 100644 0.5.x/js/register_artist.js create mode 100644 0.5.x/js/upload_picture.js create mode 100644 0.5.x/json/comics.json create mode 100644 0.5.x/json/comics_1.json create mode 100644 0.5.x/json/comics_2.json create mode 100644 0.5.x/json/comics_3.json create mode 100644 0.5.x/json/comics_4.json create mode 100644 0.5.x/json/images.json create mode 100644 0.5.x/json/original_pictures.json create mode 100644 0.5.x/json/panels.json create mode 100644 0.5.x/json/resource_pictures.json create mode 100644 0.5.x/resource_pictures/1.gif create mode 100644 0.5.x/resource_pictures/1.png create mode 100644 0.5.x/resource_pictures/10.gif create mode 100644 0.5.x/resource_pictures/100.gif create mode 100644 0.5.x/resource_pictures/101.gif create mode 100644 0.5.x/resource_pictures/102.gif create mode 100644 0.5.x/resource_pictures/103.gif create mode 100644 0.5.x/resource_pictures/104.gif create mode 100644 0.5.x/resource_pictures/105.gif create mode 100644 0.5.x/resource_pictures/106.gif create mode 100644 0.5.x/resource_pictures/107.gif create mode 100644 0.5.x/resource_pictures/108.gif create mode 100644 0.5.x/resource_pictures/109.gif create mode 100644 0.5.x/resource_pictures/11.gif create mode 100644 0.5.x/resource_pictures/110.gif create mode 100644 0.5.x/resource_pictures/111.gif create mode 100644 0.5.x/resource_pictures/112.gif create mode 100644 0.5.x/resource_pictures/113.gif create mode 100644 0.5.x/resource_pictures/114.gif create mode 100644 0.5.x/resource_pictures/115.gif create mode 100644 0.5.x/resource_pictures/116.gif create mode 100644 0.5.x/resource_pictures/117.gif create mode 100644 0.5.x/resource_pictures/118.gif create mode 100644 0.5.x/resource_pictures/119.gif create mode 100644 0.5.x/resource_pictures/12.gif create mode 100644 0.5.x/resource_pictures/120.gif create mode 100644 0.5.x/resource_pictures/121.gif create mode 100644 0.5.x/resource_pictures/122.jpg create mode 100644 0.5.x/resource_pictures/123.jpg create mode 100644 0.5.x/resource_pictures/124.gif create mode 100644 0.5.x/resource_pictures/125.png create mode 100644 0.5.x/resource_pictures/126.png create mode 100644 0.5.x/resource_pictures/127.png create mode 100644 0.5.x/resource_pictures/128.png create mode 100644 0.5.x/resource_pictures/129.png create mode 100644 0.5.x/resource_pictures/13.gif create mode 100644 0.5.x/resource_pictures/130.png create mode 100644 0.5.x/resource_pictures/131.png create mode 100644 0.5.x/resource_pictures/132.png create mode 100644 0.5.x/resource_pictures/133.png create mode 100644 0.5.x/resource_pictures/134.png create mode 100644 0.5.x/resource_pictures/135.png create mode 100644 0.5.x/resource_pictures/136.png create mode 100644 0.5.x/resource_pictures/14.gif create mode 100644 0.5.x/resource_pictures/15.gif create mode 100644 0.5.x/resource_pictures/16.gif create mode 100644 0.5.x/resource_pictures/17.gif create mode 100644 0.5.x/resource_pictures/18.gif create mode 100644 0.5.x/resource_pictures/19.gif create mode 100644 0.5.x/resource_pictures/2.gif create mode 100644 0.5.x/resource_pictures/20.gif create mode 100644 0.5.x/resource_pictures/21.gif create mode 100644 0.5.x/resource_pictures/22.gif create mode 100644 0.5.x/resource_pictures/23.gif create mode 100644 0.5.x/resource_pictures/24.gif create mode 100644 0.5.x/resource_pictures/25.gif create mode 100644 0.5.x/resource_pictures/26.gif create mode 100644 0.5.x/resource_pictures/27.gif create mode 100644 0.5.x/resource_pictures/28.gif create mode 100644 0.5.x/resource_pictures/29.gif create mode 100644 0.5.x/resource_pictures/3.gif create mode 100644 0.5.x/resource_pictures/30.gif create mode 100644 0.5.x/resource_pictures/31.gif create mode 100644 0.5.x/resource_pictures/32.gif create mode 100644 0.5.x/resource_pictures/33.gif create mode 100644 0.5.x/resource_pictures/34.gif create mode 100644 0.5.x/resource_pictures/35.gif create mode 100644 0.5.x/resource_pictures/36.gif create mode 100644 0.5.x/resource_pictures/37.gif create mode 100644 0.5.x/resource_pictures/38.gif create mode 100644 0.5.x/resource_pictures/39.gif create mode 100644 0.5.x/resource_pictures/4.gif create mode 100644 0.5.x/resource_pictures/40.gif create mode 100644 0.5.x/resource_pictures/41.gif create mode 100644 0.5.x/resource_pictures/42.gif create mode 100644 0.5.x/resource_pictures/43.gif create mode 100644 0.5.x/resource_pictures/44.gif create mode 100644 0.5.x/resource_pictures/45.gif create mode 100644 0.5.x/resource_pictures/46.gif create mode 100644 0.5.x/resource_pictures/47.gif create mode 100644 0.5.x/resource_pictures/48.gif create mode 100644 0.5.x/resource_pictures/49.gif create mode 100644 0.5.x/resource_pictures/5.gif create mode 100644 0.5.x/resource_pictures/50.gif create mode 100644 0.5.x/resource_pictures/51.gif create mode 100644 0.5.x/resource_pictures/52.gif create mode 100644 0.5.x/resource_pictures/53.gif create mode 100644 0.5.x/resource_pictures/54.gif create mode 100644 0.5.x/resource_pictures/55.gif create mode 100644 0.5.x/resource_pictures/56.gif create mode 100644 0.5.x/resource_pictures/57.gif create mode 100644 0.5.x/resource_pictures/58.gif create mode 100644 0.5.x/resource_pictures/59.gif create mode 100644 0.5.x/resource_pictures/6.gif create mode 100644 0.5.x/resource_pictures/60.gif create mode 100644 0.5.x/resource_pictures/61.gif create mode 100644 0.5.x/resource_pictures/62.gif create mode 100644 0.5.x/resource_pictures/63.gif create mode 100644 0.5.x/resource_pictures/64.gif create mode 100644 0.5.x/resource_pictures/65.gif create mode 100644 0.5.x/resource_pictures/66.gif create mode 100644 0.5.x/resource_pictures/67.gif create mode 100644 0.5.x/resource_pictures/68.gif create mode 100644 0.5.x/resource_pictures/69.gif create mode 100644 0.5.x/resource_pictures/7.gif create mode 100644 0.5.x/resource_pictures/70.gif create mode 100644 0.5.x/resource_pictures/71.gif create mode 100644 0.5.x/resource_pictures/72.gif create mode 100644 0.5.x/resource_pictures/73.gif create mode 100644 0.5.x/resource_pictures/74.gif create mode 100644 0.5.x/resource_pictures/75.gif create mode 100644 0.5.x/resource_pictures/76.gif create mode 100644 0.5.x/resource_pictures/77.gif create mode 100644 0.5.x/resource_pictures/78.gif create mode 100644 0.5.x/resource_pictures/79.gif create mode 100644 0.5.x/resource_pictures/8.gif create mode 100644 0.5.x/resource_pictures/80.gif create mode 100644 0.5.x/resource_pictures/81.gif create mode 100644 0.5.x/resource_pictures/82.gif create mode 100644 0.5.x/resource_pictures/83.gif create mode 100644 0.5.x/resource_pictures/84.gif create mode 100644 0.5.x/resource_pictures/85.gif create mode 100644 0.5.x/resource_pictures/86.gif create mode 100644 0.5.x/resource_pictures/87.gif create mode 100644 0.5.x/resource_pictures/88.gif create mode 100644 0.5.x/resource_pictures/89.gif create mode 100644 0.5.x/resource_pictures/9.gif create mode 100644 0.5.x/resource_pictures/90.gif create mode 100644 0.5.x/resource_pictures/91.gif create mode 100644 0.5.x/resource_pictures/92.gif create mode 100644 0.5.x/resource_pictures/93.gif create mode 100644 0.5.x/resource_pictures/94.gif create mode 100644 0.5.x/resource_pictures/95.gif create mode 100644 0.5.x/resource_pictures/96.gif create mode 100644 0.5.x/resource_pictures/97.gif create mode 100644 0.5.x/resource_pictures/98.gif create mode 100644 0.5.x/resource_pictures/99.gif create mode 100644 0.5.x/resource_pictures/thumbnail/1.gif create mode 100644 0.5.x/resource_pictures/thumbnail/10.gif create mode 100644 0.5.x/resource_pictures/thumbnail/100.gif create mode 100644 0.5.x/resource_pictures/thumbnail/101.gif create mode 100644 0.5.x/resource_pictures/thumbnail/102.gif create mode 100644 0.5.x/resource_pictures/thumbnail/103.gif create mode 100644 0.5.x/resource_pictures/thumbnail/104.gif create mode 100644 0.5.x/resource_pictures/thumbnail/105.gif create mode 100644 0.5.x/resource_pictures/thumbnail/106.gif create mode 100644 0.5.x/resource_pictures/thumbnail/107.gif create mode 100644 0.5.x/resource_pictures/thumbnail/108.gif create mode 100644 0.5.x/resource_pictures/thumbnail/109.gif create mode 100644 0.5.x/resource_pictures/thumbnail/11.gif create mode 100644 0.5.x/resource_pictures/thumbnail/110.gif create mode 100644 0.5.x/resource_pictures/thumbnail/111.gif create mode 100644 0.5.x/resource_pictures/thumbnail/112.gif create mode 100644 0.5.x/resource_pictures/thumbnail/113.gif create mode 100644 0.5.x/resource_pictures/thumbnail/114.gif create mode 100644 0.5.x/resource_pictures/thumbnail/115.gif create mode 100644 0.5.x/resource_pictures/thumbnail/116.gif create mode 100644 0.5.x/resource_pictures/thumbnail/117.gif create mode 100644 0.5.x/resource_pictures/thumbnail/118.gif create mode 100644 0.5.x/resource_pictures/thumbnail/119.gif create mode 100644 0.5.x/resource_pictures/thumbnail/12.gif create mode 100644 0.5.x/resource_pictures/thumbnail/120.gif create mode 100644 0.5.x/resource_pictures/thumbnail/121.gif create mode 100644 0.5.x/resource_pictures/thumbnail/122.jpg create mode 100644 0.5.x/resource_pictures/thumbnail/123.jpg create mode 100644 0.5.x/resource_pictures/thumbnail/124.gif create mode 100644 0.5.x/resource_pictures/thumbnail/125.png create mode 100644 0.5.x/resource_pictures/thumbnail/126.png create mode 100644 0.5.x/resource_pictures/thumbnail/127.png create mode 100644 0.5.x/resource_pictures/thumbnail/128.png create mode 100644 0.5.x/resource_pictures/thumbnail/129.png create mode 100644 0.5.x/resource_pictures/thumbnail/13.gif create mode 100644 0.5.x/resource_pictures/thumbnail/130.png create mode 100644 0.5.x/resource_pictures/thumbnail/131.png create mode 100644 0.5.x/resource_pictures/thumbnail/132.png create mode 100644 0.5.x/resource_pictures/thumbnail/133.png create mode 100644 0.5.x/resource_pictures/thumbnail/134.png create mode 100644 0.5.x/resource_pictures/thumbnail/135.png create mode 100644 0.5.x/resource_pictures/thumbnail/136.png create mode 100644 0.5.x/resource_pictures/thumbnail/14.gif create mode 100644 0.5.x/resource_pictures/thumbnail/15.gif create mode 100644 0.5.x/resource_pictures/thumbnail/16.gif create mode 100644 0.5.x/resource_pictures/thumbnail/17.gif create mode 100644 0.5.x/resource_pictures/thumbnail/18.gif create mode 100644 0.5.x/resource_pictures/thumbnail/19.gif create mode 100644 0.5.x/resource_pictures/thumbnail/2.gif create mode 100644 0.5.x/resource_pictures/thumbnail/20.gif create mode 100644 0.5.x/resource_pictures/thumbnail/21.gif create mode 100644 0.5.x/resource_pictures/thumbnail/22.gif create mode 100644 0.5.x/resource_pictures/thumbnail/23.gif create mode 100644 0.5.x/resource_pictures/thumbnail/24.gif create mode 100644 0.5.x/resource_pictures/thumbnail/25.gif create mode 100644 0.5.x/resource_pictures/thumbnail/26.gif create mode 100644 0.5.x/resource_pictures/thumbnail/27.gif create mode 100644 0.5.x/resource_pictures/thumbnail/28.gif create mode 100644 0.5.x/resource_pictures/thumbnail/29.gif create mode 100644 0.5.x/resource_pictures/thumbnail/3.gif create mode 100644 0.5.x/resource_pictures/thumbnail/30.gif create mode 100644 0.5.x/resource_pictures/thumbnail/31.gif create mode 100644 0.5.x/resource_pictures/thumbnail/32.gif create mode 100644 0.5.x/resource_pictures/thumbnail/33.gif create mode 100644 0.5.x/resource_pictures/thumbnail/34.gif create mode 100644 0.5.x/resource_pictures/thumbnail/35.gif create mode 100644 0.5.x/resource_pictures/thumbnail/36.gif create mode 100644 0.5.x/resource_pictures/thumbnail/37.gif create mode 100644 0.5.x/resource_pictures/thumbnail/38.gif create mode 100644 0.5.x/resource_pictures/thumbnail/39.gif create mode 100644 0.5.x/resource_pictures/thumbnail/4.gif create mode 100644 0.5.x/resource_pictures/thumbnail/40.gif create mode 100644 0.5.x/resource_pictures/thumbnail/41.gif create mode 100644 0.5.x/resource_pictures/thumbnail/42.gif create mode 100644 0.5.x/resource_pictures/thumbnail/43.gif create mode 100644 0.5.x/resource_pictures/thumbnail/44.gif create mode 100644 0.5.x/resource_pictures/thumbnail/45.gif create mode 100644 0.5.x/resource_pictures/thumbnail/46.gif create mode 100644 0.5.x/resource_pictures/thumbnail/47.gif create mode 100644 0.5.x/resource_pictures/thumbnail/48.gif create mode 100644 0.5.x/resource_pictures/thumbnail/49.gif create mode 100644 0.5.x/resource_pictures/thumbnail/5.gif create mode 100644 0.5.x/resource_pictures/thumbnail/50.gif create mode 100644 0.5.x/resource_pictures/thumbnail/51.gif create mode 100644 0.5.x/resource_pictures/thumbnail/52.gif create mode 100644 0.5.x/resource_pictures/thumbnail/53.gif create mode 100644 0.5.x/resource_pictures/thumbnail/54.gif create mode 100644 0.5.x/resource_pictures/thumbnail/55.gif create mode 100644 0.5.x/resource_pictures/thumbnail/56.gif create mode 100644 0.5.x/resource_pictures/thumbnail/57.gif create mode 100644 0.5.x/resource_pictures/thumbnail/58.gif create mode 100644 0.5.x/resource_pictures/thumbnail/59.gif create mode 100644 0.5.x/resource_pictures/thumbnail/6.gif create mode 100644 0.5.x/resource_pictures/thumbnail/60.gif create mode 100644 0.5.x/resource_pictures/thumbnail/61.gif create mode 100644 0.5.x/resource_pictures/thumbnail/62.gif create mode 100644 0.5.x/resource_pictures/thumbnail/63.gif create mode 100644 0.5.x/resource_pictures/thumbnail/64.gif create mode 100644 0.5.x/resource_pictures/thumbnail/65.gif create mode 100644 0.5.x/resource_pictures/thumbnail/66.gif create mode 100644 0.5.x/resource_pictures/thumbnail/67.gif create mode 100644 0.5.x/resource_pictures/thumbnail/68.gif create mode 100644 0.5.x/resource_pictures/thumbnail/69.gif create mode 100644 0.5.x/resource_pictures/thumbnail/7.gif create mode 100644 0.5.x/resource_pictures/thumbnail/70.gif create mode 100644 0.5.x/resource_pictures/thumbnail/71.gif create mode 100644 0.5.x/resource_pictures/thumbnail/72.gif create mode 100644 0.5.x/resource_pictures/thumbnail/73.gif create mode 100644 0.5.x/resource_pictures/thumbnail/74.gif create mode 100644 0.5.x/resource_pictures/thumbnail/75.gif create mode 100644 0.5.x/resource_pictures/thumbnail/76.gif create mode 100644 0.5.x/resource_pictures/thumbnail/77.gif create mode 100644 0.5.x/resource_pictures/thumbnail/78.gif create mode 100644 0.5.x/resource_pictures/thumbnail/79.gif create mode 100644 0.5.x/resource_pictures/thumbnail/8.gif create mode 100644 0.5.x/resource_pictures/thumbnail/80.gif create mode 100644 0.5.x/resource_pictures/thumbnail/81.gif create mode 100644 0.5.x/resource_pictures/thumbnail/82.gif create mode 100644 0.5.x/resource_pictures/thumbnail/83.gif create mode 100644 0.5.x/resource_pictures/thumbnail/84.gif create mode 100644 0.5.x/resource_pictures/thumbnail/85.gif create mode 100644 0.5.x/resource_pictures/thumbnail/86.gif create mode 100644 0.5.x/resource_pictures/thumbnail/87.gif create mode 100644 0.5.x/resource_pictures/thumbnail/88.gif create mode 100644 0.5.x/resource_pictures/thumbnail/89.gif create mode 100644 0.5.x/resource_pictures/thumbnail/9.gif create mode 100644 0.5.x/resource_pictures/thumbnail/90.gif create mode 100644 0.5.x/resource_pictures/thumbnail/91.gif create mode 100644 0.5.x/resource_pictures/thumbnail/92.gif create mode 100644 0.5.x/resource_pictures/thumbnail/93.gif create mode 100644 0.5.x/resource_pictures/thumbnail/94.gif create mode 100644 0.5.x/resource_pictures/thumbnail/95.gif create mode 100644 0.5.x/resource_pictures/thumbnail/96.gif create mode 100644 0.5.x/resource_pictures/thumbnail/97.gif create mode 100644 0.5.x/resource_pictures/thumbnail/98.gif create mode 100644 0.5.x/resource_pictures/thumbnail/99.gif create mode 100644 0.5.x/sitemap/sitemap.xml create mode 100644 0.5.x/sitemap/sitemap.xsl create mode 100644 0.5.x/stylesheets/peta.apps.css create mode 100644 0.5.x/stylesheets/peta.common.css create mode 100644 0.5.x/stylesheets/site.css create mode 100644 0.5.x/stylesheets/system.css create mode 100644 0.5.x/system_pictures/_w0.gif create mode 100644 0.5.x/system_pictures/_w0_b1.gif create mode 100644 0.5.x/system_pictures/_w1.gif create mode 100644 0.5.x/system_pictures/_w10.gif create mode 100644 0.5.x/system_pictures/_w10_b1.gif create mode 100644 0.5.x/system_pictures/_w11.gif create mode 100644 0.5.x/system_pictures/_w11_b1.gif create mode 100644 0.5.x/system_pictures/_w12.gif create mode 100644 0.5.x/system_pictures/_w12_b1.gif create mode 100644 0.5.x/system_pictures/_w13.gif create mode 100644 0.5.x/system_pictures/_w13_b1.gif create mode 100644 0.5.x/system_pictures/_w14.gif create mode 100644 0.5.x/system_pictures/_w14_b1.gif create mode 100644 0.5.x/system_pictures/_w15.gif create mode 100644 0.5.x/system_pictures/_w15_b1.gif create mode 100644 0.5.x/system_pictures/_w16.gif create mode 100644 0.5.x/system_pictures/_w16_b1.gif create mode 100644 0.5.x/system_pictures/_w17.gif create mode 100644 0.5.x/system_pictures/_w17_b1.gif create mode 100644 0.5.x/system_pictures/_w18.gif create mode 100644 0.5.x/system_pictures/_w18_b1.gif create mode 100644 0.5.x/system_pictures/_w19.gif create mode 100644 0.5.x/system_pictures/_w19_b1.gif create mode 100644 0.5.x/system_pictures/_w1_b1.gif create mode 100644 0.5.x/system_pictures/_w2.gif create mode 100644 0.5.x/system_pictures/_w20.gif create mode 100644 0.5.x/system_pictures/_w20_b1.gif create mode 100644 0.5.x/system_pictures/_w21.gif create mode 100644 0.5.x/system_pictures/_w21_b1.gif create mode 100644 0.5.x/system_pictures/_w22.gif create mode 100644 0.5.x/system_pictures/_w22_b1.gif create mode 100644 0.5.x/system_pictures/_w23.gif create mode 100644 0.5.x/system_pictures/_w23_b1.gif create mode 100644 0.5.x/system_pictures/_w2_b1.gif create mode 100644 0.5.x/system_pictures/_w3.gif create mode 100644 0.5.x/system_pictures/_w3_b1.gif create mode 100644 0.5.x/system_pictures/_w4.gif create mode 100644 0.5.x/system_pictures/_w4_b1.gif create mode 100644 0.5.x/system_pictures/_w5.gif create mode 100644 0.5.x/system_pictures/_w5_b1.gif create mode 100644 0.5.x/system_pictures/_w6.gif create mode 100644 0.5.x/system_pictures/_w6_b1.gif create mode 100644 0.5.x/system_pictures/_w7.gif create mode 100644 0.5.x/system_pictures/_w7_b1.gif create mode 100644 0.5.x/system_pictures/_w8.gif create mode 100644 0.5.x/system_pictures/_w8_b1.gif create mode 100644 0.5.x/system_pictures/_w9.gif create mode 100644 0.5.x/system_pictures/_w9_b1.gif create mode 100644 0.5.x/test/1.gif create mode 100644 0.5.x/test/activex.html create mode 100644 0.5.x/test/comic-html-structure.html create mode 100644 0.5.x/test/dynamic-comic-html.html create mode 100644 0.5.x/test/flip.svg create mode 100644 0.5.x/test/html2comic_0.1.html create mode 100644 0.5.x/test/index.html create mode 100644 0.5.x/test/pettanr.css create mode 100644 0.5.x/test/pettanr.xml create mode 100644 0.5.x/test/pettanr.xsl create mode 100644 0.5.x/test/svg.html create mode 100644 0.5.x/test/transform.html create mode 100644 0.5.x/test/type.html create mode 100644 0.5.x/test/useragent.html create mode 100644 0.5.x/test/vertical-center.html create mode 100644 0.5.x/wiki/wiki.css create mode 100644 0.5.x/wiki/wiki.js create mode 100644 0.5.x/wiki/wiki.xsl create mode 100644 0.5.x/work.html diff --git a/0.4.x/json/comics_2.json b/0.4.x/json/comics_2.json new file mode 100644 index 0000000..891945d --- /dev/null +++ b/0.4.x/json/comics_2.json @@ -0,0 +1,127 @@ +{ + "author":{ + "created_at":"2012-03-27T22:39:22Z", + "id":1, + "name":"火狐", + "updated_at":"2012-03-27T22:39:42Z", + "user_id":1 + }, + "author_id":1, + "created_at":"2012-03-27T23:16:46Z", + "editable":0, + "height":300, + "id":6, + "panels":[{ + "author_id":1, + "border":1, + "comic_id":6, + "created_at":"2012-04-01T05:54:30Z", + "height":200, + "id":1, + "resource_picture_id":null, + "t":1, + "updated_at":"2012-04-01T05:54:30Z", + "width":300, + "x":0, + "y":0, + "z":0, + "panel_elements":[{ + "resource_picture":{ + "id":1, + "ext":"png", + "width":200, + "height":200, + "artist": { + "api_url": null, + "author_id": 1, + "created_at": "2012-01-05T23:58:39Z", + "crowled_at": null, + "default_license_id": 1, + "email": null, + "homepage_url": null, + "id": 1, + "name": "no name", + "updated_at": "2012-01-05T23:58:39Z" + } + }, + "x":178, + "y":-2, + "z":0, + "t":0, + "width":166, + "height":252 + }, + { + "balloon_template_id":1, + "system_picture_id":1, + "size":1, + "tail":-14, + "x":-29, + "y":39, + "z":1, + "t":1, + "width":200, + "height":160, + "speeches_attributes":{ + "newf1":{ + "content":"Hello", + "x":-29, + "y":39, + "width":200, + "height":160 + } + } + } + ] + }, + { + "author_id":1, + "border":1, + "comic_id":6, + "created_at":"2012-04-01T06:43:27Z", + "height":200, + "id":2, + "resource_picture_id":null, + "t":2, + "updated_at":"2012-04-01T06:43:27Z", + "width":300, + "x":0, + "y":0, + "z":0 + }, + { + "author_id":1, + "border":1, + "comic_id":6, + "created_at":"2012-04-01T07:34:53Z", + "height":200, + "id":3, + "resource_picture_id":null, + "t":3, + "updated_at":"2012-04-01T07:34:53Z", + "width":300, + "x":0, + "y":0, + "z":0 + }, + { + "author_id":1, + "border":1, + "comic_id":6, + "created_at":"2012-04-01T07:38:00Z", + "height":200, + "id":4, + "resource_picture_id":null, + "t":4, + "updated_at":"2012-04-01T07:38:00Z", + "width":300, + "x":0, + "y":0, + "z":0 + } + ], + "title":"漫画王に俺はなる", + "updated_at":"2012-03-30T23:53:38Z", + "visible":3, + "width":400 +} \ No newline at end of file diff --git a/0.5.x/artwork/h2c.psd b/0.5.x/artwork/h2c.psd new file mode 100644 index 0000000000000000000000000000000000000000..25df4735a457b4eadfe9efe431784d02e9151667 GIT binary patch literal 112818 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 literal 0 HcmV?d00001 diff --git a/0.5.x/artwork/icons.ai b/0.5.x/artwork/icons.ai new file mode 100644 index 0000000..faffc04 --- /dev/null +++ b/0.5.x/artwork/icons.ai @@ -0,0 +1,1535 @@ +%PDF-1.5 %âãÏÓ +1 0 obj <>/OCGs[6 0 R 33 0 R 59 0 R 85 0 R 111 0 R 112 0 R 113 0 R 114 0 R 115 0 R 116 0 R 152 0 R 153 0 R 154 0 R 155 0 R 156 0 R 157 0 R 193 0 R 194 0 R 195 0 R 196 0 R 197 0 R 198 0 R]>>/Pages 3 0 R/Type/Catalog>> endobj 2 0 obj <>stream + + + + + application/pdf + + + プリント + + + + + 2011-11-24T15:10:02+09:00 + 2011-11-24T15:10:02+09:00 + 2011-11-24T14:08:01+09:00 + Adobe Illustrator CS5 + + + + 256 + 184 + JPEG + /9j/4AAQSkZJRgABAgEBLAEsAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABABLAAAAAEA AQEsAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAuAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FXYq7 FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7F XYqlur61DYKFAElw24jr0HicVRGnajBfwCWI0YbSRnqpxVFYq7FXYq7FXYq7FXYq7FXYq7FXYq7F XYq7FUs8waEus2Ytvr15YMpLJPYzvbyBipAqUI5AVrQ7Yq8Z/Jy31nzedXOreY9ZUWP1f0RBfzJX 1vV5cqlv99imKp959tfOXkSzi1/RfMF5f2Ecqx3djqbi5oH+yeZAPGvwn9rpvir0Xyn5gh8w+XbD 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 + + + + + + uuid:022ab66b-e1b9-5841-aa12-00953adae8b5 + xmp.did:02801174072068118083D08FD3576997 + uuid:5D20892493BFDB11914A8590D31508C8 + proof:pdf + + uuid:38a76846-ac7c-9f44-8199-201c9cdcb23f + xmp.did:E33589BC222068118C14A285928AACE0 + uuid:5D20892493BFDB11914A8590D31508C8 + proof:pdf + + + + + saved + xmp.iid:02801174072068118083D08FD3576997 + 2011-11-24T14:08:02+09:00 + Adobe Illustrator CS5 + / + + + + + + Document + Print + + + False + False + 1 + + 296.999959 + 210.001652 + Millimeters + + + + + KozMinPro-Medium + 小塚明朝 Pro + M + Open Type + Version 4.005;PS 4.003;hotconv 1.0.57;makeotf.lib2.0.21895 + False + KozMinPro-Medium.otf + + + + + + Cyan + Magenta + Yellow + Black + + + + + + 初期設定のスウォッチグループ + 0 + + + + ホワイト + RGB + PROCESS + 255 + 255 + 255 + + + ブラック + RGB + PROCESS + 35 + 24 + 21 + + + CMYK レッド + RGB + PROCESS + 230 + 0 + 18 + + + CMYK イエロー + RGB + PROCESS + 255 + 241 + 0 + + + CMYK グリーン + RGB + PROCESS + 0 + 153 + 68 + + + CMYK シアン + RGB + PROCESS + 0 + 160 + 233 + + + CMYK ブルー + RGB + PROCESS + 29 + 32 + 136 + + + CMYK マゼンタ + RGB + PROCESS + 228 + 0 + 127 + + + C=15 M=100 Y=90 K=10 + RGB + PROCESS + 195 + 13 + 35 + + + C=0 M=90 Y=85 K=0 + RGB + PROCESS + 232 + 56 + 40 + + + C=0 M=80 Y=95 K=0 + RGB + PROCESS + 234 + 85 + 20 + + + C=0 M=50 Y=100 K=0 + RGB + PROCESS + 243 + 152 + 0 + + + C=0 M=35 Y=85 K=0 + RGB + PROCESS + 248 + 182 + 45 + + + C=5 M=0 Y=90 K=0 + RGB + PROCESS + 250 + 238 + 0 + + + C=20 M=0 Y=100 K=0 + RGB + PROCESS + 218 + 224 + 0 + + + C=50 M=0 Y=100 K=0 + RGB + PROCESS + 143 + 195 + 31 + + + C=75 M=0 Y=100 K=0 + RGB + PROCESS + 34 + 172 + 56 + + + C=85 M=10 Y=100 K=10 + RGB + PROCESS + 0 + 145 + 58 + + + C=90 M=30 Y=95 K=30 + RGB + PROCESS + 0 + 105 + 52 + + + C=75 M=0 Y=75 K=0 + RGB + PROCESS + 19 + 174 + 103 + + + C=80 M=10 Y=45 K=0 + RGB + PROCESS + 0 + 162 + 154 + + + C=70 M=15 Y=0 K=0 + RGB + PROCESS + 46 + 167 + 224 + + + C=85 M=50 Y=0 K=0 + RGB + PROCESS + 3 + 110 + 184 + + + C=100 M=95 Y=5 K=0 + RGB + PROCESS + 23 + 42 + 136 + + + C=100 M=100 Y=25 K=25 + RGB + PROCESS + 23 + 28 + 97 + + + C=75 M=100 Y=0 K=0 + RGB + PROCESS + 96 + 25 + 134 + + + C=50 M=100 Y=0 K=0 + RGB + PROCESS + 146 + 7 + 131 + + + C=35 M=100 Y=35 K=10 + RGB + PROCESS + 164 + 11 + 93 + + + C=10 M=100 Y=50 K=0 + RGB + PROCESS + 215 + 0 + 81 + + + C=0 M=95 Y=20 K=0 + RGB + PROCESS + 230 + 22 + 115 + + + C=25 M=25 Y=40 K=0 + RGB + PROCESS + 201 + 188 + 156 + + + C=40 M=45 Y=50 K=5 + RGB + PROCESS + 164 + 139 + 120 + + + C=50 M=50 Y=60 K=25 + RGB + PROCESS + 122 + 106 + 86 + + + C=55 M=60 Y=65 K=40 + RGB + PROCESS + 96 + 76 + 63 + + + C=25 M=40 Y=65 K=0 + RGB + PROCESS + 201 + 160 + 99 + + + C=30 M=50 Y=75 K=10 + RGB + PROCESS + 178 + 130 + 71 + + + C=35 M=60 Y=80 K=25 + RGB + PROCESS + 149 + 97 + 52 + + + C=40 M=65 Y=90 K=35 + RGB + PROCESS + 127 + 79 + 33 + + + C=40 M=70 Y=100 K=50 + RGB + PROCESS + 106 + 57 + 6 + + + C=50 M=70 Y=80 K=70 + RGB + PROCESS + 64 + 34 + 15 + + + + + + グレースケール + 1 + + + + C=0 M=0 Y=0 K=100 + RGB + PROCESS + 35 + 24 + 21 + + + C=0 M=0 Y=0 K=90 + RGB + PROCESS + 62 + 58 + 57 + + + C=0 M=0 Y=0 K=80 + RGB + PROCESS + 89 + 87 + 87 + + + C=0 M=0 Y=0 K=70 + RGB + PROCESS + 114 + 113 + 113 + + + C=0 M=0 Y=0 K=60 + RGB + PROCESS + 137 + 137 + 137 + + + C=0 M=0 Y=0 K=50 + RGB + PROCESS + 159 + 160 + 160 + + + C=0 M=0 Y=0 K=40 + RGB + PROCESS + 181 + 181 + 182 + + + C=0 M=0 Y=0 K=30 + RGB + PROCESS + 201 + 202 + 202 + + + C=0 M=0 Y=0 K=20 + RGB + PROCESS + 220 + 221 + 221 + + + C=0 M=0 Y=0 K=10 + RGB + PROCESS + 239 + 239 + 239 + + + C=0 M=0 Y=0 K=5 + RGB + PROCESS + 247 + 248 + 248 + + + + + + ビビッド + 1 + + + + C=0 M=100 Y=100 K=0 + RGB + PROCESS + 230 + 0 + 18 + + + C=0 M=75 Y=100 K=0 + RGB + PROCESS + 235 + 97 + 0 + + + C=0 M=10 Y=95 K=0 + RGB + PROCESS + 255 + 226 + 0 + + + C=85 M=10 Y=100 K=0 + RGB + PROCESS + 0 + 154 + 62 + + + C=100 M=90 Y=0 K=0 + RGB + PROCESS + 11 + 49 + 143 + + + C=60 M=90 Y=0 K=0 + RGB + PROCESS + 126 + 49 + 142 + + + + + + + + + Adobe PDF library 9.90 + + + + + + + + + + + + + + + + + + + + + + + + + endstream endobj 3 0 obj <> endobj 8 0 obj <>/Resources<>/ExtGState<>/Font<>/ProcSet[/PDF/Text]/Properties<>>>/Thumb 204 0 R/TrimBox[0.0 0.0 841.89 595.28]/Type/Page>> endobj 200 0 obj <>stream +H‰ìVۊA }ﯨèL.uñaG/Ëø(2¬—ÅÝõ‚ïIu;Ó;Ί(‚,Û5]¤’““¤VOÖaõhÍáäÞ: «õ‡íu`*µú³éü ×ÛwÃêéùÕöüýÇO/ކ«7Ãê¤_]‚ƟI™Š¶,V²ba{9ø—Ëa”BYs5¼ÅF¤ÚjèKÃFJ$*¡Fjâ…‰5ô§àõõðr8\ŸsðlýxPÊ%|#øþŽgnÆý;ƒ÷9Š¦2ašáÐÂ-‰Ìb +Q™Z²¼ðD9Œ&p¯u³cVjŏpÓ{P'1³`©P«Úö&`aaà}­…Ô f­QŽ"{}K=˜ÛäK#`Ê/C×)t&‹-,ŸFG¶=yb7‘’$ÔZMA-QÌË0çÀúb8ÿ䆿’˜j>ڐk­r ¨ dO<·ÉóƒF£œcPΤ€  XÊn½:žåh¥ì‰8iÃ÷ îœA†AFA²ÆÈ@8†±#°6ª9ïÞ· ¥8¹Û^  Ä)$€®ÄF– Áapʕ’v{¼Î9p½Q1erøê2 úFÈeÈà[Í؈™RµðÙKÄ-`g"å²°ƒâdf·ÁýØùå{tb"*ª»žwÑͯP˜ÃŸ7ø»"ws^÷·Ôûcþcý§XO]ìt/£ ãBÑp֚I±ª7ÓT— fc }ÉG: *9¡yúõ½±¯õHK‰Sažl0ø¹Û¼2wÃXâ„bÍSe-l.‡;Ìjw7Ãý *ڀµD´O­@ì  ó¯4Ò ’ü$°D¬.º/¾0HQˆ[D 9u®³‡$L©`,mà&@䊴Z¦Œõó Y: FôwËŽ’ÂÁçT`þ5Œ§eU7„¡…VgowôM̱º˜¿X8ÿHL·Ú4‘ãt‘eïÛW»os$Œ¡‡ÃM¥.ç4U0­×#j×P•~}ˆ>tp%i=^MY‘¨~ +±”äaè²÷ é%€ ‡zç@S0bÇÆ+˜S_3ˆ ÀmëgIý†˜{‹iШž)ޕ ï¸ý4õª€ôfúÿáX—”8=hÂìW¶©¹í^"¼çŠ[ žV;·Š2·ŠÎ¬o ÐC,Ÿ endstream endobj 204 0 obj <>stream +8;Z]!d1*u9$q(>0+7GDA]FX0F&rFe5mj\H3&J&pc'-fqC'Lbn!,RK&C:fS=- +#UQGgWU^rcU`Yu!%U]a^EfNdX]nMD9h87iDGp.dGB]SCP])RcP\;9,E6BJK7a))1m +9i+*$RICZ2mB?b7cb?QTIG48m0[O0-!D4X%LU:+R4Yb2J!-p$4e8>K4)(XC2lIMBJ!U2psdOES^ +@E$M1P`mB"F]#Vc]a'GD*4SLLTRGDU:Q$ZoBVd[bf\[(eT4-JKFu:HfgMaFeBEWmo +!$UfST&sr(!/HjcgrVo\'Lbk578Y`1)ZU<%#"\~> endstream endobj 205 0 obj [/Indexed/DeviceRGB 255 206 0 R] endobj 206 0 obj <>stream +8;X]O>EqN@%''O_@%e@?J;%+8(9e>X=MR6S?i^YgA3=].HDXF.R$lIL@"pJ+EP(%0 +b]6ajmNZn*!='OQZeQ^Y*,=]?C.B+\Ulg9dhD*"iC[;*=3`oP1[!S^)?1)IZ4dup` +E1r!/,*0[*9.aFIR2&b-C#soRZ7Dl%MLY\.?d>Mn +6%Q2oYfNRF$$+ON<+]RUJmC0InDZ4OTs0S!saG>GGKUlQ*Q?45:CI&4J'_2j$XKrcYp0n+Xl_nU*O( +l[$6Nn+Z_Nq0]s7hs]`XX1nZ8&94a\~> endstream endobj 193 0 obj <> endobj 194 0 obj <> endobj 195 0 obj <> endobj 196 0 obj <> endobj 197 0 obj <> endobj 198 0 obj <> endobj 217 0 obj [/View/Design] endobj 218 0 obj <>>> endobj 215 0 obj [/View/Design] endobj 216 0 obj <>>> endobj 213 0 obj [/View/Design] endobj 214 0 obj <>>> endobj 211 0 obj [/View/Design] endobj 212 0 obj <>>> endobj 209 0 obj [/View/Design] endobj 210 0 obj <>>> endobj 207 0 obj [/View/Design] endobj 208 0 obj <>>> endobj 192 0 obj <> endobj 219 0 obj [220 0 R] endobj 220 0 obj <> endobj 221 0 obj <> endobj 222 0 obj <> endobj 223 0 obj <>stream +H‰j0 endstream endobj 224 0 obj <>stream +H‰|P]HQÑv&uÒÜiÀü™¹š?„¬®>”ÒK®`h-‰[AÈè^IwFfwe Ä%ˆõW*%zh]ÝZ ¢Bˆ"µz z |)}ðáÎî]¡!ˆ‚¾§sÎ÷qÎá#‰#iI’yíÎæëmÎʋêSVZ5Õæ„nÙï1wõz^8Áðz©ó ‡;ðBr?ùÁ·§ïO0 +S2:SDŒ ¿ËÖ sô²\½˜)K˜R‚2¼ Š`ˆ/Äw"Ežlp«°Eì•šFµP“{$¨©¯?k«µÛëÀḽ>èñ‚f¥KÕúUMôAwhèëmæ½´A/ÔLÑhëïÑ¸KRìPöIP"Ð`lØhÐ |šè†Qëªö'éþO`8«Šl2—Ͻ@TÜՆ‡z˜Ñ¥úŸ&CoUu“ëÊ`?uÀ »ÿ~ íT &wý£Ðóɪ"öƜ"*ãÛDºù³ËÄéÄL<™'÷â‰Öxúf¸D48ˆRziªƒÃ›ºÍ’8NáåÔ5™äà }`ï<Äh3ep{b36Y¶ŽCé9úC+1)bEÔO4¸Û´ÏúÙUD¡£œ#8âàY¿„¢ôîëù•aiéው|”Q±Mð£4;€¬Þ~ÜÉé]ë~ÌGÚ]a{£XDo‡ƒ ‚qкÅ!òIKÓ9сs„‹h’ZŸ^ä×ñ7Žõ£ô÷7ŠKà%L +ç)OpjU@ t¶ EÐv ­ÿnÕ°ÆþÐ9ý.W;|»ƒÇYhŒŠO>åO½º7‚Ó…u ±¤nRìW‰Þš +:„Ô4Ýhö—Ðb„®¹3ùI@AÄбé‘Ja SÙDIfäêSþ ¶ê€)ŸO,Xñx¨ÐÒ¢â™ñ¬Q&78˜K Íáð,‚³ÏBžŸ¡—3w²~ 0s¿Lç endstream endobj 203 0 obj <> endobj 202 0 obj [/ICCBased 225 0 R] endobj 225 0 obj <>stream +H‰œ–yTSwÇoɞ•°Ãc [€°5la‘QIBHØADED„ª•2ÖmtFOE.®c­Ö}êÒõ0êè8´׎8GNg¦Óïï÷9÷wïïÝß½÷ó '¥ªµÕ0 Ö ÏJŒÅb¤  + 2y­.-;!à’ÆK°ZÜ ü‹ž^i½"LÊÀ0ðÿ‰-×é @8(”µrœ;q®ª7èLöœy¥•&†Qëñq¶4±jž½ç|æ9ÚÄ +V³)gB£0ñiœWו8#©8wÕ©•õ8_Å٥ʨQãüÜ«QÊj@é&»A)/ÇÙgº>'K‚óÈtÕ;\ú” Ó¥$ÕºF½ZUnÀÜå˜(4TŒ%)뫔ƒ0C&¯”阤Z£“i˜¿óœ8¦Úbx‘ƒE¡ÁÁBÑ;…ú¯›¿P¦ÞÎӓ̹žAü om?çW= +€x¯Íú·¶Ò-Œ¯Àòæ[›Ëû0ñ¾¾øÎ}ø¦y)7ta¾¾õõõ>j¥ÜÇTÐ7úŸ¿@ï¼ÏÇtܛò`qÊ2™±Ê€™ê&¯®ª6ê±ZL®Ä„?â_øóyxg)˔z¥ÈçL­UáíÖ*ÔuµSkÿSeØO4?׸¸c¯¯Ø°.òò· åÒR´ ߁Þô-•’2ð5ßáÞüÜÏ ú÷Sá>Ó£V­š‹“då`r£¾n~ÏôY &à+`œ;ÂA4ˆÉ 䀰ÈA9Ð=¨- t°lÃ`;»Á~pŒƒÁ ðGp| ®[`Lƒ‡`<¯ "A ˆ YA+äùCb(Š‡R¡,¨*T2B-Ð +¨ꇆ¡Ðnè÷ÐQètº}MA ï —0Óal»Á¾°ŽSàx ¬‚kà&¸^Á£ð>ø0|>_ƒ'á‡ð,ÂG!"F$H:Rˆ”!z¤éF‘Qd?r 9‹\A&‘GÈ ”ˆrQ ¢áhš‹ÊÑ´íE‡Ñ]èaô4zBgÐ×Á–àE#H ‹*B=¡‹0HØIøˆp†p0MxJ$ùD1„˜D, V›‰½Ä­ÄÄãÄKÄ»ÄY‰dEò"EÒI2’ÔEÚBÚGúŒt™4MzN¦‘Èþär!YKî ’÷?%_&ß#¿¢°(®”0J:EAi¤ôQÆ(Ç()ӔWT6U@ æP+¨íÔ!ê~êêmêæD ¥eÒÔ´å´!ÚïhŸÓ¦h/èº']B/¢éëèҏӿ¢?a0nŒhF!ÃÀXÇØÍ8Åøšñ܌kæc&5S˜µ™˜6»lö˜Iaº2c˜K™MÌAæ!æEæ#…僰d¬VÖë(ëk–Íe‹Øél »—½‡}Ž}ŸCâ¸qâ9 +N'çÎ)Î].ÂuæJ¸rî +î÷ wšGä xR^¯‡÷[ÞoƜchžgÞ`>bþ‰ù$á»ñ¥ü*~ÿ ÿ:ÿ¥…EŒ…ÒbÅ~‹ËÏ,m,£-•–Ý–,¯Y¾´Â¬â­*­6X[ݱF­=­3­ë­·YŸ±~dó ·‘ÛtÛ´¹i ÛzÚfÙ6Û~`{ÁvÖÎÞ.ÑNg·Åî”Ý#{¾}´}…ý€ý§ö¸‘j‡‡ÏþŠ™c1X6„Æfm“Ž;'_9 œr:œ8Ýq¦:‹ËœœO:ϸ8¸¤¹´¸ìu¹éJq»–»nv=ëúÌMà–ï¶ÊmÜí¾ÀR 4 ö +n»3Ü£ÜkÜGݯz=Ä•[=¾ô„=ƒ<Ë=GTB(É/ÙSòƒ,]6*›-•–¾W:#—È7Ë*¢ŠÊe¿ò^YDYÙ}U„j£êAyTù`ù#µD=¬þ¶"©b{ųÊôÊ+¬Ê¯: !kJ4Gµm¥ötµ}uCõ%—®K7YV³©fFŸ¢ßY Õ.©=bàá?SŒîƕƩºÈº‘ºçõyõ‡Ø Ú† žkï5%4ý¦m–7Ÿlqlio™Z³lG+ÔZÚz²Í¹­³mzyâò]íÔöÊö?uøuôw|¿"űN»ÎåwW&®ÜÛe֥ﺱ*|ÕöÕèjõê‰5k¶¬yÝ­èþ¢Ç¯g°ç‡^yïkEk‡Öþ¸®lÝD_p߶õÄõÚõ×7DmØÕÏîoê¿»1mãál {àûMśΠnßLÝlÜ<9”úO¤[þ˜¸™$™™üšhšÕ›B›¯œœ‰œ÷dÒž@ž®ŸŸ‹Ÿú i Ø¡G¡¶¢&¢–££v£æ¤V¤Ç¥8¥©¦¦‹¦ý§n§à¨R¨Ä©7©©ªª««u«é¬\¬Ð­D­¸®-®¡¯¯‹°°u°ê±`±Ö²K²Â³8³®´%´œµµŠ¶¶y¶ð·h·à¸Y¸Ñ¹J¹Âº;ºµ».»§¼!¼›½½¾ +¾„¾ÿ¿z¿õÀpÀìÁgÁãÂ_ÂÛÃXÃÔÄQÄÎÅKÅÈÆFÆÃÇAÇ¿È=ȼÉ:ɹÊ8Ê·Ë6˶Ì5̵Í5͵Î6ζÏ7ϸÐ9кÑ<ѾÒ?ÒÁÓDÓÆÔIÔËÕNÕÑÖUÖØ×\×àØdØèÙlÙñÚvÚûۀÜ܊ÝݖÞÞ¢ß)߯à6à½áDáÌâSâÛãcãëäsäüå„æ æ–çç©è2è¼éFéÐê[êåëpëûì†ííœî(î´ï@ïÌðXðåñrñÿòŒóó§ô4ôÂõPõÞömöû÷Šøø¨ù8ùÇúWúçûwüü˜ý)ýºþKþÜÿmÿÿ ÷„óû endstream endobj 201 0 obj <> endobj 226 0 obj <> endobj 227 0 obj <>stream +%!PS-Adobe-3.0 %%Creator: Adobe Illustrator(R) 13.0 %%AI8_CreatorVersion: 15.0.2 %%For: (\611\746\621\634\617\610\627\635\610\763\615\774\611\71001) () %%Title: (icons.ai) %%CreationDate: 11/11/24 15:10 %%Canvassize: 16383 %%BoundingBox: 121 -408 488 -144 %%HiResBoundingBox: 121.688 -407.6768 487.1172 -144.5737 %%DocumentProcessColors: Cyan Magenta Yellow Black %AI5_FileFormat 9.0 %AI12_BuildNumber: 399 %AI3_ColorUsage: Color %AI7_ImageSettings: 0 %%RGBProcessColor: 0 0 0 ([レジストレーション]) %AI3_TemplateBox: 421.5 -298.5 421.5 -298.5 %AI3_TileBox: 17.9448 -577.1406 800.9453 -18.1401 %AI3_DocumentPreview: None %AI5_ArtSize: 14400 14400 %AI5_RulerUnits: 1 %AI9_ColorModel: 1 %AI5_ArtFlags: 0 0 0 1 0 0 1 0 0 %AI5_TargetResolution: 800 %AI5_NumLayers: 6 %AI9_OpenToView: 251.25 -159.75 4 1872 925 26 0 0 121 363 0 0 1 1 1 0 1 %AI5_OpenViewLayers: 777777 %%PageOrigin:115 -694 %AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9 %AI9_Flatten: 1 %AI12_CMSettings: 00.MS %%EndComments endstream endobj 228 0 obj <>stream +%%BoundingBox: 121 -408 488 -144 %%HiResBoundingBox: 121.688 -407.6768 487.1172 -144.5737 %AI7_Thumbnail: 128 92 8 %%BeginData: 7166 Hex Bytes %0000330000660000990000CC0033000033330033660033990033CC0033FF %0066000066330066660066990066CC0066FF009900009933009966009999 %0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66 %00FF9900FFCC3300003300333300663300993300CC3300FF333300333333 %3333663333993333CC3333FF3366003366333366663366993366CC3366FF %3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99 %33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033 %6600666600996600CC6600FF6633006633336633666633996633CC6633FF %6666006666336666666666996666CC6666FF669900669933669966669999 %6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33 %66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF %9933009933339933669933999933CC9933FF996600996633996666996699 %9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33 %99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF %CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399 %CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933 %CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF %CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC %FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699 %FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33 %FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100 %000011111111220000002200000022222222440000004400000044444444 %550000005500000055555555770000007700000077777777880000008800 %000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB %DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF %00FF0000FFFFFF0000FF00FFFFFF00FFFFFF %524C45FDFCFFFDFCFFFD66FFA87DA87DA87DA87DFD78FFA87D27277DA87D %7D277DFD37FFA8FD40FF5252FD04FF7D277DFD35FF84A87DA8FD3EFF2752 %A8FFFFFFA85227FD34FFFD05A8FD3EFF5252FD05FF5252FD33FF7DFD07A8 %FD12FFA8FD13FFA8FD15FF2752FD04FFA82752FD32FFFD09A8FD11FF7DFD %13FFA8A8A8FD14FF5252FFFFFFA85252FD32FF7DA8A8A87DA8A8A87DA8A8 %FD0FFFA8A8A8FD13FF7DA8A8FD13FF52527D7D52527DFD32FFFD0BA8FD0F %FFA8A8A8FD15FFA8A8FD13FF5252A87DA87D7D7DFD30FFFD0AA884FD0FFF %A8A8A8FD16FFA884A8FD12FF5252FD04FF7D2752FD2EFFFD0BA8FD10FFA8 %A8FD17FFA8A8A8FD12FF5252FD05FF5252A8FD2CFF84A87DA8A8A87DA8A8 %A87DFD10FFA87DA8FD18FFA8A8A8FD11FF2752A8FD04FF7D277DFD2BFFFD %0BA8FD11FFA8A8FD1AFFA8A8A8FD10FF5252FD05FF7D527DFD2AFF7DFD0A %A8FD11FFA8A8A8FD06FFFD0EA8FD07FFA8A8A8FD0FFF2752FD05FF5227FD %2AFFFD0BA8FD11FFA8A8A8FD07FFFD0EA8FD08FFA8A8FD0EFFA85227FFFF %FFA87D27A8FD29FF7DA8A8A87DA8A8A87DA8A8FD11FFA8A87DFD09FFA8FF %FFFFA8FFFFFFA8FD0BFFA8A87DFD0DFF7D5227FD0652A8FD29FFFD0BA8FD %13FFA8FD1FFFA8A8A8FD15FFA8A8A8FD26FFFD0AA884FD13FF7DA8A8FD1F %FFA8A8A8FD13FFFD04A87DFD04A8FD20FFFD0BA8FD14FFA8A8FD1FFFA8A8 %A8FD14FFFD0BA8FD1DFF84A87DA8A8A87DA8A8A87DFD15FFA8A87DFD0BFF %A8FFFFFFA8FFFFFFA8FD09FFA8A87DFD15FF84A87DA8A8A87DA884A8A8FD %1CFFFD0BA8FD17FFA8A8A8FD07FFFD0EA8FD08FFA8FD15FFFD09A8FD1EFF %7DFD0AA8FD19FFA8A8A8FD06FFFD0EA8FD07FFA8A8A8FD13FFFD07A8FD20 %FFFD0BA8FD1BFFA8A8FD1AFFA8A8A8FD15FFFD07A8FD1EFF7DA8A8A87DA8 %A8A87DA8A8FD1CFFA87DA8FD18FFA8A8A8FD15FFA8A87DA8A8A87DA8A8FD %1CFFFD0BA8FD1EFFAFA8FD18FFA8A8FD16FFFD0AA8FD1AFFFD0AA884FD1F %FFA8A8A8FD16FFA884A8FD15FFFD0CA8FD18FFFD0BA8FD21FFA8A8A8FD15 %FFA8A8FD16FFA8FFFFFD0AA8AFA8FD14FFA8A87DA8A8A87DA8A8A87DFD23 %FF7DA8A8FD13FF84A8A8FD15FFA8A8FFFFA8A87DA8A8A87DA8A8A87DFD04 %A8FFA8FD10FFFD09A8FD25FFA8FD13FFAFA8A8FD1AFFFD12A8FFA8FFA8FD %0AFFFD09A8FD3BFFA8FD1BFFFD12A884A8A8A87DA8A8A8FD06FFFD08A8FD %59FFFD19A8FD06FF7DA8A8A87DA8A8FD59FFFD04A87DA8A8A87DA8A8A87D %A8A8A87DA8A8A87DA8A8A87DA8FD06FFFD04A8FFA8FD5BFFFD19A8FD06FF %A8FD5FFFFD1AA8FD67FFFD19A8FD67FFA87DA8A8A87DA8A8A87DA8A8A87D %A8A8A87DA8A8A87DA8A8A8FD67FFFD19A8FD68FF7DA8A8A87DA8A8A87DA8 %A8A87DA8A8A87DA8A8A87DA8A8A8FD69FFA8FFA8FFA8FFA8FFA8FFA8FFA8 %FFA8FFA8FFA8FFA8FFA8FD32FFFD23A8FD0BFFA8A8A8FD4FFFFD24A8FD09 %FFFD04A8FD4EFFA87DFD22A8FD09FFFD05A8FD4EFFFD24A8FD0AFFFD05A8 %FD4CFFFD04A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A8 %7DA8A8A87DA8A8A87DFD09FFA8A87DA87DA8FD4DFFFD24A8FD0AFFFD05A8 %FD4CFFFD24A87DFD09FFFD07A8FD09FFA8FD41FFFD26A8FD09FFFD06A8FD %08FFA8A8A8FD18FFA87D52A8FD13FF7D527DA8FD0DFFA8A87DA8A8A87DA8 %A8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DA884FD %09FFFD04A87DFD04A8FFFFFFA8A884A8A8FD19FF7D275227A8FD11FF7D27 %52277DFD0DFFFD26A8FD09FFFD07A8FFFFFFFD05A8FD1AFF27522752277D %FD0FFF7D2752275252FD0DFFFD25A8FD0BFFFD06A884FD08A8FD19FF7D27 %522752277DFD0DFF7D27522752277DFD0CFFFD27A8FD09FFFD0FA8FD1AFF %A87D27522752277DFD0BFF7D27522752277DFD0EFF7DA8A8A87DA8A8A87D %A8A8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DA8A8 %A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DFD04A8FD1DFF7D2752525227 %A8FD09FF7D27525252277DFD0EFFFD09A8FFFD0DA8FFFD0FA8FFFD14A87D %7D7DA87DA87DA87DA87DA87DA87DA8A8FD0FFF7D27522752277DFD07FF7D %27522752277DFD10FF7DFD08A8FFFFA87DFD08A8FFFFFF7DFD0BA87DFFFF %FFFD13A87D525227272752275227522752272727A8FD10FF7D2752525227 %A8FD05FF7D27525252277DFD10FFFD09A8FD04FFFD08A8FFFFFFFD0FA8FF %FFFFA8FFFD11A8FFA85252527DFD07FF7D527DFD11FF7D27522752277DFF %FFFF7D27522752277DFD12FF7DA87DA8A8A87DA8A8FFFFFFA8A87DFD04A8 %FFFFFFFD04A87DA8A8A87DA8A8A87DA884FD07FFA8A87DA8A8A87DA8A8A8 %7DA8A8A87DA8FFFF2752277DFD08FF277DFD12FF7D2752525227A8FF7D27 %525252277DFD13FFFD0AA8FD04FFAFA8A8A8FD04FFFD10A8FD09FFFD0CA8 %FFFFFF5252527DFD08FF7D52FD13FF7D27522752275227522752277DFD14 %FFFD0BA8FFFFFFA8A8A8FFFFFFA8A87DFD0EA8FD0DFFFD04A87DFD04A8FF %FFFF5252277DFD08FF7D52A8FD13FF7D2752275252522752277DFD15FFFD %0CA8FD08FFFD11A8FD12FFA8A8A8FD04FF5227527DFD09FFA8FD15FF7D27 %5227522752277DFD16FFFD04A87DA8A8A87DFD04A8FD05FFA8A87DA8A8A8 %7DA8A8A87DA8A8A87DA8A8A87DFD13FFA8FD05FF525227A8FD20FF522752 %5252277DFD18FFFD0DA8FD04FFFD13A8FD19FF5227527DFD1FFF7D275227 %522752277DFD16FFFD0DA8FD06FFA87DFD0FA87DFD19FF525227A8FD05FF %7D27FD17FF7D275252522752525227A8FD16FFFD0BA8FD08FFFD12A8FD18 %FF5252527DFD05FF7D52FD16FF7D27522752275227522752277DFD15FFA8 %7DA8A8A87DFD04A8FFFFFFA8A8A8FFFFFFA8A87DA8A8A87DA8A8A87DA8A8 %A87DA884FD19FF275227A8FD05FF7D27FD15FF7D27525252277DFF7D2752 %525227A8FD14FFFD09A8FD04FFFD04A8FD04FFAFFD0FA8FD18FFFD0452A8 %7DA87D7D5252FD14FF7D27522752277DFFFFFF7D27522752277DFD14FFFD %07A8FFFFFFA8A87DFD04A8FFFFFFFD0FA8FD19FF52522752275227522752 %52FD13FF7D27522752277DFD05FF7D27522752277DFD14FFFD05A8FD04FF %FD08A8FFFFFFFD0EA8FD19FF5227527DFD05FF5252FD12FF7D2752275227 %7DFD07FF7D27522752277DFD13FFA87DFD04A8FFA8A87DA8A8A87DFD04A8 %FFFFA87DA8A8A87DA8A8A87DA8A8A87DFD19FF525227A8FD05FF7D27FD11 %FF7D27525252277DFD09FF7D2752525227A8FD14FFFD20A8FD19FF522752 %7DFD05FF7D52FD10FF7D27522752277DFD0BFF7D27522752277DFD12FFFD %20A87DFD19FF525227A8FD05FFA852FD0FFFA827525252277DFD0DFF7D27 %52525227A8FD11FFFD22A8FD18FF5252527DFD16FF52272752277DFD0FFF %7D275227277DFD10FFA884A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87DA8 %A8A87DA8A8A87DA8A8A87DA884FD19FF2752277DFD16FFA82752277DFD11 %FF7D275227FD11FFFD23A8FD18FF5252527DFD17FFA852A8FD13FF7D7DA8 %FD0FFFA87DFD22A8FD19FF5252277DFD3DFFFD26A8FD19FF5227527DFD3E %FFA8FFA8FFA8FFFFFFA8FFA8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87D %A8A8A87DA8A8A87DFD19FF525227A8FD49FFFD1AA8FD18FFA85252527DFD %4AFFFD18A87DFD16FF7D52522727275252527DFD4AFFFD17A8FD15FFA87D %7DA87DA87DA87DA8FD4BFFA8A87DA8A8A87DA8A8A87DA8A8A87DA8A8A87D %A884FD6EFFFD13A8FD6EFFA8FFFD0FA8FDFCFFFDFCFFFDFCFFFD36FFFF %%EndData endstream endobj 229 0 obj <>stream +%AI12_CompressedDataxœì½ëŽdɑ&öçB?`/PYÇï@Ddä,g‹ì›Í%EŽɪìfÍÔmêBNþhÙú1 @‚¤Õ XiG‚@ÚVz™‚V¯!»»ŸYY]-avTéݕ™–'ÜýøÅÌÜì3ó?ú>ûüÞöÑóßÜÜ ófú£?Ú¿¼¹~ýüå7DÝüèɓ7¯^¿DÒ~úÉÆÁSðÐöGõKyðç7/_=~þ쇗.æ ¼ÂOÿà×Ù¹_—˜½ûu~/ðÿ ¿Ã÷èç’|O¿.%òónžÝ'›|Õüìñë'7PÑã‡ÏŸ½º¸~ü‰vZ»¼~ rî>üç#4ýC‡ÝÚ_?ûÝõ«Wÿ +ÿ˜C @Û=óìÑãg_ïžÿ%½Û܋sÝÄZ7÷\ŒðÀ?yüӛWë§.2>çr‘KÆÇ˅sÅÓg.R >xùüᛧ7Ï^öòùÛW¯öϟ<ùꇛý7×Ï6?¾þþr½ùå͓'Ï¿Ù=¹~øçÃG®ž?{ þÓçõãÇÏàó÷~|óèñ›§÷jxñ»{?ý§Ÿÿɽ2<ý“››G7îô™íÒ—WŸÜÀ<½~½i8[Û9ÿåîÍã'~òæéon`rBkH_RŸ¿x…~ãÏH._þè)P>¿yýFšÄ¡ýéïÆ÷"•üêí·ÿóÛ?ü›·ø»·ßþ5þüí¿}û‡ÿýí·ÿòí·û§Ÿp+?»yúâ Ì n„ÁM›{¾Uø6þ"ÏBçyÊE‹&!û8çMg ¥“P‘âø}n~÷øæ÷?Üüäù³‰íËןÓb¨Ñ]ÔÚò&µtáëøï?}óäæåÏã¸RmGäÇÏÝ<Õrõäš‚Šëÿò?»~ùõÍkXEϟ¼yM{ºÊ‚pýÍ ®‹Ì |úâæÙϞÿœzꓻððþ.µ‹£±qÖX’Ïܬאƒ4è¨Qéփµhõ…¾`¦>ƒ¹ûôåã¯?û¡sPyn‘gõ_>~Ô'ªü½ÉEþoú?wÞþõë›g2 °˜ö?Ç|ñãÏ¡ÙóGûçOq"^á®»ùšé“ç_óßìgú |ü͋éWSh÷ÿâÍó×7¯ ®'7›–ïýòúw7ðÞõþöÑ㛗ð—W÷·/áÏ÷÷a½?yr}ÿpýðÍë›û?y +úæþ§úØtÿ ûÄ5?rMµÝ¿~øø%¬‘¯žÜüåýëþ þš*¨•ßÐ'§û7üћá£7öÑÇ\ýc~æñðÌc{æU?ÝÎÏ>çgŸÏ>·gŸsWÞð£oøÑ7ýÑéþ{öÑõ×_ß¼¼ÿ:xssÿ!Œ÷ýW¯o^>Á·xuó×ßýß¼yòäæõý×/q^üö>|âéõ³G¿y£ô&?qóèþÃç/¾•òÛ×÷Ã?ºyzýòÏïs¬¹‹gÏ_?ºùêþöpÿÓWO®_ýv2Ò  O?{ÓÒïßÜ<»ÿô͚<=§ßŸ¿|ôÕ TõøÙ þüôúÕÃ7Oð}àèÒú_¼¹y…/ùèùïŸÝ¿ùˇO®ŸÒ°º?¼~°O}[ùñ³ãn| ¼ðÉÍÓç _¾zÝ㑆ýø¾ù«×oîoy2¶²ØäÛáþs\#ÏA—îß<¥o´aˆ©Rý…ë¤ß:‰ÿî1.4ó_ÚO_½¼æ=¼yùœzJ;ÅúM¿QuÓý¯à Ëò€–ï¿€vž?ÂBsÝ÷Ùo®_ÝXéxôõoŸ¿yKdº¿–èaøyË+ã`;ðÐüˆé?—ëì¡ñCŸòCŸõé{ÊO|ÁO|1VóÿéΈõûçy"ž^?|‰ëX?=vý6oiÞÑÓýß¾yöõõË7OŸ\¿y û¤ÃŸßx Ÿ›~v ^šþä˟½ÒEGø’ØÔáÙÃç¨üpóåmb÷v™ü«û·~øþ­5³œùÙĝ>ª]bõìgß¼¸™~å²~R3܇q½ù‹7×Oà—|ÿñ³¯`_½þfØ­8–ô0[P§`¢ð—ÉU‡›˜ÆëÇ×O=þê«û0(OIߺÿâåóGoKy 5¾FæÕ×vÿÓ§7__o&×Ò}à ¸7®•û×/à)½hõþåÍP†¼‹²êa·þÕͳ¯o6>ÎøðØ_~þÍÓß<òå}þ.–_=ñ|| óóL.Šžé'/&ÒC?{òþôÇ/Ÿ¿yñ£g_=Ÿ~ÀŠëÏ`ëà8}ú›?®:å¯ý¾Æ~ ý€ïîWøË/à/òèço¿¾EóÅ'·V Òðå͆ÿ¦_õû»?}yó¨fýãLŞü1÷Íüþ—ÒÑdýýd‡ß?Åöú)¨ëðìw7Ož¿¸ÙÀ>Þü³ë—/ÞݝϞ\?»~¹!ú¢7ÚÕÿÿùfќæí]zð¤ùg×0ewè è1/P‚ýN‡wÕ¯[þt‡†®_ÿTr`߯ïüfXö’¿½ÛKruïnûó‡¨K½Üì^¾yõÛÍϞ?2tÁå/ ÊôWcg¨ÉŸ¿»R1ՋÕþ{ՕÏèÏ>}ÆSsªCsxÿüǶ!t‚Þ·w Îÿƒè<}{¯¶Ö¡¯ÿÿ֛ý5hq¤ú>~x®C"íykOÿì¾K/¹Ý÷ك$ë¿zºèÚÏÇUôŸH‹Xÿg(œ>¹ùüÐàŸÞV=NHþG°¿I®YýpH{ÆŽÍ翽~qCu¾þí=ù¹U˜PÕ¥í½{“Ûìž ²øQރ²õÃ;xöìúéÍ£Í×Búd:&(÷›Ý#8óý‡ÓŒ_ðR3œêç2·y e7ïçÃ|åfçàÔ\­¦€NÒÜÖíÜ%”ƒ»ò3̗÷Ñ'Ÿ}ñÕoýÎï'éP®Â|!†J¨¡…m؅}¸ ‡p¡Æècˆ1¦˜c‰5nã.îãe<¤9¹ä|,ŔR™RM-mÓ.íÓeºÊsvÙçás9£A(·¼Ëû|™ùªÌÅ_BI%Ó¼–V¶eWöå²\Õ¹ºê§j¬©æZjƒ²­ûzYõªÍ͵ÐbK-·jmÛvPöí²ÚŒ ¼ÿÖoÃ6nÓ6C)[øøÿ´-~í¶{(—PÛ« ã†kç鿃÷ßÁ[îàUv™ +tlW­`[[,Ó¿öT.©ä_,W»«=ÌÏÞAñP`P÷Q +ŒÑÆbﻯÓ?Öùu2à f¸Òã _Ê÷YN0Ï8Ó<ÏØBŸiœëàýÿD™ð…&}˜s'³žW³Îó>óŽ³Þâv҉W2õ^§~1ó‡ÅÜ'šûs0Î=ÍþÓeèätòiîqæ+Íüæ^gÞÓܯgæ~‚ÉçéŸOL£¹×™‡y§™çyï3Îsy¾'™hžežYžUžSžQIèâ¾Aí¸öûËýÊÕ%ÌÞmó{~†“íåãYžu~û¦æÖ9î3Ì;›gy¹»Wó<Éo¶ÅǹƙƹÎw˜íʳ=­¶z¤™>±Ñ‡}Þgûòx¾'›p›r›qžoñ"3¾]θìt¯{{’mÝhŽ÷‹ùå˳;Î-Ï,Î+òW&öùý¿þý¯ÐYÁEÏË>‘ðZ³6\ô°ä'Xñ¸ÞQrpÓò.°´w¸¨IP!ê0Ñûp€ÅëaáfX;X«W°J#¬Ï +ksŸ°*à ²Ø9À*ô°qýíhå9XuÖJ•¬3+,Ãâ…u KÊÁbJ°Œ`Ñü^]]®.¯ö°>¶Wíª^(ù*]Å«på¯ÜÕ|¸:—°ëw‡-,Ëznvȇtˆ°×üÁæË«ËÃååå8Évºl—°È/Ëe¾L°×¬%w9ï¯`u]Â*ÛÁjk´î +¬À+1ÀŠtûV(J™=¬Ø-¬\\¿È°Ò«: ›·`Åïaío‰ïUx‘ ¯á¥<¼ÚÜ®`ß\ÂÚÁŸñ«ÂÎÊÀR#l6›n®WìÀKèÀÆåo…ý™aŸF9ã7Ã`,÷0¢[ØÕ Æ¶ÀO0ÎFە9_¸ö¸C.<ÁTT˜ Ӂ_xàsºr 3¶ƒyÛg©Àa2pš<Çï™ãð¡KàH;àL[˜í +|*;Šp.lWÀÍ.aQ 'ß—«Àï2ð½üÏ'œýpÅKØÔÈ#·°¤*,¬ Ë+úpn~ß5»g禶Mw˜ÛwÍ,Í«Nët4¯ïšÕs*SJ“:ÝaNoŸÑÕtNGóù®Ùær1•2™Ó;çr5“À2œ˜®@L^‚¸Üàl®þ¿1¿uú~gw7OßÛìò†­Ó÷9·8µÓ÷2·¼Mib§YP2ȍ<ÅÍ}¹{ %4¦yãæ)ŸOôå@Ù½šÿfµßáo»K;ÆéAí;ª›ï|¶Û¸§; n\?ߙìC-o}fSõ;GRPk¨ÌñA Õ¸á6Á4,Õ·»©n͔uQ×Uƒ›D‰OlªÊ¡27ªîk…n¤¾ƒò>‘*Çj«pAd.ªn¨¶¡ÊÆê9*樧¡–:šh߉ÎO¬—V6ZÆ*¼lO¨vëvíáòê0ãÉv3œ\aoƒÌ‡}¾Evýápu5C~Ë8Cº*° è5ž¨ÀÂøÅՉ/â5ý(Ÿ›¥8+^Jÿ©—0üDe²sc$ž’ìü˜í»ž&õ§ñoiõSšˆ1q5|åʃüÛ¿kÆ~£…uƒU‡~UÑcqFÔÇû’dâð¦o‚2Ìa¥²½”óõ%hf*ÞJ”’­+u‚)¯4ímø‰Ë–X~þF…åÆ8éãäÎ-Û¿¦3t¬ê’žLëUñ„ +EÔL" +ÞVö.“hv8Á§ðkK#•ñGVD•& àš#´'áSè´ëI£@+ȎäMFõjë'<•ÂP  Á/3Ï¡ d.E@Ý¡òÅÃæŸa¤qª6 q/ÈPH4ᒀù GÉr€µƒ: Ô R Kß$ +vπ¡ÑO úÏÀöpåm‰ "3ÌÄ=|gý—$ +ȘËfó®Òý®Â}º«t¿«pŸî*Ýï*ܧ»J÷» +÷é®Òý®Â}º]ºÃÉ0ÀùЁ‡-'Flڙ™Œ` ¤¤+)+—V”kî¬l­4.-<.ÅJ–Ò¿¢• Å[qVà¨;á?´‚¹ƒ"ÛÊ%iJZvV¶Rš•ªe‚!璭ôîèW°â­8)³–@le¢o)—V”­ï¬l­4)ÕJ±’'˜òLÓ®¥wG¿¼‡E­'£¡ ’¡€MÝNÆ2ˆÍ›­eÞMm¢õ¨ ÀhÛ#uŠÌfƒyÔ¶3¶žu)[ÐȆ&V4T¸üD†46¥uc›ÓÃ)™ÔبÆf56œgš´J³¹¥Y†m$6ÒÑFƒ*›Ù2­¾JKsK vO ù zknj`ím"nTáØâzI¢Ð¬®¢ÅEZÝkM®ër ÍM8ö¤Ð±….ÒÖ@¥ŽÕ:¶ÔíH\’À¼ZhâsÍ>ÆÍ|­ÍsBl|Î{‚Î5ïRF¼\¨3°8ruŒŠùwý8ëø j–Šw°…fŽ0—iøiü!Á«‘?:¾{ïÁ,5ú;Ü&'”F¼ˆý~üć¾h>ù¢_4,^³Y½˜Î¹äE©CiT¶Rv½Lôí’xÿ¯ÜdY®Ü|²øu™ä‡`%ž(éN¥`™øÛ¢ä4ýK}W™ÞýÈ­e».Ó1éÃÊÇ +ïø!’( ­ù&VôQ$ª8ä5E¢æqGFõ½ÉA’„“ˆÂ$‚5²BšÙ–lî;:î‘úLGçYÄ¡ñD&Føe"% špd¹%s=U.Tå¸âÒõ’Acñ¨èó/ã×  j–jêQy{T&S¯–ewKÙßV&ûñòû)Ó &~/åh…}GDØ [ØèGŠäߙû(ÓbF}îŠl¢•¹7÷/"TËp¯&RÄÔ«ª×Î e¨ø%r(±?›u+4îÍ–abUj¡G%3±Ֆ:™É<• ÿ1´Q™ìT¤T+ÍÊøµ[”ýª\NdQËád¹zWQÉ=íæ÷.î¶2Ýþç÷/?*‡Ù“z醫ý¢ì†²ûÖËDßêQ)G%Ÿ,i]&ù!ÞZ +ÒüÄßî\Ü»ÊôîGn-óºLǤ++¼ã‡×_wþ©û¯[XyQÌ´]de݋+p+Vavæ£Ñ0M$€ٜZ±Ðþ:íˆ{±WoÙ,vìB%“m1‘}K˜ÈêBbŠP%XH­³­zr)E¿vV: Y0‰P¨C)Cɋ’V儞3uSÿ¢;/zq·•É~œ¿Ÿ2í®¾ßò´BÝ—ðsƒ]`õ;ò,ì`X߸°gXÈ{Zº…–©§µˆë×W¿6Ú½Ñ꽛ī€&o5x«¹{mì>íÇ>=éæn5x«É[=Ž|W¤c]Šñ{GJ û*©c¨±¥‰ݑ̔ž âXf2‹_‘iü@úÜ¥l +~xìih0çR¸ ¹¿ÔDÜO"ÁŠŠ[”• #]MG‚òp²\¾³È6žÖûúew[™nÿóû—¿v£å,ÅQŒenžá”€Öƹ`$ü|‘›¥²)2:W2Ù)Ûìñ¡Ë$Y?´A/¸°‰i„/0ჰ ·ëÂ|ÊXÔz¡YÁ‡þ\¿éÏuø©žøIˆQ‘¹­lAÐIÐ[ÃÎ DD%‹ü倉ˆd}g»;ž®©^™ì’n"³vºÿÛ³ŒÚ©ƒoéâŽ7uõûœ>½Ëó¾(‡ÛKç§&hQy$\Ûâûúi•«$S£ÉS•¦]–¶•M£íbtŸ]x3'‘1ÃAa)5e層<¶ãô“þ€<ïÀèªLì¡1cðÛùØuÙ Àò{+‰óõ|ˆðóá¢øZ±ª€CUÔ£x«ïgl>P§tJu ßðBRHÑâÔAAK:°X!K­Õ?'Í +Ó³Dô¬1žË—Îû°(+íañE©ÃØ#;”Kð÷c Ö±c;¡—v²Ô“¥¬Ëd?&X"¨ÄwYÓlkál9¨ÀQzÿ¨²÷þºs…¬ª°¤Ú‰AKQœˆãt4%WdÖZ†V±y‹Ýj¸ÔØÄ%xN…ÑŽv®Hv.Fu2®M]jèRSW$cºáyU´vʶŠ+J$·æ…Y 5Э™± +a?3oãdÆ)ÅPª•i'xÜFrMAÙX™°1da‚ÓEæu9 0FíÖ*CäTêÌjglŠÑ•ÃD”91 s2v$jÁȎ˜QP·q øwZ0o2Ëá/;!,xÎ¥` לf«pѽà¤uôŽ}Nñg<Å6ƴࣺ:rŒ¾é Cß§#^ŽJ>»ÙOìêÉ~ì_ç7ú-þ»íSrÀÌ}ߑž‡Z^0¨¶Ú©³h£žôÐK¿WÙÕx´sŒÌždC2ù¦,›­Õl«Î.cY—½'þn4SO´uƒA³ƒ}ºH€÷,š¥ûŽ=F{gû5SlìS6-#ìSñΗÙÖèÉ-éŸ \NƒÊZjG"Hƒ¥!Þ§•viÅÑðâR B,;t/»t£é­LÃÕý)JBimw^ ªÂ^lyª%Óà5§¬Änÿ2µ€M¢\…CæycŠ0Éî¬./´C5¬»ÿU(ŸÂûV_‚¸5'‘õ“ìâ¸[Huþ·cû.-ƒ°¦YŽöç(–Ï gHŽ…º9 QØ] ¿ëë–Ýú~ûô®»ÿΕ~•|¬ðc…+´IïsØXðâ*pñœ‘3-œhߜçҘ©_l¿S`ƒ„*×SePŒ„¢$Õ×)>[Vh¸  ۀBÓB…P\NçM‡ƒ¾ÕO˜ý¬Û-sŽH°öО +?,C\a[EjÙ …Æd’Á:xX~-P^+ìËҚ}”Z!×ø«[ ÄÝ&<0ù#Å8ˆöT9ýMýwkÙ¿³È\NGÖàöá÷)Ó â} =~ ÕcôO°ÈíÛc·Ýô“- T'IÅ£ñÛ뀟<@U·’šgO{L¡ªŽôàE’Áª@U¨š* TNÙIw͆>mcêžÉ0¤W‹\]ˬMcŽ®¶HÛ´ï¾fhӊ—-]5Ųý(ëêL«3¬«š:—Z°§¼ð_ÔKÚ¹04-˜Ï’í»Yðš%Ys—Ý4²•£q’“üãӘÎòŠó>£[Ât ÿ}mbWOßi{oût‘c-eY{·ƒá0Ƨ!÷Ö:…Ã2‰ƒ²‚8Fÿ˜ˆ Ôu +‡[±êï'Hu:ÂpBØü“ÕË"G×nµñ®™º†ä|¶åwš™oZ%ç[¦å+–»ë8GۙÜ{Ó:ñžlóq“w­D·x×D–ûv´ŽÁ=¹ÚÚÃÆ>±¯»z6õ©-½TÎíæa/Og\çäþ©=|´§3ø]{÷ì®=- ?`·¾Ï>]¤é÷EyÞNÿ•c$=®{òs¹Ô åÐ …a£>_´y΋Ëï©Â÷ñi½ýÿ~ûí¿ÂkH¾ýÛ·ÿé?û‡ÿáíþÇ·ßþ/HÁ_ÿ]Rò·oÿðo>™ÞçaèF¹5ÁM Ð³Jáfû!©rÌ­%¸™Í Í\’¨‘I2ƒTîhœñ\VBâˆÊ{>`„“å%<¼WfBfzcJBIH8 9(—ùÇü“¬Éôl£#[[i0әŒ¢i¥¿(s««CØn} ›ž§œOùß©ïg˘öFZڔ† +5Qϊ$Ueôe´Ž=,Fððå$8˜[#ël1,1å*!+­&twݙǥŠÇ%‘ˆòlÅé¢yL¶–É$[B I5,­†&Öظ⤨â ÎL1ܙӥcˆ;¬_Ñl¹N²Ÿ°ßåR1»š–¢ç¡H–s‚ ¢j Ô¨&‘ФbÏ=öû•‡ø`¾a S¯ð¬ÉpÖúêCÎ?wæÕ+üž+\‡†Œþ˜"çRŠB +  “Ç °ÙLœ£È Ýç½ ñ ú%Æ̏ØNÂévvT»œžOU›TçFOc @M!C|k’ô$IìÙBkùÌRÅ~ÑĊÁe'EE è4?ðáF8³X:¸,ÅRÚ(ÞFóé»këuªuˆßm=dÖ²„«V“¤jòª=« H<ÆSɨOÍi‚"w}sm]¿HDŽÉ¦—~u )ÿO ˆÎÍÊoÌ>«ÉœÌj¾-u1O~yó¡é1¦úM’°'Nòz°•Ü;ñæí%ŸÏ¥Ùe­kÞ-gI~üþUá§îÄ,©¸èÐ)Ø*|igiö’èRr¨³#óJ²õÔÎÐKúÅHª4 vA÷›.ùºH˜ 2Xµ¢1qçZÂAÅi¶«Ñ;©¿­çgümù—‰±òÛb¢å÷«wÿe +Ö½;¹^–èªoµ@aM‹¼*²‚Øä2¦u̘y9dÌTÌÎÌ/=:¤Ré1afLisËòB>NT³´ö çȳzð?Ÿ"Æ3D†#Äò±Hc?ä3–s+ 1rf Ã4,ƒ9ÅÂà°Àɝ4'Æ!Àì(s"¥B<á¿8绸ÍÌh&ŠéÈâxÂ_!¦ŠnœXš$ÆÄiazÃ2$þ\Pü:0~i¹8*$þ| üéÀŸEðÏ´À5¯cÔǽµ´€Œ_£—èr²9à8f* œù eîX—›>L™;Öå¦SæŽu¹é”2G+ÃØ虘êU­§èe0õ2€z›,ü™ðW4^z8ÞKÙÎÆ\ªh0YÆ|4ö’ü›ÆôJÎÆ|,>Æ òóó(ó8_ʱx+Çâ2ɹ8òÉx…Fܓ +ÓÇ}ywt(¦#ñ´š€£ìïwT¨MžNä“îÊôyUz©Hw5zP¢U…fZÕgVŽIX«q…W LáÞÐͬ7¨&‘,3A +'Ãú¦µõu¯… ̲jª‚Zî˜%2ˆ Tì Ç`Î5Œ ¹ª¸C7¼IANão,ÝâH¿Ë¿“´¹ìAÿWqVÑÞ ÿ[,‹céÿN*Zår#jéè®ÝJW\jŒª7J6ÈIÈK™„ƒÀɯPæ%oÄÒtýÁÞÞ¿'Gÿ÷¬°ËËu"™Ëòr”“ä.8–‰KIøÎ؅Ø;L Y·pªŒ´£dΪËdMáA† Êâ1‰"¤j‘Ó”ò¦Ñ!æñöžS—˜,ogê·pw3y‰¹Ê«¨wö¬oìy—¿ðŒ·pZE#Ý-Ùûò^&õ’M|ZÜÕó]lâuiŸV÷2š­ÞÏcº­¨¶‹«yÖQ„ÓÉ[y¼„rúðF¹žÞYøliàwš~ºê9à隚þ}OëŸ}»–|«'àºÒoÌ'¦Ï1 —&àÒIÁ¥¶”e +®eò­e­ev­Eܞ>ÊPB½§Ñòô«ÍÆëÍZ¿ÞL0üÓ꒳wAÄNƒÄÅ4ø(nƒ‰u·Ä1HltÍúIü³kˆØ VO 1¶k`M'!aÃ!ªGϟ‹²êY“OÄ[-­,]òtçÈ+e–ÇñWZhê'‹ÞžÂÊ«@ˆã8¬A™w½ˆÅҁYj3c,Ö: +ËtšuÖ:Râ8újs5+dŽ¦#¶ÅS…P­¥ò +nM–²©‡;Å4)‚²[d>º9?º9?º9?º9ß¡VÐ×Ç +ïøõÑÍùÑÍùÑÍùÑÍùÑÍùÑÍùÑÍùÑÍùÑÍùÑÍùÑÍyÖ͹=éæ<ë蜙ž»«óØÙ9º;O9<Åå9-½ž–r¥;>×®Ou~ªûS â/èAl´{i^}¡•´Œ,ÚG­Ä‹|փ´¤i™Ä7º[dkÑSµž«½¨\³fmmo) 4u ùM%Gñ- Š{—eZâe6ÊAá'_{ʏ}å–ùp:à1Ëǘï#›†L߯õdš}×ÓFcôí?¹-t—{÷Å«7~¬|t®SÇgM]ôÃùc<Œ?'7žQÆ;Êt8PÕÐzŽYþVW§›²ø­±¿Ÿºøm™­û ¶‹ÃÑê÷i•àíô¥(Ç{ò읓º–ÛùrUÎÑ5 Q&w8*ËǏKO4u‚>ÊS»bI‡ÓOœ.Óò×ÛâÞ¥Úé|[ÃCÁßík©_NGê½*ø— 5ÿœª?ÆoÖ%Zãô…>]½_+ùgîç9¾™çÔBšoUþ€i}XAŽVÖ÷O5ŠL‹tívd]ÊÙBGÊiÈÿ1ÂMÖåܽfGé§cҐ‹ä]å‹™Nrž[s$x˜ezwŠ[ʉٜNúN¸œw"s&¹xÍ9Fç¬ð9+„Žat&¹`p?\÷ËÎÜ©Ó±:‚Öð:«ÈþéL–oàñbßíÉø~'V`²ýN'/õ=ÎñČ£×ÑU1ç,ãüè³ õ?áCá,–àãLz²!ÿëì·ýŸNî1-ð&§ÿ5ùÉÐÿ¤Þ{:‘Ùã(¯ÇÙðÿeZã#çS¼W.ýR³»¦8—`• +àö”>wMâñ©Njw’¸wƒtNBºÎ‚ºôVÅ%¬k ìZC»Î»`gLë[W¯c˜Wz)Ôk÷šVˆ¯cԗn°ú5¿‹I§lDƒuD؈ +‘aãM vWÂâ±¼5a}_ÂhÎZ~uôƐol([ÁÊæU²e.²£œda<‹GYÊÖÙÊò +–feZ ÔÆÒN”£‹6W©ÎvzSÂ:÷Ùq¹í띢ùNrþìõ g5Ž3'¤w•µzsw]éL™îôÐw@žÇfE&Ã#0ƒ!æjèZ_³ûi °§ó´ŸÎÔޓ²¦édÚönË hîìQs˜­éŒMmmU;—ؽ­ lã¥êË+Øn·µ5­õp‰à—NÀU9¡Sc™\çÔ݆§®¸=N oÈÆéŽÙáOä‡?BJRÚS9âϗwfïYãßUîbOXd£¾-Ýü{M\ûÿm:Îåµ!u Çães¨o­h5ÇɈ.òš÷·]ò?ϗrÔìc¤,Dež}¶Òóø£w)ÓÅ+¡{.àÃu¾p® Wr|÷:¸9ЧœÍÑå~Εò0Á/˜ù(éÇrš}¯QKßa¤bù Žå»s˜?lŒÃüÞãëÒw_—¾Ûøúºù€uLŸ~¿ôWGé¬þ+ü÷ÿÇÛoÿ»·ßþõÛoÿÅÛoÿ§·ß~ûöÿëÛoÿ›·ßþ—øó·M°Þçy¹“ ^ÅÍ1yü³¸Wü¡ ¯v¤^©Î‰nèq-;œz!ü¿»¥ò{©¥÷f£õl´žÖ³Ñz6ZÏFëÁ Îsñ ¯×C—ß0aßo½¼„>¬ÎààƒsؔvQŠûþúº®÷ûèëÿ^ª{¯ ñíM ü¿ûíßl~ýƒ÷ßþŸÿ׿þÏþïÿâûõ'¸úÏÿq¼TÀy(‘£@ðp·5Œ!ëÙÕÝ_qp+Uqì{†½"Wr#¨ÂÞ¢Ý +¢ôvÐ=EZ ¹æ« $•øºE¤)mOalÍsrGI €ŒDn¾“C3¶tÊæ«ÀÈ°7IÊN?X÷ô^°"èÆ-YùvrèÅSá•ØúfÑK;F5OK­uG€Ž;§¬æS—¤t2Déˆ%e\‚š±¯ÌH8¯£#\T`¢“ä=]CCpèÚOÓ MGÐžZx 5X¨”]·L cÎÒ¤ÓËÕ B_­L<«2mýJ¸{™à?C³¢%›· +o“Kª›­×[±^ïëu4@`SÓõ'¾+ 5Šb¹æõ¾´¥Æ•Âlô¸R»æ±j°žÌb=f¡ÕèR¼?Èr0H(Ҙ‡V«¥£ŽWrÚN}UÇVj1R/ÓP¯RPO²np¬­Ó{µNßK>h¢íh˜ž©§×–éž‹öTÚéý‘QÚ1dªÛÀ)óÂ ùk°T2Kk^üSvés¡ŽGÁŽ£)g:²×œ¶¥ŒYðÓ°rH‚?p•s®Õ³î¸¡L‡Ö7ÌL‡´ãÿýâ>Jòÿë¿9ýÛ$¸ñ5‚<ґ–EØøÿø[!ßÿ¯çj87WrHuÐy–ïÅ~ÊrÜÖöŸª}ºéÛÑCÕþ¢¯öÑ*ð…3ü/› +¶ÓâCMþ?6Ò«|¬JÔÅÖ óö}ÓD“ÐŒ½\MµîÊ×V]Š ãô_·fà%a²;tØr)¨ü½Ý·³7SŠ™YÌü‚?;Ãd;:Á/݆3/ì9£ug}ºŽF]A±¼Y’F«Ñ)ûR>kw"+Õ´2T«ÊY£ÖÉ2t\  + +Þ @½ÿÅ\üђ18óÇÌ;“È©Æ€é"Tɼ×ìvžו÷ ËõÊòJ\*ÛÅå‘øÅq#›íóƒ¡VûíÍЩŠJ]ßØnpÔIШŠEݵ ¡šeª©Áš +B]ÀP'Á¡^ZØæNœ8ŠGíˆÔ< Rã€L•€N§nçIªWÂÞ¥º7¤êNԚfñžŠZ-¦%ïÆÉ@¬Á+×ᬤ•a­\ºš¦Š›yˆ¦!ðǚ¯ãWJJZ»Æt¢oaQüQq'ÊCæt§Ë¨oÁn¬ËT8€6 o–-m”B›$Òq´9´1t[œ (ú´‚¡¯èk(úF_„Zpᴀ¤+(½ÃÒ˜^·c†¨u~¨½AÔÛ4¢£DzB®¾?€N2«~ˆ*¦+5°xZ¼F=/χâÙðÎÓð¼@;Ýa¹Æ;wijÞg™ðr…Àg»ø{y3oÇ>/ïæ]ܟ7z„B¯îè=ºþû¿ÑtÖuԝGKҐTbáE_ÒŽ¿üÙrl¼,Sp}è„ÙÞ¬Éæ¥Ì(gFI³5“¥ôQðU>)o9{2§K’;ÓB𠢇Ê({ºôYʟí#!~êãàˆ0ÄFÌ«4pcâ€Ý!Q“ ¥u¥h„Ó*Nâ`Îà=_¡£®ýQP5c꣸R• Ìb‹D×Ô¥™­t-ýr!ÈFaÖš µi%Ûº|[J¹Qҙ¼[Ùӑ‹;QÎ\¬¬²r:}¯Õ AzÇ2ÕÃtË aÞäpáRiçn¡ž «c­9´6\ˆlÀ,»"Þǎtè@û`ÒûØ×æƬçý쌃ÍüŸÿ Òÿð/ɸøŸo™oû{¿_}¾(zÈöšÛâæíÞ9׀qtk]8ï@μq´ˆs5­f£Õl¤šV³Ñj6Z͉‘ü^j£¹ý°š|Ú|o½¢ºn›c |ù“çÏ>{ùøÙëÇϾ¾wo˜úñÓO^à_ÿå³ëׯo^>ƒ5ñïþî_l~ýƒ·øšùûëOh%œ¢BG`ýÃ*ÝÔû!|/ÍÁ[¾¡ý".¢Í/¾¡_ÿ~ü3 þ~7?ÞüêOçÍ#¢ÿâ§ôMêzJ¿pM›ð˲òI>ò`ü<þòŒŸÒp»9U2È7ØE0zŽ]sb¯Ç¡-ðDÝüâwóæÇð-z V[ü"´9SŸœ¿ðޗ |í©mÚÅácðk„ÉÙü)¾`Ð;8ÂãðÈ牟‡þávö°e]Íß.è-.B¨m³nsŸùjèK* ˜á¢/qæ¿I_B»È°bƾDwŠÃÕϏ}‰åT¾j}Iзc¼nsÝ™Š±+,%hWr¾¨sËcWr½He†å­{Râ2=íHŽÅÙoV j?¾+“¤9¶Å3LnŠaž«MnrŽçÚ&7¶‹“·Ù]ϾMJxI²Íqq089Û¯›Ö÷Qú8ÇÚ%céÒ8ÇÚ%äõ´]Ò©Ö.éT¯›^wi˜jí‘Nµôhœjí‘ÎõjþÆɌktÆWíö?/4Í´w3¾c f‘–k㾠ɕ ¨FÕC«>ôße‚âG„æëEö0‰Z…‡a˜¡ÇڊþŽŸñ°Žp¨ì™oY“Õ¡¿íMú¢uHWW/óPFÉùï:_¼£´ÿ0Þ)¸þŠÌ.Ç7tvª½àlm΋—š­ûòëy¯RIÒ¨~Tº´êôÑ» ôË Sšö5ÁJKÈÎõwY¿ãûÀR« lÚ án°w´ý}|9{F^@ë°ß‡vŒ&}±·”¾®ßgýžµÀöqñžJÓw¨˜W,ýwÞãkÖp1ûì5«ƒ.†´fä÷ñ5íy­Ã~ïÍIzbUHO×o£o‰Ê±+~Ü}ø•ãÖ|ª¶âí÷aW(MwŽV¡;K[w_Žè©êÏÀ:›‘ kòû؎Ѥ/Z‡tuõ2ëwvŸvPHÚÙöŠ}«(I6“~~¶6çÅKÍÖ}ý€ö¼W©$iT?*]Zuúè]†Ýg/#4í«®xû}ØF“£uèÎÒvÆݧ=´gä¬ý}hÇhÒ{Kéëú}Öï9î>í£ÒôtÍÛï}[IvŽU!;˚vŸvў‘W°:ô÷ތ‘¤'V…ôtý6ú–¤"-”qÐÉj + •š2G@³Gù⿄Jr?`‡‘A­]‘JPêÃփÇsL¨Y5"gfmÀZ4¿ÐÏ´ Å´9ëC¬ ùÄ¡ 1_d7Ǔڙö4*t“[âœBôõމQ#ÓN”‡Š¬ð{*ɽ(ACé¤B¦½- +³ŒZ/`bs yÐÔ»îó^g˜ÕècÏAÉjÁe›Bzd¢ÃPã2 KšÄÕ »^ MÔ²tawÎsj6‰«–ק†qBµG:¡Ú£aBµC:¥kåyì‘N©öH§ô}UÚ%^íÒ8½Ú'àµö<öI'Xû¤|îpõÅtà9œàå8þNô•ÿ²{ùæÕoµžüäæ÷ùÏóóf ÿÿâ÷ӛiqL?}H§#ú½RʼÖ`´ôXî³Oxè +0ïØ@ܞ%ÃGŒõ<˜žMxLÿ0›,z:¶kÅO5½Œ ´ ÔjÝ©x:K–Ï?8ªñÁô•ÑÝ×P‡V2Þ›Óººsdùüƒ£¥• ò¥µ„Íg¼hÖsS9Ázjñ¨ûgÈRɃÓu5š`×_׍ÂbnλuíçÈRɃÓu7ŠK%¹£FúmŽj?C–J֍y=¼Àü´^ЮӉqÔþD@}¯J ¨u¢o&§€$új¹˜Uo ŸŒÅåÌ:Ií„DdZIfÀՀgw$g:I«¦67z¤Y Æ€Ø|+H“Ï,Xȁ@@wü'8 ? }ô<Ý Îð,á8ã‹ã¾fô6pP2V‘ý±8ªô½Íð¤&4ø½ŽÆàam-®qítáÂsŽ—Úsâž@“ÞGÇÑ1†»7˓p‚ %ï‡#Àz@‚sfpò~>«¸GüºTª‘ìfÄò~ -Z2˜®A¯yØQiM?ůÐøɤcC¯BU– L’.Ó[÷(^¤ÍÉwÈ»‹Yx +4’P™Ï°ðž +“E“]€Éx¢dh#O„¿´˜DOlš~rºæ'½`ÊâLuƒŽ:ˆp/ô¬àÎÝ#äé2ó 8FrºV‚«‘‰Ô=]–´Vá$\±Þ½ 0pÇÍ5W׋^2lW‹’#ã,œÉi–ÏçÀŒ˜úÞ¤àÃY‰1ë“)©È-ɶ¡hc9'ÙE4¯BŒJ h2z¨ã؊ ™ømí'K/ÌNØ{-Ì +è§Î)gÒ؀š\É*5X]Áþ1£&ײçœa +§F£q2²×guó?p% +4!Æ4Ë4™¸-¾ }>&âô@#÷7A|È2ˆ°³LÊ|c[èÄbâ›Ì¶Gg0³B‘JðR­9íÀÙËl îã$?í獜I$£ÆÝ®Ç9Y:y|ûbǹÄÊ ŽTåé"hcž‰)7Úx”“zA«@ææD̏GQ¨'“9x/ò($5Ç«út4¶Œ'¶<‹IÖííŒÒ-‰ÍÅè‚B¤•¹—cÞà#äþvž»Äf›ê†ã$ ëB^mu@…÷S« w¢àQViIiÙ —¡Ÿ|[PµýŽ»"*1^8Ò»ÀÜ?y !qö¢³“©œ‰‘•1Ð |*UÞxffÅ:u0 Μ„œjn֜Ï^ŽC„>P²sÁìs–‰nÁyÑé²oB,¬§a Èùö"îÛLÌ+@®¡ã>‡¤U¸j³Œ7‘‰Òê¿-Á*U;\ºn£Ë•v6lû±s‹8hÐò"ûì‰Ãàɔw“ëL WÂrôœî‘½¹Øº„]Žœ¨EA7bÄÕÃDhˆE”2$³=Éh«`"¬.ª 1ÚGžôÄgˆè²U@Ûˆˆ•'1²‘ë$è‘no:L"1:Ѹñcu•=U[O9ò³ ýg–pêÂ(o^!¤O?”Øð42ÍÊíNÎ2 Íe±á±óN©lj‘–Y9Ÿm÷? _Òæ(»¨¢˜!5T'F98Ã2ÒýŸŸIâhû°Tiï8žn&–EÑ7¾ÑlX™Óa`Qa`rìæÆ#v*|πrq  >ëÛÀgápGáAáK³pÃæYsEb‰r"K9ɖòdë>ùâ“q<:%/DÄÃ3eYX¡Ï*[ÈjL[ÚÖû¸)Pp…s›†ÅŸ‡e•H;Àϋþ@`·$ƒr‡Vòñìeh@'/:oÞ59^D[ù¨÷9¿á̆ÀÊ!©¸ÐDƒ ¥˜2ÓìQðça’h–MÔBÄNѤEY·{­ ÒY +ÏPp¬’¶È HµVÇŽt•& Ú^Ô1‘Xï,Já¬\ ôoªJšš¹)ø)é6=9‘ºée§D~* +ržƒØ×Ýlº?0êœàÓøI'O⦫¢=!ã˜eÈAÓóò(¹_èm§§¢æ¢µÊ +ɬ´s@fÛ>[e üh2Œt0e"me&=³Ükê´aÅÏ&öÓðäÄXdS‰a°NÙëñÐȁWN¢aB£ êA‹¿†Nž¸µ«²¡HÜ~ósáX)D¡*ç °<ٞ€~j²Ù&*­zÊ ³iþP-"E¸V}Ác21£ÈdbÒUJÜÅ;&“£‹‰p$ׄG€oN¿¯ ¼œhúÉñá÷©°Su”̨'ç•EMb‰>³c‰ÆIE|B`&ýlå †nUÞ|@Œ¾‰eŠxœ²rÐaL¨ ÛF+O” +beþŠM9}Ù4 ·€WÂD L¥Õxò=)+¡ ²Eê ½í©3‰hI«ÕÏñܳˆ2VFöYÉrt'?O/rd2Ò¹2ˆ‘Ô7&&Göä;¥‰lG2«Ûð,Ùb¸V`b(R X@~¢õ ˆ½õýÙ¨2bžõÙY4xYPv2AqjN<µJÁn4fá´j• +•¦£D¶ÚÝ£“¨›IÅ*ÙtD\°¬¢ ΂rƖƒ£0 dá)ãkÄ~È©֓#Y*ë ZAž‰ÇTxÿbc…ž­P?ª^Lt¼H€]m½ž L”‹žQgÖh *'¼ŽÇ@Ä8}gb±¤êÖjþØèz˜ùðš[¬HW•/ 1³yuUӝš¹2Ê,yªòMtíâ\b@ã1«m«<³ý™ûUDWdvB$ œôʱy:‚[?¯Ô`æ%<Ê9Ò¦2Û­î‘Ût.´ž±§Î¬ÛGãòÄ 6©(áu¶Õ”ÌZŒf_>PÎ\@¬¸MôídæIÂÜyY¾hœoYüPt¨¹Ç®¬9© &z%‚ì–s^€ m–Yz ²½[>ˆ¹9è04Ô·ä@Wt-¡­·JS°iÛæäˊO‘ü¡ pŽ„bšŠÍNHˆ J¡ðÚ#)Ľ• «Ôe³ÄTµǛC^˜ÀõH$w­Ìe!Ów‘}¢Ìl›Fr¯D Vàñè,ãUiá1fe#øl$?i™ÕìSSH.c @`k0ž f^áèV‰j +:˜¾n„ “.£ëƳí­ø ‘4èÖËÄKKb&ôsyTæY/b¢œJÀ-ބèùHDšuâԘ7sù¤¬îe¨UCh2a³14Êôœ4e-,%RTYD2~}sú}v̦î‚0'þx^NÀMi<µ2€•Ü×4:悰MØþ²ã±lÚ2õYž ¼ö²iðœÛ˜ógµ’¬'2aô¸A%4>{¥y'- 1˜zYÒ ­Æx—oûKÛA)5b¦¸iôü˺²š„–”¢›D +mâb'ÚÏd5ÎäÁè&£03㮤d0„/}¾9±D¢ˆìO4>éçåˆÁ†*åÑt® JÕGBÄ$»‚Žg'%“-+hbNnø­O@p4Œðªd }xz`pἁrñ^ÍþhXWpœL3SUÏPÓ áá°Äo‚–êYœ5¤2™“-™è2š X†Gvt! +2ªÕ +x˜œP‰/0ÑeZ|Ø/4à™Á¤9Kd“‰)Vñ“44ûÊ+ÌU”5ur i†M›xàrÌxÈfP<}4>.â°ÊË¢ÉÔZ/¢Zfw$¤›KR˜°~RTŠ.è<”˜Ì0S3¿|e͜‰¢ÇБ£Xë:)¨ôÈ»#Ò´ˆbìÅ©Š–7ö$“#ÀwsQLUUsq   iîçJ{)‘rèŠuê€E-¥Ñû£2k<»@PÿÓÑóèò‘SPïj)YÍ<„`¢H3²ý8µâ©™Å³¶ñP̓â?Eû>ëõ(†Þ„Êâ×¥˜cp¤Õæ)çjæ¥ú`®jeŠâ¡ÏاŽaš +m~ÎM-îâA}­è³V«S% ‰xT0Ëo.âÍO"x©‚¬0ÉhęG¢7+3€}/毀úƒ°¨DÆ30yÊ£¤V VL+9#F-”,¢+Û6RV‹#È=ƒ~2+t…vøPgƒòÿTÔ¿àEóGw?»`€H.ð½H+WfAýK‰n$þN%PÐgç¨ÊlL¬Vpä%hò ))ªz´äÙ¬llf­”ßM 2®lU@¥ujÕºÕ¬'°Y™[؃hµÒ–䮢03éÁ†6$‹)ÅOáØo¥9§CG´fÃ-òšÈ¢©=œÂ•ÔVƒ“7€ãbîY q݈º$âFÕáö!J½"U6g]ódwÎë¦!_ž-.ñû ÙV§®yôD8C8|JSä¦Ò &Šaä¼le溉NºgXãÚCV¤û‹¼˜lzÏ&­½Óg –*]•ÓøÍuń¬ŒCÚÂOEö‡¡ó@–¡3VˆÖ:u«à¢7›5”èF¢ 7+ ؅ÆvvTWr,LT×1ešr8T·•ø¤£F +я(@dr¬Û'±;Íì:MSl5$º“˜ô×)|z…w)ݝ†œk÷Ø4ñ”Š8 +\ðJÓ2â} ЃË(i?Ǩ~b9éÒÀËÍ–5²î¡ÃM†ž-FlјI ⴅã .dš¾li¦Ö"Ò«šSž|xNÞVØ82²í°ÔÝ$6{”©Å‡.>…óÌã³ê*éæ.tÕ(’º`>o`˜DIž5Aáªz‹èÌ]MµŠüN5Úö&* p;™¶§Ñ4±¬á»¤,ãp£êp‹w‡Ø,‰XŒú·ÊJߧßN슴Lî©iD“)ã½bG@›®ª…èmp20Z+ê@\+Ùb£7}I _hFWaÕ:X–S/ªøˆ£ÃÄŒ_쬃†Q˜°VUØÂ!CšÊUÅúžÙ\Êd섘Œº¾9˜|F¦®ÐÐÐ1N½¼Jüœ¶à@*«ö“a&ê¡óº¼ApëpáqÏd]L22©ÎªI:öE"¼ÑGC8iŒ‰ÁQ“§RâXGQZÉ¢@DÝNü´Át¼)v‚Ý&9§ÏŒIëÄLyôEé&ýÒÆ[´n•ö¸¨Ùl…£"Ç¿YA+ŒiéƒíBE´5׸P½nÐt°U㙙­ð`‹¡]L¢ˆ’ñÉIW÷ݞçRçÈ ·{¶çá™%ÏzBXžÐ‘øÅÔ6?ødó‹&§8˜»@’}e®p]¬eˆÂI±KS'0Z´÷n?Å9AÑ §8ÔÂI¢#æ&²c°S“íŠ|Æ ¬ßGö$A¨ '•˜¹;¦ ÓN^ Ô'eD PZo+`Bˆ˜Ûl žu¥ ‡&իĶõŠ3±*UJYpˆûõ^¤¸½½nÄ¢D°#V")¹ +jIM¬¨#2_+(+N–I§&™ã]¦^i‚ýAŸ/Æ šm† ¯è‰ÅÀ^aåìŸÀJ»zQ à`Y +°‰^_±;y;F‹s–‰Q\²nÐkQÞ»*¸5WØòŒ;l®ÒWh^ÁΰkåÈO’û¡XÚ«=kˆ º$è¿8Ëžu¨÷‰Þ 5Ջ];ƛ¹¬¸RœíŸHÃ.k›rš°“· (Óª~…ff‹.´0H‹¡èlOÊ."!ˆddZaΆ‚¢9« (äªVô(†\*dqЀÊVåYE ƒ¤ 15ñò +¢Z3ÂlîàÍb¸˜S'ò‘QÜn¨ ±5Ù¨ØvQ‚eE-„l8ï4«¦FHƒâÔ @Gû'BÆäÞ,uˆ¿Ëxž°lŒeh¤s2:™;þ±šàÄã³ ­`§Ñ¯áÕ;ä‡=C“íó͉õHU~ì@‹bÔRÐN.[*pÌê‡oô=ï5ZÇ;²™Ô–e¾:ëÿ x ‹KëeøÈÞÆ$ ±AnìHSw²;eÁãÞ‘E–B¡ wFÌζ1Œ®«™g=vãzW‰’4é'jPÊHȒÄK[˜.öµ¥ªCô>ÛöÊI;{ 3Œ1’Àž +—4©/q€¬’6 ÆHshK9YIâÔ-ÝۑÉx­íÀ†F?¢ZCa-Õ1z¨úw4 ~©zÜQ +iS{ðÖwazxœ2¶U—ÎK•-Üè(®A•Ì,ö×ÀÐj큗`‡Ô„gpš¢u£èb$@R°ÁÖ£W"ÑÜ@Ó¡N@±è¡»äY¹…à÷é”ÊZ£ÀáTÂéj­Êì‰áÎ(o*5ƒÀ_Ðû[º¿RŸwÍDa‘Š®ÅS¦ð ÇKõ~¨6‹Röfc­µ¨2—ŠèŠt•bLFóé9Kã“"ɒ. ƒ€r/ªµ4Õî Ÿ]–ƒ²¨'2ƒ2ț ¯ÆìE> šƒÂ"û ՝ ¨XÚ±,8ÉU£cà|U¯™¸ÒPIÀZU÷¨,j YôŒ¥K¢èÁÿUˆ±j\ª|Í fŒý̍†¿ª§V‡4ª4jrÆ ¡8êņÁ÷pjùÀ‹Ã]úVd¬*ˆ¾¨ª§6k +L(6ÜjTóì4W¢3¢ŠÃdQ0ƒö‚nVYˆÀ7ä̎¯ÀQˆâ뫳šî91Œ8 p¸h±>t-fý§fOQYÚ$åŒj®XHÈ„¬»RpÿHÌzÎBÉ"& ŠÝ•¾dä‘Ü@§^B—8‡³p±±Q75"ðôó‰ge+ól¿VU%y|]QchŒì‹¡ys¨ÜU±(XÐP«St&ͼ’“@ܦ#w”*mX…°Ö º¿#t@í­"Ô?«¿:Jv¯Bæþʱ”ÛjêiEG$‚ØôYçfám¢Œ-F¯Ì1EÞ¢£@ò¹ŽW 1ÜëÁjkÿJ!Ëi‡,JWxl=ƒ§˜(Zïõ¼ÅŽÀ£ü,~FrH=²X–‰¬ÑsÞsàW‚BBŸŽ™GíäE˜qc€ŠˆbäNDSK+몄œƒ¤èˆ¨äÒ,1ZLîQqÎ –>1^“¦ŽLŒ÷輪V^KXï$< +x dñ,Ö%)½ÈNUE*ØHhY•;E{Í«IËÚÐTHöNlU”û“«­¦`Ρdä¤Ú¤oµ™°®¼í$⁩U±´jõ ³ú3Q•ÀX~îES·VÀ’Åcìš×CŽ8‰½ÿ”AÑçƒSüقo!z´´UâPia7¢9º¬ö`ԝ½ºé‘oUÓó*cÞ]2=7qè$źA‚TÝ0Ÿòƒ9sJ&GÛ2+2¹˜‰¬h'gOš!¢º¨¦+Jÿ¢Ë}hNÈë^à!±¦Þ\®íYÂað &N99 •8 wxþT›$9%V½PòªtÄ16l˜¨5¹E=¨ªÏ§ivå!š‰"•áÑùã^yÝ `=Ð`>õ%™qèt«&ÏZVß±Zé5zê¡c!äu/2#<õ¥=ƒŽ—ä¨'~ +!á¸\B”€d&ê“u\ÞÎÐuAÉdÓSr(ÞÝBnº®ä4™b֌\N³$75úå¿ê)öB‰É«Ì“(­@}eÿÑ¢^ ¾ax-ɉ³ÍŽfaåb™3ëzaqì²ÞŠœYA™Ïu¾r”*õLƒ,³è›:}µ.”¼ZšÒၰM ^(4=E\¸!$¯q{ËJ|:ölv^ÕÛÉá´Ü]¨£°vXPQÏW¼(¦ 'J?A$*4 “5˜Ïÿ,0)%ñÑ^É ƒÈ¼Y£Ê3T˜'&i4Õª’ÙͱŸ–dē¸Â¬%3¹ÊÁõ>öé—j\f¨ 1Û\Ջ)3ƒ*T© ]… ë&û*qºÙ/+TŠ–ªi@¦wò˜­„$µv–J¦} æÛÍyr¯#3c9KQ¬dú·¹Gˆá‘DRmôG]ƒs%ãe:*5¦©ÑæÂyrEgkëä”HMòœ ü/90ý¨`ÐXÁ!¿¥bê¹'„¼hŽùá2VbqÃè­s„nÂÕ¯!âtŠÁ®àˆ’ó[è±ÞˆË¶‚ϐ+"ï†Ds.«ƒg&j”z7Ö=öÉlÃ@tò²¹¬êÁrml©T²L® µÇ=aƒ’=a‰‡¬‘ȝ0ê²5 ÁhÇ}3r­ڬ䘃ÕW՟ZûG1ȝŠz±ïY‰®¾[K“Æ€—™ƒ.íÌ mÏö^u*Ãq† UâT,‰OL$hf‰<Lr·\ˆ¢àNDGgŸæ”>PeT#Icã5ÉÔ¦æ+Él…äªù)~ž¼9…䍏V¼9(9÷õÀÚ%Ûa#[LYÁ€+…&ЮBdu²ôIán¥ ú1bß* «RÆȧâ +Ù2"•, °R-¡±3¼»‡Ð¡{9“…¸5EÈi/$p£ Ç×÷$\ÁѸ4éª×9²åcsp‘(™²tR$S,·×Œù‘Ð]$rÂê8Ší7ÎpR•ýàˆÜ—:V"ۛŒñ*LÑq|²ôŒ,_Mm„oÁÈZÓmØôŽßBÒ¿*3‘dˆÕk¾ +®DL‚ ÏÈðc‰ TI¶é|0d§âA=‹á +–^bÉGcÚρ5ð!À¦ƒ£ü±†¼Í¾ +EYvòÌPþš.ú²”0§šBO¡:ÌÀÑò°0i’ì]h¶7ZRƒeu#K²Ëš‡˜Àv8ÉpßÁbº@¥‰¸*Yš_á°9‰À ¦­ +‹ª]#Ú/1³é9v@}bMƒ’+Ž‡j|‹+È={ŠQ-ËƬŠÑ1>9ëa1Kf.ý`˜©ÆɅjdcÌ=ö8Šb;Rˆš×°ºà4FLÂ):„c}°ùØ$ „Â_îªdž¸¾VX—Ymó¸;Øo—%q‹tU +[B‡R+Í(®ül +†¥ÓYÕÌaI3ïï ÷¥ gA=gú R’">´ Ø;Fá®ÎQA bˎ¡Ã'HÈÓ,ÁˆÙe7q =6#)äŖ*ÐIԊŒxÒø® Nñꌥ!.ŒsU ‹Ù ԗAïNë ; Ëó²T‰ƒ/È(ŠŠ pnIuTۅ¢M3áXYQ|rR¼lm©¤ý—„‰¨í„fhnAŸ4® +=ýlnGŸ,/[Ñ°öÚ#a :f“nE‹«"EE9ˆªbë,*@rdˆ(xݲW„Î8pW¢ûÛ<ý,Üj±0=²[)ǚ%Z ÄJ¼iîÔ5«–CÎQ~4²,—ž2ƯVR «à4up@K¸hÅÄYݟ¤Óò©ÉiT¥jŸÚä`ŽÌœ}A°`çâÕ+,»#‹ÁFõÞ A˜âIY\AÚggB‰lÇµ_Bê97”Ƨã*®šT©Ë®bžèï™>›YŒðíðèžÇ¤vg75™§‹–oñêL,ÑvV©šú5yKL%©tøÛGUÐ`™nFÐæ »|H·“åŽÙ—¢ÄŸZÞ Ý9JvÔ&y7¼¬Iv“b"‹v6ð´!‡–âp*gšc¢µödGh}³ ª.„†ºå,òÓs*:Îï“làÙ«NL[V3GmPl¯<áXƒ<«íS²ÎEä9s÷C9ÚVßĜ‘5 ‡W#9£%‰æؗ^8tÁjÎlãcr*–7„á hGTÔ,ÅBÕñIn˜Y°ŸjƊ=û¯ÓòEóª“wä¡åµ³ñã‰=9A;xYXX´A" ə¦(¯&É8ÂfÞhyH4d¢}Ð1)Àfèô(Q݌ŒGht`è!!ã}^"ò)eƒ>é²bX4‚&+è0f0*ºš@ÞJLÈÛøŒMØg©%¥y❕ò½fR‘xDŠ8kš¨P¢'ÕýþPlT…£øpb$Ò]ÎI3ŸWá,ä.«2ÙteØ^րè9Jf[]VC°šØê欱t +/Á̳Ŭ5ÝÞèDJpIŒ_ô†õL¾W XòsAіÈÿ$WG]+JÐÙõ91ٱՏð EAË+‹( á¬B¥ +wYŠ=7¤,–å"°gþoÔ <›+É9›Ä@Ny}¸‚:ØØÍ ›ÙMÁÛV@ o{Kš¹mV0 :,÷‚ÊqãÄ3®‡füL”t I\g抖ˆ†bˆ6gé001€œ@ÆÀYV»Y÷2ú؃î{E¸¨)…¬I8ïê,x ÔW ”¡äÍ!Ï,åL³á`¦¨ÉY*ç]Ö쵔²VüWE³*DÃ!£¿™Ùî¥èd3£OÖò¢ÐHWœæP‘È=4’›#“Ò«³NSd5„0`Ë&‡ÙCYnÎÏÙ>’À(ÊÀYT£‘4ÂdxåÜߨr„¢ÛÖ(eðÔU²Ä`‰ƒÞmáœ2tK‚¼ø­’ڐ̚¤(‹Ã¾;«‚ç4£$ИXtÄ…Yý»"É¢nƒí$gUÏÖæñè¯Äf¬](kë,Úwócƒ’<ÂËI9vlðŽ;F —ÌJSP’““Ùô,Ö£ï ï*Ž·pàÕMyÞªæ\ÒM-NÁ½4'Ù ¾BMoÊUh"ìÙ\:j츿’D…zÓ”–Ò}Û^¹Swßa‚$Æà)E2ØМð51M¾†ø˨Á¾†æ§,­Þ d} SÁ*TטÕ•$/ðÉþʋ «¨«;ȚõEÄ7•ŠP0 žhå€"OJ ±ø u;ÊeᚌæÇ`ÑùpKVÑÂ+Iô°ÔF$o§h}]“!ð[q×$7 ÑG©$HBXkê„ë=‡–‰‹rIuïæÓ#2©;êbK9ë™@ŽEn°C$¿ûâ´ÚýéÖ´Þ¢àÝèÑ}•#(™¨Þb‘–\³j:•íÚÚ`'wçíqsÚ3‰.û‘†7Ý«‹ùÍØÌyŽ¼hô¨nmÔ eËF;yQ{¶ÜµgȋFêÖF-_ͲÑN^Ô^4×ø9ò¢Ñ£ºXŽÅTO o'/j7ÓÀ9ò¢Ñ£º¥QNu‘׍ä±v䞵ÞF=®[•D&”ñ´S$¼Ë‡l­CóVIš'Q¯1ðËO.B''¼d¦óN.‘}ÔZ¯„¼a"0¢ÉŠÏE¢Iˆãx»·NbN!ó§!ö†5¬œ7;Mú_ÅE0s²œõ+« Iªv`ö ¢É»VÉ+×mÆín™Õ{%gÈVÉW«j +§á]7*fáu5gÉTɺ‹F^7Š¾?½àl '>+­k?C–J֍yݨäê]7ù¢½uígÈRɺQ#¯ ü·nTÂ×µŸ%S%ëF¼nÔó¡`ݨcÕc]û²T²nÔÈëFçÖ¹ ú¢2:š9óýrÖ°-¥Sã¤(+Rëþd[ÚŠß9¯^—’%%Á‚Muò‚MõJΐ­n­-5ؾn´“+{ß ¤Â‘pxætIS®&¯w})Šé¸9eJÀ,5ޖš‘KàÓ„,qÑ%2úâÇz‰™¿z؛€(Jì~ŸN%ãZÒ-/¦Bꄶ±-6`ðzʊ·Xuwo)Â4µ8Ã<]Q++œ +¢än¹ñÅCL”è«Òó›S¾EFá8΢x}!ã&²J9ƒæ¬äYƒrÔgÍȼîî~½šã˜‚§Ëm¥äGdÂZ¯ñ9gÉRɪQDM„hm†Úr§j“‘Hà*ÅKÙÌõØ;‡Ä¬5†>cj?õ;M¶N¬»\9REû,ø!%k-­Ìâ‚!0€9³y­f›¡~²³ÖƸ°ýQ7ˆ¼î5·î^á¬É6†!òé"ˆ‘ÁÞ*aƒµX–y´L2®]LhMYwOÈëîYsëî%¾}VÙ®@ëÐãšÍš+ÉJÐù㚚X%ø¯ +dcݏÉqÜ\ïìÝrv%Å,q.™X¬͕Sñ7æøB,=O¤…¦f5s ¬‘EÊá4Å1(^F™ùbl¿š•å¼]<çè`¢\‡W‚å ¢lŠ0? +ÿT§¹ ÓâĽÖ8 y":âÈöIw‘8y]ƒNuú¡nà(ï=ö„I>ÔféHÑ¥œƒò_‹nŒ³zÒȤ®8±1!¸£ªê+Ε:÷xêdxÏ «¼·è½ð /»Á +¯‘KºcTƒòŠ³ÈÓtéY =•|¨ }Xõ~# ûlœ‚“‰{’ìó˜|Ñîʓ»èV/áz 4úe³‹e_õãí€^ÌY¾pŽvJþW¼ýFx{îN£°w/œDC´ðÒ2Aý¡5x + ·Ošš€†¶GNzjæl$FEXvü ΨZ«·Ìëˆqø²OzÅV€N]ɒ‹ý\u%£¦È¯à$·¯·tœbÊz¡.ò&¹Ö®Zl–w†7Pï=À(ž‘„«nfÊ.0ÓYÍÕ?ÞíTÇìDNKo®nh‚<<r¿ö½L]8©YouEã4èæJE¡ ä¿ë͝!K/” F½@-É¡˜»gˆ»Ô¯cÅ4Ş•Ü¢@̳­K‚± ý›;C¦^h÷$!ÊJj9¯þ–Õtò"n¹Wr†¼Q=mï¢Ñ FÕe£¼¨±2ÇÞS$7í¢ž¢°A»#T¢h†NTÞ´ûÓ}{À·…1ýÑöGõËóG»—o^ýö³ëׯo^>câîæëÇÏä|ñìÙõӛG›ðÉ4o¶ðÿ/~O÷3Ì·™©üâøåOà‡?Òï7qóãͯþtÞ<Âg:Ý  _¤Mœ)¯ ­jX£^s§>XRçÀ9€ Ÿ?E³O?“N}:͘v x;@Ɓ›Q™jsÙP’Ç€q¡ :?ãµahÁ£”Å!…Í/®±öñhp€Fû žyæ”æD&¬1É"HĚñÌBČbÎ-3¶÷RÇÔH\/Þq*DäñülJZ+pBiJ~èÈå + #ìђDLÈèوz<‰òŠˆt­V@ŽF®×±s•«@YKdPG‹‘)Ã25—Zàæ*y¸ +â÷‹©#?t°æ¢ŒXe…\ë%_×+ŽO"“.ÏO£9‘bŽV1%õáÑÁ$ªüùÂ*&“Ñ.@dÊ %DÜUD¤;H¤VïäIRBö2ï µ‚ WNÏ،ߗ‚yèI‘a²SÔ,ÃKæD¦Í:ÀðÃæä +##ý¡¡‡‡ºàø¼Tt¾ÖÆÔZùš{"7ÌÁƒSùš{&£xàU’¯( `w:ÅYú†ÉكÎeK:¯:_¾²˜“‰èÑîËÄ«ÔJк½ö½*²)Š—ÆÊ\tpjÝN‹ß¥â{xxhÿ ÆQ*­Ež%‚ˆÙEyÊॠ‹èyù{Y +Ž±‚Ü«>“©ÒNæ¼IähoÛPb ‘{0î_¼ˆÁWàU˜Üt ÆD2.0‘aLdfAÄÖ+  ïÏ ¸¿˜ó'—”C"梪â‚òºhª`b¨Íê+¯GŒ ôÁêÕ%†×Xs]xq/B ¹È“”C†\ª¤t€<3y–Ç(Qð©åݗýjŸ*9ڒIV‡G\¬s¾}Cž~v¨µ×ÓH]KE—-"ŽnIJ3G£à¢½æ“ yxa°ÏÇÀŠ.ð”­_ª†&ÛTE)L„“-G¦±cs™-äl®¬:†Vd¯½‘u™Z"VAð¤/zÔ)æsw‡A‘$ìüÊ] pçSýêžs6LòWÅòI!Ó7´òL¦¡;ˆÈ°£ /4ÌY;·jNYMâd¯´ÓɊ©¼Fe`e£?+ƒV‘=x!¢T þæ5xY5¿8ÊnÞc9sŒUHgxôk®Buö¤“ciåíÌuÊ šÊåªÜ­™‡¦ñå~L¬¢rèÖT+Vã{C”Uæ⤩Xø(…ç]ë*ÇQÉ;¡å’°¹^œ•Ñ?ûΗ™S¨–ƒgML ›\Ae¤÷ ÒW2zƒH¡Å(¨èyƒdúâÁ! •/X#¢î‡jǂÜ8Ù'JöñòedÄd¥=[òD#ë=Ÿkèú\ꨘ3´ù¹D5rP<7³4DÎYûäXs÷£±!ӝ·AžMj9Á§e 6S'rå›xX,ÊZãÛÈd×Z¥} +Ie"pƦ+kÖ¦\æC`c˨®ع麔ÍÒúj/*#0¥n-}·Éß 6]í)鳄!"ÿ®ÙÔé1zgi§é;ab¥"ëÒ_!Qrœò®Ò€qÏJ$¦ÎõÒ]Ò'Š’cb¨¬œ£e.Jd)‹µÚ +ÂÔ$:t¯ is[ŽÍUzù%K½9è9± Ñë‰ +#z‰âlOà–ÑóàyuÖK[YòÀÎN@RCd•7ôE)1†^/sH"p¦|"VÏ«:I +W®À§4­ º&ò‰YÖU×Ğ…¤«-GU[r<£¬8r.aK?=)65<ßaâd®€n܁¦Z7f7`ƒ–+f[Áùg¥9`«Ã²ÈN”P]ê ‡™P#Ë+\}Ðâ§$¯K V­±¡Y(¢JŠ¨Às²…&–”?§g ¡ÀdVÜrbmšiÊRDZX+£XZŠKQ°(£ O+]H-‡"$·*˅ðìL,!ɳ42B,Ú Zy{© $%3Ԟ‰^–Ȧ£öUÀG¾æŽß=ßO•,â! (LˆEÖ<݆zô¤óÙæ±ä,Ë»É2ÄQׄ°ß2‹gÅÚHµj_7'»¯ +”$‹#¦å¹k|je fJ¢´SYÎǜyžÕÀê…HZ©j|5D5 ÔfÚ¡)Z”‘Cš’•44J:&úL@°npÕRçñ;ù +]95gönE8J2$ËJŸ%™-DÙ}t!–ŽÃ‘6*dQväN yTÍ%5›¹ê—t¸8=a;ñ)?²X!]`ü}Z†d +b0ÃFô›“Õö²‰0OËý„ìMAí\2Ñ +2¥¯kmH̾ËÑ\e„Y,ût»wÑÁ4YˆìÛ•¾ +q–gKÒÀä:kĈwQ‹}oŸãí»M…4B<³ +Cµte¹ ˆ…¡™2‹:†±¿Y“­Ð;®"¢²Ü:ψڜ͎æ2ŠªrBô‰½XkӃM¯ö ‚ý#Ĭ=У8gRŽ× +T¡Jøϯ+æ,´$yD¼½ë'°¯Ë&¿Øx遟ʉèÊ »bmIEoSQ•¥±(9SX¦ˆ©%¡ÊTºø¨I<ˆVœ19ªÄÅgNLÏ£…YÅtR|MNv³ž +¢Xh‡©z|ÆÕK4ؾ‚j•dIçg½Wý³‹EçKWUW[ï1ä*8òæS³ åa²7vØæþì”è™-P—ëúŽðÞEbYV°ê² ½#„¬9¹èAiF³ØS!×RäTF“Âló_4ÑJi.˜¥ãâfFtÕî+f;v +R+Ǎð³lÂløØ{³Ë®ìLì䈗X†2kσøTÌRԈPƒL£Ñ ‚‘A2Ô1°s(õ&Ò0Ðð«m¡=ÀpËt»m?Èí†õoÒV[ÿÂg ßÚûƍ`ÞÈÈ$O¯¤Re®azÑñøPNfþµb“ú1¸x¢Õµ§Â¹ŠÕiÍÐÙƒ= Ntóâœ9a²ao¶ûX0GË¿Q¨8VÅ$ðu±CŒzÙþ¸&+!îМ Åuæy“ˆ ‚Ž°‡«8Ž­¨.œ¢:nöàR¡2Qà]µ¢',î¢ø’؉ +CMĔ ”ãd»]}a̸-œfÅÉ t&§¼l‡ú´ G*¤í˜ h¢™³×¶‹èz‡G›¢îÄÏu±Fše-‰XôLë&¡øñiötí’Pƒ(͘2®{j8!kÁ_(ª†8{DQêªfö0L³\’$²° /‹Çúë€3ð½Ø³âüäϞ!¼òúñAËȂ@=‡Xv!‰³Í|ôˆ}±[U…JÕDÆÇøÐr8ÐЉPÌf†’oút×vLg’xeÿQŽç9ÄÖLғø”¼‡PMfù’—5׬DŽ3©aÁ˪|ûí`;yÉhP|‰ÓÅFb¹I¬zñ?‘T„MüÎ$̈6ó‚|}»˜ rDW z ÍQñN…Ð#(g±*:N-T&m›¢1»Ün÷±M~±ÅÅ&_“®Êm¤B]qª&"HV!`Àԗ±ÞÚ)G¸Ùä•×c›góm;©ày®b éC¬BY,ÔMNÂ&ác4ÄÑã$€sxýëôƒ8CS y±w«âJa֐4(ª6­ã@È Ê“K¢RA>2„µ¡Í+ï× +Z»†&jøR…<4Á_‰p@«Fš(“ÂábbŸÎcmÀÉ ž +:E“\b[À—c&OõN°z®bø$óò‘Ò“Í2VÀ)ÁÄañ³Bü ˜ Ÿ½,u8æõîØîÁèڕ–Ñ5˜AdsWôbØÑEQF´ÍÇÆÞ øÁéÙT´kì=D«fÉ«C溱ÉçŒD¦Os"Ò9ÄÙA¬®|ª)F¤ z!Dl{†¬;=¶I¬¡Óq`rE…\ÊýÚ<¶-0€•™œ9ØÎÀÂ<+o†kv½ìšhuF6é߸ÀJݶ´€’‹X;¦yéÖ°oÍN:ƑV=›ÕP¦ßÇ ÇÏ1*+Êiuí€Ã€3Á™·‰5íÞ ¨BÕBÕÒ«ÖõÈNœPԃpO±;Ñ)½jû¹ù dRm@ÕÀbµïdj»ÓѲj%_¦ "£«8™rP&+ GX˜UÔř[竬â+V’ïÆWT;I5=:á$àÊ:V±Žõ¢Â¬pOU2D¦ èÒtx3ç«ãêW +w´O†bˆ¯B6o:xƒª~†/çwéåHÅPn­ú±–[]|ÌӀíÐôbIVULÄØH’W©“Þ„XxÉðäß-£ÇW^7© +zRø 7$ÓMÄJ®VS†Ý.\ ,¶<¶ÛíŽ+9©›Ü‹%xnbq<«7ªâáX\ñ±NwE¸Ù.t¸Á ÂAÓsÃ' ÆBØÉ\NP…¾‹%ó£ðÌáÜèFÐ3òÑ'U3¯ç&n¦ŠUÍ€ôXòvEr¥„ó€ØûLGF@•+DÕc±<·{0O|“9‹Åñ”f!(× yëçÓ³† â:Û~=ì’"Hý$è«¢woä §^³p‰ER\ƒªû3}6TÀ²…²ñ¨öû+ïB'š)…Iî¬óëŇ«O*)óªÉo&Bõð“P='Éj‚^ß.”7u02F,%w']@nT}¸fUç=¥D½ œa:W!ÀPã|Áە\¤Òĵ˜–ÏƖ±Õ#xH¯ÅÍDзž4*”¯ŒQÇðì8•¢m/ƒ«Æ4„Wö¬|º`þ¢ !Œs3RÄE”ˆ8²+‚íC +:qf‡‰cÕv™ådiýza„‡n»cú‘©l¯†„ƒ¨=ç*n"“Ým›†‘a¢¬BÜ +`m(;^=ñL™Õå!±~7­R¥ äh È ´Ýƒ‘9Pu¯cF怢}”£[„·q%„T§”Üȸ"F@#ˆã—ÞÖG’€¢¸âH])SÂƀ luW:#t¨dX>-±[¥sUÛð¥Xñ´íÁáKҝ݃I*„]0¢$Ì2˜Ïð]w6|݂£d{c]«1@'†Ë¶¬ƒ)ˆEabt:©ÓÇ äå,àô¼V¡¿½Yý[xl“5%ˆo“ŽØF°' +…k̇²­Åc/ÀgœñcҋÐÜ«8áYø/‚–?b!ÀçZ| ¥G˜¾LýÁ–ïö0¶B˜‚Œ–½ÞS,ÆýQôN`aoÖWtM]áo·:d¸ª/‚¥–I‰&Õ q„´«0Ñ«°"‰ë +bނêâò§v‹Cˆ9ð:…ÊNqÏ ¼ä"ÄîÂrƒv5«…ÄzQ8Ô&‰/Âÿ$>rsmëYÄ®‚–¸ÖV».«ÚÇÀ²†8 ¿SÐ@SFhù|š§BÂF½â"Yf·šq˔ª$ÂpoPË£T<‘P»ƒ: dÊu0 }6@sFt±›/,šo‰Ãï¸Èê„×m9ê£îqf®ÛðÅòàéø7ßÕ}—ß +M­y*Ñê¡ç‡öm¤Bƒ +.v`¡ZÜLm wގ2cãçÈ5E+uÅRaS½ÆÉ]Bb*¤"+<$4 Éô>¨F1ᮂÜOøy©¦U¢¯Ñ`f”˜œ«5€ŒÌàáŠcáˆquŸÅJaq¸ž“E J´ÕÖLPZ +c M«™Z +f«(ìšPušŽ&“ˆðT:ˆ$‘R5m‡—qS%©“ ˆ2248-ÂiÛ© €SêU BÝb¹ªÇ‹£B¨PöXõápõ8‹cJK•ód“Òě$ëº6aHÓ4‚d´4°ŽtKÍuꥤa53xs(/à’€¿HH™pWáŽ)Ý2–Òú+Ý.ðdäð,†v•ˆ•…]uƒÀößÃ(% 𠖓\gv +Diè+La:$¯,mh4ToAþ( Òn0Èa4'#³„6Ü| +Õ¯–±OóBzÄâœÑxeI¨‡2]WâÆ!¡.2ýÚèRœ‰j¬Ëh¥8l=um/ª«9?¹ò—ž¯6}Ö®+eÜàšÛ«¶„’­d04Çj1àybòԃq 2å0ÔW¿ª‹æ«­yºšXç×v”®=v±Æ‡nS)¤d±"W¨ºE”J•t;Žµ¤ï"P# º W5ªW‹Ÿ’ê@]z3¸‡ï¨HŠÊ@\Õ0¹®-覍"V:«Öc‰@JÛ#¿¯fÙAB¬H¶ å@"— /XU/bâüÍ8TGè*‰/‚ÞÏÄڛ.Bõ_3¿oòo€ôÐËB½r&ÑË"nÒªQžÊˆÉ!z•«?CoQ÷0‘™ å©%ªWs™T-Ÿ™¥Õá6Wg"Õî.Hà$B¤nD„UIœ,Q0„§%ËЈâ!ÂmA²¤Š½Áa€ä‚–72$¥ŒÊSÛá5Œ(wÜïQN&´†ÕȞ+Âښ¿‘¬GiL'#œ fbiPb]³ƒ©ÍþÆÖ,ízJª°áèL–HKbuPys¾ÓTÒ+$¾Ã¿à•GŒÅ¹-»3 h2E»ÐOJ*µ‹6Çs}’4 Ò£Ñe8ÙÊÐuìÄ£®ëB£G?Ɉ´Fzà¡¡GÁ×-~æìŒïÑøPÜ£ñù"TôKpö.bâØJ°DϙUGb¸ÀaGÛEŸ$ ¶34`@ôD†F觗éíß½yS±õtr!EíÖÈ#]6w422›üׁ6¢²Ô˜  |çú¸I¿ 95õÐQëƒq„n– EÍêEßþÎóã´ 0Ǖ›ª¢Tlݚ¨g©º‡&æ&jVh]@É8Í£ÐÑwÐl¾9*联­§‹Âº ïMWbR»…á>rÆÝУa„2l‹AZêz$œ›ƒ5‹µ'‡/ž mµK‰ÄfHSrñÓPj +,”£a€E˜TUp¢T ÝÚm}+°“^Ö±ëÆêlu²ö€ŸÃ¶vÊ÷*s ` +lZÌv×tÏnq] ²ŒŒ…¤ˆóf*6 ¯N4 +³í“vÚmðÁU<¾“¼©P‘©œU$­:hë8¼[€G„iê¶k3a`°Í.?fÏCâ+Q@nÀýÅsUÈÙ:˜<ˆÁG[„‚̤zºè‚…ÆG ñçžÓØ +†^vh_Ò†1,§»Rñ4IbßP#ù÷ WkTí¤ê$ø¬l\s ‚Ç,tUegfA§zØÐYi‡X~Z%LœQ›iJD­€xÖEÑjµ" ì*’ZE 49р$˜$ƒƒüš-¬%‰¥Ž§«ée5ÛA× B­*ÒVù9Ñ@,8J€¥æTHzª ” á‰ã÷š5Í(w9§j‚.ÌsèсP²Ñ² éYqøM4d˜:°Æ`çÖEŒéá€Ï¢öNb³˜ÁýW-“ +‚®‘kˆ ðRXJÜZ5NœqYÝZ•6hRÈTµ¤%Gà³4¢ONƒ 2<@jÊïÒK³¨,aN"àâè°Y8°–g&[tÃE¢zkÀ5˯ApYÍ¡²àJ6 ó~g^·ÌŎ¤•ªÏjЁ„ê\Pº= ¬N*§Ê‡UêrÆ@‹’äáÉqo¿îvô:½ÿè×ú\U†µ©C]ò´ñóÔÝeÔÆ¡Š³qòmÅGEg‰B_‰bĈ]Là)–“1Rÿˆ'Æ;–ÈcpYÖÁçB7hÃdû4X +²}XTe@«…Ȫ Ãy¢ËÂÉÇôÖ5+àˤ¤S…Ý{€øuœ‘Ô@ü×k”‹©º ‹e1;¬¬¡Æ·î^øG”º»«EõÈ;,¼I<Ø>ÜË5‚†­eËöU#cÚ#ã™V¡)Î䟞·WD#±¢ô7Rkªp]¢AEºR™Ù#ÁÔAnûdsà±æ‹7nÝ*„ZBf×t¡*B´<@½àMŤ¸yC¯CT†ú«Pª.R°<àÝefy@d<³œ˜g ”›/çLQú›y†³qí00¼ Ny¼çCŽ(xYÅÌB  «ˆpAö¬F¢§i娾v5š[Šá)ùl5÷<…Î ÌdúçÔÜ-‚>åÔ¥`AÀ"1ÒÍ>l4¡ÆúÍıâV.È.–¾B‘¿pñßCÎÐëã*| S5î¤3;²Ց, ¿¨5”ãl×Që"‹ç™…¬a¸S"‰‰FgÙ¦ -„½G^ù9 +sŒœš +í²ÑÉe±{e»“²õ’çýʄå^H.™o<ägS„jÔ+‡Ð“Ñr© îÏIhm6Àó›¦9ê¯~Ì8b{X!íY‹µébv:4õ,3©hгLZu'±XŸH}PHP“y¤Êkڃô $Ô½T$f)›Ñ끪™¤àU2Ä2hï*R´]1_o®cb`çã3cúæqÕX¶n//D?"Ä ¢¦Ô_[J^F‚—Âٞ)âxÂÁåô»á/>T1ì2:æðq‹‡ÝO=C¼¬Ì¢ã55o}0Žï¦”S×ü47uï@¿à« xK™²¡ª üL:´Ê 3eYžv$¬C>U-"­Wk†óhšBgãÒ³ƒ²áR²il §‡Ó| žÛ¤Ú¡Ú-Õkf3 ônHQ“h”®DÒå±gl?Ó³ i`KéÓ8¤ôEÍ@ q¥¤OŽØ3ñ1€õàÀÂuA÷.Ùï⠈SG6Ò:ýãÂjvÎ¥qN5øc–ßÒHË÷º–) À(ØMÉà¹"òì”ÛFó\€IåHˆr€é©&zJ—՝“!„òŒb„«ôd´‹ìñT!eCD#®€öš6à‹dPúîÅ:Ó`Մ¤Äj…Ì|§òó4}Ä^H¨Ø÷da_ÊW],‰=Œ4Bˉ*Êë›LÁH‚ð!(ÆóÌ°Fqhˆ“LD` 9Aµ!õ<ëñ›¦hÿkä뙫ýèdñö᫐ҀAHi¶5†°a)ê+GÓÙtÁÉEL²vX ’óõcô²êc†]¸ðHlzYµ“p¦hNÈ,ñgô@£8êUܔdqùhB#õ$T8Í¡„èäH@Á2Õ +ˆsqLå2h:=Õd'¡©X>Á§Ä–üÔ<¦±ÛàŒV@Ãé®LXÔ±•wUp $õeóÐÚR3´N¹á´è+<7Tˆ‹S'¤k.GpnªÏ‘EƒŸ,Ú1Y?YÙ;"âX\WÁü o;Ì[фI¿ðd2ê·Mîl*b% x¾—LrÓvî +¶ÏÆ"HíêqäšÁňf5¶HW¹2P$¥ÀZPoH¦²WhsøH̲(xUNȁç …p”„þ&qKz…U%c`!R!¤â’;ò¥Gì?„b|ÓTLøÒ]±B$̸ (àÏU# àêbUM3xá`:8"ÌÜK\®Jm|¾µÞUÌH€ûèÙn¶BV…ÞͶ´ÈÕdÖS½Z.5ÓǪ…R©¦²QŒê$F[†~’ªùˆ«T!¼Éƒò†ÊÕzK¦´S‚K‰;:V@ÞEß¡I`…*˜ê™V&ŽÉdx N IÈ©Jœüڇ×çT©X©dtTµû+ +8 ëHÿÊ#© †Tz9A7]FÁ<Ü+\Vã +¡”ÍÆFª “d·ìÅÁÐxè'TXYõžbRš-›ÎäÑ2Ø£’AȨÐ.4ó@RC0”d $Z]“RíǪ½ÂJ1|SÙz’q­Î3nĆȭÃë°#³á¯¸(µ0yß`jyf°Ë*´r æ¥>½lœ>JJå”H·nÀ:Z>}ÚÚºIő™ #VP;4БÚPÝc1ká +ÛeÁ4تœ-FúF}Sí‘Jšk˜›+´{hd1b;Â闤 ³°ô³ph1GhRePž­Ð‘Dœ +Ò4]žËTs7s$+k%•ì­°±* 2¼zÐ¥é"¤‚ÊÖ§cˆ +5%Jµš¬T£bq‡9 +{6*ÈaÖb§ü¯Ò@r£df›Qy' +sôC&ÿ€“$YðHA‚¢'ŸÖ‰R¾³ˆ¸Ç¡BULilf¤ ›Έ­%Knô'`ÒHNlӡҕé<6;Ë‘¦×UX™¹fù&a„™S„Éœ0‰ã€ +ê~Å$ ÕàŸˆiúæ`iŠV́ԆqLÄIõqÄl³`š"æqÃjî,?Š°'¢ƒô6%ò›}zÔ³ó$mÎb1„lTê]aq4¸U¬| M®úF¾£yÉðݍʑD|©*™Æñ€)RôTÖ­75ÜK´Æ͓3JpÒ'ë ¬jŽñbÄ Êå@e¶†îÀè|†e´ˆ—iL'ª­¡šâòð¦é!nKt .ë¦J%S9X8CS)±:ÀÐ¥eH¬¦«š~‡*v¦ÛkÈ0: 'gñ}‰°xDàF¾À"Ö,v#ÄèعÌ B ¶"*º].êX8TñrSaÙbXêQë€_ë +:†^Æqï€ÀwÙ`Ô[ ž °4͌EÚál$âÅ;”1\/|Ö2ÜŒ,Ñjd—¸‹= ²“ß)†é‹ãJŒÁ@qyŒ  RõʁG3‹ƒ}Ih E›™†ßC)²oDM17‘ŠTà`N¢±F=ÞRùs@h2jˆæÊ.¡¤¥lh¬†¡@ðˆ·ÎTAE4ݶ¿` ÆhçfìÓ4+à·hõiI\±9ë_{¡&"ۍf »¦á”™§W6’ŸˆåÀBßPÂi¹Ù 3 ÁÍáû:°èÌ(S‚m&gg"®gZéwÐNp¼íÐMIÒJRhW©‚ø–Uº‹x E¨UÑhl%vÝø”‚ØP«ÁC‡Òsªï/ü#Và'7ß,Æ¡?~CÑ m:ëw)íV«l9"|¡Xál}b ®F±(oÈC €gpƒ—¸ŽuX­øê]©CB™ª]B- Åjl3јþ¾ Øƒ•‚B1Gݨ–ØÿS±Ó¡BòvÃUˆ°c¨sxPí‹`œ| ठ+LŽUO#Ä$cº9ò×áêyÃl +ÈfqKÕQx1}ô $4ÀÙ¨»¬ª«–Fs}ª‘.×)T”CKÄr‘ÒÊ0‚ï¤Þ0Z,‘áø½3.J|ï‚zl8™P³›éEFjDâl[±n°ŠŒ®X”ÖfŽÎi³Åé¬lciY¹Þ¦¡öQbƒ`Þh² 9âG!YyV-spqQ¬ZLŒí?Д‹`µ’h‹0lMaš:2©Ñh·”Í9{—ú&H#ÓE›Ä]#ËKãßÔCk±…„×PLý µ]‘h© +|DÃ@ ÑâÄE`:‡*Æ­U$*qö¸Ìôæ Q¼*z†‹Ž(Y1ô¼¦ß˜ö—m5g§â?ijíd–HˆæI)âkápAæ¢D²(wÒ@˜8Ԇ0Ç´5Øt3¿Þ@ØÁWGüzæ”+W§)0ø(gÊcƒqüOÔ[ã÷šCBþÛøbÞæ¥#hmÑÂEŸ<šÜôQÔj>fÒäìST*/8¨F–0è^«€*DˆL‘*ÎB™¬h.VҝÄÍ8`  }¨bÀ›¨•&6’i$C }¢KU ùJ ÂÔÁbÌÜDsí&îaD¬¨Š¤Cæ‘í'g¾˜ÙGå!ͧ¥¾.-jÙ"jfR GTITÃïöœƒÂ<0*   J6Wì±¢<*ªÒ€hAF®µÒLçUê'B@‘ÖÔ +zÐÃÁ2|LT‘$˜­­Q;o$›¼óep5-x£=) dә HЉ®ÓáÆú’¹DÎæ×ô#‘*Ú³ˆÝ%‰KòᨅÍý(+­Øm •ƒ:A\‡ˆúáågš\YI«!2g$NP@[½ñåñdAY¥œçGŸ×º¤‹ppP;u·Rzr‚>•M‹&î±ÉÕXµcáfb&/É=‰MmmYªL$0SfâˆÁ÷p6La'ÃÛÓø–*1 +¢ówÁŠ‡‹Zm8£6L/í (s,-=(6Ù'QËdʵHùéŽKÛï-ìY4€ˆ™š>*ƒjë7°¹‰¯Ç”˜‚†TqjÄ ·"”³ wUD"Ø¥j⎬!˜ê +€§³›™ÏԚ ‰cQ8Êù†¥±X“§sZ&’ï(UÖ#¶ uŽrá5²¨{K dö„j÷^ŸtÃÌV‡; =.ðQòš–»i“@[г–/W×Õ'-Êidñþf:rüˆJuÛ΂mš¢ŒßÙ6 ¹Q„,2D©ÕjRøۍ PJ+Έ֣؁Y˜>—‚_91WZ‡ÉHi½–|gLöÝbôݘ0¸ß¸j%WÄØDI$(õÁ¬Þ-PÖ,‹Ÿ«=``ƒ›3x-ÕuŠšQW·AIÞ¦¬©AÂ7´5nîÆÍUÈy ܤ”é’¯œ&$ô¸hˆ¥lxoVQ±ZÝâ:ˆ]Ÿ<+¨3Ïíâªw­Cx¥\¾ù°Í# Sà˜†¦NŸ²àþ +#¡—~j8ÂÜläw¥Ñä„cزJÀ« +6A3?Ÿ HÞBN–ùæGÒo~Me(Oùoj ÓÉP,ˆ¬´T2>ÿ²§W4˜Q̧ /³b 9 È g&»Ž°Ëëp¨b€ˆ›•ðfÇ;ò‰±ó8d…sy 2Ù̈́$c˜’$ÌȹD]nFÈ"x¤Ò¸lˆåf”"¢ÞCÄnȦ:÷ág—-â°àq£êš3"^ƕ#‡ŸY¥dΏn>7.`4 +m¾®ŒˆáïžrV„8}èCÐ*€vÕ%s¥ P‘Î÷« îuF`8FQVӘÚ+%xP´€Îí쮫ʽ°ì”PñF÷®V´[E•ÙL\ÑJâ4ÿWp.úëQÏå©Q.Û"ÂÁ]‹Äz` +ÓT˜@‡¥ü@^»–*®<ñõ:ã¦éª3²[¼ÔÓ/°1/uŚ¹¹7œ¬¨šúd¡Û ÔÂArwEؕ:Л[‹!`•öeÜ +j#P,-ÉÛV.#¯5fi¥0Áäõ–óãã^å;?€xϜ´Ò:Hµ’rÑÑêÉFf§ß–˜b:ˆä¢ayXl Hÿ¢•@Liâha1ñAÉêá~ÍÄ£ÞÀ[dŸdՓ=·lˆ¨MâJSã¼è—¦R»Cñ VÛ# ]"Z0 hñ<‚CÉå\ƒ䁓2¡aMæ¯*ãvA±@<« +“˜UÓF»™ptæ)}R£k»–œ$YNj¢™?$¥ZwÖ‘q˜¹ª£2Ð9“¦l6ðwСݱŽ¬tHC®-7.«AyÎüÊz15Ìr¡ÈÂsNºlš¸¹hgÞP›ÙŒ›Y¹š =hi¥ÆtÊE¡ÚœÎˆˆ”~ xôŠ‘G‘Î.!ZD([H.Ð¥1•/ºvÑÞÇ=¡9ŸláÂêfRG^#khcâ&ª3–VJ0ÎüxVs†gÀΨ˜_/£·~ÐÛ¥<ŽÙb’MƒÀ‚Ĥ€ƒ­iО +:Bw2f6ÁŒ%YìJá»U öñˆqHef½ÒO2Öe̜ÚæîÆZaê¦çÚ[æ5  \×E뢹®Ü`•Ì£ËµØw³øè|WnÎ" +‡AõW§POv]wÐ]½E{hXË`ÿL;%ièÌÖS¢-%s¹7ŽÜ oI£TBήhÔøõÑp8*΃~oäô¨*Õ0£¤$ÙÆy€ž…œl( $ y=#cˆ¨ÁÝ8Çm}¶²‰–“HË\Yõ«ÕÕåýÛ´Ñb,¼Hs¼²TF ‰j¤¹ô3­MQ§=ëë´¬¢²ñÑÅÑå¬Ô›UœÐ¥6ð“÷¾íµ¢‚¶š¶–jÐ*ØqÈö—Wtl­†qáÔ(’ðŠ(ʅ(büÑ•±» —s±›¶Lyæ^)ÒôJ2ÖWä¸à˜FEã)tYRÐÒÄZ<$›_ŒæAA\kÓf·[­Í)ôÑlgãôÝtQM*|ÈA%Q¡¬'¢R]•ìb»;G%‚Ýh•è´5ÓQ‡P23JAU³u®‚B9 v‹—Œ¨brPZfÇgìѤtUûäV9´£'ÝØ! å çêLE3¦3>Îknʽ$´M6”z[µt.$€t:o'«¥Žò‘Õü˜ÉÛ”‰ž‘òHMEɖ/oáj_ üL)”vÒL)Œã"-¶ÆÅƣ΍®”ÁalÀÂ¥ÜR‡‰)tëï“вÚXð.˜ùS&.yùÐÀ('‘’¨HÉ®F¶‘@4Áµ”µ‰d_·De¢@ØÆ|eĦ½Ò Š:ٔš­0ӌµdú €0Ò Ï®#o8›ï»pÄ@i“"GŽ4Ú̒‰êIˆp_Dû“*0ômµd)×Xuõº® °Š Àa’ÅÙBv`,(V¹zØ]I³Ö6«\·©Š3 t$ 0Ƨ¾Vó«T£ô¡gs¾r‘‚G_áá%&†}Œ‘h@³*}±´úT­P¶ãå͈ YjÀùð¢ B¬ð%"0B| çIk£ ŒjÏjaééjbÞ³ÜIJ“LŸAî^êV0¥¦)‡~оr„=(Õ¼HØãÝü Å*„ÓÇÐÔfú+%ȍ)#D;’*1-dÌ7Õ\^Ýh˜Ö#`Õԉ£Ž]ªþÄL–¦b³U å18ðˆ·°4,QoHzcU£)–'áªÈa4  Œß3b%M{c\¶H&)è«ØÙ" x³¶'bÑÙé…*xÙ[Ü:Á}ˆ2ÊdµdKòƒU({xÉðÅïá·£ƒJYc½X2—ÀC…ÚeŠeƒñx­%Ï*˜Ù«7]קYÉ#[“8«´¸Ih㬠+Ùì™lœO¦¾&³xÞðhfouìÓè‚7o9gnaZÌ«^h3Lú2R²Ÿ¼¿Æãê-ŒR&°MShBéevHØ⠏pš Ƭù +e]æPÅʎèGMp&ŠÓý©|B9‚’ý 6'¼ÁyV’½¾j¾f™eÄp¦5#›Ð £E{Õgß%¡^«MQ[BÓdrþ]Võ½Î#ð¢éœ&íçÙfÕވ¤½ÁÚ냹{²•¶àÂßÞh=Š|N¤vÉLoªZ <õAdÕ4³Õ ††Ï \Ž’Âø&RºQÞlP.*G`ü{Þj"m|°h…w@˜Ì cc$³e½dò ¨q춦^¥¤àä2§žÖnƒm6™Qáh›&ÐúˆK.^Ó*Æø,PôýD.Ftƺº¼…hJqŒ„Z{ÉKZðcm@±Ô¸öŠÝTZ#S… ߕqѶ^Š~‚Ší’Σ¤Ý¨°Æ,ÅV%s»UòV‹õvKÙ`ûjyúâl%ƒ5ZÛã\ñU‘‚}8Ë©x!Jv#^—b^*²µ„¼¿í÷Sǜê%µÒ¡’O«Z$9BÖÎÊ ¤jõÓÈА1ŠY˜èfÅU™¹SßåQæ îÔ,6©\+¦”Yí]ÆȂ5«[­2£±”)ýBU¹:úUŠÑÃI”²)‹Î(R^‘FkWÑ^•¨Ï¢G²dƒW= `FG^ cmetäÐpÝU„ž“]íF…`$Ê\‹_Ä҅øjnÏÛ@u–ছ=ZV½·l.í™-›1@µ;¡o†G +’݆ˆºæpqSÛ´ i´ S¢5¶:½™n‡jŞD–¼,nìåˆg‹pP«Ê˜@¯R¯B”8 Æôm~ф0¡64ê˜æL“jn˜8ò³Èi 8+v ûäéVq’Ìü?/sÕî-˯€Ñˆcåp¥KŠu Ùdeª 핟Äx«pCíچE1kLvñâìeçÐìG|œCG³;ÂÑ$–Õ9æ LµIØÕM{U UA:~JßÆÐ3œYLðz¬ 8‡%Šúfì¿AQY\xc¾`Ô¼}Ýb|Ïz¹ÈPðÙ틟 Íf:FÇàN–úSzGP›ÇI\1ÙIè~ªPJîBË;`π¬X-úÆ©¬ øm?•£ý•pp’ö¢’°òœ¬•w¦$íFuº8°ŸN*«(MoôúÑ)ØÐMà3Sþ6|p w «+L^bÍJvX‚",NŽØ&ÑÒ>©]WGÀ?YŒÓx#(ÉÙA ¤b7,[BL†úeѱQödPzÍ8‚`'B|ˆä +ç í{ YKÓpqCÓ$¢0\Ð43Þ°Ñ|‹pÙáÛ!9u¯a©Pž’fŒwKKÛÑ»t3”+â1¡ ›ù +£€_@oU +¼›àñ$ؗf«E»·/+Hp mV(RäI\04>> †Îgâ,ŸÍœ«„IÈ­[•®:.$ùè ìhFw,é˜õMPø·¿&F1õùx+6Š%ÔPÀ·Û:D&¡3›Ít'9H¨P-7UJ %8Ha΂¡L;®&€£G9qémV4œÄMrÒs;5–Cé&ÝhÿtG{3a‰‘°brFÙ$w ÊU4€l°nù;\8z°'; &7Q5FX÷¨»Gd¨ãIã/Vûor®ï /äk50÷@‹9ÓÈPñ‚XØ;L2°\;úù‰…ç Ï +>•A‡ŒÅ+Ò³êYwbô¡¾NÝFVmå—MôºÄ’ø´l%N²>eÇnü·a:ɈaУΉ® m€:7©Tº`(ͺFØ"JúL+ÜO¤'y„¦P‘*&» KI¾£«#cšé¬›²pñ *­ÏJE«J)ÃÃ2¢ÜdIÎ\ŒÑjüѳC}ëÅuB„;4}+gE3øaJqz ŽŽŒ#iB·:ÉoÈØý©dÕRM1:nÛ¯0l»ù~ñq®âaô£ÜŽ3_Ÿ7ïUr“yÎ+B<õÎÐÞX¹Æ BÙ³PÍ/¸14 d•ìŠ@’UEè|ƒÛ<¹ü€‚Û;IЙD$æ[Ê¬X"=©{ÙÌÄäÔµ¡5¤6òV‡™ +NXxi*CdEVx‹WÔ¡@@-š+"9ËÃވ¡°N9Í'«)È; !mèSðÛгÊ$B†“É°wÁÐabq'Ȫ©ª $ȪžQô¬Ö׈S|GI¤P#¼Ï®)*5&»Ö@³Ê·ÉŒöè (À6_ä°hpbqEûÚQâh`Ò C–¿„‡„!|¶º¯6$óZ„p% NŠ¨\M³e ó:­¸„*l“ö”’]äÁGAš`ÄÓ$´@'·I¯µñ©¤d^ë 4Ø° jRbÅ]-õ&ӆ]xÇڒ]¦_š¬. –¨ò•SqòÇÙ¹|¢cÃÁƒì +WÐX¹´„Bšd‡¸1ß𠦹¨GF•ÙiѦËKoÀ»FōdMy“,‡Í›Å ð„Œuà-Œg |Fœm:»„g:‚hpò§ŽMfÐé­<qrs…«s¬¨‚1Bs.[Õ*-jû jÕÌN”¯¥²WÆÏÁ.H@ +®#›ùÉAȺ Άf²Z V‘Ëû‘ˆ´u³M!Üì§B!œr±qƒ´ÎB+⁄ü±ãváGGMNCbN¥R&¡Ñ·²ðñõý"„Çò;„@¹&7ü³s+ù+~FДÔ.T äš|¥Cǃ1Æ5~ͶÐP 1¨PütZ·{ š5a¦éPèY6`s£QÕ©®Ž~"îèÐò&5šSMdŠo½íÐz¡,èBŽ£±yMˆY'V[¥eP…Œƒ µ¤Ÿ%óhQÅê oPoäv_ÏÈgpQhEûêÔÜ¥V3øRÀ삥i¤)†î‚µÚ±¼lðÅjÂ+s0>Q²”0NîÃ7MP–óSŒL…,ˆ‡‹–u…ÃëÛÖ/âÍ¥ V %´LZzDÐâÀùŸ¢¡%P™³È­fh‰`¥é¼.€%§+ƌy¥:-›ÔZ㎵Q–Héiy|­ïŬ×âTmeª™ôüÞjV_Gáÿˆ:] :W±«‡âƒ¯õ¬Gå¾¾cXl”5Ùá©o8×}3µ¤ˆhAzcp n·éÈà¢â…Ø0;BiK‘(óÃjÓáõ õd¸‹ìÂolýFñ•FÆÄhÑpÎFòÉ&éÝÊî V‚nœ!Á2· g;«-”áDgmÐ@#ÌS]õ÷`úH“qÀÑ\i[©Nu9؏{®bC-³ +YiV:e(3´°ìÛ9¼¾m 2Z®Jîísø1Ò×,Ã<ÂkÑ!¾s„®Anq}Ñò€FÏí`>8sþpo]kFu¬N˜iҌ ¾MØqÆÿ#|€l·æj´Â²-É!¤p¥¯ì™7{qê™VÃðÁÈÉ·]ýqæiN—`Nšx7v*¾ôÏÎzFcå%qÆmÈO»œžY\4:±BaÉ]fV\5FH¢ ÐoGÍ&ãHقæ™kFyÇ\æÅë@Aۈ»Ñ¨¢(›ðg…u3Œ_f6zrÖ­ èàÞ ÑtTäóK@¨çQCêÊÔŠÔ$‰œ«Kµ9R/gLìµøÌ +)@Ýr=Y³å(©‹Õ'H£LZ6 #Mh«¨¥Ü’”³t}”àL†Ý܆¶Õò¹ŠÁ@ž,A-Ž"7SqälµÓēDÏ*U{á €טöᦱa +F™¤5Žã!#/‘‹©?¼¾‘Cû¦ê6fšWlqʨ÷¨Î _¬Æùš Ÿ‘oRkhÑXFé̜ðs¬V¦/úó¬xÅí÷ÛiF¹ÊÎ@|sáƀ9ÅÈð¨-ªv+bÕ¶b6l ®}ùð¸NŠ/<Áã­@‘¹ƒ;r1ÝH.$¡ÕªÎe©ÀâC5\#ê[]­ kDE†×r*vœx¶UŠÅã%j~xm‡ö-àA¯Â‚‚o4 QSÅba¹2*ÄfsÌg1f[/L—°Ç®¥è4ˆ VñelOÄYíÉÀ + +l`Lڕ†1kZa}v$yƒÂ t‹ÈŠdbhZÒփÝ>ŽŒÀbÂ× ìõ žiy—Sã+r«Ð`: 7;‘êÍ+@BKvLº+¶;€)kӈـÀ‰¯ª*M‡úô8x¢²;q[(MqTq×:ò̪3•—A°UŠV¾Œ™¼±£4‚Ânwwä0ˆ<‰÷ y>ð¥©~ =-1²•@"”H¤UµÈ £ŽMpÒgCüo¿ì±õb\žüÈù7¿.kɱ4g„¡òz2äév»x¡³¬þ(X–s©*Bh‹Ñ +¿%7£üfÒèžhS)Xf3ŽsmеŠÌm"˜ ðp¤ +§°2d×iç\ž‚äۍà{“«2mÝtœ×âõ ³ƒK*î%ŽõX*¿þT¯Ýáõmã¥V®Ú+±>†„8z5 M*†-* @NVel"1%F\ÚÌú¡·U"?¥GúDꀷdqÛÝÕq”d”ùYöÎU¬<ÆänTÇZISf ÐêW+XEâŽ*‚€P”„ð¸æSI g`ã +V‰V–2K|ûPÅ(S-PÆM4½:³&½”ÖC"¾5ÀG‰Vò”ü2²ÓJœês¡rÌ"tæ刖ú[,‡Ý ’Š‘/å‹(B êñ!IâQ¸ÖÉ!Y‚Õ÷È .!—'[áÜ¥ +ÁÊ܌ò҅¢¤‹ÚƒrÄ¦*ۓº÷'}˜„:UIÜÏø¹7->%Jôµr4ŠÚ"ib„+1e1t”bpP:q«M ʦ$#ÿ þkÍԙx™æEëu$ <•€<"rœª¹B‹¨c`Ls‡Pê‡ xc}ëíNÕ7^Òt,°šŒE»2 ‡Øbj%ÎZ2iµ ¦Øš…b˜æ†Ù|ô¤C·*ó-6æ’ë£×ÛõY +âã\—¥ è΅ tß«Ý–„ØC…¶¸FQ‰R­Ê­,ªP 'Ëõ-£Ìf’=7P#¢ùjxp¿j9KÆÌ^ƒñcÑ×0<ފâÔ „É*£’Л*uRõRJ¶­½j°:\ÅXUj˜<¡Ð *‡y­,3²KHÜÌõ¨CԀ•MCQ‰:6>ÝÀVoe<”I„É +CWÁVã€NI0ƒ´ n-2.ªa€”ÕÙÉU¦ì’E\¬Üj©¨Q^Ì_B'¢f›V*ï„zÈÎ-}*7xŠA¬¸ÄYÈÖ®o¨$UDC,mª)\”¯¼4ÐxQw Db«ÇÆñ·C¬ÐˆÃ¸E˜Ííˆ*i¥ '›fN#Ú#ÙJ [ŋRªeRu=j +Ðì\ÕN°2Ý,ˆe—bë~|ˆ’7ŸŠ¿Q·ª•õ ãD@í`2X²·s&Y9_¬{:¨´‘Öý¾VPõmû"<Çq™áׅ—««ŠS –V¢Æn&SägQ±ˆnÕÏ/»á*þD 3LBäqþ géº8r«²~×h0×Åv³˜ +G:ƒj%\CK¦ÂO×pÅYé$'ŠKiæj‘tñV—H¨Â$n8üù.yÜ\jA—ªGj,u îšíîBíó n¦[%uòdX²âm &ƒ¯Ütµß< ¡é£ËJWÛ(U˜ ë¸Õ­ÇÖ]=¹(LK( ôW+¨‚á×4 #= ÆÞ¼ÝÈЁ£%gÈ@iEž5ÕxQ²«ÂcìçahÀ µKF‰_cy²jÛï¯ó7Ÿ¡Ö1u¾×ùNæƨ ?¼¾våt %t-“¸!dØIV rmâ.*l¦¹7+QPÍ3åŠùíjµ›TiÛ=ÛÚuD{UGMp/ð]§`ëݶ(Š ó X(ú‘ë~ r*‰ÅUî„Ò RTÕÎâþ¸j]ìláí­*qºv!jq±¡‚YÓ#qPµu³i¹5>C£°âÊ,ÊPR­êJÍàõv +µ‚87‡ƒI³jk6E9#Q„d ÝUG‰òOxÎà4©]ðuI,w Ôn0./k»ö9°jùÙµ™1ÏŦùQŠüy] ]IY«Õüà[Ít)u§Ù«VõÃËT]„sácp/ׂHWgC-.zº *4óñ´Ð¢òjÐM¹­°yV6—uÂFÕޚ§/ÜZC¹„$ÞÀJ $þ"Ö4®<$FW5oƒ+†[½nSio=­ˆíՄÔšr-ɲ½ù2ÛE]*ÎIgXԌ8„¸ŒK‚„V|·ÛÅ “)ýe +Þ´„0%)pÆRÞ2~ŒðèS?®ïžÆاÅÂ/4Û^3Ñ]ÔPiRx|»sz®¶44-ºAÎU¬µ!Æ9E²‚Q`f›Ë¬ÚP-(CE 8Ö`¶lÉJW—É+O t”g}Y_¦½*–ˆÚ¢EyŠì‚Ç× #vdóéÐ:Qž«þ¢2‘0,G‚æ³4ĵŒÖ¯4ƒÖ±ý6>·א+¨AF²`à!eJi)¥6Îu–nx&h…šskvÄäèjÞªyf¹E¨ ï\ö EL¶ÛãÖÌ68¡ôØÔngõ¥®kFÄ°¡Æ¡¼µD—+ÆH½ýºÇ֏+~hÒ%­å¯!aƒaS^—àçêÿM¹æ»~¢f¤ˆÌ¹Zs£\ˤRõ§¨žØhÕÂ2£båVÓxe³š|eVÀúÉZp© ~§qޑ kQ3vZÃàE=:ñäþ¤—UÝ'P÷í@E¢é´fœÌ¹Š‘ÊÐ,Z(…Hâf„|ä "Ü$ÔÜå&Qf&+“Sz7ûÞX§«‰Ú¬P5 !¤†PO¥‚ÈM;¬Öw5룬»‰$[møµºÕ¸¤˜6<è¥OA3¸»å»V£í¿ùۀdhœ³4/¨Ž‚Ëw&ÔõFé[½ñCWë“çFqæ]€IÄNÙºð{ô¿K†‰~l]/ÝÑ·W̆Ž°!qþT@(i`'Xw”D\/bšó³=Út5rÌȦVhç]¢ÊÝM¿×ï½Ý,Úd-°’1ôzõ[N à‹°U$8À“PÉeBŸÅRãk²\T­ÿy¨âQçÀ՚Œbë°›p³cÖcí1wžó»¼É!ó¶ZpdJÙhrš˜>(q3$qC¦ ¨ kšŠI‚ ôº¨X±”ÑxØX˜ ZÍÖêfpü‹£d¡¨:‡Øü©€(-Bx¥³9Š[´:íY*ÿ>Ö”j¾?Âw‚y´ÝpšzS©ŠX¼Âi&%3›;‘ÄÎPȚZØÃt*Àq»Y¼oԋ$äzэÕ¥’€¨PÔ£%¥‘Pãx “¼õ¬æér«Fˆ¤>¥í®m¶Œ®¡ðY2¢ŸNšŒ‘>8•”JºFXsnØóPŁ©¥ãHMRùQû wîȜ¹n&>yð»ýà½|øŸÞð§üøOÛGrñ䃧/ž}ö«£çÏOž^ˆðƒ“OO/6ÄïýîââèüäÉKñò²>p?^þóá^,ÿåÿï‡_.ù'Ëþ|}q~~ðOÿ™;xBOþúÁÃZ q#,Ý­´8W³Lod5^dˆ7ĵwI<=ÜhäñÔÈÅòæ_>`Ö[ŸC^¡%ÆÉ˵wÀnÄHÿ²\´ízŠ¡;VC–ùáÑ/ݏ¤ëö¦ +M`ˆ1slÆIü°fG“euT¶ÙK͋]\ÈÉR ²4|#PÉ¢å$)Qžåü§‡‹Ì æül–ô¾E˜–nåTåU +ÛZ¤”’Tê3…™á²4h%VaR¡ˆ•`Ï 9ö˜ *w^ʼnhàI¨…âY¸œúҁ.¤w, ²óøQÎta©cö>ù=7é•.‚Ežêê°0u©óÁ¯Ü$Å[BҎr¹*ØÒ #Z¬j–5¹ä×d0Ô.âEêú,gTÆØú!Ì!Š0Så¦†"h;}vù²"”R»,\2~™nÕ~¿Üø*•«… š* øŒQ-ä'5ÑF(¢Ç²xY  š…™®p}Ò¡MLd)JXêSûöR™£‚¢X¸Øb]„!”b ,ßWÅn¼‹=`tH†|*ïä™W, ï¥A¸ÆE¸Ü«]…Q§ Ji’/ ”Ä “ ֕¤Ë%‘¨rNDòº±0¼tU~O¤ª©¨8»†ÅZd´”Ÿ•² +s,xR볘ٗ+§œ”Ì P "³¨B&³ +#9vXHÎ$î•X~&ÒÅ*å`>ü‚ߧÊ[ˆ¸èïVJ Œº4e›ð Ĝå]Ì°×äÈÌ´X;º´¨–·4P$cIV,>Üj)Ò-Údµi–Éh²c7Ҁ&³X8Ø¡²[°pÑl¤U/“ª0Û$sÈE,º>Ѐö}™lej•ìîVÍA?‰» —ÎG +’¨°èVf½Nw•eÀüí£\hƒÅ8ȨºGúlHöeCT±°Œ|“eT5包ìã’yiÝk\¾ +³EÑÈU¨a±$°0g[•Šz¥çO+VÑ¢s9 Sr°PNÜzgå¬f!ð % ‰”“ äk7ÞtèÊ9³ÝzYÚÔ{ÀK][¶Þô÷¢ðñbsÍVÉà_ÄL¹ÜDu¤%ØEàŠœÄ%KF ô>ý|$öèþrR'}V “ mNrpYPÜQõYÁú-B²qX½`€NuÇ[›r"Ȕ4mD¾ HYÈL(ÕXDDèZÀ å³~ÁÂÀk×&w9 ÷€VEq6¹ Ièc´r¬^Ä©¸®Ï´®ENBbÕé*ô·AîâÌä嚝.‚F µIv4!ûãù i¥©:‘›¸°ø:‘ +Ü*sFÊI”å’+T'6ÜMÏB +Ùi7s ö–:.¢¢¥ÿ¸LZÐEDíìõ2áÂ>òe9&Z¥ÈªŌ’³\³u0{k•Ržxg]÷¢N1¸Íëï5Â%‹Hïs“ȁÃë%ªî ¬‚²0(¸ÄO2íÀߓÅR +‘…5u=q²*»— $̇¤ÃŠ˜Bì¢g¸Šg]©:©X c9 µfay¬‹ˆAr¼9]±¹­wí –%ÛH„ *vj,yÒ\75-dyUП4eÿU¡tóEŸÅ4ùà2ÝLB΢/leö5èê֗)…@K8L„ 7rÑRšUkŸf}6ôbÉã4ZÎz=ŸùÔBL¢";ž!.ç¾O"¤Ó°B˜ +Ð$·¬ÖíQ9áÉ͚qêЃòs-²-„€6]+å)XX)Håî·Z’=ӕ¾€…½†pEHÐfU¹D–ÅâÄ%(ß+Èlq`+ë}\TϨZÎTu`腵Qd=©®¤F 5ø#ú±=*›.ȓ( ÄÏ.ëXµ"¬ÃŌʭêË\@CèӞ JÞ%ÄÉâ ́˜A¥IeúÚyM/#êkæ¯EÉ^â!4Â×ñEË<ÌòÁágƒiì­j·RZeÖ¹že`Å;ù4å°weö%íWMcu—Ø]îDºóù܌êîÖéI-FIIX:E¥jpð3 ðNt->ØèÑîèW9¶Ë>j]4úE¨ù=“€óde©ú$ïòrr2šÜ“4U²2˜/)èšÔ«ÔU— À>ÍÛ"tê^„]BV•8è*= Cгşm¶ÈRxw¸¨P³EX%/yvaû§ª#ßYT  EëW<‡\ +U¯¹&¶|•qÉ2ô0²/‡7eÍˊ£$Š*ÚJ§Ú¡°Ðùþ—Н'&>`s¸R¢zuúÁÙ¼™›«ÂF\Î +i€)ùN£HC`‰Hw;Š(-j  ñöâµ!= «W—÷â ¬2A›äQgó‚m¡À>!}s¸Lª.#Q#«s‚àŸ‹ãcùu4O:AÏ¡Y¾ ¥Rð7¬Ì—î¼|oÕuªg §Jÿ9xÂïI20« û«×=+KÄ c—rÒ ×¥\ îT®.]­:«Þê1zvo7'p£ZA&#›Ä2%‡yUJÈÊdL­ OòX‘«€Ý 'âe¦š—™Î¸)Ÿ°³±Pƒ‡¢ÃÔpX@¤æ–ˆs_TóJ 9=šç‰íËJ¥Pjm¸÷ôB®TÉÍ,&Ä"aÁAHgy³I؄î¡r­Åu/â.´ +¼c9*HB'Ih|’öʳZ¹èžløh¼ð܃e‰6³M(B_Y ¦˜(&©U'²d ™+^ï Àq˜Æ’W«p—,SÀ©hEÖeŠ¾èvR窴ËÙ¤ô,qbóÎ$›§5³g ɺde;@QžÊKÐ "=YÌ]U¢\-ñÕDTud—ò›é£‹FLá&^<•YQøüÉ;”#¸à^ £O«U/ïu´fèçTu®Š Ý©t›™œ'|zð©Xùøa“AíZÞ¨žGNnR>ÂéHZ.Mêjµ±ü]؇+yPҁˆã¾%ót/‰¡•hEšÚ¥ÈøXÁêN‚¤r„!Ô\ÄQïJ;óclݒÔ¶ô¡í½î¼ZÄP9„Qå &ˆQ磏:ªF +ªÄ©\yG:ŠÞWÞ&´7“øGiª=O5!®¢è6-Ju:‚úI­ÂÇڀžÞ¯G݀‘‰ ãüûå¢â)‰â_}¬Xkò,•G’) Tž? êUF¯|ÃÌb¯#P‹ªi*¬él7aÁX㸃£ Œ®2BšJ·|䃮(Ÿ‡¡²:ÎfœÔw8ª8Š6ÍB‡g£N,…Ⱥ C²ÐäjÆÊaj|YÙ«’Xí'û¸§±~¬T3«ž~–ÏOªªÆOæ(B®Ëˆ5À«„Å̝EB2@ù”hîžæà8esf59ÿE¦Ü'uÐrh&ìPbØÕWJJU˜´+V±x*Ÿ›„EޕÌFá'½>éøƒ.ÍlüµØԓmŀ¤¹JÍ2g!rUX¼ìÌ®bUä8ÈRµ&#g™îa’uS‚2|¿ô{õm¾Rœ+ü®õÔ˵R²¨yǪE5Qe©³Im—.'4Ö‰ïº4¸;è2'ýö Çdye +G *×õM’éÄ×Õ|$ì²Dâ¡š¢¡~YæcUs$vùpíNJ*39ò³DïˆÙb'?ª¨J–ÍvLfÍмˑ´½Lkâˊ2Í8ü[YìŠf¨K»°IÕE軜……êB³ÊCu-¡ˆ°{F– •&÷®½æ(§¶r1mp.֋·ÔrH(à+Þ(Q(pR|—UÔ +Ò¹«4ÊáZ¹$¶ú´9Ÿ…÷'Õÿ‹êÛÐä@þŒìÈy¬ h,kÆF¸¨-k&%8þ’xùr•dTLb¨M×W«ð'ºœô÷\yL¾Ì¢îvOsÁə›òüKh%]‡p{å {‚÷¬ÞgX¨,ŹÅm« +ùòaïo]E¸Ž«j8ºÉuJŽ"" EÆ~ï*ì9 T@œ2±D¶á·E8š+låLQœç¹É{ùàñpÌw2Îô433Çì4.Pœ²¹A9dd­à,-WéR³Ð‹QJËÅ—dˆ_›Âg˜®!$\6„%l9`j<—BÅ=b¬YLõE¨ª}a¹(LXBnUª +±Xè‚Yȵ>d" +ÆÉ]ö1¯D̲¨/Io º¨Ï2¨W„I¢$$‡,àdX'oëóYˆŽ«"G}•3af·™q Á™$lŠ,”âÙa¶Ž*$¸Ñ2“;êa˜\Á³)%}Ö« -‡Ó>F®0^ôQ©ÔÀ7&¿¬RˆV£PAJ‹Ð#úŽE¢bÄ]uo’L À®x›Fèšu̍s;1² +Ò…A ‰ÂÑ pŸ2œ­ò’ùÄ ˜ëŸÉ4ÕL³SÅþv’é@?OUƒÍòsÏњHª¢h )j¼p‚~¨Œz—±‡f~r€Y’—¨Ì†06víÉχ´hQ±¹Í&¹yrÌ8Ÿ›<™„ýâòâWOO/žŸ^|úð¡ˆà3ÿÃ_|NÿâüÓoþìg?==[šyð#ûãÁ?øч??üÅ哓åï}ÂÂüèw§Ç‹ì7ϗ¦>=xïçgË_Òÿ#ÈÐþèÁÁ®û×ߝ½àö?úӋç›ÿøüËÏùß~ôã§O¾¼ú½xöìôè⃳ßbÞÿ~üÙéٓ§'üï?9=~~zyqôôjGŸ=ò““ߟÑ¿îÖÍ÷Ò7?go¬ÃÓCËÒyzúñ‹ç'Ïè±å6ðGßôìÝ~zNŸüðúÏb³ñã?ýèå_þýË¿ü/_þå_}ôò«ûò«¿yùÕøh]“DÃøÆ©ùÑON>9x¿—¾í½TWµLVº—Ö5Iïø^ú틧¿8;¹8>YñN’vÚAÏwÏ·¼J¬ÅiTOOž½8{~‹q­jDèý]9óNŸöÛÓ3zn§]\þ†³ªÁm cs„=;ùéӓñbYc_î8Fr¬j|W±9‹ç¿<~~ôû?aXÕØæî¿âÎÚ< +_ž~ùìôùšOÂËÏOž=¿ÜñºxïôŠÇ·üiFï7çþôâKh½Ç wýêhvÌo._<=>ùÙÓ£Ï?;=^Ù¨Þ¼¾÷Åé“ç¯8åmf¼s?XՄhç7?ôg'§Ÿ~¶ë¾º!¡÷ôZùWÿúå×ÿæå×ÿõ˯þ§üªF%êø¶~½ôðù®÷ÙåÇ~rüüƒËO–‡>¸üêF¸1žÍ¡î¬¬k%ni ¯˜ðµŽã{KpE–à'O5ðì—§Ïö¶àÞ\-¸® ó͚‚ëòsïMÁ½)¸7÷¦àÞüvLÁuþ{SðÝ3¡ö¦àLÁû`_W¨âj€ýµ-_ù¡VaÞRúñÙ短jX;(C›;闟|òìdǯøì¡[-³K  +OOž¬ïëÜqÑ­nn +Ov½×¥‰=ùÃÖ@vÕOV6/o¹ÿ~òôÓoщpÍËé¯+>vޝ+?{n}3Ü«sÿÝoÖ²£iýï_~ý×/¿þ—/¿ú›}”õ»5­÷¦ÜêL¹²ªõ²7åö¦Üޔ[Ë¢[Ý&ºƒ)×V5;˜r+Èޔۛroæf¸WgoÊÝnboËN+ S½Xv\ِî˞ îuEŠ¾w÷ëIJú¼®µøÚÑìՍä]Žg]œž­Ê·ÌÎَ+ãéÉùåï_1–oçž]]èGOžœ>?}UG§Q}~v´²”Ý1„-oÎ󣧻ޏGg_}ùŠúÛ·­eWì¸]„ïy·®qÏ7Ã=Øõbôþýà|^þ¿;Xþóþòçå¿ß_þá`U#Å°6{|tvüóË]͏÷ž}~vz±®½6F°9²‰ÛgWغ¥výʱˆ§~Á½Þ-…¯Î_¿j5Û§ãæH®‘ŸŸ=ÿÉÎÊ霓ON/^‰·ÿÖJƕÏx|üâüÅÙÎJÅ{—+Ûpónå븿ñ¤uÑÊ|S<‰ÙwÓ ¾eÆîcc÷!6¶Ï—z۟ä¦|©[íŸc|¦_¾xÅOV²vÍ[³Óúõ“ÂVwÜíυE÷{zúü³ó“ç+[goü|XàìÍk¼i_ÿxXíi¾m÷þóWÀ¸‡¿ªP·¯ äÛb­ñ[‰»:ÇÖ5¸5]€• $Üò*ÝÃOÞÂa½·Ü:»Åοþ¯^~õ¿½üêÿælð¿zùõ¿}ùÕÿ¼G­¯'ˆ¾£ÙšÝA^×%6`‹~kÇè>½E«vÝ>½uìR4:¸÷×w¿‘ø3EŸÖåØÚǟ÷ñç}üy~cZÔ>þ|°ÊÆ>þ|ùNxÅoy*üäô“O^<;9$èÿÒù½m··íö¶Ýw=°»Ûvy]º«m÷åÉÙÙåïúôääâýå.9yQEÇÊr[ŠŽýúN^¡ë:îz‡®W!}ý{t•ÊÎþ +]Ý@ö,WkȞåê ßß·>3×µ îÃÕ¾LԞájÏpõ=¡hx…~·"Š†=­Á*㠷ԆîkÉéU}•ûÑعÔôºÎ·;”š^Ù@n[jz)$ŸœüêòtýÇÝ«ƒºåVµ0^¿>h^ÛP¶öê_ì:”°ºÏòoÆF½þcmîÛûKÞëÌÌ×ù­kc¾-ß*ySrô³ç_î¼@7‘ŸüÅgkË-ÑÁ|ßì÷Åø®ÜbßwãÚ¾Ó½øý€^¬jdoy±¾´G/n j] +íz±6í{½ØC/î +½Xi ãÖJÕ½ú(«T9Ö ‡ùâôÉîéèÉý`USªß\˟ìÄXߐÐû+zÜn ¥Åÿ÷o^þå¿{ùÕ¿ùõ_¿üú_¾üêoV_™oç¨NXÙÇzý˜ÎÚFò‡WœMëF!ýöÅӏ_œ\¼Š`í;½½¤…–ÇóÇó-/kñu]4®Uèz7À³ç§Ï?ûíéÙÎð‹ËßðoV5¸alŽðã£g'?}zò/^,kl×Ó×=r늁]Äæ/^œÿòøùÑïwþ„mUc›»ÿ}wŽ¾#“ïwdauGû›2·^ÛXr+Sñހ±´¶!ÝÁXúþÃÿñÿû_ýÃßýåG¯ð]~çÖÑ÷(«cgUd]ËðµÍÀ•co®ÉüäéÑ¢žýâòte,){3ðûm® pÿf­Àumoî­À½¸·÷Và[·×åÚÜ[ïžõ´·×`î ¾{B‚+Q¬/SìnE2W7ž7B®°^Tð-,¢ÕÓ+ì¼i.wÉ»µm†òéɓõD÷?vOñ䶤?=»¼Üñ¼X÷a¶¾*ow<ËÖ7 ›œÛ»gB«Mӊ?>;:þçïˆèòó£ãÓç_þñÚ|Â÷5Óxçmõì³£'—_<^ÝZÜÞ\÷Ó ü}Pvõs¯|xwqw¯ï°¿µ]ô)Ãñ]³OÝË›kç‹ÝÙ¤Qù¸.ßÿ[+²¹óâ]eiž»©åkÒ÷À¯ ³þNS4máºUx«Š¨«ÞFÿ¯˜ˆ÷™$íµŠ½®Sk»Üë-t¿µPÞKåoUËd¯û}Ïu¿{]“öþ(Lû+÷]¼r÷ä«ï¤ê»/°~õûÜGïú»v™}ŸáãkýV{ŠÒ=Eé;w@¬Ñ幧(½2¨u©}ûë«û"¯OQº²ì ¬ï¯Ðwí +]¯>º¯¯¾ÒcnOò½6UàõoЕ dOòý†¯ï× ù^)„ñuVÆ}ù8+¾ÐîûÅGÝó½+üG»~©UhË{¤ëÆx¿¹pWÜ¤Aºƒóð\ݜÓóó£å¡s6×~̟ï0–wí€ÿÙґg¯Æp¬â|ßy ­ôÖÚvpv>êœþïu2ɪ†ŒÞêàØ£|÷Ä(·:DVkn¾R‘õ ëþQŠÜj¹ýrÝ>Ž;.ºÕŽëd×uð݁ãẌ©[ÓqÜÃXå}„Òg¢ƒà·kc)½kœråg÷]•ë4¥n­+Ü_íÛ?Z×áýÆôïù´XW&ÿu¡Õƒ¯³¥ü„ß>=ºxöÉwÇ:úÓÇ¿^ñ¾¾…?îùÑÇ+;l¯sÇq/ÿì6Žžp°.§öÆnGþ¶,¶ŸíۚÛ£zàÖ5®;-·öËmÕËͿÇÛÛuk‘Šðá¢üôô麾ü•¸{bí='ïŒçDüöïÌ>º]å:ӊ^ßm²Úcïõ°Š{ëJ®x¿2M·:àøCÿøìlU³2Ž¶7;3·*`•WVžæ °ZېîPÀêþû¿ýÿÝ¿[Õhöµ«v‰xú•­Á×®^µº‘¼Ûõ«~~ùôóÏ.Ï.?Ýq%½ ÑÉÓWjP+1Šî%ÁÓ£'§/v=y_‘ä÷mk@Úõ7­ív·þÝÿõý?~´®‘Ûu¼í·ýñöÇ[YÕ`Öp¼­kFöÇÛÛ?Þvæ1^Šì®µƒžœž­ŒKô8ç×õ™îuvÀkß;þÑÊ d»Ý<÷ùt[ömº½ ŸéŽ§ÛþL[ۙ¶ú$®Ýϳu%©Þµ”úºFs×Ò«Ì59g;Ç-V–svÛL­=IÎwlÜý([×År×£l]£ÙÓüìNóãV¦â¼YšŸu%n½–Ÿ•) ¯QŒ÷ÙçgGÇ'ç'Ï~ôùŠ¯¨Ýò5†Ï^ÿ(_×hîŠ}]ÙÍtÀë*·þÆ{‹š^ëZeÏ®+æõåãώ..NÎ~srvr¼»—êÇ«Ùö ®` ^o¯Èý¶ñP× òwҞpníÆÒºLò»Þ°ëÍ]ý>ë:Éïȕ7øð¶þè7þ¸ªQ¿CtysŽ.NÏ_ÑùNÝON_•01ù©NNþb]*éýæw?zòäôùéïw½Jžž°¹¶ªa!lÂϏžîŒ)8ûâèËWœ ßþQ,¸âºÞu¾—×5îøæXEûø痻f›½wvzqr´®’ÆcWœo'Ÿî|iºu}'íú•ƒOý‚{½Ó¸v'Wú¶ŒÍÁ\éññ‹ó¯ÆL~ዕˆÓ®\óO/Ïw v¯jHÒñÍÁ<¿|'ݾÔí7}³UMÊ7‘˜ín®ëCßÕ0\×hîj®Ë̽ÜÇ;ï’ãuíü;f›‘¸;Þ°ëÍ=?+ÓÞ4pÆï3ï`¥›U}œ7":^—™~×#p]£¹ë¸®}OÜüÆ];¯„u­ë×[ ÷åc¬,ýýþkäÓ¸;”å͂anÅö½62ß7ÀöV6¤»°}ÿŸÿÿúoW5š=Û÷.áÿµ­Á×gûÎëȞì{ml¸ïٞw]^¶ï”÷ÿû/þöÿýû¿Û³}ïÏ·ýù¶ž¡íé¾ßðù¶®yÇÏ·ï{oS„Ÿžœ_¾*óvŸ"ü&†µO¾iLûáï.EøuRjoN^SNír(œ=ÿÉÎËòôâÉÉ'§¯,“ü­o7ƕO¹Ï>`üºbEwÊvêªó6ò†÷D+Ã5ï3ˆ®=,¿Dë::÷ Dï`Á-PTýòÙ+¬wÉQùªo·'å®I7ë- u‡ì›u]Qo +Árkïä?þÿê?þ·ÿùºæâû†lxµö?þSï>ú“‹'æŽ%Q&ÉG¿¸¼øÕ2¢çË >ñĜ5ÿÃ_|®mð?ýæËó/ϼ÷ò«ÿõå×ÿË˯ÿþå×ÿ͸ƒ/ÿùð‹/–ÿúå÷È»Üb=pz+5dFÌ/q¾ù£«Ëíàãå¿^~P[ì=.ÿÐ|‰)Т(¥Eú—–2ý¶'ïý¡…˜ãÁ‡ôr¯€ü¿\þòO–¿þù”¾8ðîàçÿôŸ¹ƒ'ÔÅ_?xX›o’¯µ5ÿ¨§^Îi-ýQ¡,âÔõêÁᆸ‡ü(”¥o$n¡<ò!.ҜåЛH·Z>|ðñƒ|´|ÿçŸø9].Ë¿üìéé“_]ðRáùõÉÑÙæ?¼…X>êGô²Ü–h}éƒ[:엹9×>d_i-ºœèø•.Oj5ÁjNNéŠØZ~‹ã(Ë9›{ª²CBwº´Êrè:¯çl +Qvȕ¦%¡¹´¤úÚ5M¿Õ¥U—-“Z­U¹<¹%ë¥]£Ë®ÚŠƒv°|¾¸l|¾Š¥µÕöÛ^Z4õ¢¸,ózŽ>´E•—>d½GdÕ7¬úP§µå³®¡féÜò[]YËîÍ-é½à‚ìR—)Î%É!‚j˜´àB)E\\Tš±†R +žÞnûm~e­W\Õ­&]X¦ëÒçj^6€®·ì]´´œçôôò'ïU÷Ùjù-/«¶,•åe©ÓšPléBó1KX›·%ï{Œwãp"ÓPtœÐǺºÒô[]Ñó…¹\ÕÁ'1JËbf±5ºìñL«g±±âb$&¹@kHË¢âˏïDÝTrÃÐàå†ÑÏrõµ«²,ïìÍùeκª}Û-ß8öðf>b,èCiú—N,÷ :\°——´Ì>]«­º¼hыxùÝ¢¨öéÛn´ýGBºgX -éÄrÆÉ%°ÜÝ܉î\·.—²ñôáæÓ±,ŠTÊõ•¶ßò7Y®C(VE•k¹ó=îüåÌJMä+”Ÿ®Ù–QZl 5¥]›]!m¿Íoâ—+²Ñ!ËÈ5û&mtÙa½Ð¢ë}~z­`ÁÌÛnûmŽ$Çå”].CÝ«U-éÅ9ò^ícá/úvÛ"ò±cµ‚¶Z~›Ã`—Wš\^c¦»á“—ýU½˜ŸN劽ÝôÛÇbëÄó +‚G`éƒK±K'RÖ-"+ˆG{ÚVPÏøzúð5M¿ÅÇ+çX±‚Ôú¬d}z* 6>-·Î'€>l h1Ä°€Ô³Ýò[†ßôÜþùò×/nÛ ÎXº"kˆvíé7"'ˆ§Ÿ.r~ÔéV¾ip|¼tä½ß]PàÉÁ§„ú>YFҍçÅõ‹;øàÓ‹r»œCNþþÐû´èNËìMÍ/o­òÖÏ,gïrâ°E½ñør”-:q\–Ìxüƒã[µþÁÍ­™Ùhý“e¢?øà­í¯ë½"×êe7~қ¼¹×yEnÿñürA/Mêô†ìH9›¯mòÚåㅺLúòïWž^.e÷°О^f÷6pcãÓ|͍Ó§»»Cëµü&3é†mwý½öûßðérþÆO–˦+‘Kpã­½Ig–/·lÿG>-*ËÕÇ»ëäô +Óãúévlüƒoh|ž˜Ñø7}º»"¿»¾Ùe·ÔE?8ËÊ#Ë",—ÀÿÏÞ»í\w\ÙaOÀwøo HFÈ®ó!¾’hÇèX’í؆ÁþÅV3æ¡AQ²™KéÆH.r8A9!$1`$CÄIÞ"5Ƙ³V­½7mIM±ÓmÛèîÿ›\»V­ªYó8æ,º‰K֏eÕaâ^=ïÖ/Ö{~7æßûà‹/>üüÓù£?zûáÞ~ðñGŸþ/ÿk~©—VŸïõð?üÉG?ýâs67ú–÷<>ìzð¯üã?þìó/®GÖ¾ÿÙgߟùôƒ?øøÿú³~¬t¦}æ|óï¾ùý¿}$5•Ž|‘ ü—ÿóöÿâŸßR“ñg‹Ùþ²2”o~òœ34íó¦ì„a´„a+n,iÍPÍ'&Œ–¯ Z7ÔE†F]Œ•é®Eˆêåý¼àý×ãþ`± t8b< •åxô쪽!ƒ5DflÄü^i°[ÆâÇû\ĐBՓeT|ߢ6(¼EM뱼Ѡ³ó2=[~órïkfëóâ`ˆg½­yôW†òVˆ‚¸& Žƒ¬åÈ)-äãFéï…õOM­ö÷˜¥Ã?‚žl{ täfzóòýo5±”¯wˆË5ƒ%P§YupÜ&ö¨… A\ÎB¥©·>™qZ‘ғëøæR41<ÉiwðA‰éß<±~9[³°ì°<[…EÇNxôI^#ÇÀ‘± Åa Rߤ!êÙI[ªAhΌd&«Òòzõ߯…K"ò]"šÕæšã²º9À2ùR¥Ï”—Ú©œÃ2%¨ÓèÅjTä1ùZÃ,FmÆ¿ëى¼ˆ1sÛÖ¨|/?«—Â^­M´–ô43Ñ4jò´ô"—ANí‹ÉÔ"bæu’XÜ®‹!«rj}¶e2Ƚ^Økoô22¸ӛ—ð™µeE°ä\ïí9Ù̖9’˜®YJ¯Næ“ý½µŒÅh˓àsC_ yuËàÙ¸6™Ï"ë˜íUmùo^¾ß&¶¤†å‘2"§Ý\ü†¬Y iTÖ·þFÏV…úѶ¸7xžÙˆs?ŒˆÒ¢.9Ðê°G×am"ò„¿œ€f†¸i 9›ÀbP`k¡Fž^,ÅÌ/ˆ Ñ1³Ò .uY‰I,ý–öÇúÃ@X,öFÁÍeáÓñ̜øšYX)”*á»4œ½/þ/âSj.ù҄I‡SXeŠ_¯e'¼%,Þ2¶×‰¾,Ng\„u¼†BP®ËÙ1#úZ°a-@ZÜÁ–<°°Üšàú%÷·g¼µžïÒ4²˜ÿDöbÏ“Ç4éJŠœíÚð*R cÊq¼"#Á‹k–ޏ¶·ëY‡€(o‹Î‰G=Qºñbå.n ÕØ^%lˆ2d­³Ù܋L‡MGˆF¤¾Ö$ÔÄàÕ:õœñûv†SÒa±BÖ«Ö!•9 ëˆ6¡ž$ƒ,½•6;G;%~À²c|Ó–4«"šfÅ)D$BÚDœ¬÷=Ó@\¬ò)Â! µÊº2K K(…A\ޗ9]Xë$ûÊšvp흙}AÜ[Ùï Æå©i€²¹dŠ/†ÐˆkÔ*—^/ÌxÎõ:DØäNôäÒÍÄ0d˜„¶`ªÑö5#ʳhç!X; ãSPM~ˆfòYú»Z1Ÿ¬¦‡¬2ºå§Nû=ÍR†Òô÷K`eåÌu’æT‘©°ÝªÁ"©£WÎ?@Ԁ¡,ZA˜Ü®äZw1ֈtX֗Kì5½¥×–£ºy¨È®Uü%(l³”Ãt¥.CÌô üê,üĚôҐ6À”þ]䆘ߴðí7);4ƒ`au cð%\Šth€í‹Qg‚H›’cÉl#¶ÍĶh®¶Ö×F¢1ÍâÙŽÅ$ŠO x® LU¢AûU)Ü°E=†éK@e6–.¢sä_0„yAtŠ‰± ¦±Fõ/¦‹±mkÛó4,ù®åt»â ‚G­ÝäwkÐ4`wÇ‚¢*ú°^84¯TÐ#ƒIÒj‡{(ôÄ-æ¾¼oƀŒt.‘ñ;ʢŖè=*ô1aWQ©…å†îØI}*$¾|=»¤ÓäZ­£]¥Ì×ïC#_`ÍfµS¡ÉÈð0åPjÆaÀÑP:`Y†|_¢”ªð­Å^"]X[­K—$÷ˆR˲Æd#a¨YÌ ]zÀ·BU¯ +æ4e¢ R(úæ·½j…åÐ59z˜Ç"~kSRf#]?(µÙ\•a®0£%èJ‘í¼^V2\lñ†e:¯Í˜ +Úûaº/»“û‚ &s=œ­!ºšˆà@ƒŸå`¦ÄÀ _ÆB¦Z^½yúØÕÅÅD”þÚÖÌ „ïÇX€NnS¡aT +·¥”ÈÌò³ƒ¾ô +1ÉSŒ +€3B‘Cˆg%1Ö¨KFTó“ùO2û2Ì£„T¤tZ'·¥öæDG-¹þø¨¨ù#¼¼-»Õâ¾ë´ËõŒII.ޒÒCëŒ)m¿{êü¬=qÏó´×ä—T 2"ˆzz“¸²@%ˆ¶)K!Œ`ë=H«BÇ—ѝú~>bT3æzòBDŒ©îaŠÕ&Ö)B:歏…¨¯Zü1taª6 ét«ôY¢.Z8:¨qñGâå]‚…dt32‹Ç”šë¶%Wc•ë¼ÄV%˜G-K3u8v¯Â6·i܃R#)¬\vD'–&¬Çpšiñ5=Æ»z¤Æ.4S¤Ëž-pE\ƒ¼A!ØÝ!†“‘½x¥eEt ¸‘ÄQ +R i¨…¦­mf¯V.t³Ø5µ¥¬ÓN \¯Â›zßÄ¥2ډ݅=£±‰LŠÉÕ.Çp-&ü¾Åq§² ‹ézV<©6ó¼@dŒTDÙ¼£!6úÀ¾YEŠž1~Kbž +‚(¦dÆ(zˆÚýá±Nm¬%Ûl§>çÓ×,BÅÂÃè4äršÿš¡sKþQŠ²Á6bžá}‹¼OE—ÉE‡[[ Ð³/Ý"•ÉuDzV;€^þ0›)$‹TÊæêWD¤ÂÝĪö¡H°oáò7¼tŸ>Õ0LAE©µN›ÙK$èíù˅0¸qÈ1D+§Àbçl;`:rdnÞZP“%32em¹ÚFù®QÍUPPp˜Â䆷&ÄÌæZd;%ؔ­%hÝM¶0»íæŽ Ó†’¢©73Й·‘õš°Œ2×!Íãû@Ž&`&Ó@ÔµwŸãíËD¢ÚðßûXd ó¸Æ݀q—]ˆò[H„&3&Xª–pv…Ípà‹UáÀ£ã¿Þœ]À=X ÉÏáo–Z°9"QÙ՗«fÄQ¸€ÑFéÌ8¼‰!¦w4ê9(þù;—ßR¶ íLû-ƒQ{ÔÜçÐd'ŠXó° B×ïëŽAG@ ã`ð7„À2d' ɋÀ^+Šë4Dé)®ÊLCZ=“Ä(HMy¼ÅPdJ43°$—³‘T˜²,à)ž˜tQ`*æòÖ4Q+Ãڝ¤g×IT¸n=KSôE~Ç2œKBôÀtœÃˆ¨Š,,a°¸y˜¯+{ø´0dåöPЈ{ƒìøÔ&>³Q]B®ŽôæålfP^y‹šÖãÌàÇbe;Ù ä3ƒHæ¯ÿ®kE„Ñòx —ΘJ9ÚôÆ$/ö(É#)3°©!¢(/°™­û‰ù׊ ƒ\-€‘åË7 p”ªåGh€ŠâjŸšÊ1@É]ÙØiY!¥§üˋØԖàÌÃá_"ˆS£˜Ý&󾣶•#äh WðŽäR1¿—å].­ºE`‡AÝHôøßó<Ř<¨€<ÍU „°© ø·Ð™ƒÚ§%ٖ@ÊÄhÉDÈJcÑPD¤Õ.p¬)[B¢Ù]Q 0MÜŸÖì¬%‡P`qåN?M_õ¿½.ìLxóÝN~öéßüô>øãß|òُ?ü×㘫^ûá–@ÕÆå?@ðÁâŸãÏ5þçŸýoþÞw¾úÅÿÕ/ÿÛ¯~ù/þÞwoP ô)p$Ð× €žûÀŠ˜S1I+¸(K©N…!˜kMÊ˚¥ÒbèÍJ‰í?Žxÿ1ÿžfŸè©_œ?¶DFÆ?ß¾s¾Öþã1Ûk„Û'¼þί9üþ½„âÅï¾yŠ`âÿ¤AH*òs==!ó–¹5s6 ªýñ.SœYÖãšÇ2–ˆ30Üß|§¼ùëœÂïÿøf»û5ÌüërÀÿóŸÿ¯_ýò¿ûê—ÿô«_þ³‡Íÿ™±À¯Ýªâ_‹sViìQõÑÙ|âYô¨ØmXEgÕRöeL78—[ÊýOB*¾µ4¶•{ª„õâŠRéŠCº(èC¯]±° +0Îíô ²6Ä f.›:IüÑ¥þ[fš®±(¿‚+o˜†ËÇ捅>ìY$I& +Åóè!Uó"’û?·¨Gi±ÈÀg4BK=$Ô~§ânSJC¦iC¶É½¦Å…†zèJ¹H·™ùäî^=‡$/âšoÍk Ô",œ^']áIx«¦ÿ´ƒÕ/9ó;ï.›c}õlGۜïÿ{hHùÃϾØ÷=ó<:¸N9JPÈlËvY^„êÄ*jZ©GJa±OÌüTa¥>!çì)¹m0à +°Â›Y‹\ë!9‘å‰]J$!¬UMZU€,±c©cñäÓp 4;¾w f†8Í>¹-sÒbed3?wYU‹bÓÄBe†•¿n¾nÇ^ní×pÁ ~yÉW_ǂ)ÒGŸÁ’-ؔ9%.I‘OaӔ,ÊÂ::šg™]ÃÈ1ïg%%qn¶ß\š¾>ËòòÀ՘B!L„mƒqIÉ0›,——ôöc₴hCAGHؑÁ»PºÉé×Õ¬š¡B¡YÐ÷aæᒨb† ±a Žþåõyôò‰7½ä㙏_rüלŽWéå{±²_» /÷ëõÞdÇ+žV7¨ ,Ó³Ûq)‚Š=/ì7µ·s«ÙŸýê +Ž,ßÊ°‰öyM=Nsï•"Â+ ö\•Iû;&@¬²äÞ½Š§ººß7K®'b¤Huc'Q?ÔŠàgÍöd)–ŒÇÐ"Ù `÷2m«§—‚<­í7§‹~ ûçå§|òÎ×~öËz½˜Ë3¬iºœ/’©£xRxv¯h8¹l0l‘ÒA0gt[29+r¾þÕiÀ V…HñûÂl—º¹©]Ô©LÊAè² +h•±DÄùéô(s2Ð †cÀ¬Ë–᳈A6Ń/·5@ »™eÕû;¶ˆÊÇ!ôZÌ=hŠí›Ç­|Ø@h]Ézè\—=ˆà5é:Àl‹goJ‘®ŽXéL‡¤‚KoíO´/ ¹ä¾—]1£3C~ó¾dóWGâOQxMí¢ÃͱÓdk ù +á*€t-ØNU r]"ÁÏ@Ô,ªØ‹'aLà Ž¤lh‚¬%‹„Ñ0ƒE錷öû« [ù¤à¦Å觙ã$²ÿ›£À­ê²MXØ)DŸ–`DÁˆZ펚̖yiQ=»ÆŠÝ`Öë°&#ÖXM|GÄg¶“£g¶åBUFv„ê«Î$°¢y«Eù§A$HN†»L¦Q©æ‹I³^K"aFÜ\‡'›¥¡¨— Y,™±S­Ud°2̼a›3Y(Û³\HHO±ÿ…^ÄY‰”˜»B?fµ#8ª¶¯áʝ +tÔ¢TƒýA2ÚµDX-àpxÇ÷æâoÎÚû5ÕD¡íD!Ž­%ê,e "“z˜Ì¥]l;§•‹ €u,0dStn[k’%i *‚¢ +›R®N$O£Ýû6àÐö¬ªÀ/-X9}Ï*S“̽¢à¬ÂH†Ûø»­ª¬±dhl¤Ìÿi™ +ºa$×ÔqךN=”:"Êy<¨@Æ&M¹›©°Ü­¤^ ‡YÁjÆáDågYF¿Ii#çºz÷zKÉEñ*²eŒG5j†4ü˜˜JAX¿Œ­|²òµ4Šë)G8±±Ži4!d±í!Ôr×}‹ï{ùAMČê¸kTü¾È;t/xi¤ú¨§YÑË]§ƒF¾kÿE,=ÇC­W³)<¢‰Òê™ UøZ‰øJz¾”³¯¸ùk9ÿÅùšÓôúä½<£_{žƒWzƒ®1Í2uˆÖÓ!øÖôO2ù“wþâû… ÿ¥Ð÷ÎÚÕ¾6x!W Ι/eúKùÿRS<+•oÚJ`­Yãb¢ra¤©¾ô±- tÒ,øO¡t€×!¸"´‹­ðã1ýä9¦‹ŸáH$°à» n¯™~É5Ñ7/fþËnRœ(Û»dTä¨Óúdÿ­ýhª/½ ûw¾±ü“ð͓ä¡©ÓK×굆СÐãߠоÔ;Û¼ö¢^:\/]³^Ü7µ¬È/cá åمsýÝb÷,Ü# y‰ºeLT²ìU-=™‡²ÞˊÖ× +TÙÒ½ŽÉˆ VüÜ\˜µ08˜ì&é­¢yýç/Ím/Š¸RkȚ@¤Zgµ;ÀYþÜ|+« Grô bMSEeÇ>á›ZYI¥¥¬‹Ç’ÖÛý©ã* Íf.Ľ·ƒøsm‹ûó;Gð™ÂÉ(R}?ðáh" +|–~þ<­/¿õ„f °™¦ÊížBñøˆX¥©R^ì瞾fV€6«jg ž‹¥Õ‡`Ú_š|®IåôC0LØ>ž$à†~n¦ª†UÊ-I5ÏMÂ/ž-‚ä=™Äyµé…± S·Ì +|iæzgJêܾ5Þ¹:Å4Å»^·ê¶´°0„È::ï8ÚL¼}؇ëž7ç›âiÆü4xñŽ¤@厔î;ìøŒÓw~ÚÎãvŒ9ã}ç‘(›¾Åõ_šˆ5LìÞùÁZœê;?mPÀcòWò Á«â•ñ”_><{­ÚxíüAFQeð¬^Œž¼½v~=«–ØxËü\¬ËϷ꘏œð´Üøé8÷ÁŽ?¶áú„ç½ù¦6þ×Ɂ³ÅG“'È\Ü'FNA=Òî2ÁR§dÇÊê×ÐX'RºyûÔ÷ Ô Î>ø=kõÁ¼ÀƒÄÙ õÕÔăÔ¯Lu‘”¶bõø²÷»÷â ¥ä µcHö u.Ùí8ž¿ÿ[x>Á'F®S-)ÂuD+‹¸-ž[§¹1î ïZùÁœÙ"×¼=ÿ`á9{ÖE£­K®`WŠT…A!”4&Q=m"¼Êüu‹øz¹_nË«-üӱӟ¹ÙOCÍɼ·Ð÷G¯i2¾½“Ð’/¹±;­$kô%XÃhs¯D²4§§ï/ƒ%Ó³ÜÀ“Xž©ö0À5p2ù9=vûcOgùÀ0̀D쑫…v 5ýÓi{:ý`ïýžçôþøǞN^U$ßô¢KUS‹ˆ5üêÓé{:íàëýžç´úøǞNZóáfEèŠÂ$öõéŒ=zpô~Ïó j~ücO'Æeûóò»eìÑHòüÊә{:å`åýžç”øø‡O‡Zc¹f!öIcŽýál*¨•€‰VƸWvÜRÈKŒbEšC|¼ÿXvÔÇû±Û£ØKøMk‹ÿ‡Ò®røÍî§èÛý[Qgºið{s˜Ö v¥Èm²§W·ö Fºg8ŸD9 VË>’\˜néÃ;9ƒ–œÔÙÆ4C:Ñ^ëhÏÏfu8fsZ¢aîsÚ¿ ´o ‰¢°kÀ² ^´Rýg…Ï"åýÑeÚè‚,j·¥°º›ã8~¿‰óX´ƒ¬žú”b﷞o§ùòl¸(Ù…Yö³µÛ³ÁZrÙé{;qï¯}x¶Íj¼ÀûRŒoØÁ‰ßË5€áAȑDv›ÞÉÃVšØöj€Õ.{ãºîÔêvq­ˆÖÐ[Uòµ¼XTe½IÛcPÂ\þ¦éçEüÇGsw¦6}0ÿíK‰:ôßûý3Xc܂24XWüƒØÕNÀ¸È­î—ÕìV›2}R¥M»šçjÒ8wÅ>ºØ·äïbA¾ˆÂŽpº¿‰D@ýÝnÏf]Z!bÜçqF§%ﳉ}i~O*ÁY`ìO“5 öÖb·o³”n³€†Ýp¨Î„ÝFÍÖcìڜXÇÅٚ ‚ã†ël5¿tîjyšû³Á;70 â'Ö֛õ’Ú}e¬¯1‰êêb~A ýZ‹œÓ { jšûýÅ÷çi€ÚXsK܂ÀïrŠ—L5ˆ<ˆHOì%œ¾Þ¦Ó|ÔP¶t`«0S;Ž¡BJ ‡äç ¨×°Ì3:ouvâæcuǾ?[}-x¦>­>-Ê œ¹,¦5˜àì¶]ì3ñHdS#ÀÉËNk’¢Ó=fÜ([<Ìë¬o:[ñ$Ÿl.Œ-z“D¤]ç0—‡G³zȉxiFòLY†ë eR©™û–Å}j]lŸ€·êÌÀX3 ÙìHÓl²ØÎ3‹õ¢2‹PáyXdVëx3sôG ‡™sûƒw¦~+Ùo<»ß¾EV¤dÙÒ·;&ðØM4FAéc'«Û5ȗƁæÁ"Z()Ñfýƒ[š‡´Uä²ÅZÏlU bM>9î"^Â*σì³Þî÷!¬9<_–]2ë2zMl\³[ +ù[Z»ã¦ðö#­ÎK†^Ô´í€Ì¶$—ŠÖÕ§YJ~UJöUm%±ÚŒJëےR·''n ¬â''ïU‘¾D·$mr{EdïÍM¶O¨Ó‰q[¨º‡ÄK“ãG«¡öHƒ¸•ëA;Yã"Õ´“‡MÀªHÌNCÃÓý{v(#9¸wËÇTA“¾´æƒ¸YsÄÍðºì>€5÷¿¿i¨³2gÇa ZÇlëQ)måm´­ûN¼­ÊAn~^”~iÌK*'ßU´gÚR¹S‡Ý7ÐOñm«Õ¸q÷ªHX?r‹YML¹“I•kS mjtŽ«*&‘ýH,m«ìê¬Eçb+§žlǬé%WÈՉÁU.Û?_D€h¬ÇgS|ÓÊMøþ|½?•ù4Uk¯ÍjþQê·`›éÕ¥ÞmµØFîqm‹$à rÎía׊:xÙþ–ˁðCN§^lcʼgي‘ˆé´õ7y³mñ.g'ƒc1>…bM²oç¦øÅ(ç Û¿îGFR>O®¯ÌÅûÇ×Á»Þew3Ý%2<3¹Ù†Þ¬ûc·µi·u¹¨Í·e–‘da±æ]rýšo·ÑmÞ7Ûí툯Q}ä¶pxÔ Eð’g2ýwm³ïL;ÕRäQ…šû¦í®9ÔâxiÐٕm±Î:7­Œ ÌmZœ4÷Þ´½ZëÞÍ,£ÕaY\§ñfY …ÞãÓ%9͜۴-‹ƒ=tEËiÅîvTñ» æÁBû›ËËvŽÌ ,¦g:xJ^MÊ°e¡N3yY˜—!jæ¦þ(ã°=o¬Ç¾%3ù7žÝ·¸d[6LvWçaÍ:و*ùbÓãrEµ(@<Õ³Ý@‡»;.UÎÖÃ"¶´Ój½ÈlDø8(kd'@oúŠ ùdy݆Õѳڵ¶±•ƒ¸¹»ÝžÝ§&ݞ6¢®%:_æ¨ñû¼Š.“¹CñHËùµ'1žÒà ·ýû=è^mâӟ6¦“}ßD´Œ®ía»q”{>ˆw“Á©?R[/‡H–ÅÛ°K¼Èê*úD–Ls²É4ßìu³…7Õ5ÛµCÎʤgǤ­ñM¤VûÆ'â©Å²k¶fFÿḞ©ªû÷É϶ö.“}²vå™TÕµß>-ɾ.YžÈ™†ý}䬻YHܺ°¥œîÁI¼mÈ>m+^Šh‹°µÕA<ì _‹›ݺo endstream endobj 230 0 obj <>stream +Ã<Ï[–K97׌¹;z/Ô^±Wôþ©äˆm؏ÍH×Ã;ðDµ?Lcã®éfë´ýðaÙûM‹bËu#Þ¼«‹|É?khÌ Û‘¨)[Ï{º8×ñÈçWm–Óó3î8ǝëêåY™œûÀj)ø0‹go}VõeùÁ=YñF<×ë _k»=6ázÿmî¹î­µË?ï,`÷ÒÝ9ñ\•'À«e„žÉ‡ }TÅfÑäl¥Ã’«)$ ºP {‹à"Âÿh,ÿwZEev‡Ke»¾î05n¬Ç¾%«è7žÝ·õJì.²îªä…1Ùµc›Ó&»»E׊x%v‹ßÕ.{ ÍõÑ»vy¬öªùk;òØ®ëܳӵû¦d'j€}éíýÙ\º3†çv«ºriZWn·úµx\ãb´HŠ6êÎí^ÄxævOòÎírTÑ<§f]EH;R»Õ®)y§v-Ê$¢§k-Èsw`c>>Ztõ£ˆWÂÚ +î@L§¥šmZ;³[t‚M*o¡ â•ÙÝv"¾+ì#oˆéÊ©ñÖëahÊ5Õ»Åo1ņ}´ª]UÏÄî%rnÏZ”£Î+tÐ|Y¯Änٌ¯ÄnQvó ڕØ=É;±[t‹™ˆu§J͋ãŒSN6l+³¦nÄxH×QmÄ®Ý}Ir¸|+Uñ úALí<†Ù>áHìê6%Þ3ïÉÚjwnâ>†sܟեÜÕ~Õ¡÷5@Šîkë™Ýª‚7wf÷$™Ý‹œvf·zngÛ3»UÖª ‡y}Ai.H¶ÿá7µ‘èéÚSÝR»S8ŸóY„B«ë¸KŒ¾ï•Ú-§ šîû$–=jÞòƒA`©Ýeˆ˜­˜œÍoÉF‹pATžÉÆh’Îd£Ý‹ÊÕØ&0{˜ŠxZËA„ëÖ3‰´±åÄ ñ$j€¤ëì/òÇNN­= ±Uù¶â“µp^›#’.‘³oˆþû­·Ò®€àIõ jò»©mâ~{Ï®ÂÆñQÑõÊê&¿™6]Ñßä>¹ý÷jpò^…%x|vK˜ç ²!>œlĚ·r¨> ]èô \öíï8aOº×WÄ֞ioœämLjDkrao,»f‹x% l›EöCrË7^‰ˆ´Í–xO7†KÞùF^ö{!ûmÆ竲n¶¶i/‘ùJ8ÚuÜü؝p¼ˆ·„ãAÞÑÇ쳎(% Åm_ŽˆfÜÿH8ÆC´n×/>Žg6cEYî “'FÛíp¨“p7°qâÈʔ@>{Æ1«S«ˆžÆˇ•sd¹56Ž :Pª7²p±ÁIܞòV1dz5øa8Fåmê6ƒ|Í`jÇd §ÊÏjþYµûg9ǬÛYžÌ.1\^Ô´¼"_–Õµqn³Ç[€{WÎ1Ûm✠ûy|çoē/òÁ¹ºóxkþa·óÐxßÌÃÙé×y¸N™a•îç´Èƒz<¨‹<|ۏœãqø®¤cJÕgp&éØÜmókk¤Ý’Žu›¶»@òôÎ0Å/i¿+‡rhâYØÝÔNQ³«»~Â.´g]V즥Sí];“ΤãA¼åÖ.òƍ[—IG«d½«ò¢)ïjß#«§yP´¡ÆuÓÎ4҈C â^ý‰âvO¦UœßͤÅàåÉ êi‡0N@Ӄ©¶³Ž¿VeòŽM]!,畡&`GÔêöGnßV€í7žÝo?ÀVã’æi0oƒw‘_3ð¢´Tr8³Ê,í"ñÈ?÷ªÏ ÷T5oçùJk³¼ˆ;ó +Ƌxyœb=)ö§Ù2xhßÕü»tuø^ƒ1já¾b‹,Tâ}}˜ óYx®sçìâJÛãrEƒ[w~8BV槐wÌh®Ç¡ÞFó˜ÎÈí&oæ­ºöÎæU _Dõk4Ïテ®ÝGõƒ†[ S<ˆWÌ«žGؗæ:ÇÇù»^6C÷'/!Ru¿š œ¸›’ÃüÜ¿ˆ·¥9ÈÍ÷ÆòÕ§d¬ºÒüQˆ.r¾ç~Vw„ï¾ã¦wïg_°L—ßpWU·¶¼ +Òrê5‡Øýٞ®0¥‡6Ã-N®Í\ïí­9äx)ÓÙou\É©¢Ñ+n;㠉ê:¥SõW‡åFBulãÝÎØ'òngT/šºay¯Ó¨ßÖmgìa¼ÓXRÀ»UUÐ^™{íñϘÎÝ÷ð§9G'û ¹k»#6gJOL‰«\î±°¹¥Ó ;hg,ì"ïlÝ9h°«qo R{DzödCîîd‡-5ÏPV §¶¾Ü•~>{¹A!? 1ê(O/»Îåmbº üöÙ·ççžÄ;üþ"ïú…kУÐakÏ[M„Už»¸«ïûÝKLoŅGîòâ 2’ìÔéÌOæÞ®·J–ŸÈŠ9Yĝ«©ÛŒ˜ý ó$]q‘ìÏ^sæ%ãX\åA¬Bî ª·hËÝзˆÀ£SÀ»Ä&¬] ¸Ù]Š vó½Û(íY9Âs`6gârÉuoèƒlAð®=ʖ,CÅa˜âµ`7òŌVo}nî>½oYö˜÷¹½;Dw2B>LG¯cúÄI€ÙÙ-\qÆþºâÛ[ÓÝȪϸOÂrÍ÷é&Å0?-¹F:V!µØŸÖë žk{/™`V"wlìQóÖHùŒ»+Œrç„볞‰B¦>2£å°îl—Ö¢ÞžÞi•ùèP']%qŸÂÎUqºáù=ì/³ŒÞNTœ¼x#^ëu#_êeº7á|ÿ±_ç\÷Þ"…ô$“’WwV<×åÆHY3ˆF`žÉ79z×Ç;Æ5–×3Ù¼‰ »–¥Uš·a[—†\ÏåJgߍtö݈g«Ûé[ë +òÏî[„‘Åñ +FÇ Y/`dq¼„‘Åñ #‹ãŒ,Ž—0²‡gÞë#Œ,Ž—0²8^ÀÈâx#‹ã%Œ,ŽgYÏ02tªË`dñh²¡aq¼€‘ÅñFÇ YÏ026<+j#‹ãŒ,Ž0²8^ÂÈîÏ6߀g>vÖþýôK)žadq¼€‘ÅñFÇ Y/`dq¼„‘ÅñFÇ Y/ad÷g FÇ Y/adq¼€‘ÅñFûKYìÏ0²ØŸad±¿„‘ÅþFû Yì¯`d±¿€‘ÅþFoBFû Yì/`d±¿„‘ÅþFû Yì¯`d±¿€‘ÅþFûKÙýYƒ‘aT¸#~`}Y_ÀÈb#‹ýFûKYì/`d±¿€‘Ňæ~t#ÃE|ýª°Œ,ö—0²Ø_ÀÈb#‹ý%Œ,ö0²Ø^ÀÈb{ #»?k9þØ_ÀÈîk°ad±¿€‘ÅþFûKYÏ0²8^ÀÈâx #‹ãŒ,Ž0²8^ÂÈâx#‹ãŒ,Ž—0²8^ÀÈâx#‹ã5ŒLfWø9Œâd#F?gÏa”» Ù0ßSÄÇ0 +h/Â(`ßÍsÐç0 +ˆ/Â( ?…QÈяa'>„QœüF¹aa”ûË,Œò81‹xœ±C#ççžÄWa”cÏAŸÂ(÷Ùa”swå¾ßFqâ=Œâԏ©ä·{…F×så‰Ü·Ú +£€øFñEä§0 +”þSÄaŸÂ(<ìa_„Qh½>†QxVÃ(N|û¸`¯Â(OdӑãE…Sx £pºÏa~Úc…‹ðF¹/؍üF9·a‡Qî[¶Ã(çöî0ÊÉ;ŒâÄ[åÎIFÔFy|ØÂ(Oä>ûÓ$ÜÖ/Â(Ÿ¦0Ê},4r_¯ƒø"ŒÂ}x £pÇÃ(îÝ=„Qîœp}Öså‘-Œrg».x$wwžÃ(çvƒÓ} +£ðËÃ('/ވ/Â(çÚƒ>‡QîûuÎõ9ŒrrA:̇Wa”GF²x‰ÛüÏäa§^a”ž¦z=£·P/û•p-C‰[”åŪV_sý‹1—¡ÈJ<ûgųV8[fÝþˆßZw¯ßxvß~ˆ÷á°;üYYä¬[aÚZ©ï ^ZÙYç&”2ˆWd¥º¼yû¤ìò/ZßîšÕg߈û÷ÂÁޟ5ä õœ 9>©m˪ •óO—ÿYm;²r#^‘•“\êõûb´¼¿ßút°»þ<žœì‘£´ýAœÇd¬T¿· +ïA›¯T< +„ÁuYÁª&{6\‰ÊêuV°¯©>=ÚJ0®Ø‘•ê@/|êYÙ~¿+UQ2ÛÆo´î¬rVªWF`±ËÞAËwƒè•EÔE×ت+°R½áÈ£o$Àޗ,ij@q5@“Ñùø¬õ0ãËLU5Ó̘ÕWiÞô’ c!ˆæ.°®W¹ˆõŒ«œäWiÞbbݧmVŸêWY“QÂWXx\Å8OD–4¯x õe˜ŠžÏVëg Ú,2âWA¾¾ÙTw`¥z“UÎ*;؅- ^•ê^>,ìßÔÀ Ät¹´jÜâX©n´ì‘•ª»µ‚a­å̌ƒx£YŸž5hFõÈ +€}oÂG1ΨW`¥êêjó ÚX9É;°Rýr¯zÅUðvŸç-¦`[C½â*õ={0BXf;ˆWPJ ÙìwPH2\‘½>mAŽ˜ +Ø¢ÙìwL¥zã«P®8IS·—‹èœG½?[J3fÛ1•æ!Èû÷ã®-ç«Siû—zÅTNâS¹ÈmÇTÚ¾H­]1ëÒdú"\_PŠËSinî‚èq’S1•ª[îÏû4Lä¶K‘X#BªÌp! dRA÷}ã5—KºßL{L¥8º+Ô;ÒØ-¡Ý‘ÆÁ6¤m­KWcÇ)Cñ•»!ƒ¢áÖÔg‡[ÏYËIÜ>”z††öà^Ê ¾Ñä?„[Pë$ú€Z'ùpëziÆ£ÅÆA<óùjÊ«LÙìvÒ +!‡‡V m¸jexѾ6¹:zZÁJxèڝo­@»šÐ„Ç>Ži ñ“l×PÏØJsÉ|aZ(§ÂÙ>öhö¶#¶c}8{´›“¿ÉG/Puj +·V -›Ô­h‹û÷WՏ[½·^žn´ÈÛ¸µPÜ)«î£~¡0à’ ì is~<¨˜à9|€ Äïg`¬W;'¨øRÈwrw•|`yËß]EUuß{Tg‹¼ÍŽ kì›ÓN¬ñA¼!j/ò…5Ž5<*i3n:æ]Ï_Xã0‡@. phW°ã<¨v"ú‚Zuü9Z±F·JŽ*_ð{­•ÊBï֒¹d7³Ê.D mA ¶;Ô8nĕ#K8ù'y3¼“ÓЗb3ՙ#KjÉwrp­ծíwó 9²‹|äÈ®AÙ5#uNv§­’—1œ§=y«õ»¼Øù´»Àص»q`՝çËPáîºç–#[6w}øéo1tåÈ.âÍæ9ÈÛ<º=쨸M¶ÓäŠe[b—yfÝ2îv\ØZêVxo5wyq’oY2KˆÓ#:ÇÑÀlª¹‰ ÃÐS¶äݸNu§”-GbÂõu;3WðÈLÄ33qÇ®§·Þwc¿¨%à£c`— ܝˆ<ú)Œ¨lå£Çr­Ø-1w(ïNNL;RÖù/iûá7ù²Èe>ʗà*ìÜÄA@[LÈi­7¼‹¹5ۗ +–Ø}ãa‹}v[æ&¾}] s‰4ÞQ´Qôkž¶nà/È3´ä™s{˜B„m<|H¶þúèhwi6D?0¸¦¥ìí™x.ûA¾º€„°¹!^™„¹ê†Mì½>0 ²›IŽTDO é·>0dÞÿqµ ¸q60ÂÃA⫸U–q¾“tówâ#3ºg£µN—Ó3úý{X÷²»­ê™fÌå~bFõ~àj–t\•7^ù&˜h}g]®8éÊsìwéòޗâ&{‡lVåÔî[˜ï1íRçAõ5ŒN¼Üì¶Æ?{áéN9)œÝ7Ow#I5½ ÝnDÛäóF´á–Äy#ïd|P¢ù8ùGD=znš9[©Ïƒr0s¶ƒ|8ûÓJœé]ewucS6çqíIwå®ævÍD%¬–°Û[ß°p6Ý^–¾çt^ŠVÝÊí¬7x·,k>«ÚvDH®±‚³@`¨æk.»-Á®—Fd|™Ä±/=NR\œç“GÂ0–üæ=üv,öüæ½)oþ:^ÝÃ6eødÿÁ»Ó«œ@›µù—E¿þ8þ[Çö„xýw'è ×{ž×3$ôz<ÓÎ÷·ûûC,ö~µ£Øïç;ßÏÿ~{|{|¿ßIÿ«-_Ôò¡©òZ¿´€“—Ï›ÛÃ?"’úuwBÄ?„þîúç[9=2tì?ΐo?Ößkd=¬ ïõ‹Ûí~•®îã§×ÚŒ·ï9¿¿Ü-ŒÕŽOXûÈ?l5î´Ïëçþ,¶=?œEtUÿ\Ä~}ºË-«±ÿ×ïü±þޟÎ?â…~Ø?6ÙØõOÏØkÝB|øq¹>ý·p²R5/óßP®øízî–Ùíߓ0ÿM$Îf«=ÑOÎõ¸íI>÷¤ó¿Eÿ9Ðzûçúãb¬eÞ¸r¯W¶Òn\Ùʼÿ˜Û +Ú›±Ž“ñ4²qåñZýGÍñú±ÏY\ 1|Âml\q¥Më‚r¬œþ¸ö¿¡ñûÁ<öÛn_Sñ<ÖýÇíüôvÛÿãÇä›b¶‡ãylŽÇÃ·!«þåŠß¢¬ú3În߄¬Úýä\ÛžäsOdoIë­]Æ£éI‹.bàS{ûϛ6=‚Ò<²¿Ûñ#æ“V]¶cº½Éþ¼i×ÛCñ6Ðí›.-{ÿLÚÑF¸$û6[?لÚoϔÇå"¡<)ÈEÌ÷åÊÇG˜®;blþÈþ>—‹”µüæ>ȼ¿ioº¦s=T*÷åúíÚkÿ–Û~Enû-ÛxÎÙø›²_-Óó>¶ù°íòovám8#¤'+à`lˆí÷o…~{hÞÒßíøѼ1í1Èfl½éàþc:×C¹ß:¿é²>óiÕì]÷‹p“µPf÷qʝ·¶¦=øϖ+_^ž˜”©Û@íq¹Ú·ÎAæýMóøQ|bR›ò1P¸/×o×Þü·Üö+rÛoÙFýsÎÆߔûj™ž÷ñµ·eÂ3ó¿ð~ç{Ÿñ—?zûÅGŸ}úÁç_¾ùw)ήvÊë½1ì¨s¦¿óÃ?øø¯ðÅçýãõè›ï|ïwcþ½¾øâÃÏ??úø£·þèíôéOþêçýø¯}øåwßü;ë±úæw~÷Ó/nÿðß|ôÓ/>ÿ/þ_þñ‡z0>?øWþñöù·G¾ÿÙgߟùôƒ?øøÿú³~üáOõÔ_ZÿóÎ|óï¾ùý¿ýÎ_X†ðW>ýñ¾üä>ûØþþþšÁ§FùÎÿû_þ_ýâ?öåÿ¹üÿÓw×.}oýÏïÿ£w~¶ÿ?™ÿÍOÞ ºÝ¹þø÷×?þÃER öÍßýûá͏ñÓòÔuÏnŽ!§Î^Z°5Ì«@`w ec¤vû³Ú×ƪ£Côïýõûچ¥ gLŽÓ¬-î^D¼G¼^qqoWŽ¤Ü¨ñ½ö³¬<¨¥¿Wsþ{VI¬YìÞa ½Š“~_ЯœÅ91)¾ˆ¹9pMvfÖ֌~UüGõÒã Ukö]¡³n³Æ¹»ˆ<ƒ˜v­ÈÄ¥ ú9ñ±B뢋ËÔ¼M#F»¸& ÝÝ_F÷ÞüMpøä(ÊÂ,n;byg¸q0ý5ߛqêý¥ƒöÃ.KiäÒëÎÇ4„AL³’À> 4Tþ*©´Îv!Ô·,Õ¡þJc°ÈPj{¯À9]»8Q€55@Åç í1‹0Ub²{#FG¡¶¥ÚÝ>Hx¨Œ…”i…ÎcͅÜ$¢Z®Œ†‹ªÈC¥ k4´XY—·h€á¼½¦•0Ɖ÷̺ï1-u}"+Çƾ kb©3×UT5®/P/§q];[*Êx±„K÷±$[?_r‰·Ef1#çÚì6ÇEà½i]‘ç6ZóÚöÙÙ³Á×·¡ÍQÉe-qàAÓ àÒE&å0jéz4[Õ#ˆ¬õ_¨Òhäõ/{:µ¤Pª €ßR³o­èb²Bu,Ê@_1qQgþEnªÒÑkÕeà÷mðSkVe¯~í҈%óQÒÑùl°Î„ØÕuúÄÙÓêªø}AwÀOè(Ï ô¦|(¹eÉ/ŽÚqùJë"ò" €«ybëG™IXn•ZâÙ©Öò¥Ù}$²3‚ö°ëúL a7Aóvó˜¬Õ€T։o]'ÉyÀI¢Ýø ΑeºxРM–m +C˜lÅÉIïovCù€DÌLƒ±Ô6 {…Z4ý~ZQ¨A¾¢-qðâ«,f+ìèbÈÒÁzUÙÖ:°LDÞ!o À֚i +ˊÐÅ7`‘y­›ˆý8®¹Ñæy{±ò<Ç(þ2Öb±ãÖMLƘ}„q À«0Gå5¨v`BD­#æ`m ï'ÔïQ¿ÎyUY5¸ ³!¥ƒ$«2²ŸNÖOƒ˜£µìà÷NrÝ! •T7ÆÄuL¢ˆ<omojô9vq­ÁtÞJ¾2©RTµ½O ä(Ím³²AqÚL›HŒV¶Ïke/r.aø³ÆqwhùguáÖ°·*oæ Ü+Ãí ~€`U`®¹¥^҉]ă7¢]Nf¯cyšÍƒÞŽ¸ae:€…ë.¡U¬r&¢Q{ŸŒãbˆ.áuŸ — 9{7ïvÆåV9ˆP~žù„g5*툇î¼ÙÔ…‚„íIâÔ.ÞØAû&Ã\Ô¡û>ôýÁ® +¢$lz{ǝŸÕ¤Ûҗ¾­º?Ēº°„Bt2q:º„ðóeÖ0ºdÖ}ª.–0—ñE]’›4ê-ïï-vS†&ãc4@Vß,+q>¢©€jW11JfÕ úŒ‰—:›5ùdÕndô­ÓÅPzT’m$]ÂevÒ¤î,5šˆì‘§(ômÔÛ@š¿: G9f4ýÕrADiÄV¥æ›_âNUØ]ڜAc뛂­gc*|AMúZAÔ²Ë:ŽÕTÍjÂBåÝeèU/‡€å3gmf§Xo1vÎ~Œk°»GÀÃnæÀ¢’à_oMÊÍóiìÒz({€ÂFš°éb–̨ ·Ñö«Â>aRj»,Œ5Q·T1^ä³Ô¶$¸,2uJ^½4ôþnÍXÆÚan»0Yý׀mRõ2#¶d‚cÔ݀†æRñ~áâ‚lªßÌj6½cU»´ vùHtV +Ê,Ô¹6$\º³ú.jÁ ï°ÒÅyrVªµÍÀ]ÑÜ­Œv«ÁÈI_àÕí˜ÔA%µüåõ^hMØlÓÜ%³šH“ç>Xö&5ݵªJd{Pþ^Ü틦ºàÈ ô& ‹_‚|¨µÖT8 ñ[0wkÀp÷R•9¸-dïcxW‰ìEÌ;|‹E´Ë|–âzµ/j9@åí åcO:ftxË}ßâ2iÈ߁©€X úÆÅS9¹ÌBA6úÕÏÁZ,•5’ Ûn>ÚS5¢ ++Aäf2ZYE쨎µŸ³7;k?jó·?8ìï¿ó‡_/ùλ(‚Œuæï¾ù}ñùGŸþäÍw¾ÿýï½}û³O~øÙ qQ † ~üN³àÄ73è™xÅÀVš +‰½¼¾Ê€Ã’Ž–¬¼R™ pÁ +aEžÁ‰o¾šUqpƒŠ—M¸Vh,†·Z²àÌ÷Ùiª¶ª›Q)mj4l0[½‚fõ +¡QÎ."ú@5Å.­± eÓXޘÈQ6Ì"c ÅÁ©Zyà€˜Ÿâ€Ô¿ +´D.CÊÖp /šÇ IÞµ ôFw­B Él3Ymµ{Ì"7Ojóڃݪ+cDq˜bqè<Ž¤3œ­K+tƶ:ÃÑÊ.©sˆîÍø2£ÎØ|…%¥­jy஧$bRŒ¦%£ÔWD6*]DÝÁ¨üIî`JÑ‘=ܖŸ°ŽmNÔ¤ Ìñ€÷F\ž? b¾Jª½Âût²ÛÜâ£õÍ-í ¶ה©èփV,¯ˆAc´‚ºìw@ ‡dAŸf5Ép`A0@Æ(å’ëîÕÅ"f….L´˜vË6Ȧ5±…¦ö±$ZÄQ6¬‘~€x YÃcÍ )D„t1"¯óqŽjsõ° jv,ÂwE²0¶.­ÌèR¼Ù—N]O®ß7á#îÂ\¿Þž@"/"Ò²äJ³¶Ä9XÞz´æ‚¢éÂı¢ÙWxAà1²˜•ºàƒƒÖ†s¯`· ϟPàѺ}½)¥"ËחO¶¥°×d«&‹{¢¹W >[×®N»IDHÛÀn8¯ƒ§T[RYÏ2ÖbòØHæ:–̓fQ¯/ƒM~Îï†=ŠJÃ“µV ÊÖÁ’I¬À^\ëÏ@4è?¢´sÀ|p@6§䬂°›0¾Lî ƒÍmZ딒1YïdL„H‡* µ«¢¤ô;h&C©ÃgÒ9¤@b0“žGVœÔÒ_Ë)q+o«Ÿb çÕwÀNñ/2:ß}läÁÛuÇ2–»=mØÄÏês@JHÌ)MðÖL6'¹ I˜ŽA‡;¨‚Ö¶VTrŒ5@r> +ùv—¯ê¸âZ†dÄD ĉž >u@!9n­¶¿"n­ ©hÓ~Ô³AäÌ:7® ûG`i[.5­$"d½Ó—6ȳ Yö³vÖ´ò¹ùv/+±‰8ËfÎî¥E‹Ö†Vã-µ¬"ÃÕMT#‰§T7wÏ&¦‡×“‡3²bÝ`ùlÄá!ìîræUâ|I8Ýaƒ…É*n„’‰!Û..u@#zé€úu/ݬb{&1pÂkËÕD„Ž dÉtK»G3À) ºBOºÉ˜cŽ0LDù›0mƒ¿¿û”IÐë֒kÖµ¸´Øßúª¼ÜXÀbŽ\ Æȳš0YLЍh:&¢(Ã÷Bž‘ˆ˜äøÙ»xÉÌ0½S=³€LGÕñjdÝA/P_«²–À{ MîZ=^§+Gb%L[i]å +ZÈݽ YŽãôÌTóÒÊ0”"’â6‘3ÜMÀF·,98åǼo§X]"ù¥ŠR6°ñ¤VJš&§üýh¹—ðliƒ¤)- šzïÑrQ‹MYgO+g9Îû÷Mi0k‹ûÙ!ÛËZb؛¦[YQ¥pˆ¹KE-A啕Y“<µc‘Ü]ϐžšƒ¨ã†B2¡YTO¤\y °Y•?AUIt%¹6VTéº bÑô'Píj’wé6 \Nٖüý’¿ŒkÙ+ a>ëVZÊ:C´´3Ïb³•-óä!Ç*7ˆ]”l¶~Jîd«Ã/0!А¯È–Å_{@C ’>ÉÙ¬Ñ=P±ƒ м™bdLxÀ…IËB_4î!¼”ªgFÊ0gc ?ðˆÔ4-Áôk-àC­=”…+“å.¹%e&²0û¶\ æ,XÂçpؐ…x~ßý8U3“¬.8 ê6RMÇvùX hDÏkÕHbŠ%-̬pLÙTôczóҍü³å/êRèh ºÁÁá`/«Ú눅ᱴÂWGôDuxLmY@u9»Ö¾aœrƒGóFƒ¡F¤-‘y]üM¿åGo©×Q^ôހurç˜"×.=«%‹â hØE#9i—׳Sçõ¦ž?„|H-/âÒHÙ"I@°W¹²Éb–eB-A£èJ”VD 6!#>#é + I‡aEÉH!ІpðS™Í+{1õ­Þ•Šºt&C¶¶Ìx¹ÛôÅï@(‘V•qÑkôñù™Áܚ¢Aè®&Ó3îOždW®èèÂö°Ø¿)W –¡å&¯$âìªXVn´ØïËôLôšu* +{²®¶K,ðÒõw‰:P#,fT`b*>ÝDD¢$%el»5ùD0˜ázÅ7e:3ž^¢§|£z¢.ł­"çÃnOg"z6Ç"Ô"j¢#žgËp?+o<…ûks»%D†š0ÓYKx¾UaLÎÙwÂS)¸Ô_DOF^PÒѵ8·ýûÁ(NŸk¯¦r³x dm {_ö”ˆ¬ñ5*äە4 "ôÅaU}‘|˜,X]'|ç¼a"sÐnz\èZ࣠õPä&…!%—(x¯nÀì†ûRPå& º¨Ñoºï ɅÆýlî×P³Ã§“=¹Öÿ^Ö_”²õ×èlÞÀÕ1²{%¼¡9ܺ‚ù©Ê\5áÓûáb(®ѓÍæDýћm˜e¸þsW£øúfFæ¸,d•ðX& ŒhJac¹ß8=b”õ%ꌏQ[4ØLñ²ùÈ[,¡… +2Y!Áa>Š!0ԔRã¦Gg´Ü²L-Ѧ¶ë¢©åê`Ó;å)ù œç,‹Ò¯NŸdÕÙsáá&˜te¾ñ“†uÁðºKÿõ[ÓäÑ×Ê%ï,îvªDð‚‘-iu¶Ï2 ¬}Dgó§àÀ¥ý Ã^Ú_ASR6È¢l´j)&ôߦyË÷›ø/ÓµRŸÙ;Ѓ¸¤Æ±+O<»àü¤0-ˆU´b뢮›"vûT ª˜†Oê“7 ¸ŠÉrýìü‚ÈŸ-" ÝŲÂj؀ËÁ[Àû”váуV¢¢©ðÀ>y`ÉjøÎR7[ø%™ŸÆF¨pŒ¶¿ß=÷¡MZ¿¡Œ4œé”}ýՐî.šÙòG†8- ºb…ýÙ¦¹è3G3£5=pÍ«ý;Bõîf ¸#KŠ(®Njjà¨Ã1Ã$m3 ^(P$UÑò,R€#ávÔU{eA +2 ýw«n+ Ø4ˆc Ð%’È‹š±ò Wg õBqA2Æôg)ù@L–àÂl=Šùb ŽéVðÀÖ{«&ïå2tî|ÏFœ!y«ì„b³;ÁÀƒŒ]ˆè1ˆ1E9à0×äa±X|C-;ÔÌ dµA9E[…éØp©, šƒ¢º3_@“b«0=Ù¼‰Q½ª+³ˆ!¿·63ú° ÝV¡Û XXWP'°dQ¸`w–jÊ´èsµ6I#Z\XúÏŒåÇÆmeÍ>áj ÛµÃed0gçj]•E´X0œ1Æë@¤LÍu¦±ü2 ,:Š(›«ƒejré"h¡( ½lB‘b Á‘‘`!Ùnó ËÃÔ&1,7,بý²q”¤ ÉôJ´o<¢˜âeÿ@ûlGáe Q áøR +‡’6*Vw>H‘nŸ”øW2¥K•Â,ñˆÐzµOÞ¢gˆþ@ ¹z²ºxDKBУ©r›ü܆dCú}k¹gƒ×ä¶Èb“×]ÀzlIÑBۋ%ê%ŠÎJR^Ȳ<^l*'UÓ.¹æK=‰Õ¹ÐÕÔëÔQÎ¯Á¿Š A©ß–ý–·tSɘ,t^’ÜÄËÍÅ£®_êloãþÜv/ô¶XØeÉ:w¨¸‚à•A"VG]Á˜tL‚ÁÈêT€-I²ÐpÛBµ7yôŽ‡ncíÖxMˆ%%ދÝ +0ŽŸ¶’ˆ%6dP­Å YA1¥îŽ·5&•WÂlX¬îlŠ)ÎPðÎXÕlÍðx€‘wí!@K¡Ä¥À ‹6ª ŒlÏ »Ó»,2\¨Ù²¹]4“x-°Û 9»ñ6ڂÍb«…†ƒú‰Áú6Žç•z†B±[o8rž,õa‰¡Ý)(>ÂÌBKàúÙð‚'SF›îg$úæ²ÒdOÔD‡+Ë÷°ô-®&°ey KI8Ü$sž×’ír}”:ƒçÅp¼D+ãÚ Óì¸9BåK”ïEçÀ›9³B`ÌɋZáe±=—vÀzqܲÝÜÉۏ;¢éCX4€BCí3oÜ\´N†p(-¢|C÷뛢âµòr‡Тæ^î° .sÄ9’ÉÆֆCë`É`«–/7[­]G¼Êð)]Adtl–é×rQ¾a¨VÄk•ÕÎkÜa.Iv ŒÚX-içÐ/¼¶±“7⋇§©6ìÌàÊ0>hpîË×놴rA¦¤hB?™$ì”]§Ü©µ·dT’Rê-©® U.ä9jhhá\êæaõ=G­ê_ñ«à”'åIK–gP¨çM+vABHMnq3 á:áÌvÀNg5Ą=xÅåP¥)Le:Ü×nDoqRë÷ð‚“Ï; h OÞ~iûÔ=P•^¯h­s«° UØ|Sóϗri€eT&p®iX__>kŃiì <‹BC`ì[=ŠÝtŒð <ûR¬Ä<í÷„ ½µ% >j®ìc£^WI-¥8m¿‰yIؘ旂.Ǧ^»8¼ eù[ݶ±Zš^Ç#G#wk|öX^·ÕFºb‘Io¥`ÓÓ&Ջ‰çºÕ†ND<®v'ĵ¸^ëQÖsÜ*­3‘íkÃN¨zªcОw5}Œ~‰K­!„<²[¨ÑçÛ<Ø®!‰>­5Y6¯Àå–@©Q³ù.¥‹ßËÌ8ÖT»ù¤T½(vßäábÈlŽu•ýŽ`©Wb'wחˆ­³]ñ-C‹Àø*Ã5­c%PQ0·ì§A6|äVVÑõ°úo)»Ð`½‹×¬Yî€_걉i—íò»„↦6D*V ˆãZ ‰kUDõmà*Ī-˜‡š»÷Ç´ó»V­›$×ÕzÕsñò¦!ˆ)9%£âÕy e»ú’³M‘ë%i”²î¶ÙFžˆ T¼°’혗*@êÂcˆ1-3sóFXX»¥†-x×ÎFÁFskO3‹±*ÜÅ0j'ªÓÉË»å‹Ð¡`Ä+‡f2Ɇ£ ˜]–àŒÍÑ̆T͈ Ȇeδ` + áÕv&{(¤mÃN3vY@ï0»ùx‘[Ɣ22áÛ3 Õ(žvåt„ðkRÔŐ§²ÊŘ° ‰ •o—Eæ®Ü?˜ÁR{3ï`hcÅoBGø‘§¶ö2°ž.fÁ¥è@ÀÆd"rR€À÷ ­>Ò‘0­fÌmþíªa:\P¾ž¼É;5‰`ƒM¥Œ›Xx Á¨v6H +o‡-‚•8&S× ÷x¡¼ûoVSÚÈàqíL=ƒ!™2ÈÏf&6CwÖÕtóL“âùp+«¾ + è=Š@߃Äå-ŒíÖ\¬OÇÞtAŒWC U3Ws¢­6¡Mý‹ èU§y¦VÇM¤Mg„UòKöøÔ­Ï` ï )'xF÷¸o½ã'ðú‘frŒY)IÕt;DT Œƒ.›‰`u#†žÈ3ÞZ€Â/¤Ô"¢•~®fÆË({Éø³‰ÎLùU¡(FbàÚ<µ‡€ý’ªv +h~i³-h5”Ë ðãér„ákn€]-j® +;ê½,×ÕÁb Ö +Î-ÁgRtžš3@‘BFL<7ÖGà³µxf›}ÈV”r,ÊìùªÌîÓ![Eymô×W®?Ï´S;Jë£f«úìsp ‡Ø–µ‡‚QO[ +§µŠÿP×lìw]yŸR¨‚ͺ[†Ìh~ï:DPɤQ¡®>Ýd!„-‹X늰Â(#¾‘Išh2y{•Óᬩ…Rc®•I +@ u¥tc7£xUu#è(í[„§ÍóÈ>÷2/›ÙE¡Æ!¯­ä¨§†ß`¨ìa#*3šO¦…ábrºèX°D}ÊRÝí›âŒŠp«à‡6ç®èDÏ̈杈¦StÒbHIk´H´Ò­/A‹^§B šƒ% †j‘}Ž $Ÿüâíօé¤ÐP¼ØåA*¼Ùm/üXŽ­Ô° 5í(Ž:qyoªMí³ÀÛ¼pÌS©@+‹êØSk°åVÜ Â®ÛjIV)^ô€ë„° #€ +c­7íðze…Í{4ñ V?Lo9dÛ1OÛ9꬘Ùvüô¾`Ýâ2ą%ÄZ™D€±e6H3ìš» LÔQ(;š&õځñ^Þð¾ÄÈάU­CdNÁF9{]ˆ‚!×š¬Pä0›¬%;†«5…ý^³6C°îu5hÉh³(ßÚØë,na†ghŠVÀoc¡·…ƒy§_«››P±2#£ßª Õ¢ç™U +¢í,ónüÖl·š{šÕV6ÛÝgB;L]C¼¸Þ¢cBénn†÷6nX¿I˜|Q—Í O-`ã‹;wm~'ú€8™;5<›(ú¶ê¸½ÕÚve8"ďêbfðô~¯ž,nŽ6²c€8ñÜ  ð2kR6Z§ü´ÈU8[ÝùŠþ1Ù²ÏÓs5é¨;\#3”>w®â¸ëÊr˜L©;FÏ"¬Ð†»Ç ÉÉjîÉÑë`6Ká™a §ÜAÂð±¾ç˜\vËÒ% ø—¬ÖbêŒgÓ +:ØjÄáÃ]xHì2™|Ô\™ +SfMÄÐ*Kwq+$Ô͐<Ëe±4)id€B…š£ç´`³ägOÞ՛íUªí›“½¨¢-nÈúîć¹ª‹°©szä™ØØEì»<_¶™@az­RðìÍC²^èdӕ xá4ÑǍý&=M×ÈÉLèàO»>ùËR¢eÝFH<[ûõ‡ÆCoíԟo²Èux»/áU@,ªÕ1+bÜa°ÛÄD&·‰6”©YîÖ N5žÁ"Š5Ÿ-¾ÚZCûg/D$Ÿ]° ŠgH€Çˆ÷=ÏnDa¸±ûh 9Æ6™À;é5Uˆ[Bpü¿=a^Îzq†e1»ÞÇM¸âÉn†»å™º·Y˽ÃìÉÕQ¿š,N8FvAΖ°H³3ò|™[Cك£²y_Û"E]N§£-9Îûtí–ýƒl`ù¥!/,]…þ™T"j Ò)dï,$‘ñdV0™;&ÌßZ…]œS¥·ºÖZò5XëˆÒ`… ÑË](t³µÎ †£a+Í«\Áf€Ò’ LʀYäKG?’)k†0‘Ú×'ìš{ŽìÐn&úI yƒ Íø€ÞiŽwgÓË\E¶FÈB+±„@ÓýӝԜÀˆ¹€m,nÂÄxê«Qk3|Bè;ý‘,bê¿^L  ±Ž¾ád×é'³ž¦e0çáf‚%¦Ø3ÎÂBɺÙ`¿¬hB54Õ ¸škioCCŽÙÐî(‹¸M÷ô‰dJ¬É.®äݨ+*ä‘Þ3µ…Äy·JŽ)pOKÝEٓ2ÞÂðeA¿»ßLM)~“E|a–6åVa)ÊF(Ù/*‡¡hø44#bh*?æM7¼” ßÔg ø(îÑ©C¶Wåú“±ÑÑÁ!ÊQ-wt`\]Š¨,•\­j]”³¥ÀÁkìé§tw´ÛK'ŠoUàˆš¹ÄšpÄ ³ÕìÝbތ‚ÊS Ê*ÕdP$å!F§øGƒÌ.Š˜Z$¹J¨?ŸÖ„6›WÔ,„ˆëòJYP;vÕ৻êIBAdàÀ©MMCPW­‘w“§X¨¦«Ù²­`G µ=QU }ú5kËw­ì3Y`’„nÎNG® 2êÞ»—øt6ŠbÐü¦”>]-0F2&ìÉ،£%–}uìÆ4ȇžzUG'¶É³p#œúå€G1ƒ¼ÿeÈ:¤YØ;"ŠØ¬j³³Ï]êþ{-;VUÎÂ`FP”>,öPÝÐGCïЋU²üã]–Yÿ‚nø ۊjÐãÎôŠÒX€¦ðIPXzª @X ÊXX·ˆÌ;Ԇ´¨Zb5E·„®ñ‹¤=ÙہÙ꺳ªÓ›~WZD[g‚äûW-˜ˆÖ@ƒÐô¢Ì!”jH0« ï"2 ¦g‡ +‘ŸãTßHœ-xßïø½ßýþ‡ü싏þðg¯_|ö?üé?øÛýø‹?ú½Ï?ûÏ>þð‡~òá'ðáçþø÷>øâÞÿø³Ÿþìsë>­½ø¯1Äïö³O¿ÐÏ×ü?ÿ@ó>þÕ]“êá$ü¥Ç¦ÛÓqmÝ¿âá|{8aÿO—ÛÓªåñé¿ô¯ÿöï}úö>ûü§¿Åàæ¿ÝÉ?­|ˆ(ÃtŽÑ,lGô‰E„£ZÅ …¢"ÂMm`! „kƒ&Wi¹ò¼|BÑÌâ…¼A->Föbã$ª5‘7˜f©"wANe->:ºÉТ£ŽR_¢S¸±Æ¹›iîN/»`›Í'ƒ"¿€¾fƒæZª²ç$;PÓ*+D÷)å„Ñ œAÜ9\ë½.%)½¥ ¾='4½É7°FÊÉ!tk8ð9<ÆÙCÞ탂žTŠÖ#Â_áLÆ'”E¯®eÏ5Ké³ijª¡‡‚!èÓӄಌ8܉fÓzü!ÿH>Awyo€^­Ê±Së2‰èíHtØXreüTõÜ,š­Š@-‘Šª6¥àªµ [ö/W÷f;c+Õî çì`!´Ž4¬±sì”YÍ„‡älá ½… æƒr°È8¨•@×jh8٘/y7ó¬ZU.•¹Á8š”$obêR‰Ä¦Àyèqâ k,§|n@π.ø‘—6næ4ö®æ)U¹o™Ñá–i˜Y=üÕ-·‹Žœ¶"ƒ­E»•ŠóK³FÊoßÙ]YaÑV«y×2Í.Æø Ø ›sÂN/Ãè¶,oî­ÀæúÏ«jYùýj¤ÌE É^£-+ÚÑ2nƒßo»Aôe¶JÑÖuûÒØ.áX±…¼X4 ˆa»»zEÜ,vAВ8ªØqKf«ëR£"ØÉ(y: í}’:R–¼£ÕSè k]订½è´ØN†á#+$ wx¢œsëé#_£²I|ØÝé©¡ƒAñä<ÓbÊÀõÔüTj¡õé1]ôæq0O^‰ÄJUå7œ,邜}e57zß”Adž|ÀÚ¢yì"Gv>$êè)[Åö”Äól8“æê֊Ò:K¤o}”Z$ˆ£aàòg/%ÏÂ:¢ƒùhCàmXbhŸ ònxóx£„[ìKK(éθŲ€Ê‰@$Ä`3/ƒËðæ#ÃCèPfKعo•‡gF‹jWXÌæÆ}êãN}h®8{SDbtàX<Cô ÈÛ»°BÜÁž(zpXO +]É,°º´tÎo @KÖoךÈËøØ×@þÈÝÆ`€¦Œèè[@e¨ [ÊÆHÞ[—µÒnu´äVG7ãÙùÁÿ_܆öm›#ÿùµÖÿL-àÝHf¼.=A:å#‡>LÌù»,b— p{ (WÌa½†’÷Va{´öÂU÷ưˋuBŽžŽeãºýיÒb{ê—ÉëÆ@b¬°ŒÈsj£ +FkH<{êf(*õ= +Ί({Ääª2’ª¦WQ5/núffÜP¸m ^­ +…ÓæTt˜Tâ=¼Å$¤ Ú±/ZLÞìYUµ­ ʼº°Þɚ1rõÚXîzhê]—IˆÄÝܹJ¯àØû¥ôc—Æë±è’g3f]´eĬêù{³'ñaʅ²!¦îð@˜£U€Ù&¸¯t 6Xm½--b°.ñQÉh×A°VµˆelP78¶9ïÅùÅ.‚AHÅ®g u¶~#ez¼øk ÑU+*Ö´Âq»èl÷äåЬy´¨¾D뮬Ð΅äP¸âtQ½é6Án~ín”`÷*Ù)¶Æو-˜™Ùª¾“§Y»© ’EÉ"µV&„¬{ˆ6w “[±V΍ +Hµ™ÈB~IÜÉ}‡$>Ibt˜¯ ‰i}I@´¶´­CwS"]fm +¦Z¬lA.픣z@êeU{Å;ôúÿÇޟ$Mr$k‚à Þâ’yXÇ6ná[IJïßöMb(3‹(+û¡ºvNìfú«©ÊÀÂü Y[›5`¶œ,¢=bÍ´D˜ªab– +XU.l‰õŽòE`"iÓ[Gj}-Ɇ™ëhÖT ݱÞþùMkÀXâ$kg•0ö˜1Í"ñ]èaz…¯+j8õkÃÆÖ®“2¶L±#™p‚§áëjaG“vHå>f~6ÄJ4‰( ù ÿ¡G%Ý>Xº«{uöUÖÛøô]YøŽ¨)„„ˆ„)W•­™R«Õ¤‹]A¨l¨ðŠ\=—x`鋩Öq<º•Û5Q›W ¬ìnò@è@TR²EÎxy\# e—Ëbª9ú‚#~9‰*Ndíßn¢òë}ÕÙÂܬF /ÃÄô÷W2aÔ͆…'‚?¾Þ¤´c°t£VÒóm Mfí:¦ƒ¾:™q=ý{M,”S>Y#‡‰#Bċ-KMíxeò˜FSßnÏÓñ~ôT㲑×ÕÞèSËeaˆqtÁD˛â«øù_ +SL\®Œ"‚SPI°pÔ`ë»@ï:uàøRö»€å“ ✹¾7ý,Á`ÿâ0õ·Âàc1 ±sÈ?’‡ÁÚ´É*\¸Xa1q‹A­ ²7u|-=(~^LX5‚‚[ŽaéneŸ >ü!“Ê[ýY÷M¤wHxF@g-¬QfO0½} í"pÃRúúÃ2O¡±Zh³§rmï@ڕ óÇjÁÄÔdJÄ Íg5‰é<¤ÂbÉ$‚“ñH$ènÃg™5=˜„Á”W5‘ꧩ"묡Š1‚ò“¨H¥=¡k`Ó[7Ç­A‰ú™w@mÌ8@­m3ïH~I AÔ΄ äÃò ‚Bój{wËpœ%‚‘èú;Òû¢1[G´Ð¬ð,Û3µM6-¿ª žåê½°Á2Íæ~Ù0WrY_Š¥eÍg ¡¥Åøç^L„aƒGûHy¤hÕêÇv\ò ˆ1¼[kñZ$¿6Y|ÓDfòs~ˆ4ÁB^[˜ĔÅ}Ž+_/¸+«Èý &€ª­ Üƒ™°ct!ôíI¦m¯Y‡ÔPyŸmÂôU±SU-Öobo ‡A Y¤_ +8V[zÔ5R3ÄðîÇ堀qO¬îëÕæ°DãWs9¢w©z+& €Ø"­ö˜0åñÎ¥€¬z@q•ám¡Tĝt)»áø‹„ýmïçÁ0•^Cà=¥×Ãæ!Õ¢¤B©.Ðgx:ºÙK.9º7:%Ú /är½R‡0vˆß6R‰ÕÒ!"¦r§›Cò‡²€Õ ÑÑ ¸m+%n0Z`¸vqKg~‘½‹È¶¨<|û]ÎcrŸ‚:5ñûØÇô}§z€nÑñIu?êÑD‘¡:\÷“j7oeZV•÷ºì°du§7({`¾Övü>iKê x7+ˬ ÉìåÉRë ä,¥éÂ|V÷'( ÂُRÔj¯OòDÆîÚôïâÐf›6•*£¶7S·h¾X–®ÌûM¿EGµ˜ê‰)÷yFGÝÛzÏ<ùä*/he`¿²=Ôc +&ׁ«¾:þ˜Öw˜…®7»e¸„Õeöò½¹ë¢÷5ä{Æ«òœ ø_3ý¤ ën3#1ËK£û6–2½ÝË ±loò–¢Ñ™ P}‘ú Ö·BûÓ4lrªŸ»fe1ÀW÷C -‘âîŽ7Ò¦nÀô¶ó4ÑårÍúÖW0ƳÊ}Q§/UF·j\=´ÃÔPà0…†¾é\j©½q$+ÅX´CKlš–V½Ç®çe€y>%»µVÄÈ@MšÃ=¶n# í_‰ý¸ßc$FKëª )m¤óÝå-g‡²x{ªSd'ã Z§]®)ÇՌI’¡*œàš«;!¹¬×1Ͷu“¼ÕÔÌèbMi.¡¢Ë À+B@N;$`&]R + íÄ4:»þW^Ãé… HÇæfãIžz¯(wÞûK–؈KE–X‰ûW‰- ¥¼DæɎm{‡f8Á%/fÄÄâV­’IËR T¤XƒŸa"PJå$ì–…8gsæhñN^µ&$mMÒtêÉō%²Ù’|ˀè/²÷¿Õéƒ+“¬g®_€q:h’€©6#8©,n88ó†4¡®Ôâ¨>{ ~ñu•bƒÐ¹Fëk :@†·¡áL‹^¤fÅ­Wê—N[¨pŽ¥Õâ +ë>l”dZ”ÄBÎ!XÁŠA Òd‹û¶È"zab¢ç°^ÞsíÒ@%¿C¸ŠÂIv]@%x Ád=bR‹zÊâ|=¹4]Š÷§"¡MbÖq´Ð`!yß®9lKÞZ„Kh¼-®ÛI)a$$ªz~3Œgj9umX‰×ZEBr¤ÀQG„ÄÔ@åàˆÝØîj,wš%S '­ÂøQÙ·i´ "XrB'a¸o¢¡0/G µ"Ô¥ )½è<$Ótãŏ‡ÚÅ Žá,þãé9—wº±øûQb +¡²Ær°îÌ͈;-½QI¡ÂöÓf,t¶ L(Ožâ¬å…¦D~B†gÂΡ*D³2ª~Î:Ýl„/¢*[S>„¶Í–0²,хB¤SŒ9ÕøÓ;| +<pÓÈ»n'2Ü7e·EÜ6r”2WÒ>ʑn̬o¦â£äÉ^ƒ0Oí[íAñ ®˜‰¿kÅgžô›ú…¤#.¸XQ'‡%þ)3|o`8¸)r10ûŠ¿ó~äBp%JM!J(´ñco’t¨/¼jž`£3+)dJñ +d»‡så.4²·É‘ÖÂN)ßTRœÌdΊÑâ<ç‚%Žü*αpVièÍ·@y7é#¹Ú‹dÆ 5:Qsnƒ0™µ”ÆÓ<]/-Mz-óïß•^TrK8™÷̸G!Ez¢9A‹$‡Enc‹Úù,ЧúÑ% '¬% s?áS<ÎÂOp«.¯GÈGü Þ¯" ïº@-ñ^ÄÌ «<ƒW2ºl§ ¼ò ‚딶.;T!?aalõùbáJñÛ8Åäٌ«àno±ÆÃüԔã ôDmý5H¬ep¡8ÏDZ Zõ O¡štÕuø¸(µÛ$>•Aʉê~‹ 7»T/«ló]Ÿ—å…œã}F üT„ôúÌWX›Š&ŠqQ++ó» cÌp™^µ‡Ê‘|vü@ªÃ|…cEgY¯ûLª7ρÑÞ$ hǧV!ù•oŸ3e|ÚÙ%ãÈ<Ë-­ãš6Gñ}}õwŒdI#³€ÚKšŸbjh¾ae;š˜f—•0-„€‹l®­hé=‡©ËÙ_÷GîZÊ'(œ¨0u X=ÎŒ8–j#íK·Ó»^f¨C*H”¯ ﺒ7átXÈ>yCŒÖãêIª‰\ßU!ãñf/¥5+)YcI,څ¥¸®·ê—V¸Y´…ÆE? >WbÕÝV /ŒÈp§.%8x¬ÄS4yì¯= R*cðá¹NbÏÐ8ñO{ÜÅòÒx¯´÷eM‚=rÝ’šH x_£«ÿëÃkð1¬Óôb¥ÎI\®±íËG9f¼• ÙÆ\6¾„m`’Cꚱéb6°Œëîó; “£luø4aïÍ[‘²—+6à.·7É@KmýÒ_F 0ù“¯ +qüúã7[H­u²¨êÈÏíRÒM³[RÓ¢kF +íåm%þÈg7ðH?SOùì°6žþÓæBÍ«³ð‹F¶µ‹dõ  û¡®ªö±Y%}¦  V"ûëَú$Ò{ür¨ØŸ…”–4ÝX|v˜ùî\AD“K쿢яbÑ +¬å>äÖõøœSúˆTÜÐ1§F='íõXÝ`ÔÂïpqnÅÄnFQ¡BhS;hT•Z²lPS iò ˜&ÈSÇY ?ê–.Kގ3~)˜Õ™h•?7¢V!¢>nŠ`*_ð£*…¢°e_ß+¹ƒŸ®Õ÷u‰4ð“¼âëþÕIõ¿ùAûÏU®ïéÏR®Àtq g¤Ò 9РÒ&s¨–JÜ@»¿%†5Ñ@”u­éŸ8€Æ¢š:‚GZÀç$ }¢­+‰îM–ˆ«MT"‘Œi:nƒúpíÝA2¼û5·™#ÀmÜ­@%=­¿Èf2e‚Ù3Ø* Â9¨Ú§N¤Dœ $ÞÅ.Á1Ԓí;Õ㞀Ÿ]ÅOF1ø¢Ê t“±LŒÑ(ê© Xd”Æ_f7­CÑՃé_RqR Ov• 'JüÂ@H‚Œ7j;š%Ô!ÛVuO%Yô‰ÓYW `j¢RÐPmP35ÝÆ׍)%ê¿*ÍVÕ95ô2T²\Õ^%dcäëK$,»‚O ÝïN@VYCxE,vº/¨Gª¬ 7;m_ps ß_F|ifB"I6¬¥K¯ârƒ(_Y:ŒI )™¿ œ8ží XÙV¶FbvދY%‰À*_¿æû=öóx¯0Šrú,o5¼Ï£"NËÁ#\› +scýö>JE ½•ð÷µü¹¾¬‡°[²ä¶Ôd•§à¢º$ÝGjÍ@ݎ>eMUæ hÙ- Â0*vOŠC;á=NÈÄÏfe¾–~òçÀ³õZìð1¨Þ !eÿ+÷gùb~?…Ýè,¶Zž)72pŠäfüƪyþGX ì´1Û +~òü£JŒ¶ñÇÅ[5,…uڮб¡(šZu+zëHíwÃúŽGUG#v–—Ýݞ©|TW5lÈ vf0„ÂXmk<‚ÔïA{k »:m p m vÄéüAÒªäÆè²;{ôE‡YŸ›:?þlWՑ]†pt[wC8Œ›É ›{rÛиèÂð (' \(DІ¦ÐAŒÏ'ÂtRaC…üÏ%Ìî3Y?R½`°)8T‘VÓÌV¹Û¨ÜôÒ<Œ!Gw¬$Q%9lÿ_ƒ ¬&k)€åú¤ØM_ßQÞ/ÓìÆgÝ#l~O¼*«¹€ùȼššžÎæ;ˆÄ.pV~¯ò#®MÈéì»ü\ÆÍ÷ç ŸaIŠ‰›åI„OÞÀy´§Êq˜Õۗ dYïÑ0 +´<)]ÉwÞÓヱÃ^ÖÇH:†ÃºùL\Û­ßa+4,·r÷¡j[cÉÇÒ©æ-·Q=uýñEÊ|}.î¤ ?­ÌÛV œORò|3 ÏÙÏȇµCÏ{Ã$‡Ý­1íýû˜”o +Ôã¶^ÿuÃ9¡Åìõísrž…mÝÛëËOr´om}äJ¯p՝¯ÇZL +!§kÙ㫽hŠàî–Žžô\¡¥ŒcEªàªJ€=fŽfëÀk%H#k֘ÞïÆunwx¸Ÿpé©6ì҉°öl¯/”–ý§s‡v—?ʪc™¥òú#æSÎ[êÀímÝ®ÛúµÄ–hÌ=ý\ì=€àxάtËÂ-§M<ïã] +Rò‡nè/åeY¡*[¿x%eEþ?Àˆvl2îÔ‹ö0™®¡Ðó È_&9+ö!ƒªÚ¾¦S#€HÖ5hÆ;¤•ã'ŒÛþ<÷yG¶ê³¯êcí©s&Ûqhc´¾ýÙ¶ºƒŸ“JÎŸÕ¿` +øC-à¿ ËùÿŒ¤Îÿº¢NÁ†ò¿,©S‘’þ/Kê iý>=ÿ Àsÿ‡÷½þãÓ «Ãÿc©Üÿï(ùï6Jþ‚v‘ë0:ãÓ¢NTI–NËo±­IÌeŽ¬ÿHÕiPO„Ÿl¿À‘mr߂#ëqNde֙l©Ž¬ÒÞ0Cì3§ñaSo‘§ý«õˑæœúrzbß>§{9֜c < +íÛ2ÿ#Äp´T—…jXÝÀŽUC›qȾÓe®:Dmo'8ÉÚÓ¤ÂùE.|¢Îõœ‹ÐÏYfԑyñ/Ÿ±Mó«6 ÕêˆÖ+¨\Þö¯ Ž.…ú–>Y™wæ$jö!>+ò Î¬ÝwÛ>çÿw”¯˜©=‡F;Tvüs”µS6럣軛ï"Áº†‰»ðAy!hHDüûÓGÆÃI°2½á‘Qi!‚b‚ÓX¡ø֛#WÛ¿ü0*?éÑÂ0©ùÓ´1ök¼Ž±Öâ7Îòé²%hQŒõ0*%R”= à’õ#¥!7ãpˆÑIGç”ÿ3†±ìEÁ2âͶmE&(úþÖ铳àiðÄ£FeÖ|ÚMfn­¾bŒQ¥ã,§h£“g³4=æq•&6æüçÌê"ðý +^öð Æ»?kk ¼ ³æã ·©BÏO_ÀpY¬%âÇ#èåá!ç¹è|Ã`MƒáöÂõ}¶ìšJõù?¯ZÿÍ;F„f>Kb(<€?%læ°é…䢮*i~Ƥ@¿Ïª›Õ ¥¤\Ã0ÙËh5”O7`·›ÎK´“æÀ’¿¤ <Î6]T…» Ó¦ÞPƒSk@ ٰ༴"Z‹¸j$¨À÷aGœ»½–Õ¶ê)ØNØÅ(T«¡Ôƒù^â2å¡ÅA!¢Ðú"í*ß'ìmkš,¡9®ÖoÝ4 1†Ç%;ï¹ÚuhßµŽÝi–ö9‰vKwÚr­ìë€àd0Ðý²£-‰¥ÇJø¹æk¿ [µº0ü9iüþ_ÿñšÉö +º'Ø\-PhíÒ}yÝ/E÷_Ú{«§¤Ô {BÓZö0Ԅ @‰LVvrÚóÊãýëÌÎÏúQy·öUߎ…ÂqO'œ˜mAA‡ 0­ÐQ®Yà ïå¶ä#Í7 Hw^hÊõ–÷:wËzu£‡V 'QýFº÷ä ËNMK!Ãê¡UYŚn”º~»RÜԙ]V–øKëø¾RÆ%-Q£ïd«œS¥ÚMæîÈnô#³ó +ùczn˜êÕeÖ£ÖçІƒ3ÿÕ´¦à¥¦õŽРõØ?´VdV· T®+*ÿ”gš(jœ^%(X¬(ÑÈ ”*¥ÙÝ!¥ªõ?½ÞkÒúæb¦ìã–ÍÞ-ià«Ò ï텭Óq–eù©‡³n®j3­Œã]Àn KçÁú>ªRbªD k¸üüëûËAüÿԆ™u¯–›Ò2’¥šóëÑu + $ûp[MzÞ¥~ò¥HñÍ;ýb'J—*HBÉNR£“ÊÛ²‰ƒª úó•dÌЙI(Á ˯¦„í}¶ ¹ ùV6º‡yHÞX¿U:ñÈE5Ú "£‘=ažw1'ÿZNé%)$ñÍð¶­T³ý-9LÅAØ°³ÁV[µØ,)ÑRê—%ŸÔ>¿X¨ù¿·À6¶…Ô†œ¾¨Øô?˜VN¸·q-¾\s •ž›ÉËv+5#šÂédñëÚÛ+áÏ£þÝáf‘uó¨ij)= +4¶bþ|d C9tºüô×Ŭ¤JúݹuŒ5ɹ)“ÀÖÍòAX\ +„pÕv½,ü1¡¤T~ J6ºé¹€„ö¥ÿ=©èÑÏÀÍáâ!Ôžê£wã°4ÊðµW(^)&x+sÕ¾‹ÆÌG¬`˜:]‹;O¶ˆ‹Ã>2ÞfØRQAÙæ çã~¬ÅôÐ֕Z-KUîˌ*p^7Oò óËð°ˆ0_‹¿† z…ÂCðÅ^cB†rXö”UĶ¹¡UÒ6C—j8<Õ)-ƛäÐ!oDE§T‚%n¤mgÒ&Š9¼j¶ïñy‡¨ß ²gž§É!S9Ô,³Ø Ï̑âšÇ:H“þå\ó€˜ÞrÁ;±¨F8½Ÿþ¾uòÉTРŽ+(½€鄩iüËþ0»ÿÛô–úÿý]LÿÿÇv]þNÏï{Î×gÑÏ*þoÏv‰V!څSž¤ž‘‰Œ^MAŠŠ‘ôR hôr³¬zHß%¯LÀÄd»‹ÕZfR¨¤™+Ë%¸XU(^XaÊ"ð¹ó ‘i]4ê)0¢¾oâÃd9Ë ‹g”K´Ÿ<Öè*‡ó&TsÎXIA—X­8]Û_Á V1ŠºÐù¾y@°%´¹'Q7݊þóÕ$ Âõõ'+& °ä÷»£^Õ®ñ° +:=¡BÚhøKõqòúé›Zڂ,m3a22@°í5\…Çt\ô“"ûOÝðÚÇOÁí`^7´ê§¨MÅ|.'É'ñ¦Ìm/ÁÛòñÏ8ӝ OՔ)¼™F#(ÂNiJ…ý£DB’èZ½‡·*‡³Ò­ZŠ‘"Í2¾÷?c% ÆÇ,ç¥ÇÃ*ûe¡Ð­•ÃÝ»d>ˆ$«uóHFü¡0üµc¬S_Ûr‘«cq%PSÊHÐ[n±qú‰õV%ìyºqӏZtš‡yLƒ iqŠò0‚&$×¢_—`.úÉiœ¿ ,½^.(GP,Ò2úóbò·Ê¿ÎHÔ…7!ó™3<$áMÓÔz7LËQ¡p¸k¼G-ÛÔ·„âx8]3rP¨ÇÏ.ÍYà—|ä†r HŒ0nqùÄr*s<ÔîånÈîÑ´Ýð²LÄyMIø~·xÀ`öj­†*‹Oô†gµ89Tƒi\71ëånÖ˖þZP b}y [h©š ²sx÷18BE#ÀT¢ø/‡ÇõeyÎUÌ®‹¨ÒÙêA¾9'Aeéî= l£TôDd˜2„ùsÐdêèێ?Îgv¸ìA´¹ˆhç7°cškÙ× 7ùúâÅ6/ªƒ¾–Ç™î h÷Rpúܾ+iiŠS]6A!Yô2„ÅaPö0.Y#` Ä^— IR! XèïÛ §¯ ¸ñh½wxÑËO«-ëü Åê¸~»ÅÀðÁõ’«ˆ{Ê0:¼Ý¬f8FR™ÅŸ¤R®.»m1Èñ©F§­–úãȌ‡³Epäû¬ˆ%8RÏàìXr:¢y&ù‰Ø¥Û /î²cŒ[kCù+ ³ÙŸjèrC.È°}¶Ë÷xŽ¨ôÛ¦mo°[a÷­ymÅõûX“ù £bOã$.îú8Tìiœïôfð ÿ%Zkä¥Ç-ØÐe­‰Lm¨@;`˓Áb©øÉ%ñk;õǖõûñXÖ>ۏP|KŠÎ¬—¡B)-™ QþËyo—"R‘¦ºòV)jc?JIO ~ö·¬ TŒÆ[Jø–d39\_ÝIçÚPo·BqDS/Ӏ•!W£<2GœÛYÔÕþ‚ÝãºCyÔ;õ]XùÒ3ü,× Q,ø©ß¶ ˆh[çȬ²°-³c/¤ ÈDCpG- Ï}flݑ ¬l÷¼õ¹Ë-«Ì^E±¢L†’ÚÕ}/Û^¹ÌQ"“^ˆÔ#ÐwÄñNßjŒ}®m8(ÙÓoYR_:>Ab¨çLJ°iéP‘ »Rp†ƒ—œ¾pOEZšçÂÂìAŽÈú] +ò·Ä;ˆ…FéB«uÍoQóÒúa·C'lA%mÄÅõU—’ˆOx–”p])‡B“½æf‡ŒßAà¾þÀèéc¬ÿéß/†/Ú4àW§—JlöÍ\nt%ï`XJ O%D +K ¦ +ªð{—̯ùj¾1Rñ —(³ +›ˆçýÜ;V½ïF™&ÿ˜Ô²øŒZ‚TÓ²¦”…V'M>4ŽºTkóšёB?¿?žxkjZ’…ñö¸ÇÛ‰ÞnÊ"Ô6}—¸*[ۙ1TãXÞQ-3óv¿ìˆWv +,¾ÌlgqP] cD8Ä´m,$EÒ?°…ôœP¯t݌ŠÒ×ç⣸ö?´<‰Ð˜ú¹f©4H[ CWyÚ«“âǟõkEQ¡±èý·ñ¹þ?R.>ÆÝÿ¿õöÿ_<À?lÆTìm–¤éð±åfŒ•ÜòÃ[YŒd‚„€¦Í'3‘yP͹¸å•N´¼Ij¼íùd@ˆ~\ŸàHÕryÒí3J؇.P²nµ9­®©‹j¹æ80A_?‚òóëPʐ$Q»Òc û+=n‘PG[5á1tè.Q@]ÔÕh.áò¥5¦#wÑ&Î?‡$]Õ§úµïae[±~ðÃâ¥rfoª]éëË~Ù_¡œaê#(áç‡à@(]³a( ‚j›\ˆ°*鼪™Ÿ Êà)ïba³nIüRr®ë —ks²WVøÎܯ!kµ+J±.0£ó Ð}³‡Ðzå³ò0–ÈÀ ¥‘@A„tÞO?Bgöx²BSâhÀðuµHÃY’ô|¶°T($àƒ7‹Š<_-í¹uB8a 9»‚ÒÄ ±Øk¬£A¬.»“@µš?çg„oY€=;ÁÝcÖ¯L¥Or DTù«í“z'Ä ¶6™SsäéÁxŽWå僩ç©cAò]êŸd!h*·¥I;t|þ§§ø ´ÂÏâì$CЎI牋‘ñõí3ڌ'}dœè6Rìf¡<-%© þÅ +ó÷:®På„H%@þí°ÇVèb,seC’-Ópd>ÏËm+’Cq¼Žç–”‹|'ÝêdNHèö˜ lcíi‡.é#ç¬òÄ Ñ¢S݃M›ØÙÑ£ƒí¢Õâ¹#ü¹Ì¸_퉘r +áPö/åS¨67{`@ ÈÀâ1Ch騨uæDфÔC“—õ~‡t óDÒ \¥ŒˆIw)¢{QBð.ÑÕ Åx“ÆÙÀú +’¢ Ú¥}‰Úÿó¿víƒêÄ=Ð [žÕ_ZlAÕ· !âiˆòŠèRÙÆ]Â]|S-ýô ¢§Â‘~ûõÈùYÚ Îë¯ß!ú'Gh<šlzD½G`î>tyÎócï"µAò  ¿.*AçÕ2K—r¡ t0t7½]{ÆÁû >qeÌõã Îü‡Ÿå¸údÐ_PF)›Ñ-ÒՉՊ <^î&ò. \¦—ɃË|dA‘t×/瀇 µöè>•2ô«â”•o½1’•kÜÑhÖKWÌË««ëSäµw›RÕÉ=ÙüPÆÝ5°X)[æêq‚’ŽÃp;áw¤*ÚÃc‚p#Õà-þü¯?‡ÇzŸ}ëY½óÏÁt”þbíû[­Ý›²Ër)ª’§½õhËc8öQ¨ ×æÏF©ˆ‡5Ù,Yš‘ÓƒX?Yf´§°‚Ñ3å¾ÔHV(XKôý%ûÙ\ +-CÄD”刻+ AHoñaI"ŠûPs¢²ò ف¾¹osè1'–€¤é¾À­.P“Üf=ò~Q%Žu™•c¥óýOªb³¬±žj˲E“òè_tµh.Þ×NÆ`KØó³E¨Âúšƒ”‹fð–ki¿dQÕX%˜Öœ„P¬¯^¬¤FŽ.ÕI"0$ïð5=AäP©¤ÄßÅ$7w@<‡Â6d†Àu@ì-·åwiðÔ4\$þ(PÍ+RølAòanDÈûž!›Ç »IB–tÕ yÆi0£e|n]  jM›(‚×ک¿!g³’4 +ó‹0Vhµž©Q¼ÜëÅÐv• +5%Îf©¤cÂèԅYt坌©Õ¥ºAp¾¡XHÑ,"u<¢uîRÓøå“C‰²zÔ8f†ZlPx‹æÿ™õ¡Uäú»Ã[<¨cð4W+’T„fä±Ùx á³â7 ‘à²}Ý-é^Š7Vʌ€‹pDBBUšP®PÍý#†%IÂð}Ÿ-÷f5+ þa‰û–ð Ççèò¿u‰þ¿tÑ?,Ñ͉›DRPªÿ·ÃS¶§ 篂JIµ”ÑV¾jv¶·CX¤M¦`ð”˜* Y¿2˜ +I÷!,+ p×隣` ÷]ŽÈÖþ6mŽ]qPqH¿¨óà°à½Éð§/@S)œûþ”8wn-šüûùàgê¿ïçN!/e:üêâ9ΌÁt-Ô9ñ·Ãóc˜ß7ïlëó„v¦¸Äxcú€”î <Ö,Þ«¨À +î(⌽ßäß$Ýø3 ›Âãý±ˆçœ-Y®? ¿ +€G®nz2… r¾¬¶«·T·˜‹Ô¬fXOPç8‰BIúi;ÊæŒ3M1Q!£ Õ™çC j+Ä)¹®tÉPl“Xs]Á1ï„2ô6!)¸DFéà÷„5ŠáèØÍÆÝòÍV°Ü#_°¥ùó¿þ¶Ùώ0U³zݟƒõ}ßÎÀø _að~ÛÊ£½9[k§wS¾g ðžrwãÙ]$UŒíÀÇuý‰­Ê£íÒÆm>ë)̓ ´ñ,ˆÏ "¯÷/#ØZ&ï•$ÞìÛ¶¢¢ËÑ%¹‹OÎÚ¹€½ì9)<óžû¢€¦c‹»l³NÜ_ ڿלÛnpR­ƒrpÿ~UkªMÔ-Ž‚*B2X5äA8eY‘¸åkŠ£Sº®[Sì#A^Á:—ƒVLY£Ñ÷7Ä_·Âfڃë&ËlÄz}F=·Dø¦Å(+6Ñ^]þEaëI±Dæô 6Þĺß•> †ë”á.‘›5Eg‚Å¿jÙgA +ÿÌ()ÊðØïüj?•Eq» J,¢rýVA–ó™ªÄ+¨º.Pj,¿`º×‹kµgØ~3¬o ÿc`hßÄ{9;æÚVH¯ðþá£ûkÀtÅ{ÿ€ŸùþÈð‚Á1¸òýtCþ40ÿ^‹ &ŽkTÑÁ’ý·Ã2ø@ØÐ~Ú¹h/:òµrLnŨÌϋУ%—ý¤15êMb&;(ɝvt\|ëm€zb«”µ‘…Žõ.Уóòû¾” Ú}nU¸Yé2 åöÆÉҮȽ¹€iåOê͔ölnÔ5aP8þ•^¸ƒX°€’d ÂÝ=žåsü­rœâÅ·ûÕf`çê)^Äñ ½˜5ük3_Ø ©y²'KÃÝaHVæ³äáð5ž–; ^“^ø÷ÕlÃ^86jy}6£1ŽÒ‘Û/ýA‹f~ïàÊ0€á>Þ³õºMöšzz '窿³«9G‹ìA‰màq‹5Ü*EW]ûd[ †ËÓ&º×ý4©"ðO_ÈJ„Ý€e°9Ö¦=E®:ÖEs8lKZz sâV*CŸ—_ðF©°iŽœÃ=¬3\•<2z†£”ÄVâÚYѬÈØÌ›>RwÂxÉã’˯;Z:ê·¸µá•ÈE ¼Xiæ©_Ïr²¶øœ_¬Ž<‘Óߙ´8¥gxøH¥`­ ýÇ7ú÷4"f õS†þí°^ +·»ÙÒâ(¯‹,s Ók™¼~Ñ£³¿ ®Änb킹²Ÿ¡hk¾À/G ëëm±çÉ`yJÕ·„ªyjᗴF#ØsíÁÍ`œ®9OüIXü~º§bV•Wz=²iF° 'àÖ*JõŒ2š`:·Ì!eÜ<ÔãgM‚Û_S§æ½Èf²œJ*1Q÷Ô‚ áqŠß«= ®^ó®kýÓßçø[ ` ðåFYw<©ó-ÁQޒH~œ¶¯âm×þ2­ÿ}c•‡°†B½›æÏVér@6>cß}èù\:ÑèòD9âĽœ>õŠc2(‚Ÿ¡ÞÞ÷­OVŽ”wX[†5ˆ´‚‚òav´ß \áõÂk½ÏÎìíL¬ô÷ý¦3æû[\ëåÔ!¤4 óµö¼ƒ6ß³X3‘Ë°nÍ"íßO¯p•9®Në÷8,”*‡Á°´;åÒþ46P~þùç!£ÒÖƒfdþipýÍ&Çv×: Hÿí(–?‹!ø+úJc}%1–ó +)ä¡€™'GHÂÁ•¬œ+*Àø¯æïÿ¢êñ ƊÚø¤ñßöU[š–XÑæ{}<Ó®•w‰1֔~Æ OwÎ(ǍùµdXbB£&ü»ÃÙBƒoÖ\v\ž2ÀfÜå]wætɟ¹®…Ef,·¼/¸_Pâþ >±Žé¬r#å=Å"A-2æZžwó×9ß›Ùy.=SceáOû8J=Ï¥®¨ Ùy,ÍBT=·ñbö ÿXk½&Â4f´ed‰¬Ž1¨êÇàûºÜí=0͗`¸üÎ Þ¿ â¿Ø¯yISU®–ðÇ5­ +SW‡.Ò&8Jbž¬ÅvVrZ‹ÃÈdË3¾NC‚ÁŠøˆ »… +Z¢  ’±†÷ ›eˆððui:Þ%˜!@1´â#¨Ú ‚íÏ0+£ KˆAN …H§…‡öœ"Óȟ~2¶ÂÚ宽 ånø¬%ª Ò%™;Üë£;”0¯hÔ"!‚" ÐK +ÍZï†.vßï‹YÏ7Vü †tr¨ŠA5U‹½捯÷ÂG>9ï_Ä~«q 5ÁÌ(Ä5 â@ؒQ(Оh´‰DÉ­q‹DÛý®j 'EÀ9ýYé2(Y ¨ÁEL ~Ýƀ üdÉlµrßZÖ#ØJ"sÛÒ}ç[ªex^+‘‰£ÉØyBdâ ꌖ'È84|>Ö^œ/dPŽaÛv× +Â`¾ÿ«@ša¥ƒî*Ý¥ºžŠÇ9‚±ŒC¸‘òRuõc•0°”çscƒ?`~µeOË°ü=´û$ŸŠÈÇ7Bà”yt.¬qQý³¶œƒ|Ouû¡LŽŸ¶òûÿ#zÖû¤¿|䦤خ ö_¾ýƒòo…Œ¢€ Ki·X·ž»8v}Viä貯„`•ž#‚:I½â*'I£òÒÆJìsDke™\šf ¼ÂSi.`½„ÕbG° ÀScŽÌØ>þàÃÌ1|vý%ì ~º@n ·Z¿òôŸ– |Rœ(ÛÈÁk5B +#Tÿ¬þX„£: # +ªÔBô¯Q +4üg|nÀ ‹•…7SFÄyÌüE°½ïe±µ÷3¯vםðÊ i¡0¨áσàïµ3 …dqô%À¼R^õš‰ü•Bʆî©óMíµ5¨>žÌ€‚:s¶„…”ÃÕGKz‡|æzrMºŽ#¸a¸J†yKÎ:Z 7A½AçÑ©iK²ï§/ °0ÃfhëääUK Iný„O¨¹é˖è“PËt÷$ÒZoaÝ® cP…c%(UZH°$‘Wx9\?aPÝa¾éUüùÅü­ˆö[LŠé’Ù¿_xšx}ƒŸ§2àT$S¿ÝpKd›@äk€ äÖüÙØÌÛ²[A‚EbÌꄍù’fK+ø%õ—b­êF2?9¿²®ŸÌʛ‚–ÃÁŸ²ªký…ˆ@ªËÏÿJø¼ðnï³D72h]“O,ÃhO¬šÕ÷oÕ”5UEpÊ}Ò$íûû…ïó”((H +ŒÁú´j%¼É7>ëâÒqø‡µ賈Åx/µõĐFøHV‚áü)iCë¢Ú1þ<‚þ^3༑zš +rÿN˜Ròb‚`—è§XÑæ½ØñŠÇ.3–Ù÷PP .‚ôWö§ RO;0aâtY*hE¨ÓŸÄܺo÷'I(Ϊ¨[ »¯Ä°Ø_ ›ÌÝԆáߺ'÷UDù=&™s`ƒ±ßIÀã3ØïÆpp¬’› Á»©%œû’þ@W•F#—— ž¬šÖ nÓ̾º@}¢¶x]4^àU-VñçWû·šc0Œ ¾ Æé¿–U1Âæñ³"¯ÝÄ(ƒÊ°®©ˆÿÌuµdÎ<Þ'ØÛRLîÝ|‚û‹0á_gùò^ +(ÇRÍDÐ* Äݝ÷}¹Y0Šùò{Â$HÝWÚg̺D嶬rp‰û鯫ȧïßÜ@¡Ë‡‚-ò†AôÐu®ŠÃ6ÂEP˜eù$¡†¿•õíú³P*ãîˆúýgЬ+%fs™’¤ƒ×/‰*ò:·¼Á©Ã?î•RÁ|×÷— ¨—ˆqá².‚W”8 –~ò¶‹ÈTðæ¨ç—W#Z&Ç[«ï-ruA°tÇ|ö€Î2“£ ûªoXe\L=l êj+ø“Òô¼‚Ì þ^‘¥[O¾½ìŠ¨J_ ÍÿŸÁõË×w~$$*~þõ\û[sWÙ+ØeäPü;aQ³@Þ"Qm.`‹è‚ÖÔ\ÞyØH†ù©”ßV‹Ò"w|û[¢O«—(u.kŽæU'BqáðQ§Å|l:†+¸Vb×ʈŠ@~]ˆÕ‚FåšUèÅãÞiÎÙ ï\—õ±ßc aÉö/"pš?;màÔé Ájh.£~³ˆ‡XŸy®×?ëdkD ^¾ïÍqÙ'Õ¿Kë ^¢*½‘ÛÁ¼AÖòÁäç"¤`ȟMô8?Ø.â"Îôz…ԮϚ-MN|ÆK.¯Üzü¸éò7ëµ á#qIâÚø Ààj3£³]¸üím¹yŽV­â/ßRU›ÓŸ•B‡{éù+¶¿Q¸¾pþNRq¥TóÇ •)ÿbý½–°`ɟ‚-ª;\(„Êš¤tš@Ð a³‰¹‚zO°ÆÃç{ VCƒ¿Éå,z‚æ¨âaÑ!LR¥ÿ–€ìߝ˜ÃùIÝÁ-âç»À® ¿ï„dð½^vÀXoïÛ$Jñ©üˆ­Aë +Œ¶Ì.]Ã-$kæŚ¡è‚W2ыƒÂÓàñkªñª=Ò +Ë:°ˆßé +IÁ#T1?xoÞ_è­ lÍàIL¼á?½þ¿UÂKƒê|kÊ÷o‡]?Ä j54’IÜn54×l«~9Öò +¿=[6C0bÖÆÆ1Iüééo‰;‹›Ï~Þºéû¶¦@P¼os òu™2|‹¢HÕÁû¸²‰bpøÌÅ°Y†Wþ”UÔlûË –øÒ=ٕ$Á‰µ¡ÉØÔ0b}ŸÊ*;—¥…`-ÍuµœÂ45ß·d2TâQNE‰?®åD>oã·GQW·œ# ¯_Hòª¼0<¾¹1Üú£Â,J©dŽÿåÈú›ÍŒ•zŽ¿¦ø·ÃÍÁ7®¦Mv¼Ó„™éρ‚lé˜õY¶òj×ÂÃÔ­çI¯¿¦Nók68µ3#<<€zŽøû§ÌÇô2aû™ H†âu|áUy89–¾wP‡#CÃݖ÷Ç>S ù'H©õ</ú]j¬ûmêLAÆT¥É¨¦«Žê9×smّ™×<ï ‚4|«ŸÄef¨¯‚WÕ¼°üúÉOŽxß¼´ÄÂkf^RaÃï:.œxÿ«ñ ]jïºjÿNTKh?’jWP^k}ïÂlP!½I +hë¨eÏTyA<_:2’3ŠÅžYêRP–;ԅÎÂ>(cÁË"¬ªÅ"–¿o”>¸­XNcʲ,>L.b¸ëÈÍàH°q*Ø[‚À Óµ¿@ ?ïµJÍþ +Ò« ˆt|TÁ®óǪzÍ๷?kI0ª®«}Ù hDۣ˰ôO>OE|jélŽ¯ì NƒKþøf-ÿŸÁõWÁ¿Öa6˜"ê.~Æ/†‰ ÷g+†î©·V4=ø}XÝ]áEeëéÊi!M Å)OÈ +=9¿óýn‰U„m¬Hí3)tœ"DE›ôÉ0é ¡-ʱ뜂%¦ßNiIŝŽ™h±9ƒ9Úт‰àÌÍF7k¶8 ìüü¯„ýª• x7 —«2£nµõb©gŠ¿É +/ ¯ñ~–ª¤2Üù¬m›¬ò§¶Q—ßàŽ.z,ÏIsõ‘ È ‹<91Ùøb^pÏý^lŒ$¯ÊX +JH”Á**F ·Wëwd¬ŒçcFa1ðfŽwÕ? Í¿×ԂQ¥:L]¼Ú3tN´yéCPË3mu¤Ó^<ç+Pì7 ѨÞJEà*†&šâKC`Õ|eZº¬û°©é4ƒÕÃÞÝ_‰á÷´}Šjëî¡eïá©wb<—. +W’g¡õ†k¬4›š-[Òƒñk!ƒú1#Nkù£Ê%“!ñ‚±R8(£S¬ÿ—n,jÍ'Ŋ¡Ðkb!XiV‡íƒ×vÃà’Õ‚*)Òs¾Ð%à%'Ρ’Ú¶ð/‡…Ôíù·>Õ°;¾C@þY[”îO0f¶Ÿs‹ƒEch}í‹6&mI3+ãUw€3Ÿà”?¼‚è%üü¯?…— +˜ ®\@B1 þ^³¸V‹bŸãî»äÎWPÉìòé@ ª¼5™³‡ü"߇Ý<‹+Ìû8B¯§ÓlV:ç§ö­—Ô@Æó<ˆ°Vàj((Üщ?èãY巉ÖåÌ ìš—u€X’ø4Š7»b~ðpå+ LßxJüÃZD‹ÈbaØmaÓ¸w? -ÕÙ>'µ.Ռ?v:9ë$#†‚Ôùª[’m™¬ìsm/§ M–ß÷ ¦·¦Ã²J™A–µe¢g¶Ö­¡y¢Qå  ÓºOçú~oÝ®ðÌ\t‘t ì&«êg™‰wó¶h¸Ò†èñѹ¶ˆÓÛ³ã×ÚG³Á K êîjø>õ qøJ”NT¨W<<•Î¤7 §¥ò·ÐßjSÄ'ÀÚN–+Ú¤î Š†e¨÷K¹ +‚wf~Àubƒ®r¤j[´ûҘiú±/øÉbÀÒxDÜ¥”‚Šµ)ï”âƒ,ŸÝXØh·÷Ð fMÒ« wsˆW‚)Tá*üëPcË÷œ`–7Õúा¡#Ù_ß]‡_õ­¨ã‡ò€ v`ŠC\:„†èK9 +ƒк~aMXÙðbbÂ{½=bL="ʈ­’sn·¶Õ'<¾Èƒ¥±Ž˜urk³:V"û„ ]i†ûÕ_š²c`¬‰µƒ %Dðw¦):‹n‰Ôë€Ì®Õ–֟î¸Ë !éÃ,e +øTû0îcú…w²iKx2Äܔ¶ïA“4‰)ÄáFÄgP(ƒ :ˆnª&¦J|𸲎ÍpWÓ¦ _¼Mc¥Ê<šN4$öã˜ÿkø¶h£À‡jÛ ÅÓ¦wå¶'thx‡ùCA͟é®ß–ntóàųÇÇ̞¼r`a¦ ´0âè,š0‚* bU—äö*å­3ßü—KðÁ£¼JÙ¯Å$9t27±‘Í3Ì!q¦+d>"y_ªö}²§¶PÖ^ª×-×V,Æ žgH%à³`‘=œŒ—ÿ&åBÄÎÒ@bhV÷b+bFI¤¹ât=·¯!l(Ù~VJ5+ö OáAPÓ5Ê ]Ñ_¿x!¥;QÝ°ÈíbMºygIïA¥»#Oë§/…Ž _ŠíÏZRN€jþyý¿9 ÿ÷§*¡³,ìoõXþCù…EùäVÀˆ·µ¨vó±ÎAíV´w‘S7íNØÀ€œñ‘®QÆ~BÍØßz섬*½ì4-¬Ð²r‚±-ötâ"ý€ø÷§¥NäÊ[¬½Óeîöæ×áÛÃ5Ÿf’’šCVsÿ C€Âpb ä\úôΩwÐl]ÐTÂT +:ÅitiÄcWíñÙ]Š*(Íû/_7ôGw¤ì-Xpå–x/?6k+oþ,H2m¢Á"ð¬’Q4›,8Š ÃܗÚO¤èBŠ#(3'‰€Â2 çò‰…£”ñY Ä灢÷‡¿^·E*cjßÚᲖĎì”(3¿¾ß¿µº-΃£þ<ô¨Œøs@Ôg +ªo‘³#ùÚþÚ+ßïuØĚ,•|ßÀ˜”÷|ßþ’°œµ=4-jñùß?ýüJçsAèýXÈçihb×[×î–76žåú^€œjyc[Ài<´2³{sÙ&-m?}ÿ6‘Æ6îý™Æ›§¨I¸|šÜùíÅúFb˜oD^/|#½çíµ³òöÎ~o/¾©MŠéyûuýiHاÃ'8lÞA‹Ÿ¬ËQ~.Ê ìà'øœ5/1Ëø_¹ç«‘@®ž,a:Ÿíۂ"@3#­Œ7±‘¹ËǯUúW³+Ýä¬r?scSžñ'=ÏE‡KË äYlQŠØ‹Né_® ¹0|~w†Ï$9Z[xÓßâ’ÄUÈR2{êh)Ĥ¾[ª3͋Û~wùÕlKqѶ›±§·à•¡qÕå%ç%—*A2ã’~÷×<µ÷=²b÷x‡!u’ëzN¸ÍI”}m!Ź¹œipÞ紝Q€­Hg—Í: iZðµ;,McÓ¶½Ú¿<„Åuc8 +„{èøèæˆ]ú]Eä17@##N8tjùPµiÒN#AÞõ_î¥ÊÆþ‡üçþ;StFkgŸì¿œÒè\W[-JÊ×Gn«x˜2b-¸ù ‹çþy¼ü€ü2ºÆ¶ + vۘ~éõ3ÏöwÿíWÕð« ãUÞÏA1»r“.ñøVR6õ~¨Ä…Ó»Í:àØB˜Î&™¦Ð5¢!7„ÀFÏh¢^‘j['ŠÌ’5n$Êd±ƒ[8¬¦XzìOìIõ#iI–] \á±ôê[ç$U¹l­ÖþËê+*:9#Cd@F,QOu‰Ö28j~ՆS àⶕUì}1ôd|SûiàÔñË$A \Ú:eû/qôÑ¥¨ZÂ1Ï7{Z‹°¶ïë=–M]w+”½¸•;&wšMÁϓ¯[×á=x<ªžï òpRL–ú!/û?Ï‹«ÖT³Jî•J´¬¾ïþó—HmÎmuä²2 æÜÚÅAÓìËwµ[³7 Ö^y‚:ãë©ÎÄdéÀPîû©Y{𺪟ëçûµT9>éq©¥1P2cœb¼”ŒýAŽ-IP֑â=FáÜzÝô]ŽW‹®—5¹õLCË0cÌ{]#üìD±%¡–zuÀ˜f³¢È§wCOîõÁ»dŒ"97ÏãG¦cÎÝ2ðKÿòu‹ +ÕuRÜAƒ+žžüMºùå—,@kI(6PvÛ{.Z^Ø赉Ë-ê4û#q7K÷—áóM³×'uóûÉxÙ_V ã;aúñRœÍvÏ5ªÂ·7ˆ‹Œ PˀM#RŽžq“Êî–Ò>õ×³³AÄÈîÏûÆ¿þWöKŠ´®eèßúÔu4­D«2@ÓT™’]³IK…Ác¶¢Â¹¶ïkãÀ'ÛO­9ÄGÏz¾ïAòA4UÏ Aâiäîê͹„ŒæfÄWù¶'ï#8XYº¬=*ŸDp]»³²öš Èhá8œ|‚ØóÎå07µåˆÖ:Á÷šN)3ŽÒ ЋW:3ï?'Òî3¶,¸^*„¹@©Ïx°#XÏÊ!£EåK‡$ìK¯<©#XëÈϪãúw±ö– Pá~s³êó±¬w]”|„9Òñ³:½5!†üÙ¢_ЂœdPi6^â,ߗH2‡Þ÷Øã½ðæ‘Á¦ˆ×ΫÔóH3æŸ^gí^CË1¥ýAˎ‘hÍ­‘">¡û2(¢o®:ˆ&h²cÇÃú-Þvé3LöLäÑTŸé&’ºûАCaÛÊ=Èé×cwÁhnã> +a-û“U3ý¹o7—«UEßÎ_aµU§,¦Ò5R¶ÄY±ÐÏt²Úgů‰}‚kà´µ0¨˜æló›y,ºt ‡§àjªâŽ˜»í Ø5ŠÆ¹‘…/(þ~UÅÁé{~øþTè3ì\Ao¦O"°) ]³¦“ƒ+ ï]C ÉbW†o‚î7àJ4K…P©¶°Ô‡ìIC¤øô;ŠW—Ÿ³Ó€…Äæ;9KW§’G%5u¾è÷œ?O,\k+ÐbPôšw‚ãQ·1P;¦ uo4ÔÚ#+Ÿ“f¾Þ…¿IHœQ“BG´C‹ÎŒ´°a‘ü f;ÂêyKsmËf•ªmt8L™ô Ö(e_q›nI4•Eë> }(ce°³ÿ#OpÅM+ƒ­Š±Þ¸_ÆÊxKӞîã×Û㴞Ηå³àåûíh¤sq\5k%\V{]ÎX”•±ÒY ¦©ÂÅèys7!­€¦e¡³!Ð|ï÷þcuþŸ¯è8Õ»#wÑ[S3½Rþ‰ Cƍë×èŸ h`Ú§F"¢žÙÂí(× +*Ò3¾*…£UèçÖµ«#6Dk³y?t˜¦åÉ0@2Xƒj'¿› E…p(n­êö+û|;¥Yå¡ÿ&p!œqŸàP){ p{þõÂîYW§ÄÅΉô&;ôÒïÙRdŒ¾Aú¾}È–¬‚Ké>‚âh#ؤ2ÊàÈ LËO0,`‚vé0˜¶¸ÓÔ¦+à ¢xHWÑ»ô·F֞n«ƒb0ðW™÷ˆ°Iýi2Ÿ¯ãŠH(þ¾¼<Öí’ ©çºòQ!Ûð›ê Ü®=ˆn\þç³ïþòTE,ÑÐލXú{ƒllø ¬ë7(jMwR¢àÍ£×k¼#Kϋíõ<\ͪ¾ÙÙ$á„(%À¾¿ä V³HfS¯þ¾ï_$BbݐÒ6rðÌ«0_1/º¬HªhB­Ì@«o÷o‹jçjµv,RSÅ$Ìwƒ§×ƒðÀ^L–h¨ËÛ¨n\µ„ +V÷ëö¡¼þìÚ£¿ L/"ĆüôºH X‡Š8¢juÕ«ÂË_®XÿÓU8_§hRÎj¯duÒ·&&^0n@x¸:}ªá÷•;,¨þͽè×ыÈ5è˅ó¯µòŠ ïj'Šbð¯Òԛ÷!ü)sŒ†ûüAAÎwã(“î‡.Ø ÔýÄóی£!0mkßî$¬µíýq¶fa8`/üêgv{;Mïuëªå ý¶Ï ÐØG+uKêàgçõòms{‡Ht`ŒB[¯7L(Öÿ‹Ñó’Œ%´pÂb3ö×4UñYCô§¤i4U‡ôÔ¦vê€÷l4=jÿìP ú¿rÕVä®:~‘Ãuæo—k¶oKu×þXüa¢.ô¡ÑûÓ¿7ml|‚ë!(úDÏÇUøÊ'‹{"PEÑ+ÆŠÉ !jÔl0‚(ñæXNô×Çu£Š«F?/Ðäå Qwy³‚ëEpýj®Éãx»¬Û0 C%1SFPMA~8fVyãëÊäw ‰i€VKGrš' ŽªȀÙT +£*g j3õ–F7@Cý¶àéI–ûM­™x”à¦Åtg7ío¬lê³ÐŒÚ²4Bg¦E’Sª_ÉÓ¼=˄4(0ùퟄ%EÞæ‡Õ挘0J1)ëÌé”ËOU]‹Z—í(h4ö¤éÇls,ilÑêÇê. +NÕ¿;Ü[ ùŽ4ñ¹XZ2쪹„(ҟ^XMf‚:G¯¡‘x‹CPÔ¹¿X‚ÿrÙþßCïºoøÿü ~ÔÔ¦D{45ßà!®ÆÌÄ 3¨C9' ¥>½h©5Â%}ÿu‘íV¡¢}àÒò’ ¸¾ÂÃ?¡1ô°Ë»™r?Øú-#r èv7Jß²¢G^s£ìC9r‡ã÷Q@٬ݕ À æ§Õ³¯L^>ÁV D‚Í gÎ Këì"­9‰ñ£?$ÐWªÿÛAüþ½f ,/ìSàKÑ$É} ¨ù—ÌT$¬âsShòÆèVKöë#u¯Ï—¨‹ö /À£ÞE¹Jí?Ld®U÷J±ë\E®Ô|/l`#¸\jÆ{][G‹Ïś¡Ÿ1pLºøw:¥Ô)¼@4A­u¯^ô'<]rŠ¾…à’‰÷'Ø\Ùú·1³ ÂC© Á‚9EØNAy¨>ÛÍ1bÐ-Ñy¥Ü« 6¥õ Ý3ß ¶÷ýÅ +ÿ”iu„ ]?Øãiõ –}®ü„‘ìYbÝíWjÁ«u¹j݌ó`w>ðÄ{ ÅîÁ{"=:{Ýlõ +[oX ‚uV½ mÎT´þ¹ŽYóå–©IÚ©è ÷͹Z9øɈM«±²7®o`UQƒ”ŒtýtÀ%iÀ3§.ŠEÿä$KÔ°Fá +dpœ«W8éÞkx«X¿º@ É*š +Ÿ0qږ × Äé ¯¢ñ­`ÓÝI"¡úM”NÓ´ô´ ¤é“$=€Ï9îÑ-·gá‚7±p¨WE¯@üŒË¼SD§°qï›E²*…3XÕ$rNä[-z­(Òx«Ý%spâxל¸²-ΠÍëg3MP#HÚ€´µáPOUëµñXΙ!y1Èõ›ÏµŒúý2ˆÂÓ®þw ~×íïn¯¼E(`Ø-Y`•hð¢ùv8 <úQB#(-ƒg”¾>¤å°ˆ© +Y†¿?!Í¥àTûzëž ¿Ä0ªM¿;,¤ÁÍs•:VËseƒ\Ïõ”ïs5r¼c阌 ™…z\ð(=ü^¿õ˜å·P•[C½ÀÙöÈËâý1ØJ†6”Gõ€#7@/擱ÚY@®Zð|ø2$'‹cÕ¦µ‰µ÷}b ð¦ëj¼Ôþ]œKú92Ræ|£]ï•r@š›j.Îßò}œãÞ¸ÒÀF¹âa™Ùð•í6‘”Þñ¦¶·!x1ÈåFº +×åŸtÇòzG˜Ž~þåY…QµÜùùóT>óV9GùIšÐéû=¹µ“9 +Û+Èf9Ó>uW·H)ë͹ï"´FSš|f,OaôÔ²24«<€°¼»/–³Ší' ¾Ûq/C)ÞÚ²ãI§×$©ÀºªV Yï¡ç¼‰Ê}çKk¸‘Ãvh˛·8g ›ðôÙ:`©æ›ËMÑÀ@çaöËA^¨Ñ(áà¶ë“Â]lÜßu+ˆ>Ù;“ôü€VÔtûd’E>rŸ Uˆ²<©mÏ E(yØ R S'=çŸO’IöD“»ÕiœK˜$3×pq®tèFxU6yÁóÎj²Â@l¹s]¥E°¾ÏâN€ô `„„³%Œ;eÕJ‡M”®–^8vQܒSÖtXöØ>œå:ì‘.ˆÊébÝvŸØ’‹S$*~Rz; bKÖãºÔ¤×!|µü±¦N=ÊÇùÇ_×ÿVÂ2èð3ªlnÚá@«z'†Ò”:͆<_oEBP|XìµmϪ‚Äý“X-n±ÒdÉJ`6Š¨¹†wÖ6S„¥®ÊFµ¦jwò>Ôœà›¯Ã•k"ÿxp}ë²ðá?8û'_ë¾ED½aTEQûoªÖ—z7É<ˆÄt9¿Mw2ﮪ¡ 6 Rm yyPYînmá .V_Ᏹ=6Í«½%ÕÏnùí¿Ìá!½T‹l^u]Û3C¾ÅZ† $d¸ëLœ‘ÔœL1Z žžÁÁ39\¦}3Ü£6ã^,ÿØþv+VEK¢4{dap·t&UÖ+—¾^ÌÈ°ä0¥æÓr' 5£æîÉ¥ðéèçÍ(»µë.9Ðåû|têÓ׋—gúQóP¼ÆoÏ$[øa¼Õª9ìnÚåfûòKëåÌ(®«¨â捰ybèû]ýÒ£ÁìêëvJZ›¦wE‘æ¯O*‰„×€uV׏šü¤ƒOt®ÿÔ¨Áë÷ž 3=0†tJ¤r,pM×Q\¿ÕnÈè£3@FYÍ؞̡u\ß‹`j#E™¡D\éBMM¦÷¨„})Ïb|Ív%‘jV´©‡`\ïÑªÎù¥b Ç5º[÷O»Ä×4²*·§jmæ6Õp;ËMŸ×2Šƒí’Ÿ¯tÂ_AuÞBÝ&ËÙ%ޝn€ùÞ'8tºÐpÄÖiõ]ê³pmÆÒ'Ä‚,o"VÓ½»”Ó\fy¯ö&¼j02ìì0qiq—½Qc‰wPԅáVý´©3,;à6û ÊO蟪vÃöo/J²|Õ-ªÿuJw°ÈÉgð,_àÂäº:,=8ü.Iáóªb’0(ò6îÀLŠÆzø“§¬÷Q.CJ8Á:ü[‹E¤-ºj•˜ýï¾-þH‰Z¨y})S:t³AYùvJó彖%‹Þ.ÿsû~ÙmúÛU¾Æ o™‘ÅÚ Q$B£PnÈ>wz«º…¡Ý}j%KÖ«‹\ä$]MÅ0ÇêpnVè_ü24MPqªf%½*Ýõè‚(‚ kà×%ä4¸=ª x¾_kP}òðé¥A0âÎN6È%gWFM]Çrcì@cíkxij£áÇ⢾?“!5#´àQ÷A{kS\ 8à¯úey¯¦ª–¥T^Õcš«h+BF¿Wê¦~×g/¸"á¶Ôg9Ä\Ìú–ç£ ©Pídgynšñ(PN?çB\Þö´ÔR*GMO`$k÷ž³³½ÿK¸‚7j´I~€{f—öv‡€¯Õ¥äbßL ®MEì9²bϦ-¥ïà4/ù—iã-Nõ I謢!8NX+$yÏí­°ÖÕÞòؗØ<[z +’©¼eg{°#Å©ó¼ïÛ¿ŒèH n1âZ ¿ø—Î +*ôö÷}&\ÂI֒k‹_Cp®ºjÔHα –“'PöJŸC˲ÄÀƒ!­—`ìêÒ õðóåH£röð.ÂUOR˜9°çۈð߁‹]`„¸3K§ðÒíˆ[É:QØc–}¸4.·yR¸:ò¦eiÔT/ø‰Ó"ÍïÊQTä}8˜ä„úe¥únBÁ™ÀHœïb[îñûuk +—ˆáZTL—ïY9è©Â +•:)áÏwÿ?Ó¬ù¨eXí|ðÕR^{:å÷-0 œ2L£ÔTš® %¸\‘Ã*…‚)7_Àrp¼êé>ÞÅõ•w Ü‡§Åï÷ÿp†ü[û@A*B*K´ž±³ºò9â׌õƒ‡É}Jx ›ÝµÊP¶¢S” JJ¥ñ#”ó²¾ÊÕ'/Štr¼<4&Š€&Í”CÐa¤{„?tt݃;~€hÞ.úËqÎH¢æ°zÍcÕBõX§x© ²šWu%ÕQ&¹Øì ó䈹Qóö3Á84[Æò”…ÑÛz ”ÕDd:I£YghÔhwAE€ˆ¬å©¤› ‰ UR Ï»Ãùõ3k€CJˆRJ÷K%Ûâæ¸t‡nšï¼ýmeÔOj·E“Õï§ÝÄ'‰C>™…ÓøQ¯í .x–.ˆ“ÿÕ]¾'hÁõ´Û`{¬’üxbB]‡a•±›OWQä¼÷ N„T›Qûjì ×Ð{ÓåÜq…Ö*ãî€ìU~Ñd¨‡ÜSDõ­ïì ïº%œ}‚`tèH׍Ómé +W¾]%¶ØDïV¿ù€ sõˆõ¯‚ü±t¥¨pJêȤ·÷xÆÜÿV±„¤àgõ¶xy9é—ÊJK:oêز Où3@{ÏMOA…}(Øð:îÒ¼Ý(>÷ƗŧÈïw¾ÚàŽ”ÄÑü 9Am’ YÇùAlÅFÔ(Œ 4ë®/ʶÊÁWÐ’éø Έ’á1ÔEÇ!»þ*l Í}9¤×d„PVn«-8+Iß[Ó ¬…áQ‰Ð ]àŸP¦Œ³ð·P…¾N¤Öÿ ‹’‘In ÔOø„ÑRC§`Aœ'b¦>ìq"ˆ·ðú0Ñ|†Ÿc‰Åˆùàð¼ÑÄr’å6öŒ§%W䇐`E†–»ã“ÇMÝ¿L´Ù`aœiKQöŽg¥|ő«Ÿ +Oþäf2€“u)ß È㕠?åÃÒh(IîH­ÑûùMÃ&e¿-Ȥ~íÝzg§M1n·¬ÛJgv|…(ϽZÈa’¬_ÓÔÆl)83 Á…c¢ÌðV_‰j*s[°ö0(§t|­ÖïBÆ­÷Jï?›“jþ€ªi„…ú ·¥ÑÒT)ÒMãì>³d¸XD[¸—׫þ!´Ç׏;ƒnÉ%-$0'TPž¥K†Vß¿ÚAyŽÞø- +Š ÉS´o`”»¼¿t…ŒÀ~¬k”'Y:¬P珰ùÓZkßudO+–7½—ÖÞ h{8‘æ,T߸o/سúŒ¦`’ Å ôÐÆBÛËË|"Ë +>èꛟ¶:Æ $¨H7_qšf°¯LÁA „¡ps[É?MOøÙ«æ6–Æ®5h‹ø^!F¼ƒ!ÜR'…B±©) ù¢jO±“ ×VÉ[sPAÂ%è:ŒàºB¢`]R) +‰½û__u‚,¿¹/ +z¥t¸ àÂj÷‚n¬ ¡šÖ6IgצÁ6@Oý,?‘¤>ÁŠÅ5 f˜?yŚ¢ (äÎx¡Ë¨c&ô­ú|ߞ.MË=ò/é( ¦M°ÓÀ±ÏÙ6ýõÎÖ~ƒ¬UÅ|ÏÌn»þ$‘^¹€1|~ƒÖÔ|¬<ò辖ö–Ž>Póse5Vï…Ò“Ú›FP•h´SdáIݾíî•ñŠž®à'÷ó"ZØÆ°îgN­ÑVŠá)osº{;Èm,›ha­Í]OãýheË<[ž+ød9û›!HªJ‹û ˆT 1§ÁPÃ3û kÞ>ÜËžO¦b3 y[]‹lÆé!¸·Ñ~ˆªqƒŠ,ÃEÅ«§”'Ax>®ƒ'áŒllÆims2ŒS $ªâhÈr{Xn©°Ö˜í¡ +‡SÂ`«îµÑiÇ(>ƒ£:tÞ @šë»j7+»ÉM…\]Ç$Á€•}–€F'×'¿É$pç5E_ö<*ª×Å×æцӻ—¼ÓÞ`‘ À[™‹qØÛ>¿c¾$ü&öA“DNëíœ +¶í$q{ç÷˜5³«¨˜Aˆ2²:«ÓÆ-; â +·6÷iü,U÷(È]ÈÙÁPˆ üŒÖž%ÉðPD¢»ÛÉ R +] ¿"ñý$/jS]jª*c’¯3žÿw"k'kÈ9£p?å[%CA©¯ñlßW.p­ÔÇTΧ,~vÍì¢s8èD”›øžï(—­:â¨tæ ÒûBü­µN+ýŒù~B}@›FöWô^ï¹HŸ-Ç}{{ïi¨0|”é"¹§«TóSôôÿ¦˜]ÿ4æ¤Þ¸b°½õƒÇéíijW@p}“ƒ_Ñ”H~‰Ìðà@Ý$ž<º€GPäì9èï·J7 +•ShpÏØÚ¦fÅÛdž±Y’ßìlS ™Ú+í-@ÄÎQ¤Ì°% Ì3}cZ//‹SýÝàú"`— 6uQ°µU +ÖÞ#i€[¸q¤¶ý“…`pÈ®ÃD½*èƒ#D6›Tƒ4¶ÝöÏ?}@»—ú5 +nŒæŠV¿N1&ËRlãç_W¢ÿ^•t +Hð˜p}œ¤šò—g—¶”Ô<ÝýØ&¬‹)KmP»Ý —ñŐÂÍ¢FcD¤ÙÈ;Ѭ¶NÚÒY“ymg*vy¨ ýƒ›’ä»0"ϑvóå +êQøzÙ!U’%t°Y‰}UrĨº7–E¸°ÒÌÏ6Bƒï#,¶¨ST÷PAFš íÊréä ´ëõË¥´µs'਱¼Ÿ&Y-œ±Ä@Z³h:ñ1f³ý¨+Ê·Õ⠈ÕÇ%ûË:ƒWä•búõ/‚Þ¶%I†°d^9•šU횰ÿ4N‰ ®£åíú<å-•õؗG1ù”¦‰D•‹©0tg‹t,·)%Y7ÿP ¸Û"¿÷¦ƞà¶mU2„ݲQ¨m묃Ðljüž$‰!“Æ3nÛEk<9ÁE¥îÇmkì(¯ÑëÛâ¨M aíñT–›ñúmè2­rs)júØÄö_iÇ(Ãü—ìEò«n º£’ìÅNY R¾—*ç8Å.%ékûHM1g—Hiýä„Fœk©<¥bCÉùjdÛ¼©åRö¤uSÀٖä¸0°+6_9‚Žï¨&*íá˜6sÈ¡F˜¸–®´ÿ çb + uc¦{å‡ËhæNց\¼(ËÇ®$sˆ·aàXMq&ÉZa(ŸH ñ¹jX…J0¹²)3”ÎÏÇÃCvî#|³Ú³¨'G‡)º?ȕwýRǞì*o&zÉÒ Î¯W–f~Ö…•½z2ö‚ Ÿ„RÅ] šÏ}í^“ 4`Im¥P9ÿ%r ƒWî ÒÇálÅái¶/{‘…n¶íw7½¢ùP|¥É€0rLò(…<û“YáâK*'Ÿ Ö.ҎpÑ[TÅ»[&؜˜`[£o.÷îϑ­áÅváíë) +º+‘É6-.PÙЬ"µ >Q<# ã%® ø\Ñ@#®Rù— +ðÅ Gƒ/8iÓrôš_@ÆÕï W!$–°<ƒrÄÑV±Ò¤ˆìÄ8K­ýî"LTˆ‚ÚàpURoT³7[´È³?¬±f†?&õP<¥z¼­°¶—ìàú'ΩðºÇŸU·šAfÛ +֕ ŸÏG³Ž8ÚvêyOjFÂçjÄws|Ñf\£Þãn~‘$ÚèEŽèr«hó1„œJ2{ÂP2aé{u|ÞuÝ¢û4{5–o†x5!ãÞÃg‹°r¶;êWÕ3!Ç­·ˆ®š‹nÀ»pGÅy|­/eS0¥KÕå~½tQš òmþ~u=¿€^Z¯ÄÒ¹QÕ"gRŸ™ÇxSd‡îÅJ8Ÿ7}?³•¶3ÂOK³j“ˆÕDú Š*„…g†t +V¥HæÒ/hY¹ÖôŠN?S¯FjNӍ¬|I=ŸíxM¹‘©·ø_F>*O}{™§’EžsT®ÓïÔ)‰d“f¢]pç“<ýeÞ¢W"z岀)ý×ܶw”ƒá”ÅϹŬfoyðcr]~÷˜Í]‚ÕöÛ@[ÕBïBš6[ÕmÀªaS]Á;´Á+40¾¥uç˜!Ê2GmëÝ߇µè<±ºÀrýŠ¦Òã.•l$g¦Ì!ÝghºRQEp»á‰ÔSU4ŠR¨òªd(è•?š"Þ! H¢ˆ«Ðû®W9ఀ=G‹$œ…Wf#åý:³ôö#¿ƒýr¸éAL)ƒçM#tÛ¦ìGö·Ì½­A<ŽÎ>®|°Ûs)!5R滚;䌄H3¾¬Y@I,7ažzŠEŽè+á,'"¨äJ ItS¾?´ãýÓʼnõZÁ\Û |?m) _ùîòÛø}½Xì˜vV*gô"9Xª‘óQä5ÍÕª憬O >Òâ„7EzC=7.ùd–üP±Dy1ZxÆjâ4µ%ÿsGì¶( #}ïsdÎóC"…«Ó{ç¯#UYÓËuç7“c…Ò¹ô°l¹]¡›/Æ~HE![‰±•‰;–‚Vß´Vo4\Xۗ„,°’’`Á–å^Àzsû<8Ô²0­Á(ß3Y^¨ìJ»ÿ&:Ð*$©ºWæô!úÆB\Ð7oRê¤4±í‹ˆZªYïúê2”=m|¦)|®Tkú!G”-'×ýTö¡©~ëŠÙôdY„S]ky+˜TµBI3FA·%¸Pýéú„ê´ÓßÑA1µAŸüC%ãoÅëƒyLÔf¦TYX‰Aj²˜•m²÷LpU±÷Àåò†ƒÇûyÚý#íåSŸ‘Æý§ „û`Sgw¯ 1XL´Áf°–„¦¡Â£¢¨·+êÓF©áŒ^ÊîU w0빡æޘûžüY£TÌv}Zn컕à©:óCé“àéWA›.é¥A´Ð½æ7‹ÒÅVŽ¨/<Žê¢Ày«6´WTÒmÕJœ“%ÌJEÝÃVL ÀÝ®-pÁ9æÓ½ãóöÅȹ‚“;3+•Ó66¸É¶œ€£¥ÃW˜Ôæ!ƯG§k†óï@Bô!aw<2höIcZ ö¥ˆ…º¨C’ct©Šð€LÇ|œKȦl'®ÈH«ÓþqUrÐé´I´ ®VÄè)asj‰œ~>4žëÜ{¿I\“‹Ë{;bGTdp¿Â Bl£°¥˜ÎgW ¶“À¦Í׶nj?!ǺrØO—ß %§t®î5m@êºe:Fn¤þ§‘lښdµfÈ˱"Ý¥B®D  K»uÕ#ªÌ? %š$²j¥øwU"çC’Á‹Tæ‹-ݾÆ^!Åj^Æ(0X·PAbÂxÂ-çI”k/§û´?–n‹Žz|ßb|+9•åá2íñµëhµ{£óƒ=¥=L ëMvl½uÁ¼@?‘)ŒM)ø)•o´ã@Miû0F©nlæÎ:I@µƒ3›&;²kìâÜÊþ0{H’¹ìŒ]·¥éZUA#•¯¼êã8fÓhƒW²äSÐÁkºY¨°j×osºÑR¬öCžø›T' +œÅþÀõ䠂ß؃ëš8\œØÊúZT=`½ze3%R Cev^ÉC CcÐÀÝl­£rb$=äøÛíñ8ÚIÝyšbœ¯‹t΂ÄRsT9ª×+Z~¨}†rÈ/p6fÚv\Ñåí/C5mPo˜aÏMT¾Öë%nzJ‘éÒ³¼é£bÄaùבF z¶ÄÝ_0ÈüMU å– ˆèÉw³>é +µDÊpõ¦|K:.} {Åü Ž•`Stˆ}"}Ÿ°|ÏhÇiμ÷v*ńW¯ÊÊòW°9¤®§ê$ç7wõ­,ŠâJË«©÷' 8ù°Kû#_²r´ò›!6tºš,d!üӀ@îJµ6#٘;bQÞ‹ÃâÓ>xÆt0éܵm&Gq‘È%õ{EŽ)ãŠe­½%<Õ®…°*YnZ0Žs\%^¨#®ÝrЦ~Öf¯è÷@™±Š\ ¥4%©lFÚéùÎÿ—½wmÖäºÎÃòðŽr +¬ÊzïÝûfSE )™(" ÍPTôÁ™C`Ä3—š DêCÊÂϤıSŽ•*ÛIU¢ØŽ#+²J)[JÉö™VþEú¹¬~ßsf€H€ÄHEp°¦{¿Ý»÷eíµžõ<$álëYÄët^–gÓS7¤¹ryZJ¸h_%Q¢ÒZ¯ªy#¯ŠO`AgR’ªW>{Ò¸À¥d¦Ÿ‘ßߜ'fž–ÃÓª=)Ö4 ^éÎhºZŸ¬ÌE¹¤EɪFÁ¸¸ +(ã•Ý̺Jç")A’ÁŠbpj[G0ï¤ Û „!Q+yUÔ<,ÔwJ>³¥ó¤z!ŸÐÊ"Ä%`&gGQWÆåüu ×2•-"0²#]ˆî:®¾Œpª‚~‘¤v’IVã'\kÞMN§3ö’0½«š@‘2§ohÀ‰xM±6b ªæî!œ=gC(J +§yÙ>{Ħb eÇ22ž`Úœ†8zw0DE… +”av*uڛÄaã(z>ÿ®ÿhfø‘́“y^NŠò©«xÆÁÔ1¤Öj°ŽJMH*–Ÿ4„V}²QͲB¥HLmz¸(ò9oßfU8FºÕÇ!˜U!H£‰C±ˆòa¦.…émãÜѧ*´Û-j^‚zŽh›!r|-Nõ‰Äٖ“W_»{÷òùRôo^ܾ¸ýöÅý‹›oœ=|÷Æåݏî_¨yòêWî<üXM<¼q÷ѝ‡º}{þûgzî£?¦“Wß¼8»ÔC" rløüõó•«Qò!—+g,«rõzåê +ÿïú՟þ»ñÎù»wï?øƒ›?û’?­/y-¢ÜÈ@˜´¨0:ψ2ðt)v&%I,Þ¤ášV#óě €ëÊã Ê6Æ5G•=uUG9r°Ó0U±.†¶äd{¤¡-ºv,q(ú¬Ç´Mzˆ’M󌱤Q\¢ØnäpK0Ï"0§b/•é•€j +Iv¼Øºˆ8ü¾šÈ7m¢‚0o"-€³vqñÌ5œ¥¨!cSD»ø¤¢"’ã»èu+†`8'(3¶"À°ÏÁ8ð©ºú› RÉñ žÃØ,bOj÷¨²ª„eì>œPÙoŽÝåaQ‘|S›pŽK $wW…WE¿‡®2ltB»3á™ÈY‚%ÅB¸ìâÂ!«ŸÄ6©jáÌ$ú(ù©¢¼SúU†Xਚw.€\öL%Œ„'¶TQž=Í3¿Mì_€W™F®?OHOŠÓ¥Î×â餢1œ¶eó1Oª\×°7%ûtÊ ÿu›Å›ß9I” '–v+t–„)g¹³N²UÒ¯j·J@¼qrZ`”øðl.)•Ñ!AJjXÆf%HЖDÈDوÞÍ÷s +Ѝ·––~žÎ9ŽA¥…¢JIaLëˆçïI¡¿&(ï¹É]Jî~WúWîR೺Áà•›Ppê€y|¼k)î×ྜྷTUê‘tNÑUA÷¸0&:d¤„Ú ³Zw R"C¾¨3cNS³ÁÝoŽ~æPücVº(nŒ®R(“œt¾$£±F»NÍ8‡f¯¸Ð’ gRF™ìAH``Y›¾{¿R‡pÏáì±^–v¤ IŠ1 ®UbäÞ§rNäӂ±ZIpæEç§âðwUUó©• +…*rªo˜Ø¤QŠ 8¥‘L'M$á@sˆŸµ´"w=ƒ–ÌÔîsìç±íàÒÅS<)?F«‚ÇÌé 4M=¬S‡iºFS¾KK~––Ñ8ú‚¬KÍÕt%æicõœ” ©ºÁõ{95…Ñ•30LXù›–Øß°“‘ÅJË¡ø*É1b+,sטÎÁX‰[JHKÈ;lWõ’ùª•u?^”µF0uŸ.¬ |¸ðٝL÷¬ +BùÖð [æR¼}œK›U+CXýR}>a†MƬÌ,VXb÷xréCÛ¥5€2™ö°åÛåè:0<í†|f í'áfŽòç×O¡:ðš{L½ÎjRþCé egOè8Õ&l +r}Dµ%hm;¢¢†æ ÊUŒv(Á] ³0žÛ‚@Ù×*›A#SÌ42,$ÄL +Fý–Uö£ÑiŒXJ$ +ŸÅj@×ȉcLÒ f>6™Í겝R +Ý<Êf°B=O!}Û9´ˆ]cióðbãø e ž0„&2;,~]HF&Ž»c17!¬<Žð"fÔ¬QÉEÙ*T’žHªÔfKˆ¸³Ò9tpUNÍ/$½!¼”|{ !æ®»l •³&ÈËb–2ˆD\GkúÑLj™M;ބф<¡ \dÔ!(þ)âñµ¥*ï"-ñ=œ˜Îaeæj/>½¢®¢¸¯~¾SñÎ/ÕCÏV…ÉÍڅŸ¡îM¹%m”£‡3˜Zú8ˆQAPìÔÅDzØÓÙU$\›C´©Y©F,ÒPDHM¿„Ú± AÌNA¢B¬"=%¦cA +nk(YKX'ÁžÎ‹¹hTh!BU¸·5º°\¢u€nM:žÃZéfV5hP¥`&N÷¯â1™K0Ƴ‚‡•åÒIáŽo¼°ëQuäÈ éì&AoöJÉèJb5%B¸¬ +1«d¸Õ²{ªðþ²ÄÑ= ²'a”ž|¬ÃT|w1yƩ֌VÍ9³L,Û®:K?/¦øóÅȺꩰ!.Å4 ہ8¤rpÙ/†TilvyæXbWåp m-æK 9âEM ‚ ’h9h$ÖY³(H½ )bn.‚⃹é#"ã%¡´:s“X¯\Îã҃„Ù«0bþ£xvQ9ȁ¾z&֑bʂP™‚L 1Î)؟âBääâwI§Z…Ødß=–MˆN@!},¥Ô%ãJ؜ÕUсêW3­É:–k}%+— »9øgnŠ46Hv¹Æ²í>,VTÕ£òüÌÃ_ÐäxÙ ]ê¨E'™£etvžVD¾øÌ£ÆNÜÍMj½içõj°Üà¤*†vl…Ö€Çù(¦7Í­"™”¶×ŚSÍðuîŠbnˆ8ø®±…Y¬wm°¬J¬f-ûVx("F¶íU©U¾å_ÌNž0oeMdèÖ,ú©*|¹œ™.þqék)5 +§© Q“P—UÎX€2»3µ¯.ðWÔ©S¨UGGÒ©Š$bÅêeÜÀBiÝ«æRòUlOà¹Ö7ìQd-²ÝÒsîä²(1UÓRGw¶k QGnb–„€çêzÏf2oƒÅg8©KÕуD<­àïN=üat}?„FSñp0J·Šyµãmš +¹îË/]6pòWEuÉþ­:vÐQ„Æ|Ë0¯I1 qô zPÒNɘK(‡: “͕k!ŒöhXm«¢ÁC< +9ösß_[OH Ãòä§é~€$ç­›ØÝ@ßåó¦&´ŒY–UM'Ï0(?§›8¹ÇÚÖ@±¹\¥¤€Ì‹ EEKqXpAJrÇËÓ♐Få;ÚÊI§*)ïpÕDŜùª"õ$æ¾Ô!Qúz“°gÄÿ›úÞfy¬ë릓ˆ4!ÈzTZ·r÷uJ2+’ñv×.á´© 52bLÓ6Aõ9mvusÉ*›Mx»Áq±îšÈ(T1³ýR•çÓHÊ3Iàd#yúÙÙÉê]4§Å^tÕB£A ©HKÆézÁ¢EñÜn82+Y£¸×ՀŸ@Êípû5/þ…bd£?3‹«8Wh5PÛî•ÊšX"¯˜^öRÅÇPâ)£5Ê "“#$ÎäuYÉzñŒ˜lINJÓ¾—¬®-9K¬w˜u¯ñ‡Ö—UC±Ç‘¦þ_‹ ¸pK`Ž¶²ûZÒs‰×A’6¾*cDãAHaìäYö“ègQFcÄýf-¢0û’w牁8¢“9·óDeóIVÛ%6y dNFXƒS A×lO·ïT叠´Aê–tR©Ä^xÈm ³³dN¬Å‰°ôm±îö2ãef +ˆ”¬2›¡óý)ó9×ÞDÀ^l«®d¼]ñ´" 5:O‰59”ÅVkîÍe '¼%¢€A…'Øñ‡<´]Z¯Ã£˜Œ¬Êà«ïx)â+(¯D´—¡*ÝdðèO-*¼7 ¢®Î®Ù´ª^†_iʹèÙ_[ˆªª»…Y'CèñÝYØ^Çå?š¡¬j?ÂQ^½‘¦,;XnM²*IŒ>i–PÀ¦Ëº[6A!ÜûA6Ó)¨Ð®Ë‰k͚†o’tò _`uäýÓW­¿=+“¡§Ú×myo'=ÆP!G•›]ÀükQ¦£Ñ=²EfváTû§y/BV…¶»Er +’g»ýNP€SŒ~P†e冎Օ$&“ ØIçHî࣠y²ðÎQ4"èUú¸î³|ìg<2 57Ù)Z6I¿ÇғàS,R$Ÿ˜ž‰ðžÍˆì´ÄäeÜfþf\Åêã—øUÚ¸D]5ªªéŒñ ™Í8¥‰ùîÊÛG\Lî.îl…›Ú))҂¬²4Žf%wAáýYN¯¿HÜ©5ž³"YÎÄfs»ï¶Î ôd\ÀF»î÷ôO¨Ä +cý—xQÖÝÚ<×XH 6‡–#QU¢_Ún_$ÎBsèPw§¡$•>[I%ãv,up(õVE~ºúd;'uÊ:Ã6àIJû˜sõcmyªÿgÛS $q Ñº´”“ZØ(„ÃzŠµ³ zʏݍF=¿‹Ü2bq•ç*­ð²¬ÞåhݛªEzvñ¬JûE¬Ý c¸„êÎé¯Íä©TS¯9&†Ó9#°ØœB!¾Èv]S»(ߢ'| ŠW‰Ñ+P斓xMGs@„ ˆ´%RÛ¡ð4*õI2F¸¢Õê51 +óBG¼ªñ +¸õ'Y®íøu¹“)Ўux•ÃعÝVĘŵ±,šEÄÎD¥*awû:ÜX%&¿YéU¼[ÆÁ—»Ww™[P 8Þ¿®±Ï×6CysQ˜¿¤*ú•(‚H‹ª"6G‘Wv՚q/zO©:agä‰E·cGnÞ²˜àPÿ¥Ä…¹6ÍgÍ7@Ï[Ãa¹»öÇÕôiZ… +QÏäÐÀ ÈÕìØyïæw'é†WŒ[Kí҂ÒXáŽÄ7 92z¹1¶‰ýu(VGõËp¡¬-LÊj=»<&Ân9úÐèî9Yøè4KTª›ú*(NÛ»`D 4ÖBaʽF-WgJ±¼/ +!vI’ÄJnθe_´·y y‰¥Œ¯"Bh)Æ •DTD½®ј +” Xî $‹ZFFš~ 7²ªÊÜšš1`ÉOƒ±Ÿ2֕¨•„Îâ™(¼XRH°k7¿(JYäË/Ó¤]Ί„b_ŒTãá‡c1ñˆ[[œb¬ÒA‘Q) +$]Kìå«å»è²OiŒÃ(•:÷×[ ¯¢]>4ШªÂ#ƒÁX0vq$óÒ(3wePöX›œá|8H”1ëĔ¥ŽG]rÝ<Íï2¶Á­³k¤w®R‚ÌÓ3Îâù'­jªGF`o˜Ï³š>tj/ˆª,IOù[¨ ÍC¨Í T•HGƑUÁ7ÂEƅJÊBõç>b"È#¦ÂØԁŸ¾6B8ŒŽý,šöÛ¯P?ã'ìO¦•égº#mpò–ɤtÛV.Übz2sZ1=Ï讑*ô]²èk;Êú®’ôMQÓ܃i†Æ²8Ղ‘¼$qÛEƶdŸKüC4ÖEÁ8àH‹” ÃJ¢Z®CN™©s¤S×J +‘¬É„*~?¿â»ÓŽÀJG’•q+âamób­rU¥Šºê+³*†ËhîҬßx{Sq—°aÑ=zQ‹"{iû.mb®$¢´½µ¾™×ïì/Ny(dH •C„¿‡¨#£^®T/FT t±ú3³»äÞĕû‰ ÁP‘’s×:§½i)XÄ]™1à³2­€p’­dTò€lSӃÅ1^Ö#ô—QT`Þ2 +mJ´˜5Iü"¿Fh_yPÊt®Â\nýÚӁ¹‘ f4±7¼îLªëôâ.9ĺj­C“fE¿Öœ¥øQÄÆre]%اLÅJF~i& °š[,‰R ?‹¦Fjm‹N½ ×q ˜Ù/AHmJeiJ$>îש™ÂxcÇ+݅·®N®RˆJW \/ ±4$›ÅŒ«XB~‰`Oõàæ§[đ\çѱ’Ý€¹$W@´H¯/«è””tH­9C5c»¢Z>ʊóøˆÝRgÛ +øàmÖ¹b…FvÈÐÄʪš™:BJ° mÞ}©ºÕÃoÊ ÷×Æ×ʑ¥ tªñ kÌnäMº†@5ÄO-=œ¥E,#P6_cXvԒƒ'ù8xj¹%„§J'}ïßÊð‹ÎLYm´€ã:ý‡C¡þüëP¬KÈv!Ø0º´îf ˆ5]¤SF™´€•U«£âû • ÒGc^¡'û¥)ö1.¦ k a†ŠÏ µ2¦=µ ÑYÆm€¬`*1`1,T̾æÁïM’®¹º ¡J: ½têKÝ:Ѥ^ˆlHz×Jžq­¤¢ŠþÚ?Eع(›Ëaîd ¢Ø”Š’Pҙ׊þBÆ$,A«¤&V*pÒdƒÿq0-~ØX1¤”op¸+ %¤ð¶sÙ»€9cö‹a¤Þ`,GHðŒ>EL¯ï°òj|œ¼7«jY~F‘¶à“+=ÌO^cБ…ˆ‡*Í0Tȅ Þv}ÅòŒM!ºE:tCŸNƒ67­؍ä²&KÚsQ,{z˜ØV2w,Ž+ž4LŒ<åÝ Ñ´Q½,…sòяŒúÝò†C‡_,9pÆ"•×¢¢”%f}³?Ò&ªËà¼7q/ Ì’ô큔¦¦Ï\ÜÁq±pˆ~‹`Ö_·Œ] Zc¸† ï<Œ»‚Ÿ~«É#˜É'u‰ÖÌ9U’mðq¸,mPmAyÅ.%jÕ«Þ*íÌ'¡¨Ãeת}2·Pe,JƐ®@R&/»…YP*®$CØho\m±Eˆ{†yqgȳÜ­Ô9\BžWmI²ö-Ë«áùµo€™dHšÎuŸñT²À'é3¾ö6­Î:CmǕgln ˾u—W¼Eº[e IÙ&šQ5¡¹1廐dexßæ(Êg¸uߏ…ªx§tØ9¬ã¢Ó®(>&‰%Y‡°×z)Õac6¥â4€vQbæÜl:@ WIɕÀxì–¦æû¾ßä=í…ßzÝßUúËnÉ©G䏲ޫ4N&fµB¶v½†U +,+Î † ú’X1݈¿*vSxêŒÈK͚btʋùQî,IßEè|:¢a¥Ÿ¼Àá;¦˜ \wêk"!Xj0×б^‰Š1p¼ÏÅ(í²ö`“ÞÎñ] ÅÚàêo³È}Öñ@ªH0‡?†ÓDYü´­¯Ãç/ɎÐ}_¢æG­]¸oœ7kŒ³c¢ŽH| !€Ž@™ 9ûv– (VF¨¾1Î õ 0ëà ¤¶¸DKœúú1râ“`êèÀåäšÂ!DnYº\dóÝVâTÚ.]Æ6xÔØÚÙ]""‡éýR¥nøe˜UZAáæê,ýYŠêld̓.U)«4…^”]¤ªkSå(d2-°#Ú4àb.PžCj0Ë/Eʎ<‰- +NՅU‰¼}« +Äoª€s H X‡˜xR8¾³5—_¶á3d*•x §ï§>öëq¾Vä X3×­w³Gåäitù#´´j>‰ P­fYã»–êÂÖH·ãÈü-Œ Å)’Ç)šG[ã,N§Uu¥«’øìäìºR¦¸£"´\+¯çECi¬)ÞËR‰<ÆÑp$½3½¿’Š¡àjŠˆ}(L<Ÿ ìŸ&K— «»Dß&ië“vƒÏ(ž0>•Ç'W™[B h­Y×\\Ê;['ÜØY ֌,[¬ì­0Ⱥ¿p~- c?°)ž”¦BÌók£S¶yVC…­4&cà™$.rx½êÊúrTŒÐ³{`9a%4‘©%ö€.€&ˆ£©ë(ì_”ä¨ÌS•7À¢«[³E½j$Û¶‘g|&°èŠËæ ;–qe¹+à›{›;Ö¢Óë¢y¶X‹Te&9ÛÄ4ùô¢õB•ƒñûpL!4gà0ùÕu0-)D‹+EsÐoœÊÛYœMJ.Q9Ù§Bï‹Øu¥¬ì‰Š]ÑKâ)§¯vÄacm‘(Íʂmºìü&m"?Rötuµ³›båEú—Ú*:W±²”ÞˆÙU/&ÿ9÷¨ qa4S.4R©ƒ=ŽZÜÎ×ÊãPÂÒ Cuš—(aY•.ÃH! è¶tf1-ZP¡/´Óÿ6®øm[aWÇÇù… 39egVm0F xu›gù™#ÿ\ÉÞóZ—ý´×J{Ì1 I óH@7®£|‚=Ù½Ôx3·1šŸ• +pç‘BGU¦dŞ-o¶å±ßïó.<'îïÔ`“y¥€À¼&ß(Òauwíy ¯8)« +;“µ°íŸ†½oß?‹ï°¸M—\WKbàÛ2¥ØQK‚¨Ø3]@eÍ-„ÊgUclõˆP°DÖTŠ¯4šP'ÆtàUt€bUvM À£Ñ趜·^€Èf…(–ƒk:qãÆØ(39k·NÏäêbM{!;R”ų›GJÍîn~ ›`Ê6õ{ֈÅò2£ä<ïU<Ý\ò¬™7Rk`TH¯Ò–ûø‡jYƒ xn:4oÏisÉKT½O7[B_3Ml4ú²ÀVçn@\æ|]g0ʘÈà«m«.‘,Zvó~»J^hŒ’¬lÂ>µf¿P[Ž´"¸7pZ´çL&פ›ÞC0 ؾ´†Õ*¢& 'j`«£ˆº÷'+—@BKkéXE.¿”ÈäâJÓ[‹\>g7ËP×)U‰µÒïgIIƒod娤¢ds(q^ôC®1Œ]Å4&͑(ڕ6’¼ óëÓUᨢ`™tR€6¨Ù¬åøé¾F`e‰Ä;WßÏœHû»œžN©j ¥’KG 5m, ÄáÅXŽxJð±ê»®!¬AC?Õöâ(*I†bX5ʐ +’Ö’™MNy2Ûâ/PŠÔÀ@€Š&%õibIFU¼ÑˆÍùK2·T­ÁƂ_»‹eYmT ?1m㨁fVSÊhO´ÇÎ@£²Ûƒ™½µí øôÓíÖ\úµÌ{„n–HÇä/VIg@.¢DW´_íDªrIasŸ¦&ŏ¿+È/Üc`a Œn¶GŠÃx´”ƒˆµYb8Ñút„Rþ^¼gr¸¦™m\V 7jÌ Ô/Ö>Áùk kr'ò;< D•Ã¹eøJrü59ìҚ±Jºb1ã¾F±u¢Äm¡Ž…@qfšµ¶ômäøª±´Œa²LâPµ¶@®|ñSUˆ±`QEô0‹µ¸uJHš×(݁J0«¨›³"aÃÔlLИ㧺±å¬yfI³ÊÖ¸TòdìSÎbu¥øˆVWuŸ±è~Æál×6 3:I6§fÀ™¢uÔÛÀËïª÷ÄqLÉ-®X‚ üÎ$Õ? VA»‰…¥Äš +´ +•ßˆ¾ÖH>é=•ðD%ucnoRt”÷¯¢È8e1½ÐtãC9(ñ±†ÓÑf֗…;º:[c’k +u­:S¡R&Æ&Jçu€¡Ä+»äªôSâÇp•ÂC¦ÿÕ°*ž¤D0L‘Êp»Œëƒ±†{ż(ÇŠZVnzp‹»&-¥˜Shä*S.žþÜ¿OV?•£©x˜S +jÀ˜˜.dMÐ+ 74o ±ûk¯/3*Aè~îü±ûŠ>j‘„¤: «~Sfª¨ë£ôÅ]mð>`Qüb5ý…@Û?K ЫËÆÂâ]ÅÜ .Cê޴ܺ‹º)Ü(]ìºDU7KÐDÇIM9yCD8s©>y°4¤€Så ++Ë*×|”~ñ°J¾rÀv7—¸Ä!Á“CþßK›½’ÔÉÊ\Ù(¿®K…ƒ‡1{frûîT9°XHH8¯$ú—Ìzh¬«[Ôe\$­‡Õ—®þõÕÛµê&¼ÆQ-˜ ó•ÉKw Ï|YiÐOêï=5£«ã³šW)z5 +çI­®5i—ìzNV‘òàFúŠYæީ՟µcEÄõBYÒ¸"(‡Fª„‡LÖ,ŽA‹mc´’t•ƒXú¿ÜÇÅrÏ9°;ÈՂñ˜DçB]]’ºbZÌbˆ‰eIg”“ÝbÍa[ó”LJɪœ®ò´.Á³‘C{çERÏÒ*·#jÐNõÒ¨Ê*b¸»èh^,¬ÎFU¹Œ¤¬á\]V^¤ÐÍXȨƢ$D‚ÑÏ·i® +9J¸aH„Kã¤) FëCÝsêD3½<%‰k#"$·¯\§Ï§È‹»¤l3fñiJ\’D›¥*°ª”ÕÀŠ©b‚Q>mÆT (ᚒ ÅJ5È{PZ àÍ +lO‘q…¯õº­ +“°»ºú«¡Ý0ʱ¢±¶é+Ë,>6Ã<¬„Y€@d<Ëi ©g2‘ÊHí!]ËpýHdáð…­"Ì+Áïú²’Ú†‘ôę̀ÑZ%ú9tV=÷l «ÇKóçBA–jÓÀ&™Òþ²½û§è%Ÿû½Ì³µ<Õ16Re#é4n«¨^·9 ÉÉNjrà])M!‹XŽÙ¦ßæ7ä±RŸ IC}.°¶vw!KH52Ìj€ï€Fkž-†š¢ÝlïæЪž‹*äitP +£˜PÍÜ (X.^ž¡'9JŽi4³gɄ4^ÒàNR)†Ò‡Äðµ„úr Eq,ž  „³ê½†´‡´:¬ŒW£À‘ˆz­$cHp)éØ|à L+ð¼ê°Ì F†ÅdL3ûJö빐ìV(`öâZ•#_a¡âCõ4óOuî ”Ða/V”!nW"ÊKajaLåpûÕòŊ³€ïD:Hèk$ÉœOA·flµ?S{GŠ¸²B¤ª²¬çé¹D˜£›£k2ö,Õ* xÖa ‚ôuømZR·ôn_ͳé숸«¿&r«]7p<š0HŠ8f£fI“ô~V¾Â +K4y髜J$|‘˜WŽºv2ÖʺrE9éQÛړ)ZXœ{JRXB¾HYáJfzy6_B˜› þÕï B¦§ä_`1–$œQŒf£´˜pRΰ‹Så,£o“µ(‰Ìk=vÅÐ*sØ,0\×LaX ¢µ•5Bhr3ÕY]lj±-ý;˜×Tcti s¼Z—ÎU«+èÔ@ÄJ0jœoӀ©uŸ5ceÕ²‡ÿk1šãPÁÀ6x@¹§ÂÞ0¦äÕT„Fd¥è!yMAñs߯œ0é:ãD °¦(Âƪñ"ùµ’_Ø'¬SÝ>W½B!*L¥”éòL“NŒ®U¤˜VVÓ=ô¼°´ªU€Å6¤ýâ¢Ygäà ÷TMïJb5Ðä²XP¡EÊLKÅ»îgåš$¹A…„¤)X¹¼–DB!;[†e¼gÅ·IÎ×7Ô½FÒb.ã`5 Æ-½(ß<ª­§ývó‹pT±mèAHÈÔùªº -™èE¸'Ìuo€¹ +Å©UÍÃåWúƒ“â0ñPM4ä›,GO OÀrʡͦ|—„b]F¾,gËÜkùU¦­ÕæØæØs Q0†K¥)‡3‚¾+âM,7EÅ.º]Õ?_Ïǵ¦â`•ª’h´ÇkQS'‚«Mʎ4»”€=Ú(öŒŠ!d$U Vª™„‘Ïìzšëò\MÛʌ® F›æŠtÚF0÷òËÆý\ÿ44L¯d·)DSjQ¤aÑÙ~°\¼í–Rqn/5‚ÆK ^°&ÍQlתR'ïHÞgÌ?³9ÈD´Ç¥V»‘1<¦!‹%vXÃËiNDÂ~5½Ý@u¹â©O9ò°xº g2¼’ÚM«6w«Ò%0áÅ4œ²IÄ`¶ô<ä®=4ËN—M¹ë°Y<ñûиž$·óÕüÜ<뀈q£O-z±ïãiøýÏ"ï?¼I%dÔ­Äc’ŠŒW1gSPáT:HòÜҁ΅~0×ülÈ5A_d©äÔÎ)ÄßÁLEx5YrRZƒ5‘A‰ÍèãÎid¯Y"ÃÃÊ: 1æcå&q¢S²QŽ0šüçµYlK)x!]›n§T°1‘js•ž dގÆ,Z‰[#ä@T¦içý£àŒÛ›E€(¯¤Që†àñ¹Ÿ€]§…NñS<íö%²Œ¤+”ѱˆ¬ÒxÝÜü-cì†S×4’"WF“¶Œì¨{‹•!|ƒ2sP/ªÐÆP9#£Þ`Át|š™›Í͕ZÜ7@Dc$|DG +At56vÊwô7*|ùmÁ‚=xdÊCU—2ãçDHÛw,°ýk›®´Š£ n:ô]–‚ª±úÊ!î”eZăžwFÌ&ŸMP)ӂ^ +^ܪè¶9-N‰¬¥ð + —8Ê@«8„Z“P2c(ƒY—p 7$ÅnØVåPG¢YžH¼Lė¬)¢:i   …ÄYÒ:ƒ°ñYËÌ udaq®MÆSܶ¹K`m!„CÞ²¬3ÛP” Ï£p*ãÆg\­šóGF/ꕪ(¦H#éb4`’äøåìkŠýEŠŒ~֮à 92oøèõèÌS„¡e,O̾E/Æ× ¿ÛÉóPs¼ŠS!1×Àƒƒ;,\…KgÊ.7 Râ,¼àHs?Źµ˜”aé* +y‹RF.V⨱žÒ\L´GlÐ¥ÍÜ¡øX“> ~ ˜Pëv’ÑÇn‘ÁãÐ.;Å{ë⮖‘ā3—D Öx‡ýÌ{ªÃ’F{ÞÙߖ¯»j%@³¦R`6¾fêKË<£¶Æy”Qk4@ðâyôA+‚ák0qwJ­pÇp1{])©r´K¹Y½n‘1í•Ç#I±5®S—$ýU¡ ›C¹fbÒ8®šË^ÝBQ=†bŽ/VGǓà[Ô½˜kÐÊìõõôû{'ØfUѬ EOL)C `×DÜ¥VÏfr5Cb֛®…="¦LEŒ® ÎfÎ5ÄA@.¥`.bÑ-™ãa©bAWÔ¶åˆU­A~KE_îH0›¹}Má¡M˜´píÕÓ¡êÛ¼¯Nj\®Ï0¾høwÊ7I§ÕsÅ!vPL(…³µãÁyãÒIHÉ&©ØÁ‹’m²:υª<²K|> `¨¢Xù 0N ,’Ël’Žc®G,³i8¥´ù‚E„ücÔÑ ‡˜7DÎEÕј»ªç¡T¶KšRÀ†bMú‰UCX +¨û)ƒ7d6ƒ3Œ¼‚Ї‚I›f¸õ‡ƒ|eFRhɊ‹È˜ X±ùT”LXò›Â +ÞN¿fá,)Re‹Oæ6–f½’ZŸûþö€Àîˆ +Möˆ¢(¦âš‘py +~ç~~²Ë¬Z_²³ˆ–:¡-è{⧊B +çîÁ9ëjõ*J¤[E ¿ì +R ²s"“¾?Aãyøn†´)𵟠Iª‹œÍ‡O(‚MQ|å¢=jI‘%ܺÔ×Pö`ÆUŠi3JgIÒ¤rX|àÅü;QÎÊÄqö˜U»‡+!¦êa©32òk +AF0Jpt ±*|#UÜĈBŒ©~>¸àj §E%Ô@ <ñÜ9¬HgÕŸŸu—nrfI–(7ÇÙ/_K\Ù)es,©Še`Xn|DQ3㠋!ÍâÚ¤Œ©8òЪd€±æ¤°­’{ã:´ß?uˆ´9…äœëiÌûÌxª…nçÏ^ß>4Šeiݾû'º>¬F¯yÖTD.f?añòm›«dˆCÔ攕Ø.ÅË!]ÊÊúÒ¯àâm;Õ"ñ¾ÝoÎQ6»Z]Þx-~ØÚK(3‡F#«¨£¶¸Äv)s?—jµE å ·S‘"ô¡¨VY/I¶ ÏQ £ )a$ ïÇø>“C^{˜k߯-ûµëÁ˜âfœž`Þ­ÈG=ó˜zÛ.•Ï5^!H,p¢àfdDmÿ2ëðsÙíãÙ#w¿X2ç~N¢qÙ ¢“ªܳe/+··õ}<¶ÚšâËԃè’}L 9Ë#À˜³¯%÷d ÎEåUçϳ/êfP€k+Ön„koÛ,Â1¬½–‚ð`¾4™òì*è±¥|$1ÄæR«<•xO51ÂñµÌlêG”ÐŒ©õÕú`c5CK+»Ž{­ây4W_Ó«QðÌ<9$^µq‰Ÿ*9XØi.Ñ@Qú‹#å‰?C”¨-‹[m¥ÄË®¦ l* ¼áûsþ±QRô¥µQº_ÙEú.-2\ßD’Ù×*ìCc·D¢½"ˆé‚Üð‡UȞt5Is–á×äkÉHì‘!‚¶‹!Ì¥¸*Ú˜Èő¢NÔÆO°x3§µÇ‹ ÷$ãŒQè²þ§‡æ‹µAQ¦ˆ1¹˜*V)ÆñÍdlFà¾]òlâ[kŠÖ%Â8Ã74W‡&`¬Õ °4ŒÍ?5wZ¦ab²;ÄDƏ‰+6´CðXªžE‚fm­‰(ÂÌ$’ŒIuž›1Ž»Ì»·:Z:$-Fa5V6æîÔº:q¿Y`S'~©îi—–9¢îÙ ³xZð¸æ>â‹Yf¤`»¥Îc¨À<‹)íÕj¼,caœÑ³‡O“” y,û;´)J¢íà:Sdh6ÿØ (»F2c¾x]ã$¥Æ±a9 +t¬ª1ŠZ°ßÀ\wöé8M×lLrU0:UßÎ+#Ôûô }±ö³sRÓRu|i>BM•2)VeÆ°)¼:m%íF1=Á¸¬‘$ƒ™ L ]êÍüáÓ:­ä‡6‘[ôLqc68ûnoÐãMd|&ãÓ"#©ê1ÙÎ}»ØCiÍ®’WÜ°9Üè#áT¾rê黊;ã±JXIgEeØ)ÎxmF¥¨ýðZæèS^]ö÷ÊdØ]4òîu”•£Su®¤y]ãRÒ>ÙèãÖS_õÅÚ +XØ ‚VV}ÛË"Þ±9Y@™©¸±f|bhҕ5Ž–à³% æì¼i™A=CxOÛUÐ)vÄÊô±“5-ڂhNqŠX ¡4O¬…”#¦o†‘+ ÿWÚu—Ó%ÿÒ®‚Uk*pÇðpî´Jf~ æâ!ò2’ÖÀµÙ,?C]äGÝ%ß{P1ãŊ!;–®fe‚?rS…ù9ö˨Â/ÕNЬŠwECW™€ØЉ ÆeŒ=¹U(oŏ;CøU¹DٜYzj¼P£˜"ç¬!Á6‚·m앥…ì*QûÊ:Þ ÐGΠÛÈ8qgã $âª#íh/ŒáF«>ā̻,åÐ8 AE‘Óè"¬3§0RՀF ïÏ}ÿöÙ¢œ£’€Ø˜F½ë¶úÞÀˆ‡m ±¿´9×xX2¦ïÇ⎢¤N<ûވ~«Ïн&Æ.Î2BƜ€m‚'у3T1Y +,§Û Gh6Oõ{-¢Ñ7¬KÚ°«JՏO+¹‚¶ Ä åù>`ʑuDϲ¬lbäàPnշÜā2ç*p}–$IÆÎs8†IcKηÂ\D« +®¾!ü(¬¢±oE±île'èÆL,ë`øó÷[½kóÚÅÃjµ³³ªÕuÌ°J’6â³H2çÊÚU§çÔùKaŽG ðçØyOhœënŒ7%Üzo@Á˜“¹´™u‚êCÀ‚#nv¶ZlTÄaû»Ð%v‰ÉàwI&>Ù*È˸Æwé"B}ÅN¼1Ìï*³¹_ð]Òð ° ¿ OHÁ4S4`£µ¸C +1qêXl º¶öJh‡Ñ*~AZ{ ¬¦D‹Xþênô›²&íüéñÚOž2aóš‚c)!-M]ªÖT\jDy‘ÿ›ª†*Q Ŭ)G°è§Š†Àk[]<‹¤ü¡u%/5åºlbˆöýyG¸®ð4mõO‘Ã^FM*þÒÒmÛ¡6ús÷‹veq-fK c›»1ç0Îqh Í0Û¾´YÊè—2 UoÌ4«„ƒ¤lk0虌©OÅéû›§mìÌQ6ÇëââzX)¹E+˜®]ª,«Œ#¨!{tʪü¾ÛÜ/»m…ãÕAù"Í)¦|@L +R ·m¦à&ÍÉõ7ÓNº0)b’ú¤T§ìõ;DªAäpÛ)ëF“ª¥¸ü”½ÈwîŒ)Áj³ä§De#ê4©˜” –6©wsI^‚mš¿^æy¸–eU0vÕï\53Ëœ ÀIR‰<~ØH<u "²©—ýrœ=n7 1L=z°ÃdîúèAm +4¶ZöKg+q¾ø‚ÃÌëú°Ó zh{|íž÷®io‡¤rB«õÑn‡YNÈJÒQ€÷%\رŒàp˜xíåÜ0ƒÀX)`°öE/.•(i_{0 ¬Y„v]Ã:îwæëI âê~h6 cáŒyú±ð\™X'×Ý.e¢mœKøÀL!ˆƒa؇ç‹çÊჳÂte-q\˜=úÊì‰m¯ßq¿–f1¹ê¸³Åûô¬ób ¬¥E «õ†Yv”.{ßêBÿ>ôŠ®b Ue•‰–àè¦ig¹_Z‚gÀå,0y ɤVªMم‰ š4§ÁJ!ÜSrµ¦…`dTsöØ®aeŠ©‹¾5¯­.‚P¬•ÑèJÁ=|þR˜‹àéÝÆ+CÍi7¶Æ :èGL Ë2ã]ó’¢Ñ9¢WEÆ£.fGF_çêǪS´9`oè#EeDÞéÚt¹&ÕnìßµÚ,Qsçz vÆ<ûnñ ÇѸŒŸ»D›oŸIÇÓCèEšDÌ«L Y3T¾Ší•¨“d³à±0JIs2kæ²í.A‰6ºá„óGJµ-º˜ãçùnNÊn±oÄràh®¶ÇÐ$éäeA¾ÉÁlcR`^ö@isi³)‚XÞ6£Ý•x9>B/ñ®nӘœBb¿Ôîv™º’Ñ",zs«, +zÛÙ[ôKÓ؝}i%ÎC©®Ó÷–¦Î^ëºßïYóÒ㷚Ö~DӒ^ÿ°/Ò¸Ü&" ÜOÄ&-“ÛaiIft’‚‘áh“(«ÁIGVV}ƒ^®J[iԑFFÙÕ¦Mç-ýzlŒœ\¸¬@ªJK8lmúîִԀ•˜õC€N§àNë-Æ I‹V@’Úú…Æ£Mê` $l3î/uÚL2u Õ§Qúå2ËBÂå¨æfL©UMÆ.ãÚÒÜ[M뉹»wú¸&ùL16&­ÁdP‚•bÝÄ9ÑÍÍeÝ{Ð;&yÔtêBvÑAßoˆú FüÔy|öä>§#ù©Ö1÷ï¢ÅšL‘-îG½ê!—Mã¢èuU[¬ÄÒ vÌm;ÆZÏÉ\Y\<›èDmô˶ÃÀ2#>árÖaæV¿Ÿ›áÈ#Fu¤=Üúad’ÈMf”#Ç{±Tæ\¢· +ë²0¶MxôÔl{‘ ’^ÎéJF¸‰-SxJšSVä}A"»’{œŒžYô¨½ Acz,Q7 v—×m‡_3‹Xj o¥QÊÏ$Ø× +‚3] ´\ÖúTtªdÌJ¦NŒÓ˜4Òl²Ê¯Ð”¿K)öa¸ÿMI‚”èUŠÏzÄ’LB3äaL6’”+îßg +àÜ Âܔl„±Ä[I&AF"§hDíïÞ×!XÑŗñZK÷{Í$r&ö m%äD\šüS,‹~eu«Ì]Y|-Å9Tåj[-Ý}M5ÞøÞëÞŒMx¼ˆÛ’o S6FÖj[mãp¿ Fìn3YmCó0Z²´‹9^5‹ñC@Qæ6­î˜)a¨Ñ©LËbi_ÛÁ8÷ÛBӀæ’wóدm1àºFáSé…Z Bb6ۓ‘—¸“¾Z°ˆ5øU‡Í(¡ŒÞtÐï6WëïšÎÔXÑ<`»æŽio·Ñ(wÊÄý¤å‰ûý`bH€Q®ïAùŽÆEÜ8:5׻Ѽ–0 熽lêvÖ`é{ÐXúހ7ž¼ýÃèå… +#Bꁁ26l‡¯îC…Öù´CbZd¬Œ÷Ò¡V!l%{rҚX.OE5?ÀN¡£«zèj«³÷.(TÚ,¤Wß©+ôÁ÷V¯Ž‚kSÁ+h”( pÛf—N¯¯ô]4,ñœŒ +|-RHbÕF€P@=¡©Õ£0Ÿ‹×ì*D³¢èíÙÒçހ¢°,(¯ûýŠ¬6ä‹GÔTLfÁY¿.‡jì¹ëS)ÈïDøc§0`i‚ŒÅòÙ2¯»9­ûµqÞ9LåÑ®”. ¤pñÖu/KYUò‰×*s¯uɵï;çÍ=X BÌ Á¾Õ%õ Ú(¾ôuK‡º +[‰A×(©Ÿy+ ÞpT Toü+¢ÑËqdÌqSÕ-GÐz(k¹6°^,°+ÆpZãPŽåæ¶ÍÊäRàêùU¡SʳM3,i—ÈCΰÚJQ0Ù&³Ë0®¹‡¨¤@˜ÓSõ4ë(RáJ²bß?dÑýbó[v;ûww˜EHL†÷±Š“ÍÆ®˜Ä*›s¿€J© ‘×Bü  !Ó$ˆ°Mß=ƒ„b2Cœs{Wõ¼ö¥% Oìü%"5G4('lî:ÑaÌþPT³q†‘Á•óh`öøs©ûETh¬û\ýú/Ò²N*êÍß ¸Eg·ç|D 3ÉÊ8°Rz˜Þ¹U‡¯B$Ð8kœý¦] +Òçe«±Íj %›r°-¬¡K)9(qM¸.((\ý[SA1°+¯'à—êp±3Û\j˜k4`v÷V‡ªîWÃò¢²·›–×.3^‹êCÉ‘*0T×æÎÝX¦Ã…4®ò…Ñ[­¸CEEÇÿ¸ßRü +Øãs¥Ò>W|Cf=etTæ܏Ìalí \/Ò &¯˜Ö *&NjI7¦’QšUª6̸.c+Aw6…¼ë.'à2Â3)‰ÁlUW0\ïwfX”¡ö/µÈpÖL?u®dTEê=îoRçêSU9Ñ@·ªå4‘4sÉ!ÒgX3 +%¤* ÈPñ¥u„zd: ðµ#]\zdᇜ–ì@02yqîÇҁæêŠO>+sœéÈ3(ã Ý‹Cñ^æY ”VuïèXUDñZ7€/CHñµ=HëjTîÀ¬ÈIë7Æӊå < û£ï÷»x +ü£v7c–Ü,>‚tËxå²æx§¹…yÍñEbnp9žàÚà|±&¼2*V€ÀJ@*N­»~$ÑiªwD· +–‚ˆ£*yá°gÍPXͨ¢ raÊZV "Ðkµac^× ±["=¡ÂZƒQ<I?Ö¥-#c'4N»¾ â +Ϟ6ÙNc"ï€ÊJÐÔþ›9ð;ú„àÖ"i¡J!E$s ˜¢uŸF¥Gþ’¦!Œm‰òX òÇ82Û¸ÆòMÓc¬7¾s÷ùÁŒVª~אšÁøs Ëh˜×50LE*àö ‹Úq|ÃY kJÁ¯<‚9M½Ý´Àµ}nÝ²/Ñ@Z§¿a]ƒÇ Á !æ«£6N’¶c`ŒÆе4³zÜϲ™«b ¼V d“<½-ÅÐ\js®ÂžØœök¥Gű=Æ+óà…šÇä"É«>ã6"9g°"–b‡hY½´xՕB‹ô$ ÉÍÀG’æÓÕç +;¬ ˜¢ œüÎ#(²E³©o=dù‘¼”*KÞ*ۂ¹œâ3€xÕÎ>(ÏII£±Y-ßT^‘Ì1‡{’0ÄTs |> ôÂQ.°M‡˜Iµ©_Ÿ;ˆ¯Mg—Þš–,ÁlâãRAôu¬URmá t8y)¡îkð©7hí-jENá0Ɂ²Kx*«s52ƒeXE8b\;¸6•$V+AH3‚.c y_<¼ÝwùêK(%m «ý$½B咋ºÍ’ëLõv¶Å× +½‹¾Dåy*3ïÍTtªoXEƒ{²„@0`mROeÇ]ƒzKH*tÑñe‰ª.˜-á,®a$鞍*sI(÷®å€»“ä'rÓO»øÄ cª~¬ä³%#d8v}YjˆõxƒLa16ZK-tžÀCç•%ehFÐèÒæ.H|Z%%îáÅhŒìOõ·÷ˆTµŠo³Ð·'¯AÒ)õ`kp ëb0 íi¨þ_ ÌP¨ÍI8àSé4®¹ì8ᄼE3 £7,ŒžLÚA19ðUHˆñ™”ðãHæ.SVyu7,“x~¨l«š¶LV?²çÔÀèÙ¹yîúӈ ;†ì›°SÉR%@/ëÊë:•Â¾a‘ÉÓaÈM%”=mìxè{ ëthÓ"‘ÌÍK ô.}AOr(«/¢jçr™¼%“ë„ ôÕ´‹Tà^„Am#ö9ÔÔ­ª@!~+'p€Õ" ]–xŽ,mcD +‹1ÇN $p’NE“Y àãËXÄ€•ßõ°H5-“Q%cŠßÇɘ’]l ¾±Ò¨ÇšÒÍcu<‡Ûpò÷ç.ŽzUâWeA„£Å0¥ËMÎøa¡øs7ÐÊôµîÀŒâæØûfRÑâÓûä‡ìó/Y{CùÓOíþ/\·\簟,½áÒ²ëÉð¨.+ªÍ§£q¯u§eÃȇŒ-N<#€2ëŒÎ šk·s–üÑbt}Š‰ ~¤rE­¥ál: ,Ò^T|vJþo+]÷}¹<VI¨dî#O žé ƒ(’ô„°Žs·•§Rún‘2µ^¸+¯(#N®5ˆÐçdâžú@áõ¥j‹lR~…márAõ\UW¢´d¨¼¶ªâK÷7‘?oæý/n[¤/H‰é5ܽègROætXÃÈ'Uj_Á²x!&ª-5´Ó“Œ\<ˆäÁа™-âõŠ@;Ð*|éTÙ_ªÒ¸KUåž*̋ŠHöS²iSƓ^8,¦ð]#dƒ½`nk@Țy-˜g×=ç>ÈVF¦Ì1]t ¼ì:d\ À0÷Ì>6:%W©Ù.2­2QÜdêÌ*¦…÷'¨%ŠÜFAb`ä9X¨ld¾“¬ !q,ŒDB©…j_$¶¶(–²#-èuÌwÁ»# ž·Œët=-†TW` èt5ÁŽè˜–´½@õ^;vÌІž3­©¤èÂU† }Ä(V~«D3ªÉ=B>”#}MÁC¢rÚlvZ{4€­ÔjâQd¶$ “¢Õ²1yjdNaÍ4Š»sC$^´mS.q©êmòù{Â37@Æ`ËDv¦À +ë|+u®VÕfixjb7î×#yœ¸=.˜î‹>Ô:Ä$¡u¡×0Ú·¡ûÅÔXD –‹#N©¿E<%¦ÀøžW¢PÒesìIã‘Ϛƒ¤pš.ç1:QÖÓédE endstream endobj 231 0 obj <>stream +C|½,î¨ Z®xžY½adÅÍÈa<sm´=êrfÕý™µjËPÏi5ÒvJ˜6Žr„wè¢ïèҎ"ы¬^Ê´‰S;͎—¨3*Ä©vh‰ˆiú Ô“Bn5ˆ„EÒòBb²­ÌIüÆv™„#yj ý”½°õÓw7¨ ú‚ya/T·\áYGlrH«DŽ¢¤PG´ˆ4P)Q·÷E1I + ™¾¾CÁ›µ°SÌG&ߎbF Ces =a81+ã =§'u{!`ƒ¶h%†(¢Q –-Cý ‘I³R‹Õ(A1½¾"UiäÃ.m%–=kCàö9%ÂYÔºÔ¡íé-¸“N€D+ÕéI· ‰éÚrÔÙOºÌȗ¼îײ>*`?³$?‚+3:;ÖÐS‘³Ç^r‰=²uØøtì£DàL¢„_¬–6Üjí5ìFëʜ=䥊ƒ=ÚHɺG2;¹ðY ³NewÔ@‰Q°v'gåfôИ5ƒ \’D€µìL÷Ðì\RóµEâžY>‚ïoÓ¹e>Uܯx<]Í¥”x€µ8l*V: Â³1e¼ÞÀe±»Î&À‡¨’ä‘âíY…-ùêšâÇw嗲{Ò(E?(U3ß-¿'ïjçApKŠÉÊG‹V?Ό yø Šz)t=—hÅNÅí6rù¦V\BÂÈäï‡+›*^¢Uß4 +"Ýâµ6³OFÝûÈ2âìkµ²¯­V°š‰K_%…1I¾_°å£­i‰`,ÍÕQ‘¥øA½‹£!Hqù/k|‚• ˆö\=ZóÔNeÄÔ!âQk¨a^n½…„D²ˆè²Ÿ¯0[]T8! Á+®GÌÏX\GôÔÊP÷¥;‚KK3–+~ +(Šp•Ëà2\·¶¶˜Ù£ìòÓCÅÖ±¶TO¶±˜–?‹aD¢¬3Ãš«n-«‚¾"ª§Ê•4·f¬ãƒ£Ü”Ԓ_£ÖØMÖØ T̤”˲\FO;N5©Àƒ @¤rÈ ˆ Sb2>’çMpÿ´æ"y&@)v¢lY&˜É<'TÃk y&\oQ÷Å+×âm£áÜ $&KanM*ø1!_°Eæ ¸ð‹û¦Å-ž± +¦w͹º¯ØÀÈc‰·Õ;p—ҝؚ Ý=ôPî‹S<·©7IŽµWˆõ9ÊÎ%Ž¢D*zµ8âI\cYh¦A©¸/ôHïK”ÂbÅ™bxÇaL=ÌÚ;L\(ÑX šypÐ0ÏV¤ +^¯R²ÌÔ5j1¬½ØFÊþ¥e,ñZÃu·8ƸŠŽoÐD ÑëïªÑ€Ä±M{¿ð Ï$ˆf*d:1}½¶Ï6-Bý *ƒ™¬ÃâÚ÷DoCánet¬Ä” +µ¸úýøH&+îŠp;ÎK¯{ܘÓ!1MÁhž”T#‚Ñbî $0²i¬û!ó‹”QÒ¦ØG¨þ‚Ûg׋•8G’{zà–W|e5q?LYÇTY•.›8 +ðR¬D‰»·Ó¾Í•UÃúuå)ÒÄ÷0V‚ÛØ‹yíøøâÛ^wÿƒ©äèÕíOÉÆ.N8tuIû´Ë,Œâ£z¬³Oy`B÷E—´}PTA6o¼Ë?Åþ×_Šïºø Ì}¥¯Úg؈«×`IáÄv&ÉüZÛ:+bŒ‹‚«N5¡u÷¢›¸”†ƒ–¨fEŽ91⩀¨JK-ì—XÑӒyg !ÔbûËj”ümɓ˜<8û$n1‰YçöºÍ^[÷²Iª¯xXtë HÆ¢ÇsîÓ£uŽ]~¥ +i’vÑo¼¬ÓÖÙ%FÑ1¦1D€¢¹gW­Ä›±Êó<åùDRdÌæfGwp–Q–;wÉoiXÄÔmæÛt^Žhí˜oÉß!<եͪRW²Ô ­Ö‚*¹,¦qF¾[tL„Ujls1”« ׬E†,¬U+bñ§üÕ:ꏳXsv½,*:$®¸¦X‰Ö¨$5‰;ª´lÖò|Î!ŘÒ@ðUÄÜHaؼ¯Nªjd +9¬d5HÆBٖkÞj(@²&&×ÇĹ¥¹Ðã”4»C—n[U]Ì}˚Fçô£nçRJÐ㈮I´¢.=ÏìŎ~=c~®‹ˆ­¦6ñ— …Ì%|£$lÆ`ÆFÖödfF¤1øQKcW_ĀV!/êÓU5É]\ÿFu­UpÄr贅yÊR"¦¨A_i(ÑM&TéDê”á$Bãöº&O}Qõ)cݒD&ŒN8bŠ&SaRh/iøõ9YSN"ºÚ”¤’dÕ¸ï7èþ"¾ ™W!j‘Ɔ9Œ”¨¶1h@26ÂjH@]Í*£ýäí¢69e¯iQ«°ÃöýU‹F‰ëÀf •°=iÖBÈ¡èðÑèZh;[Àåx ’qNŠG•f~j˜Ri5_ʉû«ï_íw^ë+¨WãÒæþË*º•±GŽ«Å\âzÞÂV…àˆççâ®4՘åȗ='ߣ ‚Ä=é6,—>lSŒ«¡¢zSP®y\Çf[FhÍ­˜jbUi¼¨Yògð͝GÐw +ÂTÓçˆLÝ2>ð—|ݞ›5Œœš¹jyôB°ÞFuu0’müÔ#c èìh4ý‚"®3¤ªaŒå{{].åp¢0-¥ s1k␔Œ¯­øvÝÇ3­ç-t„¥ÉÌ›äŠÎ%û(Ik6$çáԋPŸ'"kÅïr`ŸKŠlPƒn„KH YCö”ô{¢ÃÂ:=kI;Žxó³)à^I rZ4‘ 7°úS7¸ØÁ¥j‚ 6€òÙå@’¯E!n%]Í×*ˆÅ´o"äåwf°D䜴ˆ\ÿ1\` +X„﫤"ÔÐéĕì*M$|-¼‹‰‹ ¿cD>j W¿@â°ÅTãQDÖ¡ú0ä²àԅ™{ ŠàæDÆYÑ<’EøˆBøpòM9~máà+«Ðr²Iq ؞6âþ©ïU¨uc@zÞO&…'Bÿ>ƒ´±.OÆ.@ +]rÛï7Gï..h“ÊVaoe”tH‘œnÜ®T¦¬£Ä•œè°UU:À¦20û`~ÔUI4#êԑÊÞ©Ù;HډTÑ-µzaÝþþð]6ŸÐßÝÖR¯a„ÉHBB‘?ñŠ¥¹ËJ®±5ÄhÈqȀŒ¼|œ2‹ýaÜ3—ªš%°sÃ({˦BÔô½ÒŽÎ¬äuà»ê1çZßaú)؟MÅ +¹j¬ÓqÎä6¸5Tü¬1Á ÃZµ@”²3„Ze9Ų¿¥C­h&ß0ÊÞ*ՈF0O¨ZÉÅ 5þ ²h¾QtS£hœˆ):–­íäù8ËRuŒ×šSœ²ñZ¸šÒçQÅ¡zÛv ¾ci‡Z… Ú÷׍(o<öâûÌpÃ'Sà5?¼µ„ =0÷ r° i€®m+,‹È›¯žm¿ö½í¦“—¿ø•TÞ8{øðâþùõË[ç_??»Üžäçïߺù ß×ïWŽ.~óâ[ÞçC~ãû÷ŒJO_øåïÝ»{ÿáá’¦t|͝³·//~þÑ­›ž¾ª¾që{—o\ÜÿÎÅùïÿöÛw/uÃwãù®ôÏ_ÙnY¾ýå;7u)þ½â_¿ý‹wï¼±uòÃííNOe~m{‹;ÇñÒ/ÞÃß ýÍ—¶~íí_Ý~ø¥—¿xóîÛ'¯Ýôàݓ¯žÝ9{çâþÉ×îß¼¸ÿ¹ÿ»ý即ËË[ïÜ?»÷î­s_ùí_=É'÷ž¼µ-¯om[ò[› ²ýyûߥ`>}÷çNN_zùjõc6ñôÝlM”í–â&üçšÞþ»ÿ9-ÏmºøÁ®·”·m{Û[åslM§ç6Ý?nÓ×Zå/=»éTœ¶·¹ùµ;€Ö±MþL4|ԏG}ºößûzø©íðÖËo•ºlŸcûo¯ú—-¾,m¿\ßúܳ;~VÊ†ÒÖnK‡›k³}} ëW†<3ŸÑ˜®çýÛm]Ã?÷£n)ë3Þÿ]®}å¾¾ú¹“W4á¶zeºý(Óö“œç0î¶ù¬Ññäñ¿xòþ?{òøž<þ-1hðÿË¢ÿòßýçÃ^òGz.?ü§ÿðçïð·3þ³mdëþ»éSùÝòÌ7/Û⽏þó‰ÿºûýâ?~òø7ùëõDý<ùÿŸêoõ8~5ñO7¿¨ËÓ§ðÃý™]¾9C·Ë?ÉÉñ¬ef{®'ãÉãþäñŸ>yÿ¶¥ëÏþþ¿ýá?þã'¿ñwßúÇì«'ãΝ³Û7OÊ«'ñŸ˜$¯ž°SŒÝ¹+?àÙþì·ÿðÉoü_ößý÷'õÚÃè²íŽ“u9<ãã=Ó'ÙÁ´üâE~÷oÿ¿ûïž<þ'èçÇkû§ßç/~-î;I¯^3ä£Þfî0CˆÜärŒÿ”_xêo¶/ôõ‡ß¿¼xðÒ«¿pçî¯Ýá¿lNìËۄº>ØO^ýÅí#m^Þ«_ÜÜÝ÷.âÚWoܽ}ïî£;7îÖåö‚¸ûÆ»g·îœèY?§‘åK¶6^;{pëüp‡úúM4srãîý;À—§+·øš¯\^>¢»{÷þ+g÷îm¥ÎØ®»ðÂkÉ÷¸s—¦¶”ØÉ«þ·uý}M[ ߸õð’ovìÉoï{÷á›çw7çñæö—É.ûÉË÷ÏnÞzD÷øó'¼åäó/mqvÿ!Úxº;¾þðìü»«;»ÿÐ[2ÿ|ùµû¾ö9Oÿª.óG;Œª“o};$ýõí¿º™~ +éWO~ùW–“››ù[oÆêÕ/]|çäó'/¼|ÔÎõÀµ—¹q÷ÎÍG·~À{|ȍx¿ï¶{ãýàò7\|ù½‹;_»yÌ^ûñ»aoå:áC^ëµË‹m”ÿÈïõ*ïÿØopxôÃýøì/½úåï]œ?Â3ð/xïõ5â‹wp*ÞW…¯ßº}ïr_4|ȪÀaóRá镏E^ÿßo½ô1>NâÇyc[u~ðóþò“Çÿ |–÷7Ÿå÷6ŸåW>üáýÛZ…ù8oâFA¤cã’âÐLHý’f«¾Yߖ¬ès…˜'pa)Âo}ñ£¿SúhïôäýóäñïnËó¶NÂ+ôÏÖ±yû$vğÄâ÷ÌQþ1'ÝG^Ÿ½åéþÝ{'_÷ìæÝ_{jÃÇßé¯^9»õA;ýRÞõ±;{yÿxÿøæ&‰k¾üQ·úº€ÞìïÞ;;ÇÕ}û¿yvÿ»°”0¼wqŸew):ýÞÙ­ûW®x÷îý_‡¡…áíËG÷} Ãto_Þ¹yüïçîŸ?ûƒ¡~¼/X*òi G +ˆä}@ ~÷ÇøŠÎ/ï?Kû °»=yüwž¼ÿ»8Ýb‰ý§Oÿ#zùÿ¼üŸ-´?[h?îB ,ÚʃÞ:rîý„NPÎ(XÁIps€þ1h`è'º¿ñõ/Þ<»·ýË·ïq‰ýöw^þX°\¾Ðõß|å•W>êªûêk·â/¾øõ_ùʨ_Úþò&îû+iû¿¿Ü~éî[_ùõ·¾P^Æ¿~¹ó»¿¤Ÿ§é/¿ò_ýgÛ»nËóÃ3.¾Ík) _¿õëW–èwîòšeñEoÜ¿xïK÷/>ðT÷i®rýSXç^Ìy²Œ† +Ê}˂1QŘ9K,i§„i‚ûÙûu/Àßhõ¯;Ššñ¿_ $þ÷!þñþñèØüÍ£Eâãn ?ÿµ·õÍí»ÿՓg@INž÷–¯§¿·q÷2ÿÒsI¨Ç;ï\^|éâÞ6|íÎSóæÅåFÏ7èš=ë^ýwnÁ# 0è—n=¸wyö}ý+nšûg‹Ÿ{Ö¶ˆ|Ñ2dBê)™‰#éÔ¡Ól€Uˆ> +q¥°ïeŠPµ‰ùw=Wôáûj¼;ÓëÛªóàzÏèE¾tkÛÈùæÙý[;äµ^ÿÛ+·ì-^¹çj×<û¯ö;0~ãÊóýäW= Í?ÕcæOÞCÃPD¡åÊØÉÒQ2¾¼Òf.ÝC‘ñGF]œ†­Ûàüàœå6?^âG]¿öï<¸x Í»?–#´€GÊ·„s)_ÙWÂÿrO3½óQݤu÷.oÝþœ>'ü¯Þyxÿ~º€t÷Kî~çÁϕEûنð¢lGa•ôZæó_¸ekVßEähbÀ6ß n;[ä¦§;Ÿ|àðÿø?‹$ÿÈß>V±×Þ}æ0(ËõèñæQ}V‡Aý4θ?Õ0Ô'6KÒÓ} +³ù'•LLK-Ay¨p_H@¹ökÇ¯Ö Å†Ë+c>՜âŸÇè å_¾só€'.(ý³Ë‹‡/¸–¼±-)¯Ì<{Òa˜E“nXÒä™dÎ9"Úç¿|òþ?yÿO6ό «?%FçŸ?yüG¿ò9¾÷·~ý¥ç\öÒçOƒß^~òø?yüŒíÿ¦.ùñŸlòwìF¾ÿn£¬t&¶˜U’F#^V\:Æ!o¿ñÕ_ú…>ýcVœ°íüzƒôCÝ£-(°å'‡Ö –£û‚hnb,¥þ iÔØísmàÛÖr^ϚG­’‡Ñ9uI}Ò_%yÞ·ç"kˆ;¡oŽÛø7OÞÿߢ^1Vhࡉ"ܞt‚&•'ÖZðÇò;ÄðÆÛ¤ÜÁïŒ)ñÛqŠ_‹ÃH_…`Çíü/OÞg2ôýï¦Ê²€c–Ö¤XòƒUĶöXÔÅñéÙàR=ùêyþ¥/lKæ/lŒï5Kk|’m±WG +DÃÖzRk§òä“7ÛÜæ*û¥/lãÿ¾°78ÖuU0©C¯%óÛùÝ)á1q„W¯a¼0¼thqð¯´Øð*èêe,ìóYÖ5ʺ3üJݱïC‹MU4…—>j«¶Rð¾¥­`æÁ”9¯j«û›vü ®âã?ÝvËõ÷ä+F]›^²)Ì ٞXïë¦ð5öo-å5~¹í%!Ä! +ÂŽ”êàGÄãÜR^ÜÔÕ÷¬y$:„ž|”QTÙSÑSëñ˜I®øážÝd‡Ì#‡ÜÂMND5-â{6Ï.µØë3[ܺ)·âé¼}•Ý!‹Í/k®ª‘¡!¼·²Ꮟ^ÛZ›üšûX+GoÙÙ÷ ­Iì$ÈèæÎTOÓ͑ã3¯ñ¬%ž5Á{Èǃ¡ÕؗËÞä¶9qÁ/÷”V¶QÇ=tÿú۞é¬üÃQ›ý°kÕ耶 B>ËH}á{Α=ÖÚI ‰®\xK8®Ç#¬ï=ÐÕ²ÑtG®ý“ßø=֖±æúño¤Ð=ç^ÿÆÕ8 O2ÛŸ'™Ëøôo^içñ?xòøïFÄúÃþcµuôʟ€ðã4ôìÎ`%ƓÇÿÓv8yëåþÿîÿê¿þ¿ý¯xNÇàø¡—ø'¿CØÁï±+þô­ÏŧÜcYüÏ/5þ+'÷ž}Ÿ6Y½«ÎŸòäý?äÏÿr3o¼ó 0µ Ħ·M€ÝɚàȃO‘Ás˜Ü”Û›yá:•cáα`åãyuÜðܺ.PáÆbғ¢~Û_ºc¯ÿáéÛa'lɅ«uòPRòC¿¾^Ÿö »×Ç î‹ÔvVâ´íÚsê«´^¼£ÄzøñÇsÜÞa‹Z)ó‡Ujs\!ÂsuóÚÿáéövoìÑ܃¡BÄöRë~ßÁ×;9 +¡£¨Á•öò~˜ë ’ÿ‹Õ9>Ãõ?ÿ’×¥Û9ìqŽCÎ~êôžñ9öي•ï8Þ“ôc…l¾pðó®Œ?viƒëõé¶ZY"YUØóÒ"4ì+^yžëGþígO$ڟŽÅô8ú°t€¤<ó|xt(Ùîÿ©×fßu÷©SŒ6ŸŠ¯J®ûëm[¹ÈAhµëÛ=BÖXM‡KÚ3Z|ãµ=AǏÍñú­ŸU<~­øú™œ +þ`”Û‡W>måþ(, iÑ_‰Ÿ ÍüGx«ßç/n?÷;ۓüðÿÑxÿO¶?€êäýߎpêï‹[,(ÿó¿æ»ýFõ^þáý¯W÷A\òOÿýÿïÿöú÷xëÖ3ÿd»dž°-vÏû‚ë®ñÅéy>ø½ü¾t÷üÑí‹;¿töð „|ñÆÍ÷ê·¾úú/éOÚ¿ÿø¦¯=¢ýûÞíË;Û§øò!âµ{öß¿wvùÈL綏ÿúáNµw,Çyå n_<ø¬¾Þá?ý(ÃñG—wÏ¿{qóùýtçÏ^ÅÓ?c>žÝߦá/òž÷noߺssûûôÙ{¿ã·ø4GÁÇX >˓å#vÒÕwð_û©í€@:ü™Ü+>n'’=ùî£û篃õ™|§«ükÐWîc® uUw8ñgd¸ûáŸþï^ÜzçÝç»t"KùŒ½U<üÓ¯õýç¾ÑéºPôy|ÆÞéûÏtOžû: \ÿã³ö2ß{Ö˼}÷áæ¾~ñ‡_»k;>ÿÝKöy«§_à3²×n[Ó ¾Õ~rûÍ'ôðGñ‡+Cñ‹_Iéäû.î¿wqò‹ï=<ùòÍ[ÏÞ¾uyë¡çð^¿€k÷˜Çæ =ºwòúٝw½sqòÆÝ{î¹ñMÜ7Ü8»óÞكà,`«šã¯]^\ÜÄ(üæáÛ¶ +é†hbžœÝøöݳû7OÎï^Þ½’Nî‡û[óšÇ_™W¦¼j è“yrïìÞÅý“·n?º<Òdxîc¡*øÎÕá‰ëX³|ïlûvçßß®¹uskù×÷öPÝ°]úµGï=zxòæك‡÷oý:üä͋w/žãú·_ƒËíî¥_¦ÇÏß¼wë•kïwvyëÁµaðàÞ݇׮º}öà»2•KîÞÙ͛ûúâWN¾øèáÝýQ/>âyû0ƒ¯¾úW/¼ûœ_®ŒÛÓ'·¶«Î^lM_ðHó¡÷Îvzº»õñ;÷ïƐ}ù—ÿß?þý?ûç¿ûƒÇïÿÏ?û•§‹pž5öîèw¶q ôðäp`yn' ”çªC‡]3oÂk8š4{åÏ_Þ}ûìò͋{.wÝѽ߸{ï›W|ν§–“ïìïu/†»ï]Ü¿‡èƒ«ƒû»_üÊg÷Ucóà¿x÷Öù»oÜ¿û[—»ŒH?Ò9nú>¿óé{(ˆ?Ù÷ìÎù5øJã_¾ýöÅÍë/ðÜÛ×½¼uçâäᶞ]{Ã+¢tb{ÅC'}PGDƒX³ç0|¯´úõGoo£áçîn½õ&†ñþ¸ëÑWöàÁàúϝýÿ´½é®óʖöz‡CIÔ¹¦âq¾I + ¬þnÂât‰¸¬××ÍPhðô)pÈ䙰–Ì.OÖÉÁ ÉîFƒ5Ü['ò9Ÿ|¿µôS1fKæã +ô»B¬|{'õ!ƶðÁÇ·˜wN¹!ñO_—µù.žÍûÙfeBä»éÔt9M@ɾœ¸Ö"ó­ãøx2QÎIz’ÖCûÁvËàñ=Yáâ¼À Áâ¹O€“CoŸa>¦ô7¨îÃݬ§Îéš$Àßo²Í„, 4æL*³Ùè86A&¶ìM&±Ý\+lv^¬o¢†¯÷°Íi4ڞD¨NµÙ¯Gx`)ÍëɵïOÛ͟ñ8{NÐf~-¼}ßïN –tæm5œèz/­p«Ý¦ ž€[M7a4\F+ñ¶£Ýޙ õ›“xË X­’–/Ü)wƒEh/‘œ¨-%¡éb톴›I àxrZ̶Ï(¹ßM¤b*¶ `£ùŽÌvÖìÏ¥5c:;D€Ý=2‚êßP©TÜÚõ¨›Œ)ûíoþø÷ÿì?ýÿ~ÂtÐû¬¹ïðÜF‹ 0gL”mL/~—K¼ññ>"‹[¼éy·—Öp d%ÝW»U¨)“–C¨ƒ˜¼l4O¦ƒËZ„SÁF/ˆœÓyM7ßïǨa3õ­È -Ü®k†ß@ÂKpûLŽ,Œh‡¨öWçJ„@w‡7,˜g² +žùòk38®NP`̺ f9 ½pS˜ëTâ+ŒÕ*ñÛ¢•Øþ> +A‰MÚ6ÃÁQ„“‘펌’ƒOšîÁ¶Yl§»g˜;~|Ýޏ 4`°P UÀØ^¼ŒvcºÚQ»óüº x5†{ËÑæ+aiµ¹`¸søÚ0DZz°l‰RÖ'¬f݃yüdÃþ0ÓS+™ùò_ìŸHIÐ`·_ž48=ƒ0Ú1œ |Mf\…Ö.ÔòÈméâÓ{@C®¹Ê³>N&h‰]ï£hE*æW‹í$²¨†—íèI–"lã[ß'°;of&œéöl: VdÃ&ãõþ8ÝÝ|+jv_„|m1¡*ހÖáHÛ[t5Ð-ïf?ï?Ávgò`_´ Ç7 Ðn;™‘ºˆÈ×°¬ U( +¨Nìcã×ñaÓù`<9NÄx'˜fˈôH–=LQ"¡ùñ‰Çn}!¾›ÏV›‰\Ûÿr7ʙþ ë/‘Ô/QèȈҎŒ/¦#CÓîX­Vªæ©ÅB•à²ZÈb”V«í/º ¯Å˜ˆÓŽéª"ÛR¾HsòQáÌMq;Y =D•G—·I™éDb¹©vð¾FXÑî—ÁvL¹ä¹nPëãK‰ëU +ð%ʓ*ú’å—x±,á-öI|çSÓAA™ g: +'ä«çÌ9sÜ_`V~\T/%®ª±øR`·Y TÃç‹ÁÂí,—NOüRü>&Òà„%!ExÛÝÔ]‹ÈØ +jÄ@åot²éxšìÈ*ÊRñ«Ã\BWO«Å~&o%mDWÈ'>Þ•Þ S@Ýäç\ž_¶»»×ü—Å–ôÄBoÉDÒ¤ðh±]­Og@ÈËUï»v(µ]ýc˜}yrñxüâ)¦ñ>Ò m1s!éñôÀËӜ"kóåäXÇ•=ùöÂgςÈu~uš—9¡Jd÷¿þú+‚h¿c¢SËD“–ËP·#/üzÿ¯7·†¥”|Pá×JÄ՝­Á´/;w'ðð$AöG5‡ÏáZ÷ Ôjòkü{”Jï>ò+nsûBðkj\i¼ðëˆüq—l{ðA#‡°ýwq9Ÿ´øµ"CjSÄ>ë`#ùW]åmà“!ߎG§Š~%;ꈙ¾Œ'ðÁh!ŸÑÉñ¿VáWcü;x€×µàÇ[çÃ#ù•‹ôÌéØܟÑi7ð«³åÜÏãà +&'ü±KÄdˆt6Ül,F*‡JÄqÐZӍ•ÞvlªN¢±ÌÅÖ#IFÓ&CIâë# +dn¥l9kLÙöbß5Ëׯ¿ªöÊcØéL/fΊ±Ù²Æ#nžo‚úë|ÈPø—œb8yÕ)=yºU‹ú‘ñTy¤QÈ!õ}òGð6ø9 †©ÎôÀϫŵ­Ü g§ÐOR_÷ÞºÈՂ—Ê!·­“7Yx³õù‡Txܬ°ÃþhL³CO ®qÕ®¡Kàç7¾òŽ áCs3–Òj¬3—1ü±juˆlv³ á'R§33ªE¤WÏe-áChäÒdzDÞiS^F¿þj^¥3ˆ>x>ºh +mÓÞHÙÞF³ñY†º6 )69…\ñ֔ÀÃÞüreÎLõvצm©rz“ó¥NÉB|ˆ.‘LS13¹ÔãFO©KSjŠ¯Ãk¾v C—Ë|šÚ"ÇQÊ¢_yºp{ÈKi€9»‹”/È\Ç­ÓDÄr4êÃQõ0â6šä±©±c‹á¹\;¥Ô\þJ®á_…ÖbDÀ\CäãäAbu;X³Ç(‚„Òg²Ê=WZ]WŽhó¢óztä'ç´ w¬¦ ¿)Í΍ýê¬×úðI;sÃGF²` +‘«º^Daˆå¥U?DPغª@Á־ڋ%MhÝF´ñòÑe|&D_’㈡֫!ÆN|‰˜†F-bž-¶)–ËÉ5AlŠ³±]ªNÄ¡ò§§AÑC\–þq‡s6ÄCؓˆ·ŠôßÖ Eªº Ó$T ̐ðÖ¢Gp¯.†Dۊ>W•Q<„‘$ºï ©Â^dŒ—’ }$Òk‘¢Ê™BJÃÈ)§rv¤Š5ªHí²”#!Ž´ú9ÀÒiT]H¯´î ߇־Êȸ±W"Óq0‹ÌùŒ¬TXÙx›dW0%Ã¨~@ÎkRŽ¤¹bçä*\¡’k捪\ arã ý–c¹On³ä62TîXzÓrw^­‘û¼ÛŽ<¨øåácó Î¿Êr¢—±ËSÝÔZží$ òÂ8g—­K[yõ\«È›€Ó‰¬åò~顀yêKYå‹*°Qì»ò}ѝXÎêªS!/• +•=4WhúÂXv&[Ó­p¨lz…{38)üß¾©"üµl)bùtA‘,c„"[_ÅNÉ®¨,FES¡U+ºž½\1(ŽŠÉ¬¼Q,­™¥ Ul¿¢sÅI™)å…ÐT©6DgJ}/1Wb¾ÌRé@ª¥§Ó?(ƒ™=¢ŒÆ,jeÒ1*súºCùe8”u“7¡ì˜kEåÀ«h+§¹Ì\¹ú>]”ûs„"¾K@†¢ªF>‹ê/êjɶ¨óÑ£þ¼*ˆâØ´Œ&æ¥9šË´hÙe +£Mù¹öÖ«:^.œè²ÿ]D÷ÓÑF…Œv•z5.©LªÍ^ewÉ}*oÑÒV… U%œµŒ*×XmU•! j•CÕ[ØU³‰£­ÚÆê&ÕŨ­«U§ºQmœ˜j{­kRûJ¾ŽÏììêT¡Gõö€ß¥²§›z¹½¡Sží“¦òd?ٔ'‡~¥;;‚ôº«ˆmÐ^Dâãæ,RŸÕ§‘¥z0ÇÕþÕ÷”.<³ÇŽxO(ðýq¤—¡QS^g‹F¬Ù`´|>§£Óa¢S6.㘫?ÅÒ“)Ö­Ï#±ýw®7«‚‹8îÖiãÕ‰/t›&¡®/O„Ï<÷ùɪJ çSñj ‡ÑÝK¤´y€%ÑEG¹ÄA¯=&1O&šŒ«dc&7ºõ,e¨d‚©ˆV»LUÛ£hjéIÓڋ5ŸNút¹2ï¦çµI0£)´O™@«WË»ÑøåâœÕ¸Íl oÅeh¶¬Žè²óZ{™ÓZZ.¸À£¹JuaÍ-q’×»fó|ÄoçëE>¿ñwbSŽðb=ÌZhË/†Â!¾R­ó¢˜ +u.Åþ¹w.!Ýé¥ä&vòRÁ£Aehiªwj¿4æ"ö²-]_5·9ôµÉWÓeóDU-'Ì_Ãr¯ ÝWyG_qWBþJÑ«)Tfçé°ªÕU¼ñV[åp©z¬øV5G/`©åæÁ\mªŠ/ëZ¼l—¡õÈlZ­·Ü¨¼~œã g²»lô_c¶Êšúo¥«ëV‡ÍnÛên!ƒÅ´ågC­ŠÁ»kmâÚlÛ2=éÚÛ¬×÷†ÁŽ60B:QtÑêt†û`éšT2´ëË{‡Ýj©œíî*kWÏ>p*z¤5í-\ºjßT­Æû)ÅÕ5æúo­=uùŽn-«ï^û<(SÃÎ ®Õ­p±<¸¤Š¥¡ï«XÖƵâð¨~ÜùsM†ŽÊ'K{´Ë¤c§a¶—FØq¼©µµ{sLŠ>YG}_S[ò0šêËt5 Ûf6«-5+”UýÙê´Cæ¶ÒÖ7/š7µùzu<.ì­oQªzۋm> ´Ï¥³8J-Ëýf¹Ÿ¥+j=^Õb×ê´ÜÖþxɽn^,“¼± nÂþòfÓ³é­ZãQoãjKg;2cÁe:ïÒI[}7ý{+VPì‹åþ÷~§GÒ2ôàþ:õÔ@~Dl¦É1lê֎}+qÒ¢Sϼ٩V†Ï…:Vø%F×µv>uñv1Für««{½œq:Œ4ÙíϔωíÜöø/êÉôÄÎÖ´µÿòÇ¿þçÿñûÿßßþÛ?þý?ûÙ߃ѻկûýÕ3¯a"%Oÿyžýw¿ÿÕ?þåN2ߛJ‘þWd2ó_ÿþÛßþþÛÿüûoÿçø÷ÿüÿöŸþþÛÿòû_ý7ü—ÿ÷ÿðèï™Ýÿý·¿Oÿò¯¨–ü‡ôûo÷ ïoóŸþŸ¿ýÏÿëłò—¿¥¶12~4ø7¿ÿö¯\2•üÿ€·)Âtó¿&¯U$ä©F®W]€ÿáÿý÷ÿéŸü-àï¿ýÃï¿ý‹ßû¿X#ýíïAËÿü—ÿä÷ßþÑøwÿíü§ÿ@wÉßÁÆðÅÿ4£ÇóWÿø?ÿöïþãý¿Sãÿý·ÿþ÷ßþåï¿ýO¿ÿö_‚AŠÏÕuÀ¸FÇÅ^rhÓõ½/êò®I,ç}QÜ­£?ˆ¾b¯\ã#G‘½kã›{ï¥10zõäDúŠç—ýƒÃ¿+Œ{”#åÝ}uåvN+p{m]9.6¹ÁqUgDCˆMPù<؎G±p1VG¾ž‚¥'q½;Æv¾¥2¢3‹íX”-PœÎõÉ°¶˜ü9ÕØ)Ò8qü²zÇ Ö-j[‘@).!¯A¾Žg©Ίèçk-˜+Æ3«§ éj­0"í$.w*ŒVLbħñˆ2· '°V|üät³ 6 8þÁyR™_6Ãí`±98e’øÕEv  ¬¸6l1Û±“̃ŽJ}³8˜MRÌ Œ'{ g:ZxÏå¯ÍïQÕdPµ„­E­º +#÷â9És»ín4?î6>‹½Y¤Â… E+·,$ñ¨PÈè¸ÎÙÁ&×Y³Kê!/+°;Äh_¾,#Í"ÃÝíðZô]{8^´òK¼ÌÅüt£ñ³=Ñþ²wÏkÝe¿û@§zK÷߆)¼¨šB˜Y üùî¸bî×ÞdH¬×^¼Éܟ±ÙÔ(÷‹éâzxÇ?óz"ˆYÈ"³M”‘ðmq¡3U‘~ §W¼Fò»†%¦³P„†Ù Û3mK–²a¿}RŽ.ÁQÌdRÏPeÇM€Ï#P¯«•8ǖ]ÜÞ2"›]öI•Ïs}Щ¸1»²Ž/×êº M±ô˜Ò噺j¥v'R‰šjÂH™í¼Ý°EtÃޓi£Ð ¡IŒ§2”$ñ &-6íÖ]ðì®áâóstîjYXäøVÅF–ì!ì©ëÐåS´7ëíÀ'Õÿ!¸Ñ½TFÊFŖêCc0¾ÈPÏR£ÅGŽ’&:·÷}þjSéñ¼ážûU‰èä¢ ÖҊ¹o4¬à§…>>ÍÎ)Ì̐ó™]›N`Á:‚ôZnG±ô©ÈæRO\u6ö.¢æ˜_K. 1&øÚUÜP#hfÑp4åWÔããæ%Õv*‚®è®§÷×Æm¯u¨è’`ƒ[ (èÔ)à”´ugi éÄWZ§‘^šµq³t¹˜yàWˆ¾u„XœðA„B6‘¡ØPž²“ŸõAÂOò×ãªyÔÿ¦€Y›ÖXº L Æ ÖXh áÔ~ßx™ï‘3yë0€WÀ4ÐOß:нwÀ¢ |ÁF;ù›Ác}’Ôð”Øîl9—£H%¶ÔǦæÌ!>¨•¸sX-ù“±~0R™Î‘¢r”‹T¬60ûW·©ïŒ[ñÆwèr#µjYË´·ºs¯MÇäuš»Ø´“ô`Z}Pá«S3!ËÐxߢ¯áöFšóªÝ›«‡Èr;G'˜<Aï<=.)ÙgÒýJ'jb!(êÓ."¶¶àXÚá؂‚twa_å,TÒçË#)93É ûuâGþV|ì`ZD¸tº|y&„Fµ×FçίV|ˆùu±ÉñhÀ&ŀïÖŠ7bd‘~ÚB®6¿ñ›€;5cŠ¥–®µ÷© u—›L¤ÐÃsDtšvc–ÌpLDǛ&Éï‡+.U!š=T,,‘¡SŦu%¾¢¯Eæä0ÏÝNÀ–r 9OéهÏW,IÃx[„hb7TF@ÅRlì†R 8mäS:‚dQá!°I%–É$„?îВOáXfº-Õ¼’ £ø:™à\µûsmvëìáÚÐì*&s%[Äo$œå¬µÿ”¬Ze/jID³Ë°WÅ-M4„M†Þüo€ý[`Í[µ¡}›j²YËH9+;ÝY_•~š°øà‹ÁۋeD„Oýdø4ÙhÂËÙ"õPŹ3æF2®@Ø%K¢×+ÚT~gþIX¿c¯WÎ]Ø;#ƒ/fœî^¿i¹t1²±Ëњ`ÉsÓUò·ç°ñÊq´€A|# +ǒKÎh8óÐYžÅÀ0,Ú Ù½×©s£MØúM¶6Õq ö¾5ÖVÆyúˆÃ·ý$—Ã+’pnXÂäk¿µÁ§y,9*år$kcØá$~Ž%ZÍATe» ¿áXkð.IJؼOþÿÔ!e£ÖoÝ¥ï*Ù,m!Râð]â³ï*Žú5øgÌ3û_.ÇFÓ£n¥ào¸³|°Àêðíªã­5î3D½@‘PÂdo\Näk´‹ëlU,FT™²©êù"ÙzöÛÊÙH“ìHâ ZŒ%cl€¥æžÈ6ò5e€XÎì9ÈÊJ-³%ÂË*&ú`Þ'ƒ·_J¨ŸèŸ+º°+"úx­‘¼²£’ÁŽ\•«e•2ôޒT¬(öX˜ž¡ÚZ<@áËàN5Ú¶ 6êòµ²DĶR¦I=ŠËaô¤ŠåÞ¥1WÜh˜Úc™ÐÁÎĂ÷'‘¯m¹)ŸS›¸>kÖ°Ÿ®‰°Ý_•²/í]y%Á“úXå)DñâM:mX„<”bì‘2˜µË7ª~E\ôW,}Ô}óóâHvS‘L½Ô¢{VEW‰Sar¤Eg։¶×1Ýt/“¸îŧyAŠ=ê^˜ËUíN2±iéT6/Šm vÄQJ_±Yåmqe’£JÒX”Éû +…C£,”F¤@Ėõ~t±tš}Ó :úÎhüv¹¾Æ;Ø9ã]¾Ðj@yݕ¡À>¯™Éлnö§ÓÌ Å®ºÙU3sênöT063jC‚’-ø ]Aë›Qó"ðÒsŦK—[eo"dèݔ`‘­˜$ɐÚÐøÊR+ž^œŒŽ)eª µÎᐡԂ-&×µ»þÄ֞õ¬&™(ÐXlÄ '–hº¦Àœ‰[1kž»ƒ¥€–m‡TÞè лšwEú]ŠM«ú2D̪Ç©HjúPNy(ÆÕó«VBûÊEôº:ß^ÀX¬¨gã&gßoPšÛn×(›ÆKÅ0Ks“§ ¤K”òåӎ¯î‹}§Â\«Ë°ˆe3ÃýÝƸÛlô~Á¬­•":ï ^}0Ñï_WV×fДÁW9=PŠÓûžõBKµ‡¯¬äþàfHaÞñfA‘ž‡Ôö‹°½ø9ÌOæà¾nݽ©¤Õ‡+‚Š+ìË4å@ýž#l؅H91^‚y ­á*â¹Ï@@s±NÀìƒE7¥…æ§ 9ɞ`ªKo@TNñþÞ2 ûªjÃÉ`u¬å¾é¥¸ŒTªƒ&@à]cD'l½Ioܙ2ÁXn& gMì¦B+ÆrkwÛ½L`â»Xâ×ýk»Ë@¾ýËؽVgDÚ'姻—îˆ ½îßY›Ð×>"æhYõÁfW÷Q‚•Ä_ö¾{¬Ä³ýù•¢éKÌô56’ÑÞ7Uqʉm”v­€ÅgÜv‹˜¹á _驞˜ç“Þ7¤ç‰î\" 9h=à–8ôV|S:XŠGގ.¶ õ×)®×9§ ‰u_wp)9•Šƒ;ì­¾ir8 {ÊEû.hëÇ3$%¶ßÐt&IØ ÙMñv'¦vÎyæ¯å‹Mö…,©N8Y»þfe*9ù½«¶ÎV€  )¡WÛvcÓJl +Œ½Ü%âGÚñQq­å¨K´gg†®CõÈ]'s¾©dÃpzŒœÎƒ.ù5á£Ñs‰¿Ì@Vz=÷Ìy]ÇTo(q0ƒ“Õ¥S%ú¾¹™‹Ô¾yIœãC\§ñæô¶v¤RQ!¬ÅJÝÀfi+Ÿ^YŠe\¿vHhJD4ÒJb8Õ b†Šãæs¡zëYE╈Ëó5óØ¿ñ $Ž 6‚`M%­qk¨ÜÔ³€´’B«°?¸¯ãë-¦â1ÁWês·7åÕd cWK)­ä9i_ GcêàëU*̏øŽ¹ïœá”†i2o ì^›-Ï„×âFò„¶Yœ@)‰Lõ¥N™ +àŒ‰4©0pÂS,ƒvÃÆä ì—`2Qéë27ß1IãØö{}äk½óºª=}Öñ¢Œ/’Xu B-•DË]©F¾vÙo1Nî_ÂOŒN‚”gOÎÕì+iÎ@ìü2ÔY-ŽÍäŠa;´«7 +籔 %)˜yæ0ÒÞ9o£¥\¬»4áœÆîBb¡…ˆ«ÕŠî`‹^É°™9^Š(¸ý´uº\•ý˜ß@¶ƒ'¥êøè"v~¾€&Æsö)‘€»#…Œ®NÅ*,ÀRŸ9ønpúÞ)~TGv‘)ÓẀÓËĉذe0„:¦p ÍЈ¥‘)Æ2”ï ™pRqǕ²L¿;ؚ†àÝ'7?ó-€uڲܹ%‰PìŠì>Üf#ÒÍR÷½i\M„³–1w%ïq ­Å†„¦‚h\õE¥InR_avì_’Aϕ)d‰ØŽcj,˜u¾#§£¤€~‘:²ãÎðÈÄ©kâtmzÊMlâ<0Sâä îB ÑbÓ¾1gÎu¤â ö‹ýdß5ˆhWgý)Áп/`¹Ïô¨Åakƒ?ž¾>žÓ{âz¾»rö°¶ÆÊÅaFÝÓp®sÜ«{#äÇâz°}¸œÅý{eїØ,ì0¦‡ Vð4uyuy;x¼À¥<ø³Iî²>/öëI„{KÇC–ïVȐ]ÂƍQ¥ýàÍ*×g22žŒù o€•>èøv;{hÆÌúœèFgüdµûK^ÛíAéö‰|೅*g˜(‰URñ€uß Þž.ûåœ#ZÄoALò:˜/Ä`%òˆ6ßò †ù<²%µˆ¾¥‰!Æ´§i²eÝ°Š/k‹.Ø;¨¶ÓG_C +ÆÂB먖NÄhV7tbÉ ú‘) +ñ5}p•þ!RR˜<ŽU½¯ ¾$Ć۷á˜Ëˆ&y2À¯p€8°Gi,€ÐÁ½Ö¿3Þµö;ˆ%_8ùI†bÉït<Š­Læ“ã>•÷œFX²?‰žÜĶbÕxšJl¬²lá0 +÷~;§™›iQÙOÖSî +ԝ¡¶ºO1?$Öàífì:ôìéxôZÇ®¯XÀÌö²†ì-iÂÒ±7æY/Òî OޑÎBë´.͈Òá±gÖ×ù‘æq­¢º_gùÊГ¢çąƚ –\Û?R»¶¡÷ +9>¤ÇË·W£CýÈ7‰T†rÐbò u*”nßÔ#€´ÙÁˆ +^âC +Æ"'ö^´°È}ñK(vYA¤êt֞"oõØYÓ)4ˆfU^·¡Ž³¼hß=̪W¤‘ÕjΜÚ+®ÄšD +vÓ0~G*C!Úî±[~‘h‘zûŽêxfæEÚ3Vò‚H]æiYM"•¡´Ç£ÑO^ý‰iÑÕ»®ß¤'u°iáC*Cá^œÃ› |c…K©«÷û6ü#•‡âà¼äøbD¦D­^ȓ¹cu*P‡Û@ÚìcÄ®RáGšPTÙɼÊAJsK,QrׄœTӜBï¬yåړ:l É«{@šìoÝ|l¬rí¹cͦò]iÓ¨áŒÔå0™ZüHí-ËnJ.RÈ-I´)ùŝmŽÜ¼H ëIRiÆtؐ¶õX9{óÂ?֌­—%ˆ‹´’Z¤‘–sÎÊ7)ÄB£a5¬çáGš5**ã¾ÎNj´Ö œ‘Ö4“þž”û¼cÍauc@××Ãîc”iËPéq’Xh´Ky%‹ í8±îà[Ϗ4_]¬¼hÞÀ‹´×kôÁ®ënÒ̄æ°ïx6Ə”¨Zäs)uG +¤Ø+óFthÓr6Þ£‹Û(¤ù9ÁæIÞãÅÅ RÃÒB@#C½x# ÐŽœ±ê½»¦Fºòè8HÑi[N r+Þ´¤Øìá ‹çÛ ˆÔH"%ÃêïR5oTnm¾"@=s /MҐ&n`!uÌÕc=͓lJo4Ãf„ÈaÜù6Dk~åNTh&“iá E¬xaN#õ–Lœ‘.wøŠBªf¡k‡E` n–ó)U +UŒ2ŸZÏÄêÝž^Tˆm¼Ùó=…RÌ®ªZÐ1áÛ®=‚Ő[è­– Û¬‡Ñ<2øVË~…ìBO#Xvœq +=b9¤î¾?eSÌފc…QêKèí>VŽ®ÎOÛ¬\S |OIŠµMX%œÓ½íÀªÈÁÄÿԏ`Ç â¢Ÿ>ò©$V«"+ŸÍÞNcµ™1$ô4‹Õ•žˆÐÓ¤¤•äNB¢ÏO`{³ô0« +¯FO~¢×¹W° e·ôI‚hïd¥µÓÉv€b¿°fl¿•É4ˆ °µÕíèÝACjps¹Rö¾ãÃCÕb¸ýiÓóBë€Þ¬{æ&þÖo!ˆ/†?.XTí`ç 6^3DŸv (ùNgýj#Sb”FP¸õ'm?‚ltÅGûž‚žDµ¾ªPúÏ ÁИiŸÙuã‚ÆíÄÒ=%ft9Gé?†ÜŽ¢¥µ_Ùñ}`FYdÒðdó|#ÿ€%ÂR❺5è’!n þÐô¤<.%Êv’D¿H :ù‡iU󎯈M9ÂÛøÈ?_L#†gþ€žœŸ?’'_t×λøžÔ¢ºMòæïfYP#ôé_$–ðbðî h‰,¾ÜE{¢¹\Y÷u%C%¬,lj‘7Ÿí1º“ö>MùgËTòÎñaº3çå9±Ø¬Ç´{`=Mޅ€=\c/ÎF#Á à­Ë,Ö£U‘«RhW6 g¾þÜ{CòvòM;ÒmÊC»x§ÆٕLÆÍ¿+)Ӆgh!K&+>4wpC3*ćFý™M*ê4§#p¿$Š!qt•ŠÿbïűÉiU å›-ž¹Ú³%„'2*Ž®Î\c`¢bæ· Ãïy¥4 ”ÓØä\5Ók綒) …Øð$(òù@YÉÆÞw–ýþZÆÌÙu´ŸŸÝ[:‘R"‹³Q]/g¸ñ$À²ÖîÏPz²Ø„Â?tç)GôãÚãcó@(®<™ì³gzÁžaÓ¨©-0ÈB‰£…Ýg—A1ö”ØS²rÅeœ ëaŸ¿€æ`T“`âêŒ<ã}vw®zãüÁ$y~Ç Ë@©NŠkO2”Oz˜ß•yF¬ÀP#Ø¥›%:eÅ[ž4§nڜ´.)Ddå}ò$@ϕRT±P<Ñù™3øD¥“62”$6ô«o£A-'5¨û¼¼ Œ-PDûE{®„MՇÆÇ(öD¯{eS¯¦õ1Šq8Ú«£=[W?Ì9xà®V¼ÑdB8ŸÕÅà–ìÞΒÒMA~„ç+IQ>ÆT°¹ºÂu@+ù‡vež‚d^1”µ‚kl–´)}™ì[Ôå7}ì uú&Éná±ð±…W§©ÏµZîOe¨„®PyÂÄ:B떰+ÖwhBwäqÛß)Ægzü"ê<‰H;>ËphÓÊŒ®ïÉNÝÝÙ 7Ëàƒ¸tW§Æ£Ó=m‘WØï!»tW;®g¯;õØ¥³B€—[³Û‰Ï¢ +U-¨èbPHô/d Å؂ßoûL&‡Æƒ?Û/¡j@ûÃu~_Éû Wü=÷F?¬so aË=ÛÏ/y@¨ýuÀŠO†õ ï~ÀY؂Ž”û<„y®ËB객°’¡wmVHÔ©f…šq >EÁo ÎnÃFÚwòëçú{¢¸aœ%=‘wÏüUéo}¾_$ø[0ÁÍ''ÃMcy×gM«áœñýŽNjoà£ÿȨ:Ì[pŒâPdR% ÌôC!Jq¶[\«}Ô7•wN˜9#°O‰دë¡Ï g|‚¤«¬OΡd +¨G¦‹CËáhà7ï5N&Q“hTßáh7)Ôʏq4ŠÍѯž `R9šˆ¦ýÒ¶·÷,<ˆ×}`ïs¢ÄÖØS8Oxˆ8ÊF&áHaÏ{cæ3êi[Ì<ßé×UÄôl M˜^ìH×ÜÍwßKK¡½è­m7¨ üöd"$Ç\EÁƒ”`„˜DͬQ#™,KVþø e²÷ó})l¶&!úÍ°÷~¢¹´¦¥ªÒ䬱ƒš9ÌS8|ª½ ¦– çhP??y +GBà‘Œë`ö²¯š?ƕ†yBϕ†yV‚M#, ï_£þ ý¾ÃµÀ¶ø$KCLH¿ç“…b>XìuýþaN-rÇ'¤Ø@žûˆpޒ>W)à¼ADBáuÔ=ÄÂ=‡cᓆâ²PˆÃXäƗ¤¡¸,c™z5†ièÕ¼hEÉBБöY&è›bOÝÃ0™W#lŽB=™AÌû†:}ÆÂ뚮€ŸŸöÊîÛÛý£ •´»%°m¯Æ)B±Wܪp.kR´LÎé)×âkˆº®_ŠÌ#»d¹sˇNIP59bɊ7šFŽXºGNHö' iM1±DG®Qç•ÜØ5Þñã9òÃÍõèí™FMOl#©S”Cd^^ +¨‡À„ñ‹+ޔ«^Q1ôÂ+¹)1ø–&°Ù‡'N¬Çˌf|IvIØ-ÌX2Abí™ÛbïŒ!ú¼Ë™ž2[.X˜'ÖµA?¦_â„Gî•`1.ûPxËGrèÄ3èdègrèÄ3è8ق?ΡÏ “¡ŸÉ¡Ï #WòrèÄ3èÈ;U>Cǃt"’-øÃ:ñ :*[ðý:ñ º[†Ý›9tât×ÓêwsèxÎ+÷¬5ö³:v@²pé`ð>Óë„3°â]’IïÔ³ÀíÜNP9gDĸžüöclí×ú†§·¨–K.~Æ׎±]L¯ÑéN%ž,›ÇH3–É%–„''xÆ'ìYÖãøxsF$dÎI×sõS¢?dð! 'êñgf½’¥fhI Á +­;Ž +AfØ=qKãYCë噇Dr’é@ޗ?ŸnŠ©PŸ@ +ãëŽ3胴Šxz¥8Î؎C¨éØn’$KœÝñFjš°dcd¥IÊsŸŸ©/äñõ.R3NDYkâ®y çñé˜N+áÔ´‰` C•–Ÿ‹/|ñ$hŠåñ=‹—žÇ‡ræï!çý…<>ŽSd1Ü¢ÔD€=I°‘Яkf +Æ{fþ³A>½%à`§? Ø“hÿ×(f{ÛñK]ytºf?=ɞ‘¤Ë&¹>ßnj¡ûfš/÷Œ[‹%Ÿ{äî¶<åγ$ÇØŠƒ•`ìCÜÝ-¨;ß|° T/àKÃbGðY¯·™¢É³D¹ÇâÆô&NFDÌ0Á\;îvåÙûOÉ!Ù¿ äɒãoš #Zšÿ~¶y%ʯ‰¹Y±ÝÓìÌ!97NJ­G +¦EÅ_J×ʄ²k™ rR¸ŽpF7‚èÇúØ2Å·ãï]’Ißñ€N’·+'‰³Æ–©×Ü;"™cLçÅÇDÝodÆ]»t½§W¤S/ydø»Dfs€N}h= xdv’éôšG†c%±ƒ”g®G¦$ýÐ#ÃYc›ôÛ›Ò«Qrì¸#ÑlH¿ä‘¡<$B|›ôÛ04»F8ºCzÚsÌÓû”È4´w=20îÂsx;@8-î‘aÜq÷4?OØ#ó,9‡¥Ã@êHMÏy%a¾+ˬ«'y¨’”å _€ÄË9‰Þғ¸6>ۀ?æʪº$¤ŽJ¸7,CFΊÆôJšVÂú”‰¯ÐÌ'î Ûû¡Do“œW'Êde’xQ¨ŠJÉ}=˜u»=Må$×=º@yV²Pr'lðH5÷üÆ»˜1ŠÒÎ’Çc‹Á$¶çÃ}äþ±§ùp’ÖØÛùpt„*'#îgBF8îÅÕæÃq­W*#îÓùp"ق̇{ uU5ߡcäŠ +¦j¼ŸLj¯Hdf?ȇËâü\>cDm÷Ìz(ޞĒKu¥R²Rû @Y?°÷½ËN¬¸j7²ú u‚„R{6ûᰍg1(‚~ÎÛ9ö$Ñý™ˆg¾;€cà%E<E<¨ãnÃx'*LÀ[Fª”mØü饰,¿åTýìÖé¡Éêƒõe>&š¬–d->ÑÆ£œÐ†¦ ~æ6`˜z(v·ŒT땄#} +K±ÚG¶aO>¹MK0̺öp%°Ømh‹oã{ˆ*‚¿½bP‹e¤ä_‚K%`ý“©õOf¤Ö?“‘Ú9| #Õ"7~$#ÀùHF*„ó~F*„ò‰ŒT˜½&z ôMOÊ_ãl‘KSŸÉÐÇmØ?>nÃþñ¿ƒÃPÉp’T¸)ö'I…“xô›©pœ]Ù?þIRáÞ³+¥¦Â]íJÆõ¡T8Ú«ð«ñÑT¸+î5Â?µÏ†'>Æt‹"`¦²JK|bHˆÞ=}É«[‰›ERNlî;p€~æ@† Î\Câ§:L“{É°èáÂã­칔T+vM0dåfXíWPè=Onæt‰sÓ7#"â•ԻŽ“7{ðàcÖ ×|)]°^xY†ÂjäYÄè6ö]ÆgA ±¯:b¨õÊ°lxÑU"Nø©ÛEc¦ïÀ̍•‹FÝŠIūljê¦!k¤ +%»Í“ʬ¼³“Z¹cV]e'»i†Ê¯•P†]ÛKvë‘bî, u*d(+1Š›ìÖKvCÂH‰có†ÔöXO8ï̏tEŠ¨•Â_ ¤Ü ;½o]ÍßÑrëñ…뺽PÞYS¬\܌1§vÑM +gØ¡+sm(„t ša—À¼‚c=žfi… R¤£pV…ÈkË°“)gVáv5’èÉO×L¼ËXR»‚b©.ÐR^ Ú/ýʝpÌ7/Ü]½n]ð¶AÃñ´ˆùŽŸ…Üòh°EՆsFôpÃØ«©=Œ:V{AÇ¿×D¸ŽU˜{U³x̕pjÏÓ-¬Ã/A_ߏ+Éñté"{Ò(Õ»t¯$Ç7u¯xáŠjù³!9žÞvìyÅV\ŸH)3=GÿT9ÁñI¬ûö¬Øȓñ]ëX=Ü¥öãT)uF¤]Øwüâ~Á¦Y{G˜>OÞtl‹ïÙt|¹t?ñÈgÓñÙ¤Dþh6ßÐ$ÞóB6ŸU"ûx6@Œâ‡³éD2¹>˜M'îµþT6_.ÝË7„<ͦãË¥û™D˦ã;§!Ï,>šMÇ3§‰å£Ùt"g¯̦ã㯌œ‘eÓ½rÏÕϳé8T$séا¢ŸÈ¦ãF× +¹ŸË¦ãë7æýlºûüݹ½PŜŸgÓñÍ}Cȳéø@1Ox?“MǗK'”3òólº·(&9›N +ÅÞϦãË¥û ÅijéøréÄr¬~–MǧyòæV¿•MǗKǶ÷?‘MÇwZ"ûx6_.Ý3ëõõl:¾y?ùI6Ýà %j»gòåõl:»R¯gÓñåÒ=ÉäúA6߀¸w )¥°S?7ï9ïÞÓCòŽ&öTÅH㤇Áˆñ2•RŸÄ¸vñf½:)ÚÅûõêît’ ]H£ÓÓʶ:výa:͟&Ã?]¤ž ëÞ=«D+qêø Õ GڋU—{V‚–Û%þèØ©'ÛYz—€…ù +‡¡“S:‡´ˆlJÏÊ̶ˆÒ\‹è1úˆÑCÒ«ð¬ÐÝ;9kŒÈ®÷ž—¹ã©3"@þwÊÜÝ}"…î¤g +”¹{->ù§eî²8ù +ݽä¥â+s÷âëeîțŽžºûI®Ë+Çò´ÐÝOƒ=€\PÜ£~š’ù`žÅ>óömÝ×s10¸·sy2‚±ìšÂOé8±‡?‰µ†sþvl†/ö—7Råi: Ž²ÒÈÚtOÂÛ¤‘AÚ¸$­d‰ùDšGCfâ]Ýu^DE  ƒ®y)‰]Ï¢ÓAGíOnZ“ EêüŸ‰†"sÿß^c€ÞR¡$d>¾_c’‚rUX…f_"‰"O†>ƒóêäƒBUšøi.ûC—î”V›X»œhk—“§gI’3N0I%Ùú@D7¦“Ä̲K”å-œá‹y IÑD†Úî1‚úa>r7@ô!räg™)ÕOV0¬~®‚aõžÈðÎÞ¯í¤êïO2õ?T'8PD£:_€ó[(8/W«~ˆî ÊÒ ‡ ½« +6Íà ï+© Û°¹܆à7ö&ü©þµ +wÂù•µw¶ácîÛǶ¡p…»´ñ7*Üq3¹5î~’yóXáîç•ò^É'«”÷Æ6¼Cáúa^+KÇ&z+•ì °T¸“z«y¢sx'±ëÊǀr÷$%]zb­EεXk‘K®’.RëÐ{"!÷âiæ#©Á~Î3o–„˜+Ώkï|Œ„ó~bmýɽp/æ·?×<+—w¥hÓcp L•ªŠ 0®_K¤î›È6|1‰©AEr“8)Ò!¯óŽy_ŸÄl.!Ca¶C­O(IXIؕ’˜¤ßRz“x¤ ÏkW +È$¯ÆôÃ$&>¯蔈ýýºb8Uîqx"`ŸçVKÐa¢&—¤³$I•ò}éU@…Î’ÈŠt+÷º$vw‡ä×ûî :r[^|ô dO°&—õ¬¤“ôҞ&Ìî«À?aD?2¥aZ_”Ìí3Ù²åmêTœÎџX©iǓ% +oyâœ:lr«×ß痫ó᎗oo U‡Í:+1Ù»»º;K¬%–ù·´°íNîß4_Dª²¤û#!¤c¾Ô4R¾Ù_x™1VvjÚI1Ÿåù“Áƒrs)'NK%á1ø»Ð]@¬âœÊüs*”_kƒî}z¬" ‡râdFš0|בª'×üî¹â¦á™ÄfՂH§já %wå5÷/Ü5VX³:ñ\ѓŸè‰ÐF[㍔v½ËfËä0-ŠC/Þ(<…è˜Ó뎓0E¦¹+´•t=®ÑlD'q9 +‹¨› ›dXâ<çAíØGŠŮj‚ÙÇg!C"è„«˜6²¤*_R1Y]•YÀ¼â÷ñHÕtcw?’Peɞ¤vìi”{$¤8$†VIÉJÓ šW¯e¥ñDhòÝÓ+i=½¥%ÛÇ÷4&]ÚøàÉÈKqZ"]ŽfcècÒR…/¼yq¿øDªÒS½yŒe›ÖÜË0¯•¿>aJį£}ÅÛ4œèÜz¤X¼S…‘znÿÈ)OÓ¨xß?ÿąq0ìÞ7ïµ&sŸ;4e²Ÿ\Ø)!ð•|±gVK\0JK²Œ4by<ÛZ‚c~‰Ã ˆÏÙÈC›\ÊDHȃÈs‘¨›/»Ä¹ +߀k(¼˜ÓŽãUY¹÷ܲ2\#_õRéÙmÂz›”;"Ø©€ÏBâ%—Õ»p,ñwҏ†Â÷ܽ±÷Ìáì6á{$hãLMéÁáùB* wþ8lj|ùû’S9ŸÖ¼aι_„gðø4QGÒb€cÀž™)’W֑/_•]_ì`¯¬øg{šËó +Å>uçÅsrùcŠ‰$¤=¤ ³Nx_Ï”ªòÔJ{! gWòæ +ݪ!- Pj _}déY€Rs™·š@B $—è:“–(5ðyT±,@©9€Y6³¥æ>ͱ$Ç+õNEÙz)mH8ÚÈÂY€…*ÿ¨^-Ê÷NE6éEùÄ«e}ª(ÉùŸ0÷‹ò±êñI`?+ÊÇÇÇ>_”áýåcyáþdEùn9#Ò¢|?¬_ùbQ>áó}Ø© ·¨æ]w¦zóìn(ºªßC³OÜ õPÕïg™\uýÄ]ÎÂwC½V×OŒOmÒ¸Š¬ë÷vœ’¤º~Oï†úH]?ñª~’ï†zR×Oz~å‡r!xªú ­äWëú]{Ã_ՏcYü¸®ŸøbàÍäúA]?L.ºªo¤Êêú‰íyýJiuýijî>SÌùD¬ªß½:Ã{uý$E¨¾]×ÈïÎeĽU×O|÷²¬$núÑ uýÄŸ>ö“º~|)WwW¥]¼_×﹟_JðÔ³º~³9Þ¬ëwMGä¯ê÷ƒz|¼uýÄ¡ðÖãûA]?(ŒËUÅê%½R×O +«:ö»uýÄTî^…÷êú‰[jT¬õûuý˜ý’XÉèuýÄÏidªë'pMêɨë'šÆ8Mx3ïa"VՏ¥[¾Q×ïŽÿú~âUýÞ©Ç'ýñz|ïå=\¡tïgsTó²ë*z³®Ÿx`« å݆/×õ¿ÏƒS—çÇuýØ)WÜÄ臌!ééG¬º~ù؛uýÄEY‘íuýÄuú—êñýä2¾z|ïoCÞª~?¸½á±®ŸX)>R±ÍH}¡®ŸxXi‹} ®ŸxU¿d¥=UsnoÖõWs¸™õ?­ëÇ¡6' ÷Çõø^Ê«Ç÷v2ü­ªßêñIÈÂ}sÅS×ïÉð7ŸÒ›uýÄ«úݱ¼W×ï¾ ùªú1øØ[uý8‚‡è${~Á‡¤º~âf;“bËyz¨ê÷¢ß’M1ç§ìJ©uýÄ«ú‘ûåc9OBUýøn›ÿI]¿kfU?f®è;uýxXAŠD~­®Ÿ8)ûH]¿+Åø«úq=Š?­ë÷S浺~⠓ðf°OÔõOˆeÄ[¾U×O\8ܼ£\ñ09?êh“³ˆp åï¦L›V½f®kü&ÂàÅïo¿‘|,·e¯§=LJ&§½o{Öéª~Ë$™&pKȷћçê +Œ~±?‰Á¯EØ|ö§#w½lUå1² ̧Jê+ÅÁA;zAˆº—œ#¦À2¢÷½ß÷ÕÔW«/ÍX|iô‚5FdJ1ŒØ-²X¢ä1bÙT¾e7ÓVXOæX9gó`•Ô¢†UOó)VÃÎk¬Ö \°º±¦ÁZ†ªëå¬×kL±þ—íŒ}Ûjì;§)Ç¸ùxêì|2ôx±lkÇKß­9©]*¨|af§Ú¸' ɼg®u[3D§BE¥Û·ÆÑb9‘VÍW¨\î1ç5ŠõMÙ=ªÂpوùu×D@äbØÛóßä„ÈP*í-BT*(¦œŒÁ¯Å/¡ç%{}8`:i1âM;£$™ªé[{ñ;±HRAŠQÄòÚ9.ìÛßӏy£ž+ÿHíچÞoS‡1Ïà1¥±D!¿9)zÎ!Ì\Eh|ÁC\pçÛPî}æ$–°xÍÕ'ËüaæÂÄÀQ¶ØۇU²ï[³¹û[CÃUe”pöò±‚~9†ü¹9Öìú}X/j¶`æÁÁM¯Uây²Uù¡Ò¢‹Z|ÑÅ6!úý°/‹I’qkÎ >•÷Ãl$÷Kí@šë˜y%7‘o۔žÍÃ4&3ù²: ýi9ᤖ*Ã9Uôð«žþêÕáW#ý5k§Àh¨ª÷­ÌìHa‘Í.{Šdêõ.–¦D_ÛÎX ØöûÚьN3 B“L¥,†(:¼=00T-ãÛ ãÑ,pÅÌ2ð›gÓ„Ixµ`"Zl¬Ñx¯¿…õ·Æ=K¼çõ_Fò %^Ô8_³fJù1' +t,(ڙU+„­Üëì¡A¦]Àðǵ_SÆ+ó¸èèuP̚È&$燊_˜µ{ZÀŸ1üÚ ÀÚB•-5WV­Ò¤¥ç¯™2À§zæì7 &‹ wÛܾIO;ÎD_»nVüµ€O¦€q³WW€øe„ȏ¾ES b»CtVÞh¤ªò}Gç®Ì>R‰lë@td=V¼­ë‘KŪ5׉¯ØôñZ#IÍË7s~‡YÃm.`o˜6à·/$‘¦Ãh©OyÍH~$/ë¨Ox˖„jG(öþü´ ûº#Àâò q­ðâë6²‰Tb30­µOtN¸C›GË_ÃÞ|Л¶•ëט;²Mê„?îZPP–«lٛÓÛÚäkô~ñæg¾Et6÷tá`I_Øî½ÁzÂW1õ<ìÙÑ¡Òv@Z'":Íy®Ãmh‰¸åè +ºÄÀ©ð6Êñ‘ÁoŒTÒ=M6§õ"C£ Ä8&4;äo¨=+actzvÜ Â*3@¤:ÄBéÎ +ð›ûB_Wµ¬i–ž¼#î/ÜA”A\X ’ª$Seµ—©k4H +Ø~y+Ô€êgHêá'yõ«ùö+Øì†2Ømg͑چ@Ël1Täë˜ç:ԏ|3îVÄ­{°({<°˜ØùÈÔM”Vße(ï~ßæ몵“˜xW+‚Q‹ü:ä¼àڌþzÐ.º&ù² +F '¨Kd 2MöG« µ×÷É¡NIŠÙ\…}“ˆõbHå4ÒQ!íùý:†GQÇ Bûh^‰Ìãའ½+ØWÚ|Û7ô˜$°ÎJ$ à½=vm‹IÐ&óä#“þN[{mq3ª6…ÕļQçvuLW L÷µß@væ8E‚#ÞlsÖY‚^ ,"„/ׅ}AîD@짶ê¶"뀺¯™¢"À"´”DAwÍJ_‹€b :÷¹ìü¨ý#Àm^$ƒž^ßR¬¸‹`bþæl;{¾5 Ær[ÕÏÖt±/°-žÒávUqrz: ’"=ìX}Ø!‚}¸{ÄùÓQ~ÑÜÜA`É\sÄò\unë·ÙaR #ºI¶›¯¸ys•·o¯1ÒÕøb8kl¼¹ÆjÛ·×Xs'ÎzÜ×Øðø|™¶Ä†1&%c‰RbuygE·Ðôy7,›b}hŸp>JŠ‰‚˜Rêt6çԝo,ªæJʦ䋈íåÍa©AÞ×÷Ãa\äRûpÝûÜ^´Šg¤´ž:÷> êڜu+ÞpÈXRl‰,•ÃÉá¥>ÈÐÇ^Ìß\TÃÕé]n9ܞ_—Cln9<¼µÅ€ Âü:RÈÙ|l¤R\-Ì$4ÇCzhR:N –­2DäшœÏÎ5¸¨yaÞ( Úçq«ik„r[w´g£±¢Ýâ üà¤MtG(Ú«…Î2ryrVuP“¤ ù†CƒðùýLŠcš2\0HW£½ +wÿ<ôˆUÚk‹7jvîÑRµûgº£,oíͺ û°š’ôړ:±c=«b-¢¥ab¾ÝÂGY¹†¤ÁñÛ¬æ…!‡Ñ¶¡ÍTÍóëù(Ë­¬dG©ûñìÕ/ฏÞä~õæ40m‹±Oi¯>,2<‘<†99u˜VéƬEy“œ!’¼WgÄ·ú( ¤c º`ÔìÜ7«Ání'7¸eÔNzm*1m^{è‚iގTŒkn8%u&úï]‚öµ³ŠYu™ˆMk˜n9Éfár_{[11¶¡Å¬8ùõUßÑ;Ûª«„?nßÑQï«*òRcè;3"(·)éÕì_4`; Åì¶v;Æ­ÚV¡ö°a“¡ÝɉT‘Šº¾úùᱫý*n­;‹.ÚnA>ݺÓîq&ÑõUìB¿+Ø]¤|!y_±INyÀucÌ>H¸÷“jJD‰ºZ™ŽVJ –÷ÐÏo¢b{îKü¬——'Ǭäñ€9ìá`³‡R¤ °‡¦®œ ÅÐs™®'‰d³%¹œ¸¶ì<"hBn0ÜC<0Ke¡‰ëçÕ:ñ­õÆ Er¾d؎ã+sð"C©CJŒ°y¶åËè§Î®:R´™ÍeÁ2œéM€ýíÁhÌÐ!Ý o»»• m“îsxËӁî°$¢`ÏÇýù,ä ^‹~ð[F¨Î Ää  +K°uo›Txø4”Üá˜-’ƒ7ü¡ˆ©u‰ H±YÄbðΒtÀ‘â¹FÀ³|EÉ:_ à¾þ1ÞG€Ù|h*n4FÜaOȟÀW9ã™@ômŒU'‘Îà™ ¾DÍõ•”[Ü#o>jîák×ÅÅâ|ë²ÏüáÝ%ˆìæö¨ …`óÌSæyëÖ8ã׳>ޝ8ãkg Dž0sߞpØû)Á휃:Æ‘üz?]#¿ÒJ§#l¤ÏøÄ yÊ¥¶)ýþoR̓¢sv;ÓÜãºÌ8ˆ Wwš`Ž ¾ªw­êP6x; &Æ£bëӁû蟅A ë(Eœñ[Us öÈ3‚=À~IÌì·p¼‰T—€þÆ(™”4vøÀBô%C_ÿ{W¶—¸²õŸ ïÚFA!¤ª2•#„Á [PTœZ∠{Ÿ¾9ç¼Ê¹<ð½Í~‘o­JB‚½uïsáÏnM©J¥j ÿUõOÁà´®Me ÷’ÆWsÑó¯‰1QgÃ]Éœh/§Ü4Ö6ÑJÊ^µò¨·ô^ž‹¤¸”õ¸I \%ܔÆ×ÒK¿¸g·”ëyˆû¥ÆUÞ~Lû¯f‡á˸W  l–Gª©Ô{3åÕ–‹+ƒjm½Wú꬟ŸXיýþ×[0•®ÖVÈ@i.QÇúßÓ>Ûä;óýJE uBnÍløCwä҃h®œÅ}ŽR^¢AÝõsä?T‰¢#žåˆ‰c0ÝL·»²úéeV*fEþâúî6ß(µâ>`DZ[¼ŽD‹S<½Hwù|!2¿øÝ;õŽw+¨<€á|†F~=º~NÒKå™ñŠ÷ —‡Ç+™v½v)w'-N¬|]]›EBÂZööÎ “Û܄ґDlÎí6Át¸:6ïí»ÞíyØ*®ûŒLºdeÊùæËOžìV´RJ/îÆù†_Îh1¾›»*?_¸™ødíù¬Á:úàWtD-^2>´rzññüя•«Æ¥–1ϛàRÍí3€¹g†d£Sv2{mçxði)½Ônïq,÷0œ‰§eUÇùzg#™ÙÝ~Þ²w–úÛ0¯T´}’Ž©´uú$®\î\<ê%¸v˱Iº³Ñ=ƒAVNT¢¶æ +¹Ö—Ff¯r6—¯'Ó£=²›­œ—HQ¼è(øú‹aX9õ$ƒ Œ»dºÛR•àZgJíì ª0»" û„_+pjλn½öe_sw>ùQ:)¾C:ä‰Ã®Ož1—ÝôéêñAøÙï€Ó?ó mðK°ÄÜ 6o;fÏñ"ëí… 8@“6¡…«Ù¤Ë’@>F±!§Ï¾òÇ>ÈvI@¢sµÍSë+ó> äۂ€UB½yÛeЬ»¸Q®dö®®»¹«ä))Ö`ô óñ„bßÇöÚv+ݺ„¸˨ËåmäãÇ|¢r•Ê¯Ý£z‰¸hƒ2d=547²—÷veOöýÒr2¸$»“¾$Á¸T¿ ´5p§.8ïüsU2MS•M‹39µ×o9ÝÝîíõm[NHKR*³IÈA»Ù)t§âü£—ë4úN»'/Ê©Ì~vsÓÒsN£Ótä„ ÇÍA.áÿ¼,‡MJ\œ»âë÷3{+µÜ•z¼:2-ùJå ó• )ŠßÀ$.š§‘-ìGbÏ <=v'û‚ìEÂ( óüLÎéÚýüÂNñhÄgˆd’_VÖ\ælg/z¾^NmdN¶s'…Ãýtª§v|f€7•ö:Õuh*°7‰/Ó"ÉÔÜ!~µLžåkÎJEñt¥[‘…ò—oø|ßðƒµH2ڑÄNu#2ÿ4ÓýEJ¬ H±o¦ÄÎOK‰uá¸WÅdJl@]5ã!z‚Õ•…е¯ÙÿƒlT9€aa6Óf*lªK×ÿƒ{E‡¦"†M„‰°á{¯o*QæÁž @7qa}ˆS@´8-¥ƒº/<ÆX© pê< ZÇŠ†¾Î¯ -ð>»0´¥Ý” ÇŠwLàô€¸lX—s[:e©ý{Äg•…>s!óq19¸é¥¡ì'Ðc¹Tmyv0p7>×1˜f‡¾œ¹ÿv€Wã¸ú\zÇÔ5úÓ/¢Æø–UæÖz!=çT­Ñ§ÎVÉpQáÁÁ]º¸³u1ã©×qM aCêUßu™¯#¹~òÔ¾^UI½¸‡£SâÅ·úwºÊ7)ŒU½†i’8¦3v)ixA—ï< +îj¾^™}ò ÀãâV!Óª=ø§±ÕåËÈ÷1«14öÎÝ[ |ö¯@j1„о™J®ò”<ßb3Åkêpˆ¨ 5 +³h«§CìÈ? ‰g Ù«m’^^‹EÃÄqt–ë'‡7é냂 œzŒH®¡_Æ'|Jûٛ~a#ݝùÞË]uºŠqb4O2o%Ä ¢‡™ /Õ rî¯QµØzø²vÎN.:â!AÇX¼=ã3Zk×3JԜÀw]ÙÈÇînÎÆrÖ꬀p¼4;¿_Èśe ¼t5ÓºÄ+±²s&?-âh,,9‹³-wÌO6Z¹«èsú»ªe¶«ñވ©¼¼d°œðúûS¬ÌˆˆµjD³}PN57Óìç³çë{ÕÅóÝNLD±-;Þê– vv^U*K'Åöêzë°z–Ù0"õð¼é/áA´}¿”f±äÙwÿãɳo§Îz›©½‰<û꬛™‹X¹í%щ‚9õvÊZ™æ(ƒV¯o¯Iý‡âŽ;b¦#îΧxËo´ë¥Ÿnò 7Õ½|=U›Eëfxez$ûâ÷™üiΙÃÉL„/©ZÞÌT²Ú‘­ÇGÑV^Ú*ßú<ñjÎn}i¤¨.'f:µÐEÎc¼´VÈŽþÔZùSò¨Xü$~’G?É£ŸäÑOòè'yô“<úIý$~’G?É£ŸäÑOòè0yÔ™+Q^Ú3˜¨ e˜µ¯g.­Q0I¼Lü"!r䙤¿èxöŒ§>[KÐ`¼£˜;ì<ߋùÝyoB—|Ix,@qšU7 ÷‹¥B¯£Ÿ…_‘]Õb¡IÞ_[kYiwïr^}ßÝÄb3‚ƒîènó}á}v;üKô–ºÛÁÐW€|ØnÞ‹~ðnÞÒûïv ö:>z·1_,E?x·±×΍èn?ÝVã]v;sXÂö?r·±×Oîy÷Ýh1Xõ¶Ÿ›‚fê]R{ÂI”c\×b8!¤ˆö§mΝ‡pîœom®4û€«oÁêœ7ã8Gçґs•UÐ,J a©ÛjOqgGo‹ bSöu)¿5nãj°ÄoÛ¾íY¼Žî-õ,å §8²Š7ºÂ^¿s”Hkt³±ª˜h…qÁ©ÖÿÞÛHÑ`c‚Û–@x±RüüÏUi {“‹|»^K—¢Qì;½þ#^ _ØÎõm»Xûát%"»?*üào“Ë„Z2Õu8ÑQZ¬K±?þýß?þõŸ?þ ÿþO&q¹Ø–¢©L·—»môn;íZ÷‡¼ˆ¢êNñ`3'/ÊCE. È’ƒ¶©P®ˆãrþ´÷BRå ü¯þ.õ¡1ð‡È™GìJª¬zÍŸj {’ª˜ãœÉªbƒi᪠†a1ü„0S<€¢r ,Êt&WñVÄ«·úN¶ààD¿ËD•wäÓsUnbsö$ª1¨P3ä$5 E×U&?H„R…XVHV dDÓÕd&ȂÂc…¡Òõñ=éu ô‡ªPÍÒ4|>bQƒŠ¿ª®áaoà“á§D7ƒì¯_,™1؂>¹“©b˜*t-ŒŠn(&å:´]3ènŠ½Á¸BT&„\Ñ°°;4‚#B@Ȩ¥QH uûà +G.)Ô©q™†bYöјûLì£XRU8£p߸œÚïuoÛ×r̶3 Pû½N¯†×†íà•žær,.W¤¢íZ؋°dò'C„©€ÕÀ¿ICßn0ô óך3tE3 2 ÔlÎG4;†l (>V*þüSÃŽâOë¸ÚMM]a +*j +¨”‰¥ûBªêŠ©ê†Ü +]I™©Pnj Ü¥©p1t<ôPàAbú@UsbéPKpå «Ž1ìLçl*ÍïKԂ{3Š¶Æu°TŽæËÀq‹¯>KP t"X1Øn¸–ðõZ¦±Ã±UÝ·Õ×¢›ñvc5¦3Ö¾ÕPtN„]2¦R‚ªw@˜A¹Lã*}ñ7ˆ¿^ň©ûV@Ø[':øjʙd:Ç"t—MáGcåà¶ÑöŠ’=AMÑuÆ­©Ô”èà´,aP3×áyðv "‡×N)¯»½¦b!(`Hµ)žÖ`”¿}4PÁ,ˆÆTtڒ dÅ0t1Cƒ.F$c„¡Ò¯Á”1VMX©g°“ŒU»±êÓë“7¼¿Œ½ÄÈþjlk¢ã,Tc–Â"0¦jŠNT \!¡Î4FÁ–ã˜r Ë 2 5g…D p溋ãB×AŖj +u`ŠÆu€<–.@Õ@d€_ŸE©A‚ + 4Y=KÑ-¢û׺ü"(´ŽQl¹IM™šTÑÐÚADœ0KþM¢€á®&ešÄ´ÂÕQ‚ñÊ‹ü燖 „n÷¢ðø Ð0FACÐ<þ@?要0èL¿²1}Þø Œ¼ Bè$â—jp>'„£¶©sjyHÉ->V*~#ILC4ª<…Ѿ¼üËû§¨±ïáÆáä2€ƒ¦¢ÖZd7€ ÃT„í0U_…”ÇÔ­ÉhçmñH؏®R·fŒÍW7™×Ë`ïu»¿ …1/[z „io÷ëÚ4~]¼n€S#P•*§ð¥|ù®gµg³Ýtþážï÷:Ýþù’ôªbM™<`‰¿7Ȅ⊤¡»#ºHH@ã ðÔG4 <:zHTHÀ$h L® ´o€þk®Ð!†Üß0À$!…ƒ\ÇÀËÀ{ƒ¯%àÒuðü&R!•A£5CH¡LêàK!üÁÂzk®ÂÇS °øíÔåCISÑO˜"ÃÑ òò1Zg £4Ý¢d:lê:À‘kà bçÁa?5Hda(å Š†Šÿo9ò¿ì±_säoö9Ôw8¯`IövŸÃ¦ñ9O~Àùƒ“Úi&²1 REcSÑx +y˜%œJÆMZpcÂÁ(U‘0r˄LrH ¦ï8š"D®,àQ1›¡ÝÃH댙Âg@^GUŒlPÎXpª"ö„ZTÀ®23{êÁžunš`ù€ûàÁ‰”DÑM€dXØRˆy"µ(6 À¼¦{wàмßÆ=Ûd‘„ÕuªšÖE„R³aÔâeWÃøÆËÃÂf1F*þ.búÐHÞ_fÏïìˆ>¸s§œ‡üæ=ŠؒªYÃtD„>˜]—¨;h·ašòu·Ö¼uÚ½8öˆ©š?Áĉñ˜á¬·tº+XÕQeûZr’ÐÁ ™Õ‡±b»1^<ñj>°'LËLtÙÑRíÚ©tk·-pØ×ϵß¹Ön£a9ð <¦ó ŠæÈÏ7ßQEüË£ÑünAúÏ8 Ò endstream endobj 6 0 obj <> endobj 33 0 obj <> endobj 59 0 obj <> endobj 85 0 obj <> endobj 111 0 obj <> endobj 112 0 obj <> endobj 113 0 obj <> endobj 114 0 obj <> endobj 115 0 obj <> endobj 116 0 obj <> endobj 152 0 obj <> endobj 153 0 obj <> endobj 154 0 obj <> endobj 155 0 obj <> endobj 156 0 obj <> endobj 157 0 obj <> endobj 176 0 obj [/View/Design] endobj 177 0 obj <>>> endobj 174 0 obj [/View/Design] endobj 175 0 obj <>>> endobj 172 0 obj [/View/Design] endobj 173 0 obj <>>> endobj 170 0 obj [/View/Design] endobj 171 0 obj <>>> endobj 168 0 obj [/View/Design] endobj 169 0 obj <>>> endobj 166 0 obj [/View/Design] endobj 167 0 obj <>>> endobj 135 0 obj [/View/Design] endobj 136 0 obj <>>> endobj 133 0 obj [/View/Design] endobj 134 0 obj <>>> endobj 131 0 obj [/View/Design] endobj 132 0 obj <>>> endobj 129 0 obj [/View/Design] endobj 130 0 obj <>>> endobj 127 0 obj [/View/Design] endobj 128 0 obj <>>> endobj 125 0 obj [/View/Design] endobj 126 0 obj <>>> endobj 94 0 obj [/View/Design] endobj 95 0 obj <>>> endobj 68 0 obj [/View/Design] endobj 69 0 obj <>>> endobj 42 0 obj [/View/Design] endobj 43 0 obj <>>> endobj 16 0 obj [/View/Design] endobj 17 0 obj <>>> endobj 199 0 obj [198 0 R 197 0 R 196 0 R 195 0 R 194 0 R 193 0 R] endobj 232 0 obj <> endobj xref 0 233 0000000004 65535 f +0000000016 00000 n +0000000476 00000 n +0000043623 00000 n +0000000005 00000 f +0000000007 00000 f +0000226934 00000 n +0000000009 00000 f +0000043674 00000 n +0000000010 00000 f +0000000011 00000 f +0000000012 00000 f +0000000013 00000 f +0000000014 00000 f +0000000015 00000 f +0000000018 00000 f +0000229981 00000 n +0000230012 00000 n +0000000019 00000 f +0000000020 00000 f +0000000021 00000 f +0000000022 00000 f +0000000023 00000 f +0000000024 00000 f +0000000025 00000 f +0000000026 00000 f +0000000027 00000 f +0000000028 00000 f +0000000029 00000 f +0000000030 00000 f +0000000031 00000 f +0000000032 00000 f +0000000034 00000 f +0000227011 00000 n +0000000035 00000 f +0000000036 00000 f +0000000037 00000 f +0000000038 00000 f +0000000039 00000 f +0000000040 00000 f +0000000041 00000 f +0000000044 00000 f +0000229865 00000 n +0000229896 00000 n +0000000045 00000 f +0000000046 00000 f +0000000047 00000 f +0000000048 00000 f +0000000049 00000 f +0000000050 00000 f +0000000051 00000 f +0000000052 00000 f +0000000053 00000 f +0000000054 00000 f +0000000055 00000 f +0000000056 00000 f +0000000057 00000 f +0000000058 00000 f +0000000060 00000 f +0000227089 00000 n +0000000061 00000 f +0000000062 00000 f +0000000063 00000 f +0000000064 00000 f +0000000065 00000 f +0000000066 00000 f +0000000067 00000 f +0000000070 00000 f +0000229749 00000 n +0000229780 00000 n +0000000071 00000 f +0000000072 00000 f +0000000073 00000 f +0000000074 00000 f +0000000075 00000 f +0000000076 00000 f +0000000077 00000 f +0000000078 00000 f +0000000079 00000 f +0000000080 00000 f +0000000081 00000 f +0000000082 00000 f +0000000083 00000 f +0000000084 00000 f +0000000086 00000 f +0000227167 00000 n +0000000087 00000 f +0000000088 00000 f +0000000089 00000 f +0000000090 00000 f +0000000091 00000 f +0000000092 00000 f +0000000093 00000 f +0000000096 00000 f +0000229633 00000 n +0000229664 00000 n +0000000097 00000 f +0000000098 00000 f +0000000099 00000 f +0000000100 00000 f +0000000101 00000 f +0000000102 00000 f +0000000103 00000 f +0000000104 00000 f +0000000105 00000 f +0000000106 00000 f +0000000107 00000 f +0000000108 00000 f +0000000109 00000 f +0000000110 00000 f +0000000117 00000 f +0000227245 00000 n +0000227326 00000 n +0000227407 00000 n +0000227488 00000 n +0000227569 00000 n +0000227650 00000 n +0000000118 00000 f +0000000119 00000 f +0000000120 00000 f +0000000121 00000 f +0000000122 00000 f +0000000123 00000 f +0000000124 00000 f +0000000137 00000 f +0000229515 00000 n +0000229547 00000 n +0000229397 00000 n +0000229429 00000 n +0000229279 00000 n +0000229311 00000 n +0000229161 00000 n +0000229193 00000 n +0000229043 00000 n +0000229075 00000 n +0000228925 00000 n +0000228957 00000 n +0000000138 00000 f +0000000139 00000 f +0000000140 00000 f +0000000141 00000 f +0000000142 00000 f +0000000143 00000 f +0000000144 00000 f +0000000145 00000 f +0000000146 00000 f +0000000147 00000 f +0000000148 00000 f +0000000149 00000 f +0000000150 00000 f +0000000000 00000 f +0000000000 00000 f +0000227731 00000 n +0000227812 00000 n +0000227893 00000 n +0000227974 00000 n +0000228055 00000 n +0000228136 00000 n +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000228807 00000 n +0000228839 00000 n +0000228689 00000 n +0000228721 00000 n +0000228571 00000 n +0000228603 00000 n +0000228453 00000 n +0000228485 00000 n +0000228335 00000 n +0000228367 00000 n +0000228217 00000 n +0000228249 00000 n +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000000000 00000 f +0000047365 00000 n +0000046171 00000 n +0000046252 00000 n +0000046333 00000 n +0000046414 00000 n +0000046495 00000 n +0000046576 00000 n +0000230097 00000 n +0000044150 00000 n +0000051709 00000 n +0000049023 00000 n +0000048909 00000 n +0000045093 00000 n +0000045607 00000 n +0000045657 00000 n +0000047247 00000 n +0000047279 00000 n +0000047129 00000 n +0000047161 00000 n +0000047011 00000 n +0000047043 00000 n +0000046893 00000 n +0000046925 00000 n +0000046775 00000 n +0000046807 00000 n +0000046657 00000 n +0000046689 00000 n +0000047488 00000 n +0000047515 00000 n +0000047672 00000 n +0000047740 00000 n +0000048026 00000 n +0000048106 00000 n +0000049060 00000 n +0000051785 00000 n +0000052009 00000 n +0000053067 00000 n +0000060438 00000 n +0000126027 00000 n +0000191616 00000 n +0000230164 00000 n +trailer <<47C58C1914CC4179ADCAB2A858B95BC7>]>> startxref 230341 %%EOF \ No newline at end of file diff --git a/0.5.x/artwork/icons.psd b/0.5.x/artwork/icons.psd new file mode 100644 index 0000000000000000000000000000000000000000..24efe68269742331349220601cc857d5ae8d1bb9 GIT binary patch literal 46509 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 literal 0 HcmV?d00001 diff --git a/0.5.x/artwork/sprite.psd b/0.5.x/artwork/sprite.psd new file mode 100644 index 0000000000000000000000000000000000000000..23933f0317a234cf28415593d60ae1df05186219 GIT binary patch literal 163965 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 literal 0 HcmV?d00001 diff --git a/0.5.x/diary/diary.xsl b/0.5.x/diary/diary.xsl new file mode 100644 index 0000000..ffc2abb --- /dev/null +++ b/0.5.x/diary/diary.xsl @@ -0,0 +1,140 @@ + + + + + + + + + + + + + + + + + + + + <xsl:value-of select="@title" /> + <xsl:if test="@author"> + <xsl:value-of select="concat(' | ',@author)"/> + </xsl:if> + + + + + + +
+
+ + + +
+
+

+
+
author
+
+
description
+
+
published
+
+
updated
+
+
+ + +
+
+
+
+ + + + + + + + + +

+
+
+
+ + \ No newline at end of file diff --git a/0.5.x/diary/itozyun.xml b/0.5.x/diary/itozyun.xml new file mode 100644 index 0000000..a27a5c7 --- /dev/null +++ b/0.5.x/diary/itozyun.xml @@ -0,0 +1,132 @@ + + + + + + 開始。当初uupaa.jsを使うも0.8でresize()イベントの拾い方が分からずあきらめる。 + + + jQueryに差し替え。コマと半透過レイヤーの高さのリサイズ・windowリサイズを受けたリサイズ。オペレーションキャッチャーによるキャラクタの移動。コミックエレメントにリサイザ用のマークを表示 + + + キャラの8方向のリサイズ、マークのみx8、実際にイベントを起こす透明な要素x8で計16個の要素を使う。 + + + 人に触ってもらったところ、操作性が悪すぎることが判明。自分でいじっている間は深刻度が把握が甘かった、、、 + + + ドラッグ周りをjQueryに頼らない形に書き換え。マウスイベントのキャッチはoperationCatcherElmに一任する。処理が遅れ要素からカーソルが離れた段階でドラッグイベントが終了するのを防ぐ。 + + + コマ枠のリサイザーのマウスイベントもmouseOperationChacherElmに任せる。コマ枠リサイザーとコマ要素(キャラ・吹き出し)を同列に扱うために処理を書き直す。キーイベントの調査。 + + + ctrl+zの実装に備えて、コミック要素の座標を絶対座標からコマ枠からの相対座標とした。 + + + altキーは一度押すと他のキー入力ができなくなる。もう一度押すと解除。以上をaltのみreturn falseしてfirefoxでは対処できた。ieではできない。 + ctrl+z 戻る(アニメーション)、ctrl+0 センタリング。 + svgまたはvmlで吹きだしを書いて、Vectorのサポートを調べる + + + ctrl+shift+zで進むを実装してみるもいまいちおかしい、、、 + + + 吹き出しのしっぽの座標決定ロジックの修正。以前は数回~数百回ループしていたのを、10回程度に固定。 + + + 戻る・進むのそもそもの考え方が間違っていた。でうまく動作! + + + 噴出しの尻尾の回転・復帰ができる!クラス構造どうするかとか手間取ったけど、別に10日間をフルで取り組んでたわけじゃないんだからね。ie7+8でxmlの描画が非常に重い、、、 + ieはマウス操作のたび?にキー入力監視用のinputからfocusが外れるみたいで、intervalで0.5秒おきにfocusさせてみた + + + window関連を始める。まずはinfomationのモックのみ + + + infomationのドラッグ、currentなcomicElementの情報の表示。 + Dragに関わるアイテムは、MouseOperationChacherの下に。そうでないものは上で、ただし使うときだけ。よし! + jQueryの拡張で、editableTextを作る。こいつでinfomationの属性を編集可能にする。さらにtabキーによる項目移動。tab+shiftでその逆。currentのロックをしないと、属性変更を反映できないな。 + + + ツールボックスwindowに着手。 + + + エディタブルテキストの修正を開始。グリッドスイッチを動作。吹き出しの挿入。 + + + ie8の8modeに対応。キー周りの見直し。エディタブルテキストの修正。コミックオブジェクト情報⇔背景情報の切り替え。 + + + クロスブラウザな吹き出しクラスの整理。画像⇔ベジェの切り替えもh2c.vectorに置く。キャンバスのドラッグ。ショートカットキーのie7以下対応。 + + + コミックオブジェクトの操作ボタンの表示。小さい場合は外に表示。その際にはフォーカスがヒットエリアの外にも拡大。カレントなオブジェクトは優先してヒットエリアをチェック。尻尾操作の位置を修正。 + + + 再開!テキストの編集が可能に。履歴も効きます。まだリターンキーが反応しない。 + + + comicElementの削除。ヒストリーも動作。 + + + comicElementの追加(今はtextのみ)ヒストリーも動作。グループイメージの選択画面に着手。まだ操作はできない。 + + + イメージの追加、ヒストリーも動作。グループイメージの選択画面も動くようになる。comicElementのコンソールのボタンに画像を用意。 + + + レイヤーの前後、ヒストリーも動作。 + + + グループ画像選択画面の画像の読み込みエラーに対処、マウスホイールでスクロール、filesizeの大きいものはサムネイルを表示、画面の外の画像は表示範囲に入るまで読み込まない、クリックで画像取得のリトライ。 + + + ヒストリーに格納されたcomicElementのうち、append & removeに関するもので、ヒストリーから参照されなくなったものは.destroy()するようにする。main.jsが100KB超え。。。 + file + io なクラスが必要。 + xBackend(css3,ActiveX,vml,flash,silverlight,canvas)な画像の反転、ロード監視、png fix(ie6-) してくれる画像ラッパーが必要。 + + + vmlを使ったie用のReversibleImageClassが動作。vmlはclassを変えた後に、再びelmWrap.appendChild(vmlImg)しないと再描画されない。 + + + 画像の反転操作ができるように!ヒストリーも動作。現在のバックエンドは、css3,vml,ActiveV。 + jQueryが不要そうな部分は直接domに触るようにする。style.width,style.heightにieではマイナスは不可、'px'が不要。 + ieでイメージの縦横pxが取れず、jsonからのデータを入れる。 + + + ieでイメージの縦横pxが取れない問題の解消。new Image()の場合、ie8以下ではサイズが取れなかったり、removeChildに失敗するっぽい。 + + + helpウインドウの追加。併せてWindowClass周りの大幅な書き換え。クロージャを効かせるスタイルでも継承っぽい書き方ができたかも(継承ではない.継承親・子で相互に利用するプロパティがないと美しく収まるだけ、、、)。 + domTreeに追加する前にjQueryでセットしても特にイベント周りで表示がおかしくなる.ieでは特に酷い。 + + + メニューバーが動作するようになる。他にマウスイベントリスナへのイベント伝播の書き換え。 + + + shiftキーを押しながらのリサイズでは、縦横比が維持するようにする。 + + + http://pettanr.sourceforge.jp/ の top ページを制作。 + + + help ドキュメントを .xml から読み込むようにする。.xml が検索結果に表示されユーザーに開かれた場合、.xsl で html 化して表示しユーザーを正しいページに誘導する. + .xml に埋め込まれた script などの対策もしておいたけど、あんなもんでいいのだろうか?? + + + Quit > getAsHTML が少し動作, サーバ画像での吹きだし表示も動作。 + 90°, -90°のときに起きていたしっぽの操作ボタンのジャンプを修正。 + + + helpドキュメント の xml の内容を元に、メニューバーの help の内容を入れるようにする。このあたりは入り組んでしまっている。 + vml が使えるか?は、vml を描画してそのサイズの取得からはできない。vml 用の条件コメントを使用に切り替えなくては。 + ActiveX による反転画像モードのときに、ie で画像が表示されなかった。img を appendChild するタイミングを先にすると解消したみたい。 + + \ No newline at end of file diff --git a/0.5.x/help/help.xsl b/0.5.x/help/help.xsl new file mode 100644 index 0000000..fb6f6ef --- /dev/null +++ b/0.5.x/help/help.xsl @@ -0,0 +1,144 @@ + + + + + + + + + + + + + + + + + + + + <xsl:value-of select="@title" /> + <xsl:if test="@author"> + <xsl:value-of select="concat(' | ',@author)"/> + </xsl:if> + + + + + + +
+
+ + + +
+
+

+
+
author
+
+
description
+
+
workgroup
+
+
published
+
+
updated
+
+
direction
+
+
+ + +
+
+
+
+ + + + + +
+ + + +

+
+
+
+ +
\ No newline at end of file diff --git a/0.5.x/help/jp.xml b/0.5.x/help/jp.xml new file mode 100644 index 0000000..5cc8081 --- /dev/null +++ b/0.5.x/help/jp.xml @@ -0,0 +1,166 @@ + + + + + + + + +

ぺったんR はWebブラウザだけでマンガが簡単に作れてしまうツール & サービスです。

+

この ぺったんR エディターの使い方をマスターしたらちょっと楽しいかも。

+

INDEX

+
+
基本的な使い方
+
ちょっと目を通してみてね
+
cool!な使い方
+
かっこいい使い方の紹介
+
ショートカット
+
ショートカットキーを使えばスムーズにマンガが作れる!
+
保存形式
+
ぺったんR に投稿するほかにお持ち帰りができます
+
ライセンス
+
素材画像のライセンスについて
+
エディタについて
+
バージョンと対応ブラウザ
+
+ ]]> +
+ + 画像の追加 +

吹き出しの追加

+

背景の設定

+ ]]> +
+ + グリッド編集モード +

マンガ以外にもこんなことが

+ ]]> +
+ + 画像や吹き出しの操作 +
+
ctrl + Z
+
戻る
+
ctrl + Y
+
進む
+
ctrl + shift + Z
+
進む
+
ctrl + F
+
画像や吹き出しを前に
+
ctrl + B
+
画像や吹き出しを後に
+
ctrl + E
+
テキストの編集
+
ctrl + I
+
画像の追加
+
ctrl + T
+
吹きだしの追加
+
ctrl + D
+
画像や吹き出しの削除
+
ESC
+
変更の取り消し
+
+

キャンバスの操作

+
+
ctrl + 0
+
キャンバスのセンタリング
+
ctrl + G
+
グリッドモードのオン・オフ
+
+

テキスト入力エリア

+
+
tab
+
次の入力エリアにフォーカス
+
shift + tab
+
前の入力エリアにフォーカス
+
ESC
+
変更の取り消し
+
+ ]]> +
+ + ぺったんサーバにポスト +

ローカルに保存

+
+
MT形式
+
MT
+
htmlタグ形式
+
html
+
json形式
+
json
+
xml形式
+
xml
+
pdf形式
+
pdf
+
+ ]]> +
+ + ライセンスとは? +

ぺったんに用意されている画像には著作権があり、多くの場合、著作者の設定したライセンスのもとにあなたのマンガ作品への利用が許可されています.

+

そのライセンスにはいくつかの種類があり、ぺったんRを活用していくうちにそれらのライセンスについて、一定の知識が必要になることと思います.

+

これをめんどくさい、煩わしいことに感じるかもしれません.でも、画像を提供してくれた方に敬意を払い、適切に扱うために是非覚えておいてください.

+

ライセンスの種類

+

一般的なライセンス

+
+
Public Domain
+
Public Domain
+
cc-by
+
Creative Commons 3.0(by)
+
cc-nd
+
cc-nd
+
cc-nc
+
cc-nc
+
cc-nd
+
cc-nd
+
cc-sa
+
cc-sa
+
Unknown
+
著作権がはっきりしないもの
+
+

オリジナルライセンス

+

絵師はオリジナルなライセンスを作成し、自分の画像作品にそれを適用することができます.

+

このようなライセンスによって提供されている画像を使用したい場合、あなたにはより一層の注意が必要です.

+

ライセンスの条文が公開されている url を確認しておきましょう.

+ ]]> +
+ + +
pettanR editor
+
version 0.4.0
+
© 2011 pettanR team some rights reserved.
+ +

推奨動作環境

+

Windows

+
+
Internet Exproler
+
ie9, ie8, ie7, ie6 ie9で良好に動作します.
+
Firefox
+
3.6以上で動作確認.
+
Chrome
+
5以上で動作確認.
+
Safari
+
3.2以上で動作確認.
+
Opera
+
11以上を推奨.
+
+

Mac

+

Linux

+

スマートフォン

+ ]]> +
+
\ No newline at end of file diff --git a/0.5.x/help/wellcom.png b/0.5.x/help/wellcom.png new file mode 100644 index 0000000000000000000000000000000000000000..b23824d5d261cc37d3942063bf2e23c713171575 GIT binary patch literal 29328 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 literal 0 HcmV?d00001 diff --git a/0.5.x/images/black_50pct.gif b/0.5.x/images/black_50pct.gif new file mode 100644 index 0000000000000000000000000000000000000000..6f0aa3aa1e65ae9f5b32e7a3def0e858f87b4721 GIT binary patch literal 187 zcmV;s07U;sNk%w1VL$*t0Du7i00030|NkNR1OWg50RSuj0000$06+i$0+NJ}smtvh zqMWqai!*+_d#{D!IDY17lIp6W?z^z^Y{526=k(2=`oHQ4JHVo7h=drIm!vbnj8dLd zfb<%uKCx1*lNgTe~DWM4f*OMTq literal 0 HcmV?d00001 diff --git a/0.5.x/images/error.png b/0.5.x/images/error.png new file mode 100644 index 0000000000000000000000000000000000000000..10c0345afb11637167f11a0bfa62c6d12a712210 GIT binary patch literal 4039 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 t=D4({vzqvPS¥Lf3(avwJ@OcK~?-w{%Q7oSy&y002ovPDHLkV1n1_Z5{vs literal 0 HcmV?d00001 diff --git a/0.5.x/images/grid.gif b/0.5.x/images/grid.gif new file mode 100644 index 0000000000000000000000000000000000000000..5eb20fde64d6e03541b37510f9d7dcd1ff1ec426 GIT binary patch literal 264 zcmV+j0r&n#Nk%w1VKM+R0FeR!Qi6blw6XvI05LH!A^8LW00062EC2ui05SkF0008n zlz)M%oBp5xQZ#s7W|hi~fDzVJqH$Vg`K|2>c_gg4v0c-gB{4wnLLK3e|GJ^}C! OA1^;oUvDp80028EKX*(3 literal 0 HcmV?d00001 diff --git a/0.5.x/images/loading.gif b/0.5.x/images/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..f864d5fd38b7466c76b5a36dc0e3e9455c0126e2 GIT binary patch literal 2767 zcmeH``%_bA0*1eHPVNawNVtR;Fkp-nQj8edfS`v<5L7TgR6wi;WfgH-0}4fE+c_uU zB6tf6auF}FAcDdgg|bMU&H)LR5jARM!8$tuwd$nHqS?K-=JNZ+yGvz=Iegxp{+qWGZ9j{-%9vvN>n3$NJp6==CAqYaF(LfM1Z{EEA{{Gt9 z+Ba|B7z_sR+xabl|E~mm-*OXmhLq??y)HONjX>1ze1D?RIn=G1`RR-%fb}zgSh6^a z(}Zw20U1L^Cs9UcyJfc+al#}J2xVlYUoR{`gd&QDxAb1w4>I~5gc?ccq(G+T!I;H};U_uyHR0@hr>Qk1P1=6fvUBhR zb|&^^cEQtu&W}=-=YR7o5UI)AD*~%J7bkVd5`xrdw{bHm;|Bf^_|FG$9l}`ruhnVF zO%=6X*I#yro*pmfB;-A0cVjz73Qy)`oa=df_3Bx6!M3TNALf9BwI*di`jhdovR(I= zFT31zui1Xw??+Ym-lWNq=V6~8tt012$@*hy3So0QNJ#eIJ4Yh{qJ+aTY>ng8W1p4BrwB_>i7AY-xmGrA}hAeq`aX(yx~=c&|=$w&*&PpKd;G@@0oXK@D0x=;tyY&Eb|HKPsM z71v`PO)na3pfO*xUD8Z|CQju)c+RSAH=5V^4vb9Q2JwHwt|-INt|!nD?AlRxF5ZT8 zaA9~hGb$~rMhQh_0+31$tkzyLi>X3c7>F!|Jyn`+5{LG=E`sIQbHA8!=`uday6D6Y zNtVL?j^`6A%UuwO!`}j#s~H?w=P<5}Z2)*PPx|5q$MM+1K6_d_cie9JVArbrB2sRy zOl**1Mc+|zLM>munG#O|##RApuODr^1+pL-?SHX+D6Dz_@%-Oo(fM&hHYZ-jWU5jf z&nBYG;>F6&Y`veoLdZ@0WyrDsuXOP)9g*C`A(+R`Ryc2+9w_DJNaf@Dzg?~N{uI_} zjV(!yygvrGv#KF*Mt{6H^v1Ve=hQyF2^E~bd#&iZg;(%dS^nM;oGSF1Y^&rY}Ian zFrp%SBGPyN{Z?t%Mo#!qgLQ2)k{>KAv?=zezKN*qPRf>^4QjcWgyxiC}7Vb6vGrBLR(1J&B%*gb{`!Jljb^2%jB$ zFBNUHANC6Q?0~M}cVtgk_;_DAB-BE?2dP z(C9OIXza3Ao-@UyqX%`5cjg#cHl!uHq;&?~JO{eE+A2KSSD)s8v&CiV$kV$A=DG@i z;6JY7z*8oPdj@bbJQoTAENW#ls(ucbGA#yhN>zbWqBTbLl>rGqOAY+` z=psSt8VQE=9+X8^$l@oeDzRvja79ry3nvLcOR7+)bIFyJVoz4}URM-47_u>V zY*^e(o`?|l++*Y0uQ#&dKapW1o?J{jx+*_gKV^cW+W87KI7hZ5viXv$$=1IR^Z~yA XWBrHU7iSEP8X8hQyAJO{V6g1pwSv80 literal 0 HcmV?d00001 diff --git a/0.5.x/images/opacity0.gif b/0.5.x/images/opacity0.gif new file mode 100644 index 0000000000000000000000000000000000000000..cfc751acd5b0af046a4d4e60d66a7873adc4784f GIT binary patch literal 45 ucmZ?wbhEHbWMN=oX!y@?;J^U}1_s5SEQ~;kK?g*DWEhxOTKYLz8LR>3)CeU2 literal 0 HcmV?d00001 diff --git a/0.5.x/images/sprite.gif b/0.5.x/images/sprite.gif new file mode 100644 index 0000000000000000000000000000000000000000..f9d445dc1fe3d9f47e901d4b38deb506e85a2c16 GIT binary patch literal 5247 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 F06TnVcuxQT literal 0 HcmV?d00001 diff --git a/0.5.x/images/white_70pct.png b/0.5.x/images/white_70pct.png new file mode 100644 index 0000000000000000000000000000000000000000..0b471c25bb837384949ec58ddc423306bff0d73a GIT binary patch literal 126 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx1|;Q0k8}blmUKs7M+S!VC(K#9UIO`&C9V-A z!TD(=<%vb942~)JNvR5+xryniL8*x;m4zo$ZGegdJY5_^DsCnH`2YWZS_1zopr05|p`$p8QV literal 0 HcmV?d00001 diff --git a/0.5.x/index.html b/0.5.x/index.html new file mode 100644 index 0000000..a239b7e --- /dev/null +++ b/0.5.x/index.html @@ -0,0 +1,117 @@ + + + + + + + + + + + +pettanR + + + + + + +
+
+ + + +
+ +
+
+

+ もうしばらくしたら、いつもと同じ一日が、
+ 忘れられない一日になります。 +

+

+ ぺったんRからの特別な発表を、もうちょっとまっててね。 +

+ ぺったんR +
+
+ +
+
+
+ + + + + + + diff --git a/0.5.x/javascripts/ie5.js b/0.5.x/javascripts/ie5.js new file mode 100644 index 0000000..c404f21 --- /dev/null +++ b/0.5.x/javascripts/ie5.js @@ -0,0 +1,78 @@ +/** + * http://d.hatena.ne.jp/ofk/20080904/1220485969 + * @author ofk + */ + +Function.prototype.apply || (Function.prototype.apply = function (x, y) { + x = x || window; + y = y ||[]; + x.__apply = this; + if (!x.__apply) x.constructor.prototype.__apply = this; + var r, j = y.length; + switch (j) { + case 0: r = x.__apply(); break; + case 1: r = x.__apply(y[0]); break; + case 2: r = x.__apply(y[0], y[1]); break; + case 3: r = x.__apply(y[0], y[1], y[2]); break; + case 4: r = x.__apply(y[0], y[1], y[2], y[3]); break; + case 5: r = x.__apply(y[0], y[1], y[2], y[3], y[4]); break; + case 6: r = x.__apply(y[0], y[1], y[2], y[3], y[4], y[5]); break; + case 7: r = x.__apply(y[0], y[1], y[2], y[3], y[4], y[5], y[6]); break; + case 8: r = x.__apply(y[0], y[1], y[2], y[3], y[4], y[5], y[6], y[7]); break; + case 9: r = x.__apply(y[0], y[1], y[2], y[3], y[4], y[5], y[6], y[7], y[8]); break; + default: + var a = []; + for (var i = 0; i < j; ++i) + a[i] = 'y[' + i + ']'; + r = eval('x.__apply(' + a.join(',') + ')'); + break; + } + delete x.__apply ? x.__apply : x.constructor.prototype.__apply; + return r; +}); +Function.prototype.call || (Function.prototype.call = function () { + var a = arguments, x = a[0], y = []; + for (var i = 1, j = a.length; i < j; ++i) + y[i - 1] = a[i] + return this.apply(x, y); +}); +Array.prototype.pop || (Array.prototype.pop = function () { + var r = this[this.length - 1]; + --this.length; + return r; +}); +Array.prototype.push || (Array.prototype.push = function () { + for (var a = arguments, i = 0, j = a.length, l = this.length; i < j; ++i) + this[l + i] = a[i]; + return this.length; +}); +Array.prototype.shift || (Array.prototype.shift = function () { + var r = this[0]; + for(var i = 1, j = this.length; i < j; ++i) + this[i - 1] = this[i]; + --this.length; + return r; +}); +Array.prototype.unshift || (Array.prototype.unshift = function () { + var a = arguments, l = a.length, j = this.length += l - 1; + for (var i = j; i >= l; --i) + this[i] = this[i - l]; + for (var i = 0; i < l; ++i) + this[i] = a[i]; + return j; +}); +Array.prototype.splice || (Array.prototype.splice = function (x, y) { + var a = arguments, s = a.length - 2 - y, r = this.slice(x, x + y); + if (s > 0) { + for (var i = this.length - 1, j = x + y; i >= j; --i) + this[i + s] = this[i]; + } + else if (s < 0) { + for (var i = x + y, j = this.length; i < j; ++i) + this[i + s] = this[i]; + this.length += s; + } + for (var i = 2, j = a.length; i < j; ++i) + this[i - 2 + x] = a[i]; + return r; +}); diff --git a/0.5.x/javascripts/jquery-1.6.2.min.js b/0.5.x/javascripts/jquery-1.6.2.min.js new file mode 100644 index 0000000..925a891 --- /dev/null +++ b/0.5.x/javascripts/jquery-1.6.2.min.js @@ -0,0 +1,31 @@ +/*! + * jQuery JavaScript Library v1.6.2 + * http://jquery.com/ + * + * Copyright 2011, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Thu Jun 30 14:16:56 2011 -0400 + */ +(function(a,b){function cv(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cs(a){if(!cg[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ch||(ch=c.createElement("iframe"),ch.frameBorder=ch.width=ch.height=0),b.appendChild(ch);if(!ci||!ch.createElement)ci=(ch.contentWindow||ch.contentDocument).document,ci.write((c.compatMode==="CSS1Compat"?"":"")+""),ci.close();d=ci.createElement(a),ci.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ch)}cg[a]=e}return cg[a]}function cr(a,b){var c={};f.each(cm.concat.apply([],cm.slice(0,b)),function(){c[this]=a});return c}function cq(){cn=b}function cp(){setTimeout(cq,0);return cn=f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ce(){try{return new a.XMLHttpRequest}catch(b){}}function b$(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bx(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function bm(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(be,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bl(a){f.nodeName(a,"input")?bk(a):"getElementsByTagName"in a&&f.grep(a.getElementsByTagName("input"),bk)}function bk(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bj(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bi(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bh(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i=0===c})}function V(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function N(a,b){return(a&&a!=="*"?a+".":"")+b.replace(z,"`").replace(A,"&")}function M(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;ic)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function K(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function E(){return!0}function D(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z])/ig,x=function(a,b){return b.toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.2",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!A){A=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a);return c===b||D.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(b,c,d){a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),d=c.documentElement,(!d||!d.nodeName||d.nodeName==="parsererror")&&e.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c
a",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.firstChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0},m&&f.extend(p,{position:"absolute",left:-1e3,top:-1e3});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="
",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="
t
",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0),o.innerHTML="",n.removeChild(o);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g=f.expando,h=typeof c=="string",i,j=a.nodeType,k=j?f.cache:a,l=j?a[f.expando]:a[f.expando]&&f.expando;if((!l||e&&l&&!k[l][g])&&h&&d===b)return;l||(j?a[f.expando]=l=++f.uuid:l=f.expando),k[l]||(k[l]={},j||(k[l].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?k[l][g]=f.extend(k[l][g],c):k[l]=f.extend(k[l],c);i=k[l],e&&(i[g]||(i[g]={}),i=i[g]),d!==b&&(i[f.camelCase(c)]=d);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[f.camelCase(c)]||i[c]:i}},removeData:function(b,c,d){if(!!f.acceptData(b)){var e=f.expando,g=b.nodeType,h=g?f.cache:b,i=g?b[f.expando]:f.expando;if(!h[i])return;if(c){var j=d?h[i][e]:h[i];if(j){delete j[c];if(!l(j))return}}if(d){delete h[i][e];if(!l(h[i]))return}var k=h[i][e];f.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=k):g&&(f.support.deleteExpando?delete b[f.expando]:b.removeAttribute?b.removeAttribute(f.expando):b[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;d=e.value;return typeof d=="string"?d.replace(p,""):d==null?"":d}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);j&&(c=f.attrFix[c]||c,i=f.attrHooks[c],i||(t.test(c)?i=w:v&&c!=="className"&&(f.nodeName(a,"form")||u.test(c))&&(i=v)));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j&&(h=i.get(a,c))!==null)return h;h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.support.getSetAttribute?a.removeAttribute(b):(f.attr(a,b,""),a.removeAttributeNode(a.getAttributeNode(b))),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},tabIndex:{get:function(a){var c=a.getAttributeNode("tabIndex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}},value:{get:function(a,b){if(v&&f.nodeName(a,"button"))return v.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(v&&f.nodeName(a,"button"))return v.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);i&&(c=f.propFix[c]||c,h=f.propHooks[c]);return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==b?g:a[c]},propHooks:{}}),w={get:function(a,c){return f.prop(a,c)?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},f.support.getSetAttribute||(f.attrFix=f.propFix,v=f.attrHooks.name=f.attrHooks.title=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);if(d){d.nodeValue=b;return b}}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var x=/\.(.*)$/,y=/^(?:textarea|input|select)$/i,z=/\./g,A=/ /g,B=/[^\w\s.|`]/g,C=function(a){return a.replace(B,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=D;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=D);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),C).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i. +shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d!=null?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},J=function(c){var d=c.target,e,g;if(!!y.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=I(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:J,beforedeactivate:J,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&J.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&J.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",I(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in H)f.event.add(this,c+".specialChange",H[c]);return y.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return y.test(this.nodeName)}},H=f.event.special.change.filters,H.focus=H.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g0)for(h=g;h0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=T.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a=="string")return f.inArray(this[0],a?f(a):this.parent().children());return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(V(c[0])||V(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=S.call(arguments);O.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!U[a]?f.unique(e):e,(this.length>1||Q.test(d))&&P.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var X=/ jQuery\d+="(?:\d+|null)"/g,Y=/^\s+/,Z=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,$=/<([\w:]+)/,_=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]};bf.optgroup=bf.option,bf.tbody=bf.tfoot=bf.colgroup=bf.caption=bf.thead,bf.th=bf.td,f.support.htmlSerialize||(bf._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(X,""):null;if(typeof a=="string"&&!bb.test(a)&&(f.support.leadingWhitespace||!Y.test(a))&&!bf[($.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Z,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j +)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bi(a,d),e=bj(a),g=bj(d);for(h=0;e[h];++h)bi(e[h],g[h])}if(b){bh(a,d);if(c){e=bj(a),g=bj(d);for(h=0;e[h];++h)bh(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!ba.test(k))k=b.createTextNode(k);else{k=k.replace(Z,"<$1>");var l=($.exec(k)||["",""])[1].toLowerCase(),m=bf[l]||bf._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=_.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&Y.test(k)&&o.insertBefore(b.createTextNode(Y.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bo.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle;c.zoom=1;var e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.filter=bn.test(g)?g.replace(bn,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bx(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(by=function(a,c){var d,e,g;c=c.replace(bp,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bz=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bq.test(d)&&br.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bx=by||bz,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bB=/%20/g,bC=/\[\]$/,bD=/\r?\n/g,bE=/#.*$/,bF=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bG=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bH=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,bI=/^(?:GET|HEAD)$/,bJ=/^\/\//,bK=/\?/,bL=/)<[^<]*)*<\/script>/gi,bM=/^(?:select|textarea)/i,bN=/\s+/,bO=/([?&])_=[^&]*/,bP=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bQ=f.fn.load,bR={},bS={},bT,bU;try{bT=e.href}catch(bV){bT=c.createElement("a"),bT.href="",bT=bT.href}bU=bP.exec(bT.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bQ)return bQ.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bL,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bM.test(this.nodeName)||bG.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bD,"\r\n")}}):{name:b.name,value:c.replace(bD,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?f.extend(!0,a,f.ajaxSettings,b):(b=a,a=f.extend(!0,f.ajaxSettings,b));for(var c in{context:1,url:1})c in b?a[c]=b[c]:c in f.ajaxSettings&&(a[c]=f.ajaxSettings[c]);return a},ajaxSettings:{url:bT,isLocal:bH.test(bU[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML}},ajaxPrefilter:bW(bR),ajaxTransport:bW(bS),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a?4:0;var o,r,u,w=l?bZ(d,v,l):b,x,y;if(a>=200&&a<300||a===304){if(d.ifModified){if(x=v.getResponseHeader("Last-Modified"))f.lastModified[k]=x;if(y=v.getResponseHeader("Etag"))f.etag[k]=y}if(a===304)c="notmodified",o=!0;else try{r=b$(d,w),c="success",o=!0}catch(z){c="parsererror",u=z}}else{u=c;if(!c||a)c="error",a<0&&(a=0)}v.status=a,v.statusText=c,o?h.resolveWith(e,[r,c,v]):h.rejectWith(e,[v,c,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,c]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bF.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bE,"").replace(bJ,bU[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bN),d.crossDomain==null&&(r=bP.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bU[1]&&r[2]==bU[2]&&(r[3]||(r[1]==="http:"?80:443))==(bU[3]||(bU[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bX(bR,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bI.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bK.test(d.url)?"&":"?")+d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bO,"$1_="+x);d.url=y+(y===d.url?(bK.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", */*; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bX(bS,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){status<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)bY(g,a[g],c,e);return d.join("&").replace(bB,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var b_=f.now(),ca=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+b_++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ca.test(b.url)||e&&ca.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ca,l),b.url===j&&(e&&(k=k.replace(ca,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cb=a.ActiveXObject?function(){for(var a in cd)cd[a](0,1)}:!1,cc=0,cd;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ce()||cf()}:ce,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cb&&delete cd[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cc,cb&&(cd||(cd={},f(a).unload(cb)),cd[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cg={},ch,ci,cj=/^(?:toggle|show|hide)$/,ck=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cl,cm=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cn,co=a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cr("show",3),a,b,c);for(var g=0,h=this.length;g=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b
";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cu.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cu.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cv(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cv(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a&&a.style?parseFloat(f.css(a,d,"padding")):null},f.fn["outer"+c]=function(a){var b=this[0];return b&&b.style?parseFloat(f.css(b,d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c];return e.document.compatMode==="CSS1Compat"&&g||e.document.body["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var h=f.css(e,d),i=parseFloat(h);return f.isNaN(i)?h:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window); + + +/* Copyright (c) 2009 Brandon Aaron (http://brandonaaron.net) + * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) + * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses. + * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers. + * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix. + * + * Version: 3.0.2 + * + * Requires: 1.2.2+ + */ +(function(c){var a=["DOMMouseScroll","mousewheel"];c.event.special.mousewheel={setup:function(){if(this.addEventListener){for(var d=a.length;d;){this.addEventListener(a[--d],b,false)}}else{this.onmousewheel=b}},teardown:function(){if(this.removeEventListener){for(var d=a.length;d;){this.removeEventListener(a[--d],b,false)}}else{this.onmousewheel=null}}};c.fn.extend({mousewheel:function(d){return d?this.bind("mousewheel",d):this.trigger("mousewheel")},unmousewheel:function(d){return this.unbind("mousewheel",d)}});function b(f){var d=[].slice.call(arguments,1),g=0,e=true;f=c.event.fix(f||window.event);f.type="mousewheel";if(f.wheelDelta){g=f.wheelDelta/120}if(f.detail){g=-f.detail/3}d.unshift(f,g);return c.event.handle.apply(this,d)}})(jQuery); \ No newline at end of file diff --git a/0.5.x/javascripts/peta.apps.js b/0.5.x/javascripts/peta.apps.js new file mode 100644 index 0000000..b475b15 --- /dev/null +++ b/0.5.x/javascripts/peta.apps.js @@ -0,0 +1,5032 @@ +/* + * pettanR system.js + * version 0.4.37 + * + * author: + * itozyun + * licence: + * 3-clause BSD + */ + +( function( pettanr, gOS, window, undefined ){ + +/* + * PettanR service driver. + */ + var MyAuthorID = 'current_author' in window ? current_author.id : ( pettanr.CONST.SERVER_SUPPORT === false ? 1 : -1 ), + MyArtistID = 'current_artist' in window ? current_artist.id : ( pettanr.CONST.SERVER_SUPPORT === false ? 1 : -1 ), + Driver = null, + FileAPI = gOS.registerDriver( function(){ + var self = Driver = this; + + function onLoadJson( _file, _json ){ + var _access = FileAPI.getFileDataAccess( _file ), + _data = _access !== null ? _access.DATA : null, + l; + if( _data === null ){ + onErrorJson( _file); + return; + } + _data.state = Const.FILE.STATE.OK; + + if( Type.isArray( _json ) === true ){ + l = _json.length; + if( l === 0) return; + for( var i=0; i 0 ){ + var _id = _data.id - 1, + __data = _array[ _id ], + _reserved = Const.FILE.DATA_PROPERTY_RESERVED.join( ', ' ); + if( __data ){ + for( var key in _data){ + if( _reserved.indexOf( key ) === -1 ){ + __data[ key ] = _data[ key ]; + }; + }; + _data = __data; // このタイミングで参照が切れるので注意!! + } else { + _array[ _id ] = _data; + }; + } else { + alert( 'error' ); + }; + + // Author + // Artist + if( _parent === FILE_DATA_AUTHOR_ROOT || _parent === FILE_DATA_ARTIST_ROOT ){ + addChildData( _parent, _data ); + } else + // Comic + Panels + if( _parent.type === FILE_TYPE.COMIC || _parent === FILE_DATA_COMICS_ROOT ){ + var _panels = _data.panels, + _panel; + if( _panels && Type.isArray( _panels ) === true ){ + + for( i=0, l=_panels.length; i= 8 ) data.RenderingVersion = UA.ieRenderingVersion; + data.browserType = UA.STANDALONE === true ? 'Standalone' : 'bundle'; + if( UA.ieVersion < 9 ) { + data.vml = UA.VML; + } else { + data.svg = UA.SVG; + } + }; + return data; + })(); + + this.bgColor = '#FFFFFF'; + this.MIN_WIDTH = 500; + this.MIN_HEIGHT = 300; + this.onInit = function(){ + self.rootElement.id = 'debug-root'; + self.rootElement.innerHTML = '
'; + }; + this.onOpen = function( _w, _h, _option ){ + elmDl = document.getElementById( 'useragent' ); + var elmDt, elmDd; + for( var key in data ){ + elmDt = document.createElement( 'dt' ); + elmDt.innerHTML = key; + elmDd = document.createElement( 'dd' ); + elmDd.innerHTML = '' + data[ key]; + if( !data[ key ] ) elmDd.style.color = 'red'; + elmDl.appendChild( elmDt ); + elmDl.appendChild( elmDd ); + } + } + this.onClose = function(){ + + } + this.onPaneResize = function( _w, _h ){ + + } + }, false, true, 'Debug', 'debug', null, '#01A31C' ); +} + +/* ---------------------------------------- + * Image Group Exproler + * - overlay + */ +var PremiumSatge = gOS.registerApplication( function(){ + var BASE_PATH = pettanr.CONST.RESOURCE_PICTURE_PATH, + THUMB_PATH = BASE_PATH, // + 'thumbnail/', + LIMIT_FILESIZE = 1024 * 10, + ICON_ARRAY = []; + + var self = this, + tree, rootFile, + winW, winH, wrapX, + elmContainer, elmIconOrigin, elmName, elmButton, + containerW, containerH, + itemW, itemH, buttonW, + onUpdate = null, + onUpdateData = null, + artistID = -1; + + var ImageGroupIconClass = function( index, data ){ + var elmIconWrap = elmIconOrigin.cloneNode( true ), + elmIconTitle = Util.getElementsByClassName( elmIconWrap, 'image-group-item-title' )[ 0 ], + SRC = [ BASE_PATH, data.id, '.', data.ext ].join( ''), + LOW_SRC = data.filesize && data.filesize > LIMIT_FILESIZE ? [ THUMB_PATH, data.id, '.', data.ext ].join( '') : null, + reversibleImage = null, + timer = null, + onEnterFlag = false, + instance = this; + elmContainer.appendChild( elmIconWrap ); + elmIconWrap.style.left = ( index * itemW ) + 'px'; + elmIconTitle.appendChild( document.createTextNode( data.filesize + 'bytes' ) ); + + function onImageLoad( url, _imgW, _imgH ){ + data.width = _imgW = _imgW || data.width || 64; + data.height = _imgH = _imgH || data.height || 64; + elmIconTitle.firstChild.data = _imgW + 'x' + _imgH; + var zoom = 128 /( _imgW > _imgH ? _imgW : _imgH ), + MATH_FLOOR = Math.floor, + h = MATH_FLOOR( _imgH * zoom ), + w = MATH_FLOOR( _imgW * zoom ); + reversibleImage.elm.style.cssText = [ + 'width:', w, 'px;', + 'height:', h, 'px;', + 'margin:', MATH_FLOOR( itemH / 2 - h / 2 ), 'px ', MATH_FLOOR( itemW / 2 - w / 2 ), 'px 0' + ].join(''); + reversibleImage.resize( w, h ); + self.addMouseEventListener( elmIconWrap, 'click', onClick ); + }; + + function onClick(){ + onUpdateData = data; + PremiumSatge.shutdown(); + }; + + function asyncDraw(){ + reversibleImage = pettanr.image.createReversibleImage( LOW_SRC || SRC, itemW, itemH, onImageLoad ); + elmIconWrap.appendChild( reversibleImage.elm ); + onEnterFlag = true; + timer = null; + }; + + this.onEnter = function( delay ){ + self.addTimer( asyncDraw, delay, true ); + delete instance.onEnter; + }; + this.destroy = function(){ + delete instance.destroy; + // timer && window.clearTimeout( timer ); + self.removeTimer( asyncDraw ); + self.removeMouseEventListener( elmIconWrap ); + reversibleImage !== null && reversibleImage.destroy(); + // Util.removeAllChildren( elmIconWrap ); + // elmContainer.removeChild( elmIconWrap ); + reversibleImage = elmIconWrap = elmIconTitle = data = timer = null; + }; + }; + + function onEnterShowImage(){ + var l = ICON_ARRAY.length, + _start = -wrapX /itemW -1, + _end = _start + winW /itemW +1, + _icon; + for( var i=0, c = 0; i 0 ? 0 : wrapX < winW -containerW ? winW -containerW : wrapX; + elmContainer.style.left = wrapX + 'px'; + + self.removeTimer( onEnterShowImage ); + self.addTimer( onEnterShowImage, 500 ); + } + return false; + } + + function drawIcons(){ + while( ICON_ARRAY.length > 0 ){ + ICON_ARRAY.shift().destroy(); + } + var _index = rootFile.search( { + id: artistID, + type: FILE_TYPE.ARTIST + })[ 0 ], + _artistFile = rootFile.getChildFileByIndex( _index ), + _file; + if( _artistFile !== null ){ + for(var i=0, l=_artistFile.getChildFileLength(); i 0 ){ + ICON_ARRAY.shift().destroy(); + } + onUpdate !== null && onUpdateData !== null && onUpdate( onUpdateData ); + onUpdate = onUpdateData = null; + PremiumSatge.shutdown(); + } + + + this.MIN_WIDTH = 320; + this.MIN_HEIGHT = 320; + this.onInit = function(){ + self.rootElement.id = 'image-group-wrapper'; + + self.rootElement.innerHTML = [ + '
', + '
NO DATA...
', + '
close
' + ].join( '' ); + + tree = FileAPI.createTree( FILE_DATA_ARTIST_ROOT ); + rootFile = tree.getRootFile(); + }; + this.onOpen = function( _windowW, _windowH, _ARTISTIDorFILE, _onUpdate ){ + elmContainer = document.getElementById( 'image-group-icon-container' ); + containerH = Util.getElementSize( elmContainer ).height; + + elmIconOrigin = ( function(){ + var ret = document.createElement( 'div' ), + data = document.createElement( 'div' ); + ret.appendChild( data ); + ret.className = 'image-group-item'; + data.className = 'image-group-item-title'; + return ret; + })(); + + var size = Util.getElementSize( elmIconOrigin ); + itemW = size.width; + itemH = size.height; + + elmName = document.getElementById( 'image-group-name' ); + elmButton = document.getElementById( 'image-group-button' ); + + buttonW = Util.getElementSize( elmButton ).width; + + self.addMouseEventListener( elmContainer, 'mousewheel', onMouseWheel ); + self.addMouseEventListener( elmButton, 'click', clickClose ); + tree.addTreeEventListener( Const.TREE.EVENT.UPDATE, drawIcons ); + + if( Driver.isPettanrFileInstance( _ARTISTIDorFILE ) === true ){ + var _data = FileAPI.getFileData( _ARTISTIDorFILE ); + if( _ARTISTIDorFILE.getType() === FILE_TYPE.ARTIST || FILE_DATA_MY_PICTURES_ROOT === _data ){ + artistID = _data.id || -1; + } + } else + if( Type.isNumber( _ARTISTIDorFILE ) === true ){ + artistID = _ARTISTIDorFILE; + } + + onUpdate = _onUpdate || null; + onUpdateData = null; + + drawIcons(); + + wrapX = 0; + containerW = ICON_ARRAY.length * itemW; + + winW = _windowW; + winH = _windowH; + var w = winW > containerW ? winW : containerW, + h = _windowH > containerH ? containerH : _windowH, + MATH_FLOOR = Math.floor; + + $( elmContainer ).css( { + width: w, + height: 0, + left: 0, + top: MATH_FLOOR( _windowH /2 ) + }).stop().animate( { + height: h, + top: MATH_FLOOR( _windowH /2 - h /2 ) + }, onEnterShowImage ); + + elmButton.style.cssText = [ + 'left:', MATH_FLOOR( _windowW /2 - buttonW /2 ), 'px;', + 'top:', MATH_FLOOR( _windowH /2 + containerH /2 +10 ), 'px' + ].join(''); + } + this.onPaneResize = function( _windowW, _windowH ){ + var w = _windowW > containerW ? _windowW : containerW, + h = _windowH > containerH ? containerH : _windowH, + MATH_FLOOR = Math.floor, + offsetW = MATH_FLOOR( _windowW /2 -winW /2 ); + + winW = _windowW; + winH = _windowH; + if( offsetW <= 0 ){ // smaller + $( elmContainer ).stop().css( { + left: offsetW, + width: w + }).animate( { + left: 0, + top: MATH_FLOOR( _windowH /2 -h /2 ) + }); + } else { + $( elmContainer ).stop().css( { // bigger + left: 0, + width: w, + borderLeftWidth: offsetW + }).animate( { + top: MATH_FLOOR( _windowH /2 -h /2 ), + borderLeftWidth: 0 + }); + } + elmButton.style.cssText = [ + 'left:', MATH_FLOOR( _windowW /2 -buttonW /2 ), 'px;', + 'top:', MATH_FLOOR( _windowH /2 +containerH /2 + 10 ), 'px' + ].join(''); + onEnterShowImage(); + } + this.onClose = function(){ + if( tree === null ) return true; + $( elmContainer ).stop().animate( { + height: 0, + top: Math.floor( winH /2 ) + }, onFadeout ); + // onEnterInterval !== null && window.clearTimeout( onEnterInterval ); + // onEnterInterval = null; + self.removeTimer(); + + tree.removeTreeEventListener( Const.TREE.EVENT.UPDATE, drawIcons ); + tree.destroy(); + tree = rootFile = null; + + return false; + } +}, true, true, 'Premium Stage', 'premiumStage', null, '#C3325F' ); + + +/* ---------------------------------------- + * Text Editor + * - overlay + */ +var TextEditor = gOS.registerApplication( function(){ + var elmTextarea, elmButton, + textElement, onUpdate, + ID = 'textEditor', + panelX, panelY, + self = this; + + function clickOK(){ + textElement && textElement.text( elmTextarea.val() ); + self.addAsyncCall( asyncCallback ); + } + + function asyncCallback(){ + onUpdate && onUpdate( textElement ); + onUpdate = textElement = null; + TextEditor.shutdown(); + } + + + function textareaFitHeight(){ + var rows = 0; + while( elmTextarea.offsetHeight < textElement.h ){ + rows++; + elmTextarea.rows = rows; + } + if( rows > 1 ) elmTextarea.rows = --rows; + } + + /* grobal method */ + + this.MIN_WIDTH = 320; + this.MIN_HEIGHT = 320; + this.onInit = function(){ + self.rootElement.id = 'speach-editor-wrapper'; + self.rootElement.innerHTML = '
OK
'; + }; + this.onOpen = function( _w, _h, _panelX, _panelY, _textElement, _onUpdate ){ + elmTextarea = document.getElementById( 'speach-editor' ); + elmButton = document.getElementById( 'speach-edit-complete-button' ); + + self.addKeyEventListener( 'keydown', new Function( 'return false' ), 69, false, true ); + self.addMouseEventListener( elmButton, 'click', clickOK ); + + panelX = _panelX; + panelY = _panelY; + textElement = _textElement; + onUpdate = _onUpdate || null; + + self.onPaneResize( _w, _h ); + elmTextarea.value = _textElement.text() + elmTextarea.focus(); + + /* + * ie6,7は、textarea { width:100%}でも高さが変わらない。rowsを設定。 + */ + UA.isIE === true && UA.ieVersion <= 7 && self.addAsyncCall( textareaFitHeight ); + }; + this.onPaneResize = function( _w, _h ){ + self.rootElement.style.cssText = [ + 'left:', textElement.x + panelX, 'px;', + 'top:', textElement.y + panelY, 'px;', + 'width:', textElement.w, 'px;', + 'height:', textElement.h, 'px;' + ].join( '' ); + }; + this.onClose = function(){ + self.removeKeyEventListener(); + self.removeMouseEventListener( elmButton ); + + elmTextarea = elmButton = onUpdate = textElement = self = null; + }; +}, true, false, 'Tetxt Editor', 'texteditor', null, '#DDDDDD' ); + + +var Reader = gOS.registerApplication( function(){ + var windowW, windowH, + headerH, + consoleH, + panelMargin, + elmContainer, elmTitle, elmAuthor, elmBackButton, elmNextButton, + bindWorker = null, + currentFile = null, + comicData = null, + currentPanel = null, + currentIndex = 0, + numPanel = 0, + self = this; + + function onBackClick(){ + currentIndex -= ( currentIndex > 0 ? 1 : 0 ); + slide(); + return false; + } + function onNextClick(){ + currentIndex += ( currentIndex < numPanel - 1 ? 1 : 0 ); + slide(); + return false; + } + function slide(){ + var elm = elmContainer.childNodes[ currentIndex ], + h = windowH - headerH - consoleH, + top = headerH; + if( elm ){ + top = headerH - elm.offsetTop + Math.floor( ( h - elm.offsetHeight ) / 2 ); + } + + $( elmContainer ).stop().animate( { + top: top + }); + } + function getCurrentTopPosition(){ + + } + function draw(){ + var fileData, title, author; + + if( Driver.isPettanrFileInstance( currentFile ) === true ){ + if( currentFile.getType() === FILE_TYPE.COMIC ){ + fileData = currentFile.read(); + title = fileData.title; + author = fileData.author.name; + comicData = fileData; + numPanel = currentFile.getChildFileLength(); + } else + if( currentFile.getType() === FILE_TYPE.PANEL ){ + fileData = currentFile.read(); + title = fileData.comic.title; + author = fileData.comic.author.name; + comicData = fileData; + numPanel = 1; + } + } else { + + }; + + if( comicData !== null ){ + elmTitle.data = title; + elmAuthor.data = author; + bindWorker.json( comicData ); + self.addAsyncCall( asyncResize ); + }; + } + function asyncResize(){ + self.onPaneResize( windowW, windowH ); + }; + + /* grobal method */ + + this.MIN_WIDTH = 320; + this.MIN_HEIGHT = 320; + this.onInit = function(){ + self.rootElement.id = 'comic-reader-wrapper'; + self.rootElement.innerHTML = [ + '
', + '
', + '
', + '
', + 'NO DATA...', + 'NO DATA...', + '
', + '
', + '
', + '
', + '
', + '▲', + '▼', + '
', + '
' + ].join( '' ); + }; + this.onOpen = function( _w, _h, _file ){ + headerH = Util.getElementSize( document.getElementById( 'comic-reader-header' ) ).height; + consoleH = Util.getElementSize( document.getElementById( 'comic-reader-console' ) ).height; + elmContainer = document.getElementById( 'comic-reader-panel-container' ); + elmTitle = document.getElementById( 'comic-reader-title' ).firstChild; + elmAuthor = document.getElementById( 'comic-reader-author' ).firstChild; + elmBackButton = document.getElementById( 'comic-reader-back-button' ); + elmNextButton = document.getElementById( 'comic-reader-forward-button' ); + + bindWorker = pettanr.bind.createBindWorker( elmContainer, null, false, false ); + + self.addMouseEventListener( elmBackButton, 'click', onBackClick ); + self.addMouseEventListener( elmNextButton, 'click', onNextClick ); + + numPanel = currentIndex = 0; + + elmContainer.style.cssText = 'left:' + ( _w / 2 ) + 'px;' + 'top:' + _h + 'px;'; + + windowW = _w; + windowH = _h; + if( FileAPI.isFileInstance( _file ) === true ){ + currentFile = _file; + _file.addEventListener( Const.FILE.EVENT.GET_SEQENTIAL_FILES, draw ); + _file.getSeqentialFiles(); + draw(); + }; + }; + this.onPaneResize = function( _windowW, _windowH ){ + windowW = _windowW; + windowH = _windowH; + var panelH = elmContainer.offsetHeight, + panelW = elmContainer.offsetWidth, + h = _windowH - headerH - consoleH; + $( elmContainer ).stop().animate( + { + left: Math.floor( ( _windowW - panelW ) / 2 ), + top: headerH + ( panelH < h ? Math.floor( ( h - panelH ) / 2 ) : 0 ) + } + ); + }; + this.onClose = function(){ + self.removeMouseEventListener( elmBackButton ); + self.removeMouseEventListener( elmNextButton ); + + bindWorker.destroy(); + bindWorker = null; + + currentFile && currentFile.removeEventListener( Const.FILE.EVENT.GET_SEQENTIAL_FILES, draw ); + currentFile = comicData = currentPanel = null; + + elmContainer = elmTitle = elmAuthor = elmBackButton = elmNextButton = null; + }; +}, true, true, 'Comic Reader', 'comicreader', null, '#01A31C' ); + + +var Editor = gOS.registerApplication( function(){ + + var PANEL_ELEMENT_TYPE_IMAGE = 0, + PANEL_ELEMENT_TYPE_TEXT = 1, + MODULE_ARRAY = [], + MOUSE_LISTENER_ARRAY = [], + PANEL_ELEMENT_ARRAY = [], + MIN_PANEL_HEIGHT = 20, + MIN_ELEMENT_SIZE = 19, + MOUSE_HIT_AREA = 10, + elmMouseEventChatcher, + jqMouseEventChacher, + jqEditor, + windowW, windowH, + currentListener = null, + currentCursor = '', + self = this, + app = self, + option, + comicID = -1, + panelID = -1, + panelTimming = -1, + phase = -1, + log; + + var kill = function(){ + var o = this, v; + for( var p in o ){ + if( o.hasOwnProperty && !o.hasOwnProperty( p ) ) continue; + v = o[ p ]; + delete o[ p ]; + }; + }; + + var Module = { + abstractModule: { + init: function(){ + + }, + open: function(){ + + }, + close: function(){ + + }, + destroy: function(){ + this.kill = kill; + this.kill(); + } + }, + register: function( _class ){ + _class.prototype = TMP.abstractModule; + var ret = _class(); + MODULE_ARRAY.push( ret ); + return ret; + } + } +/* ---------------------------------------- + * MENU BAR + * - mouseEventListener + * - controler + * + * div + * div.title + * ul + * li + * a + * span + * kbd shortcut + */ + var MENU_BAR_CONTROL = ( function(){ + var ELM_ITEM_CLASSNAME = 'menu-bar-item', + itemList = [], + elmRoot, elmBar, + elmItemOrigin, elmSelectionOrigin, + barH, itemW, selectionW; + + var MenubarOptionClass = function( callback, separateAfter ){ + this.callback = callback; + this.separateAfter = separateAfter; + }; + MenubarOptionClass.prototype = { + elm: null, + elmTitle: null, + title: function( _title ){ + if( Type.isString( _title ) === true ){ + this.elmTitle.innerHTML = _title; + }; + return this.elmTitle.innerHTML; + }, + _visible: false, + visible: function( _visible ){ + if( Type.isBoolean( _visible ) === true && this._visible !== _visible ){ + this._visible = _visible; + this.elm.className = _visible === true ? '' : 'disabled'; + }; + return this._visible; + }, + _init: function( elmParent, _title, _shortcut, _visible ){ + this.elm = elmSelectionOrigin.cloneNode( true ); + this.elmTitle = this.elm.getElementsByTagName( 'span' )[ 0 ]; + + elmParent.appendChild( this.elm ); + + this.title( _title ); + this.visible( !!_visible ); + + var elmShortcut = this.elm.getElementsByTagName( 'kbd' )[ 0 ]; + if( _shortcut ){ + elmShortcut.innerHTML = _shortcut; + } else { + elmShortcut.parentNode.removeChild( elmShortcut ); + }; + }, + _kill: kill + }; + + var MenuBarItemClass = function( title ){ + this.elm = elmItemOrigin.cloneNode( true ); + elmBar.appendChild( this.elm ); + this.elm.style.left = ( itemW * itemList.length ) + 'px'; + + this.elm.getElementsByTagName( 'div' )[ 0 ].innerHTML = title; + + this.elmUl = this.elm.getElementsByTagName( 'ul' )[ 0 ]; + this.optionList = []; + this.visible = false; + + var optionList = this.optionList; + + this.onClick = function( e ){ + var i = Util.getChildIndex( this.parentNode, this ); + i !== -1 && this.className !== 'disabled' && optionList[ i ].callback( i ); + return false; + }; + this._onClose = function(){ + optionList = null; + }; + }; + MenuBarItemClass.prototype = { + show: function(){ + if( this.visible === true ) return; + elmRoot.appendChild( this.elm ); + this.elm.className = ELM_ITEM_CLASSNAME + '-focus'; + this.onShow && app.addAsyncCall( this.onShow ); + this.visible = true; + }, + hide: function(){ + if( this.visible === false ) return; + elmBar.appendChild( this.elm ); + this.elm.className = ELM_ITEM_CLASSNAME; + this.onHide && app.addAsyncCall( this.onHide ); + this.visible = false; + }, + createOption: function( title, shortcut, callback, visible, separateBefore, separateAfter ){ + var ret = new MenubarOptionClass( callback, separateAfter ), + before = this.optionList[ this.optionList.length -1 ]; + ret._init( this.elmUl, title, shortcut, visible ); + + this.optionList.push( ret ); + if( before && ( separateBefore === true || before.separateAfter === true )){ + ret.elm.style.borderTop = '1px solid #ccc'; + } + return ret; + }, + _open: function(){ + for( var lis = this.optionList, i = lis.length; i; ){ + app.addMouseEventListener( lis[ --i ].elm, 'click', this.onClick ); + }; + }, + _close: function(){ + this._onClose(); + var o; + while( o = this.optionList.shift() ) o._kill(); + this._kill = kill; + this._kill(); + } + }; + + function createMenubarItem( title ){ + itemList.push( new MenuBarItemClass( title ) ); + return itemList[ itemList.length - 1 ]; + } + return { + init: function(){ + elmRoot = app.rootElement; + elmBar = document.getElementById( 'menu-bar' ); + elmItemOrigin = ( function(){ + var ret = document.createElement( 'div' ), + div = document.createElement( 'div' ), + ul = document.createElement( 'ul' ); + ret.className = ELM_ITEM_CLASSNAME; + ret.appendChild( div ); + ret.appendChild( ul ); + return ret; + })(); + elmSelectionOrigin = ( function(){ + var ret = document.createElement( 'li' ), + a = document.createElement( 'a' ), + span = document.createElement( 'span' ), + key = document.createElement( 'kbd' ); + a.appendChild( span ); + a.appendChild( key ); + ret.appendChild( a ); + a.href = '#'; + return ret; + })(); + barH = Util.getElementSize( elmBar ).height; + MENU_BAR_CONTROL.h = barH; + itemW = Util.getElementSize( elmItemOrigin ).width; + selectionW = Util.getElementSize( elmItemOrigin.getElementsByTagName( 'ul' )[ 0 ] ).width; + + MENU_BAR_CONTROL.QUIT = createMenubarItem( 'Quit' ); + MENU_BAR_CONTROL.EDIT = createMenubarItem( 'Edit' ); + MENU_BAR_CONTROL.WINDOW = createMenubarItem( 'Window' ); + MENU_BAR_CONTROL.HELP = Util.extend( + createMenubarItem( 'Help' ), + { + createAjaxSelection: function( callback ){ + var elmLoading = document.createElement( 'li' ), + that = this; + this.elmUl.appendChild( elmLoading ); + elmLoading.className = 'loading'; + elmLoading.style.height = '90px'; + + this.onShow = callback; + callback = null; + + delete this.createAjaxSelection; + return function(){ + that.elmUl.removeChild( elmLoading ); + that._open(); + delete that.onShow; + elmLoading = that = null; + }; + }, + onShow: null + } + ); + + elmBar.style.top = ( -barH ) + 'px'; + $( elmBar ).animate( { top: 0 }); + + delete MENU_BAR_CONTROL.init; + }, + open: function(){ + for( var i = itemList.length; i; ) itemList[ --i ]._open(); + delete MENU_BAR_CONTROL.open; + }, + close: function(){ + var s; + while( s = itemList.shift() ) s._close(); + itemList = elmRoot = elmBar = elmItemOrigin = elmSelectionOrigin = null; + MENU_BAR_CONTROL.kill = kill; + MENU_BAR_CONTROL.kill(); + }, + h: 0, + mousemove: function( _mouseX, _mouseY ){ + if( barH >= _mouseY ) return true; + + for( var i = itemList.length; i; ) itemList[ --i ].hide(); + return false; + }, + mouseup: function( _mouseX, _mouseY ){ + return false; + }, + mousedown: function( _mouseX, _mouseY ){ + var l = itemList.length; + if( barH < _mouseY || itemW * l < _mouseX ) return false; + for( ; l; ){ + --l; + itemList[ l ][ l * itemW <= _mouseX && _mouseX < ( l + 1 ) * itemW ? 'show' : 'hide' ](); + }; + return true; + }, + busy: function( _busy ){ + return false; + }, + onWindowResize: function( _windowW, _windowH ){ + + }, + QUIT: null, + EDIT: null, + WINDOW: null, + HELP: null + } + })(); + + +/* ---------------------------------------- + * HISTORY_CONTROL + * - controler + */ + var HISTORY_CONTROL = ( function() { + var stackBack = [], + stackForward = [], + menubarBack, + menubarForward; + + function back(){ + /* + * currentを控えてstackForward.push(current) + * stackBack.pop()を実行してcurrentに + */ + if( stackBack.length === 0 ) return; + + var s = stackBack.pop(); + s.fn( s.argBack ); + menubarBack.visible( stackBack.length !== 0 ); + SAVE_CONTROL.panelUpdated( stackBack.length !== 0 ); + + stackForward.push( s ); + menubarForward.visible( true ); + }; + function forward(){ + if( stackForward.length === 0 ) return; + + var s = stackForward.pop(); + s.fn( s.argForword ); + menubarForward.visible( stackForward.length !== 0 ); + + stackBack.push( s ); + menubarBack.visible( true ); + SAVE_CONTROL.panelUpdated( true ); + }; + var StackClass = function( _function, _argBack, _argForword, _destroy ){ + this.fn = _function; + this.argBack = _argBack; + this.argForword = _argForword; + this.destroy = _destroy; + }; + StackClass.prototype.kill = function( _callDestroy ){ + var _argBack = this.argBack, + _argForword = this.argForword, + v; + this._kill = kill; + this._kill(); + + if( _callDestroy !== true ) return; + + if( Type.isArray( _argBack ) === true ){ // isArray + while( v = _argBack.shift() ){ + _callDestroy === true && Type.isFunction( v.destroy ) === true && v.destroy(); + }; + }; + if( Type.isArray( _argForword ) === true ){ + while( v = _argForword.shift() ){ + _callDestroy === true && Type.isFunction( v.destroy ) === true && v.destroy(); + }; + }; + }; + return { + init: function(){ + app.addKeyEventListener( 'keydown', back, 90, false, true ); // ctrl + Z + app.addKeyEventListener( 'keydown', forward, 90, true, true ); // ctrl + shift + Z + app.addKeyEventListener( 'keydown', forward, 89, false, true ); // ctrl + Y + + delete HISTORY_CONTROL.init; + }, + open: function(){ + menubarBack = MENU_BAR_CONTROL.EDIT.createOption( 'back', 'ctrl + z', back, false ); + menubarForward = MENU_BAR_CONTROL.EDIT.createOption( 'forward', 'ctrl + y', forward, false, false, true ); + + delete HISTORY_CONTROL.open; + }, + close: function(){ + var s; + while( s = stackBack.shift() ) s.kill( true ); + while( s = stackForward.shift() ) s.kill( true ); + menubarBack = menubarForward = stackBack = stackForward = null; + }, + saveState: function( _function, _argBack, _argForword, _destroy ){ + stackBack.push( new StackClass( _function, _argBack, _argForword, _destroy )); + menubarBack.visible( true ); + SAVE_CONTROL.panelUpdated( true ); + + var s; + while( s = stackForward.shift() ) s.kill( s.destroy ); + menubarForward.visible( false ); + } + } + })(); + +/* ---------------------------------------- + * SAVE_CONTROL + * - controler + */ + var SAVE_CONTROL = ( function(){ + var save, saveQuit, eXport, quit, + updated = false; + + function quit(){ + Editor.shutdown(); + } + function onExport(){ + OutputConsole.boot( + comicID, panelID, panelTimming, + PANEL_CONTROL.w, PANEL_CONTROL.h, + 2, // border, BackgroundImage + PANEL_ELEMENT_ARRAY + ); + } + return { + init: function(){ + delete SAVE_CONTROL.init; + }, + open: function(){ + save = MENU_BAR_CONTROL.QUIT.createOption( 'save', 'ctrl + S', quit, false ); + saveQuit = MENU_BAR_CONTROL.QUIT.createOption( 'save & quit', null, quit, false, false, true ); + eXport = MENU_BAR_CONTROL.QUIT.createOption( 'export', null, onExport, true, false, true ); + quit = MENU_BAR_CONTROL.QUIT.createOption( 'quit', null, quit, true, true ); + + delete SAVE_CONTROL.open; + }, + close: function(){ + save = saveQuit = eXport = quit = null; + SAVE_CONTROL.kill = kill; + SAVE_CONTROL.kill(); + }, + quit: quit, + panelUpdated: function( _updated ){ + if( Type.isBoolean( _updated ) === true ){ + save.visible( _updated ); + saveQuit.visible( _updated ); + updated = _updated; + } + return updated; + }, + save: function(){ + + } + } + })(); + +/* ---------------------------------------- + * WINDOWS_CONTROL + * - contloler + * - mouseEventListener + */ + var WINDOWS_CONTROL = ( function(){ + /* + * 表示上手前にあるwindowは、WINDOW_ARRAYの先頭にあり、htmlでは後ろにある。 + */ + var DEFAULT_MIN_WINDOW_WIDTH = 200, + DEFAULT_MIN_WINDOW_HEIGHT = 200, + WINDOW_ARRAY = [], + WINDOW_BODY_BODER_SIZE = 1, + currentWindowIndex = -1, + currentWindow, + elmRoot, + elmWindowOrigin, + closeButtonWidth; + + var WindowClass = function( bodyTempleteID, title, x, y, w, h, visible, CLOSE_BUTTON_ENABLED, RESIZE_BUTTON_ENABLED, minWindowW, minWindowH ){ + var menubarOption, + elmHeader, elmFooter = null, + elmBody, elmBodyStyle, + startX, startY, startW, startH, + offsetX, offsetY, + headerH, bodyH, footerH = 0, + isDragging = false, + isResizing = false, + bodyIsTachable = false, + self = this; + + function update( _x, _y, _w, _h ){ + _x = _x !== undefined ? _x : x; + _y = _y !== undefined ? _y : y; + _y = _y > MENU_BAR_CONTROL.h ? _y : MENU_BAR_CONTROL.h; + _w = _w !== undefined ? _w : w; + _h = _h !== undefined ? _h : h; + self.elm.style.cssText = [ + 'left:', _x, 'px;', + 'top:', _y, 'px;', + 'width:', _w, 'px;', + 'height:', _h, 'px;' + ].join( '' ); + bodyH = _h - headerH - footerH; + elmBodyStyle.height = bodyH + 'px'; + ( w !== _w || h !== _h) && self.onResize && self.onResize( _w, bodyH ); + x = _x; + y = _y; + w = _w; + h = _h; + } + function bodyBackOrForward( isBack ){ + if( !self) return; + if( bodyIsTachable === !isBack) return; + elmBodyStyle.position = isBack === true ? 'relative' : 'absolute'; + elmBodyStyle.left = isBack === true ? 0 : x +'px'; + elmBodyStyle.top = isBack === true ? 0 : y +headerH +'px'; + elmBodyStyle.width = isBack === true ? '' : ( w -WINDOW_BODY_BODER_SIZE *2) +'px'; + bodyIsTachable === isBack && isBack === true ? elmHeader.parentNode.insertBefore( elmBody, elmHeader.nextSibling ) : app.rootElement.appendChild( elmBody ); + bodyIsTachable = !isBack; + } + + this.init = function(){ + self.elm = elmWindowOrigin.cloneNode( true ); + menubarOption = MENU_BAR_CONTROL.WINDOW.createOption( + ( visible !== true ? 'show ' : 'hide ' ) + title, + null, function(){ visible === true ? self.close() : self.open(); }, true + ); + elmHeader = Util.getElementsByClassName( self.elm, 'window-header' )[ 0 ]; + elmHeader.innerHTML = title; + headerH = Util.getElementSize( elmHeader ).height; + elmBody = Util.getElementsByClassName( self.elm, 'window-body' )[ 0 ]; + elmBodyStyle = elmBody.style; + + self.onInit && self.onInit(); + delete self.init; + }; + this.x = function(){ return x;}; + this.y = function(){ return y;}; + this.w = function(){ return w;}; + this.h = function(){ return h;}; + this.title = function( _title ){ + if( Type.isString( _title ) === true ){ + jqHeader.html( _title ); + title = _title; + } + return title; + }; + this.visible = visible; + this.firstOpen = function(){ + var elmReplace = Util.getElementsByClassName( self.elm, 'window-body-insert-position' )[ 0 ]; + + if( bodyTempleteID ){ + elmReplace.parentNode.replaceChild( document.getElementById( bodyTempleteID ), elmReplace ); + } else { + elmReplace.parentNode.removeChild( elmReplace ); + }; + + if( CLOSE_BUTTON_ENABLED !== true ){ + var elmClose = Util.getElementsByClassName( self.elm, 'window-close-button' )[ 0 ]; + elmClose.parentNode.removeChild( elmClose ); + }; + + + var elmFooter = Util.getElementsByClassName( self.elm, 'window-footer' )[ 0 ]; + if( RESIZE_BUTTON_ENABLED === true ){ + footerH = Util.getElementSize( elmFooter ).height; + } else { + elmFooter.parentNode.removeChild( elmFooter ); + } + self.onFirstOpen && self.onFirstOpen( w, h - headerH - footerH ); + + update( x, y, w, h ); + + delete self.firstOpen; + }; + this.open = function(){ + if( visible === true )return; + self.visible = visible = true; + openWindow( self ); + menubarOption.title( 'hide ' + title ); + + for( var i=0, l = WINDOW_ARRAY.length; i _mouseX || y > _mouseY || x + w < _mouseX || y + headerH < _mouseY ) return; + if( CLOSE_BUTTON_ENABLED === true && x + w - closeButtonWidth < _mouseX){ + self.close(); + return; + } + + isDragging = true; + updateMouseCursor( 'move'); + startX = x; + startY = y; + startW = w; + startH = h; + offsetX = _mouseX; + offsetY = _mouseY; + }; + this.mouseup = function( _mouseX, _mouseY ){ + isDragging = isResizing = false; + updateMouseCursor( ''); + }; + this.mousemove = function( _mouseX, _mouseY ){ + var _updateX = _mouseX - offsetX, + _updateY = _mouseY - offsetY; + + if( isResizing === true){ + var _w = startW +_updateX, + _h = startH +_updateY; + update( startX, startY, _w < minWindowW ? minWindowW : _w, _h < minWindowH ? minWindowH : _h ); + return; + } else + if( isDragging === true) { + update( startX + _updateX, startY + _updateY); + return; + } else + if( x > _mouseX || x + w < _mouseX ) return; + + ( y <= _mouseY && y +headerH >= _mouseY ) ? + updateMouseCursor( 'pointer') : // hit to header + updateMouseCursor( ''); + bodyBackOrForward( y + headerH > _mouseY || y + headerH + bodyH < _mouseY); + }; + this.onMouseOut = function( _mouseX, _mouseY ){ + bodyIsTachable === true && bodyBackOrForward( true ); + isDragging = false; + updateMouseCursor( '' ); + }; + this.busy = function(){ + return isDragging === true || isResizing === true; + }; + }; + + function getCurrentIndex( _mouseX, _mouseY ){ + if( currentWindow && currentWindow.busy() === true ) return currentWindowIndex; + var l = WINDOW_ARRAY.length, + _currentWindow = null, + _win, _x, _y; + currentWindowIndex = -1; + for( var i=0; i= _mouseX && _y +_win.h() >= _mouseY){ + _currentWindow = _win; + currentWindowIndex = i; + break; + } + } + currentWindow && currentWindow !== _currentWindow && currentWindow.onMouseOut( _mouseX, _mouseY); + currentWindow = _currentWindow; + return currentWindowIndex; + } + function openWindow( _window ){ + if( _window.visible !== true ) return; + elmRoot.appendChild( _window.elm );// appendした後に fadeIn() しないと ie で filterが適用されない. + $( _window.elm ).fadeIn( _window.onFadeIn ); + return; + } + + return { + init: function(){ + elmRoot = document.getElementById( 'window-container' ); + elmWindowOrigin = app.fetchHTMLElement( 'windowTemplete' ); + closeButtonWidth = Util.getElementSize( Util.getElementsByClassName( elmWindowOrigin, 'window-close-button' )[ 0 ] ).width; + + delete WINDOWS_CONTROL.init; + }, + open: function(){ + for( var i = WINDOW_ARRAY.length, _window; i; ){ + _window = WINDOW_ARRAY[ --i ]; + _window.init && _window.init(); + _window.visible === true && openWindow( _window ); + }; + + delete WINDOWS_CONTROL.open; + }, + close: function(){ + }, + mousemove: function( _mouseX, _mouseY ){ + var _index = getCurrentIndex( _mouseX, _mouseY ); + if( _index === 0 ){ + currentWindow.mousemove( _mouseX, _mouseY ); + return true; + } else + if( _index > 0 ){ // 先頭のクリックでない場合 + // Array を前に + WINDOW_ARRAY.splice( currentWindowIndex, 1 ); + WINDOW_ARRAY.unshift( currentWindow ); + // Domを最後に + elmRoot.appendChild( currentWindow.elm ); + currentWindowIndex = 0; + return true; + } + return false; + }, + mouseup: function( _mouseX, _mouseY ){ + if( getCurrentIndex( _mouseX, _mouseY) === 0){ + currentWindow.mouseup( _mouseX, _mouseY); + return true; + } + return false; + }, + mousedown: function( _mouseX, _mouseY ){ + if( getCurrentIndex( _mouseX, _mouseY) === 0){ + currentWindow.mousedown( _mouseX, _mouseY); + return true; + } + return false; + }, + busy: function(){ + return currentWindow !== null; + }, + onWindowResize: function( _windowW, _windowH ){ + /* + * 画面外に出るwindowの移動 + */ + }, + createWindow: function( EXTENDS, bodyTempleteID, title, x, y, w, h, opt_visible, opt_closeButtonEnabled, opt_resizeButtonEnabled, opt_minWindowW, opt_minWindowH ){ + opt_visible = opt_visible !== false; + opt_closeButtonEnabled = opt_closeButtonEnabled === true; + opt_resizeButtonEnabled = opt_resizeButtonEnabled === true; + opt_minWindowW = opt_minWindowW || ( w < DEFAULT_MIN_WINDOW_WIDTH ) ? w : DEFAULT_MIN_WINDOW_WIDTH; + opt_minWindowH = opt_minWindowH || ( h < DEFAULT_MIN_WINDOW_HEIGHT ) ? h : DEFAULT_MIN_WINDOW_HEIGHT; + + var _window = new WindowClass( bodyTempleteID, title, x, y, w, h, opt_visible, opt_closeButtonEnabled, opt_resizeButtonEnabled, opt_minWindowW, opt_minWindowH ); + for( var key in EXTENDS ){ + _window[ key ] = EXTENDS[ key ]; + } + WINDOW_ARRAY.unshift( _window ); + if( Type.isUndefined( WINDOWS_CONTROL.init ) === true ){ + _window.init(); + openWindow( _window ); + } + return _window; + } + } + })(); + +/* ---------------------------------------- + * TOOL_BOX_WINDOW + * - window + */ + var TOOL_BOX_WINDOW = ( function(){ + + app.addKeyEventListener( 'keydown', addImage, 73, false, true ); + app.addKeyEventListener( 'keydown', addText, 84, false, true ); + app.addKeyEventListener( 'keydown', switchGrid, 71, false, true ); + + function addImage(){ + IMAGE_EXPLORER_WINDOW.open();// setTimeout( IMAGE_EXPLORER_WINDOW.open, 0); + TOOL_BOX_WINDOW.bodyBackOrForward( true ); + } + function addText(){ + setTimeout( PANEL_ELEMENT_CONTROL.createTextElement, 0 ); + } + function switchGrid(){ + setTimeout( GRID_CONTROL.update, 0 ); + } + function popupHelp(){ + TOOL_BOX_WINDOW.bodyBackOrForward( true ); + setTimeout( HELP_DOCUMENTS_WINDOW.open, 0 ); + } + function editBG( e ){ + TOOL_BOX_WINDOW.bodyBackOrForward( true ); + setTimeout( INFOMATION_WINDOW.open, 0 ); + } + + return WINDOWS_CONTROL.createWindow( + { + onInit: function(){ + MENU_BAR_CONTROL.EDIT.createOption( 'Add Image', 'ctrl + I', addImage, true, true, false); + MENU_BAR_CONTROL.EDIT.createOption( 'Add Text', 'ctrl + T', addText, true, false, true); + MENU_BAR_CONTROL.EDIT.createOption( 'show Grid', 'ctrl + G', switchGrid, true, true, true); + + delete TOOL_BOX_WINDOW.onInit; + }, + onFirstOpen: function(){ + app.addMouseEventListener( document.getElementById( 'toolbox-add-image-button'), 'click', addImage ); + app.addMouseEventListener( document.getElementById( 'toolbox-add-text-button'), 'click', addText ); + app.addMouseEventListener( document.getElementById( 'toolbox-edit-bg-button'), 'click', editBG ); + app.addMouseEventListener( document.getElementById( 'toolbox-switch-grid'), 'click', switchGrid ); + app.addMouseEventListener( document.getElementById( 'toolbox-popup-help-button'), 'click', popupHelp ); + + // postButton = $( '#toolbox-post-button'); + + delete TOOL_BOX_WINDOW.onFirstOpen; + } + }, + 'toolbox-window', 'Tool box', 0, 215, 110, 290, true + ); + })(); + + +/* ---------------------------------------- + * IMAGE_EXPROLER + * - window + */ + var IMAGE_EXPLORER_WINDOW = ( function(){ + var tree, finder; + + function onFileSelect( _file ){ + // 他の image ファイルも許可する? + if( Driver.isPettanrFileInstance( _file ) === true ){ + if( _file.getType() === FILE_TYPE.PICTURE ){ + PANEL_ELEMENT_CONTROL.onImageSelect( FileAPI.getFileData( _file ) ); + } + } + } + + return WINDOWS_CONTROL.createWindow( + { + onInit: function(){ + delete IMAGE_EXPLORER_WINDOW.onInit; + }, + onFirstOpen: function( _w, _h ){ + tree = FileAPI.createTree( FILE_DATA_PICTURE_ROOT ); + var _root = tree.getRootFile(), + _myPic = _root.getChildFileByIndex( 0 ), + _pic = _root.getChildFileByIndex( 1 ); + _myPic.getSeqentialFiles(); + _pic.getSeqentialFiles(); + _myPic.destroy(); + _pic.destroy(); + + finder = app.createFinder( + document.getElementById( 'image-exproler-container' ), + tree, + null, null, + onFileSelect, + PANEL_ELEMENT_CONTROL.onImageSelect + ); + + delete IMAGE_EXPLORER_WINDOW.onFirstOpen; + }, + onOpen: function( _w, _h ){ + finder.resize( _w, _h ); + }, + onResize: function( _w, _h ){ + finder.resize( _w, _h ); + } + }, + 'image-exproler', 'Album', 0, 215, 600, 350, false, true, true, 300, 300 + ); + })(); + + +/* ---------------------------------------- + * INFOMATION_WINDOW + * - window + */ + var INFOMATION_WINDOW = ( function(){ + var FADE_EFFECT_ENABLED = true, //UA.isIE === false || UA.ieVersion >= 8, + FADE_IN_EFFECT = FADE_EFFECT_ENABLED === true ? 'fadeIn' : 'show', + FADE_OUT_EFFECT = FADE_EFFECT_ENABLED === true ? 'fadeOut' : 'hide', + backgroundInfomationElm, + jqPanelElementInformation, + ui, inputX, inputY, inputZ, inputA, inputW, inputH, inputAspectRatio, + inputPercentW, inputPercentH, + currentPanelElement = null, + currentElementType = -1, + currentLock = false; + + return WINDOWS_CONTROL.createWindow( + { + onFirstOpen: function( _w, _h ){ + backgroundInfomationElm = $( '#panel-background-information'); + + jqPanelElementInformation = $( '#comic-element-infomation').hide().css( { + height: _h + }); + ui = app.createUIGroup(); + inputX = ui.createInputText( document.getElementById( 'comic-element-x' ), null ); + inputY = ui.createInputText( document.getElementById( 'comic-element-y' ), null ); + inputZ = ui.createInputText( document.getElementById( 'comic-element-z' ), null ); + inputA = ui.createInputText( document.getElementById( 'comic-element-a' ), null ); + inputW = ui.createInputText( document.getElementById( 'comic-element-w' ), null ); + inputH = ui.createInputText( document.getElementById( 'comic-element-h' ), null ); + inputPercentW = ui.createInputText( document.getElementById( 'comic-element-w-percent' ), null ); + inputPercentH = ui.createInputText( document.getElementById( 'comic-element-h-percent' ), null ); + inputAspectRatio = $( '#comic-element-keep-aspect' ); + delete INFOMATION_WINDOW.onFirstOpen; + }, + onResize: function( _w, _h ){ + jqPanelElementInformation.css( { + height: _h + }); + }, + update: function( currentElement ){ + + if( currentLock === true && currentElement === null) return; + + var _elementType = currentElement === null ? -1 : currentElement.type, + x = currentElement !== null ? currentElement.x : 0, + y = currentElement !== null ? currentElement.y : 0, + z = currentElement !== null ? currentElement.z : 0, + a = _elementType === PANEL_ELEMENT_TYPE_TEXT ? Math.floor( currentElement.angle() ) : 0, + w = currentElement !== null ? currentElement.w : 0, + h = currentElement !== null ? currentElement.h : 0, + actualW = _elementType === PANEL_ELEMENT_TYPE_IMAGE ? currentElement.actualW() : 1, + actualH = _elementType === PANEL_ELEMENT_TYPE_IMAGE ? currentElement.actualH() : 1, + wPercent = _elementType === PANEL_ELEMENT_TYPE_IMAGE ? Math.floor( w / actualW *100 ) : 0, + hPercent = _elementType === PANEL_ELEMENT_TYPE_IMAGE ? Math.floor( h / actualH *100 ) : 0, + keepAspect = currentElement !== null && currentElement.keepAspect === true; + + if( currentElementType !== _elementType ){ + if( _elementType !== -1 ){ + if( _elementType === 1 ){ + inputA.visible( true ); + inputPercentW.visible( false ); + inputPercentH.visible( false ); + inputAspectRatio.hide(); + } else { + inputA.visible( false ); + inputPercentW.visible( true ); + inputPercentH.visible( true ); + inputAspectRatio.show(); + } + currentElementType === -1 && jqPanelElementInformation.stop().css( { + filter: '', + opacity: '' + })[ FADE_IN_EFFECT ](); + } else { + currentElementType !== -1 && jqPanelElementInformation.stop().css({ + filter: '', + opacity: '' + })[ FADE_OUT_EFFECT ](); + } + currentElementType = _elementType; + } + if( currentElementType !== -1){ + inputX.value( x ); + inputY.value( y ); + inputZ.value( z ); + _elementType === 1 && inputA.value( a ); + inputW.value( w ); + inputH.value( h ); + _elementType === 0 && inputPercentW.value( wPercent ); + _elementType === 0 && inputPercentH.value( hPercent ); + } else { + + } + }, + lock: function( _currentLock ){ + currentLock = !!_currentLock; + INFOMATION_WINDOW.bodyBackOrForward( !currentLock ); + } + }, + 'infomation-window', 'Infomation', 0, 30, 200, 180, true + ); + })(); + +/* ---------------------------------------- + * HELP_WINDOW + * - window + */ + var HELP_DOCUMENTS_WINDOW = ( function(){ + var visible = true, + jqAjaxContents, + jqNaviItems, + jqPages, + currentPageIndex = 0, + numPage = 0, + help = null, + onLoadFunction = null; + + function onAjaxStart( _pageIndex ){ + currentPageIndex = _pageIndex || currentPageIndex; + if( onHelpLoad !== null ){ + $.ajax({ + url: 'help/jp.xml', + dataType: 'xml', + success: onHelpLoad + }); + onHelpLoad = null; + } + onAjaxStart = new Function; + } + var onHelpLoad = function( _xml ){ + var jqXML = $( _xml ), + helpTitle = jqXML.find( 'pages' ).eq( 0 ).attr( 'title' ), + elmNavi = document.createElement( 'div' ), + elmItemOrigin = document.createElement( 'a' ), + elmPages = document.createElement( 'div' ), + elmPageOrigin = document.createElement( 'div' ), + elmTitleOrigin = document.createElement( 'h2' ), + elmPage; + elmNavi.className = 'sidenavi'; + elmItemOrigin.className = 'sidenavi-item'; + elmItemOrigin.href = '#'; + elmPages.className = 'page-contents'; + elmPageOrigin.className = 'page-content main'; + elmPageOrigin.appendChild( elmTitleOrigin); + + jqXML.find( 'page' ).each( function(){ + var xmlPage = $( this ), + title = xmlPage.attr( 'title' ), + content = xmlPage.text(); + + elmItemOrigin.innerHTML = title; + elmNavi.appendChild( elmItemOrigin.cloneNode( true )); + + elmTitleOrigin.innerHTML = title; + + elmPage = elmPageOrigin.cloneNode( true ); + elmPage.innerHTML = content; + + Util.cleanElement( elmPage); + + if( elmPage.childNodes.length > 0 ){ + elmPage.insertBefore( elmTitleOrigin.cloneNode( true ), elmPage.childNodes[0]); + } else { + elmPage.appendChild( elmTitleOrigin.cloneNode( true )); + } + elmPages.appendChild( elmPage ); + + help.createOption( title, null, onSelectionClick, true ); + ++numPage; + }); + onLoadFunction(); + onLoadFunction = null; + + jqAjaxContents.removeClass( 'loading' ).append( elmNavi, elmPages ); + + jqNaviItems = jqAjaxContents.find( 'a.' + elmItemOrigin.className ).click( onNaviClick ); + jqPages = jqAjaxContents.find( '.page-content' ); + jqPages.find( 'a' ).click( onInnerLinkClick ); + + setTimeout( jumpPage, 0 ); + } + function onSelectionClick( _pageIndex ){ + HELP_DOCUMENTS_WINDOW.open(); + jumpPage( _pageIndex ); + } + function jumpPage( _index ){ + if( typeof _index === 'number' && 0 <= _index && _index < numPage && currentPageIndex !== _index ){ + currentPageIndex = _index; + } + jqNaviItems.removeClass( 'current' ).eq( currentPageIndex).addClass( 'current' ); + jqPages.hide().eq( currentPageIndex ).show(); + } + function onNaviClick( e ){ + // this は + jumpPage( Util.getChildIndex( this.parentNode, this )); + return false; + } + function onInnerLinkClick( e ){ + var jump = ( this.href || '' ).split( '#jump' ), + n = jump[ 1 ]; + if( !n ) return; + jumpPage( '' + parseFloat( n ) === n ? parseFloat( n ) : -1 ); + return false; + } + return WINDOWS_CONTROL.createWindow( + { + onInit: function(){ + help = MENU_BAR_CONTROL.HELP; + onLoadFunction = help.createAjaxSelection( onAjaxStart ); + jqAjaxContents = $( HELP_DOCUMENTS_WINDOW.elm ).find( '.window-body' ).addClass( 'loading' ); + delete HELP_DOCUMENTS_WINDOW.onInit; + }, + onFirstOpen: function( _w, _h ){ + jqAjaxContents.css( { height: _h } ); + onAjaxStart(); + delete HELP_DOCUMENTS_WINDOW.onFirstOpen; + }, + onResize: function( _w, _h ){ + jqAjaxContents && jqAjaxContents.css( { height: _h }); + } + }, + null, 'Help', 0, 215, 400, 350, false, true, true, 300, 300 + ); + })(); + +/* ---------------------------------------- + * GRID_CONTROL + * - control + * - panelResizeListener + */ + var GRID_CONTROL = ( function(){ + var elmGrid, + urlBG = "url('images/grid.gif')", + visible = false; + + return { + init: function(){ + elmGrid = document.getElementById( 'grid' ); + delete GRID_CONTROL.init; + }, + open: function(){ + delete GRID_CONTROL.open; + }, + close: function(){ + + }, + onPanelResize: function( _panelX, _panelY ){ + elmGrid.style.backgroundPosition = [ _panelX % 10, 'px ', _panelY % 10, 'px' ].join( '' ); + elmGrid.style.height = windowH +'px'; + }, + enabled: function(){ + return visible; + }, + update: function(){ + $( elmGrid ).stop().css( { + opacity: '', + fliter: '' + })[ visible === true ? 'fadeOut' : 'fadeIn' ](); + + visible = !visible; + + if( visible === true && urlBG !== null ){ + elmGrid.style.backgroundImage = urlBG; + urlBG = null; + } + return visible; + } + } + })(); + +/* ---------------------------------------- + * WHITE_GLASS_CONTROL + * - panelResizeListener + */ + var WHITE_GLASS_CONTROL = ( function(){ + var styleTop, styleLeft, styleRight, styleBottom; + + return { + init: function(){ + styleTop = document.getElementById( 'whiteGlass-top' ).style; + styleLeft = document.getElementById( 'whiteGlass-left' ).style; + styleRight = document.getElementById( 'whiteGlass-right' ).style; + styleBottom = document.getElementById( 'whiteGlass-bottom' ).style; + delete WHITE_GLASS_CONTROL.init; + }, + onPanelResize: function( _panelX, _panelY, _panelW, _panelH ){ + var _w = _panelW, + _h = _panelH, + marginTop = _panelY, + marginBottom = windowH -_h -marginTop, + marginX = _panelX, + rightWidth = windowW -_w -marginX; + + styleTop.height = ( marginTop < 0 ? 0 : marginTop ) + 'px'; + + styleLeft.top = marginTop + 'px'; + styleLeft.width = ( marginX < 0 ? 0 : marginX ) + 'px'; + styleLeft.height = ( _h + marginBottom ) + 'px'; + + styleRight.top = marginTop + 'px'; + styleRight.left = _w +marginX + 'px'; + styleRight.width = ( rightWidth < 0 ? 0 : rightWidth ) + 'px'; + styleRight.height = ( _h + marginBottom ) + 'px'; + + styleBottom.top = ( _h +marginTop ) + 'px'; + styleBottom.left = marginX + 'px'; + styleBottom.width = _w + 'px'; + styleBottom.height = ( marginBottom < 0 ? 0 : marginBottom ) + 'px'; + } + } + })(); + + +/* -------------------------------------------------------------------------------------------- + * PanelResizerClass + * - mouseEventListener + */ + var PanelResizerClass = function( id, isTop ){ + var style = document.getElementById( id ).style, + BORDER_WIDTH = 2, + RESIZER_HEIGHT = 30, + x = -BORDER_WIDTH / 2, + y = isTop === true ? ( -5 - RESIZER_HEIGHT - BORDER_WIDTH ) : 0, + w, + h = RESIZER_HEIGHT, + panelX, panelY, panelW, panelH, + offsetY, startY, startH, + isDragging = false; + + function restoreState( arg ){ + if( arg && arg.length > 3){ + PANEL_CONTROL.resize( isTop, arg[ 0 ] || panelX, arg[ 1 ] || panelY, arg[ 2 ] || panelW, arg[ 3 ] || panelH ); + }; + }; + + this.mousedown = function( _mouseX, _mouseY ){ + var _x = _mouseX -panelX, + _y = _mouseY -panelY; + if( _x < x || x + w < _x || _y < y || y + h < _y) return false; + offsetY = _y; + startY = panelY; + startH = panelH; + isDragging = true; + updateMouseCursor( 'n-resize' ); + return true; + }; + this.mousemove = function( _mouseX, _mouseY ){ + var _x = _mouseX - panelX, + _y = _mouseY - panelY; + if( isDragging !== true ){ + if( _x < x || x + w < _x || _y < y || y + h < _y ) return false; + PANEL_ELEMENT_OPERATION_MANAGER.hide(); + updateMouseCursor( 'pointer' ); + return true; + } else { + var move = _y -offsetY; + if( isTop === true){ + if( panelH - move < MIN_PANEL_HEIGHT ){ + move = panelH -MIN_PANEL_HEIGHT; + }; + PANEL_CONTROL.resize( true, panelX, panelY + move, panelW, panelH - move ); + } else { + var _h = startH + move; + if( 0 < _h && _h < windowH -panelY -RESIZER_HEIGHT -5 -BORDER_WIDTH ){ + PANEL_CONTROL.resize( false, panelX, panelY, panelW, _h < MIN_PANEL_HEIGHT ? MIN_PANEL_HEIGHT : _h ); + }; + }; + }; + return true; + }; + this.mouseup = function( _mouseX, _mouseY ){ + if( isDragging !== true ) return; + ( startY !== panelY || startH !== panelH ) && HISTORY_CONTROL.saveState( restoreState, [ NaN, startY, NaN, startH], [ NaN, panelY, NaN, panelH ] ); + isDragging = false; + updateMouseCursor( ''); + }; + this.busy = function(){ + return isDragging; + }; + this.onPanelResize = function( _x, _y, _w, _h ){ + panelX = _x; + panelY = _y; + if( panelW !== _w ){ + style.width = ( _w + 2 ) + 'px'; + panelW = _w; + } + panelH = _h; + y = isTop === true ? y : ( panelH + 5 + BORDER_WIDTH ); + w = panelW + 2; + }; + }; + var PANEL_RESIZER_TOP, + PANEL_RESIZER_BOTTOM; + +/* ---------------------------------------- + * PANEL_CONTROL + * - controler + * - mouseEventListener + * + * panel-border の表示と onPanelResize の通知. + * panel drag. + * + */ + var PANEL_CONTROL = ( function(){ + var elmPanel, stylePanel, + DEFAULT_PANEL_WIDTH = 400, + DEFAULT_PANEL_HEIGHT = 300, + borderSize = 2, + offsetX, offsetY, startX, startY, + isDragging = false, + isDraggable = false; + + app.addKeyEventListener( 'keychange', onSpaceUpdate, 32, false, false ); + + function onSpaceUpdate( e ){ + if( e.type === 'keyup' ){ + currentListener === null && updateMouseCursor( '' ); + isDraggable = false; + } else { + currentListener === null && updateMouseCursor( 'move' ); + isDraggable = true; + }; + return false; + }; + + return { + x: 0, + y: 0, + w: 0, + h: 0, + init: function(){ + elmPanel = document.getElementById( 'panel-tools-container' ); + stylePanel = elmPanel.style; + + PANEL_RESIZER_TOP = new PanelResizerClass( 'panel-resizer-top', true ); + PANEL_RESIZER_BOTTOM = new PanelResizerClass( 'panel-resizer-bottom', false ); + PanelResizerClass = null; + + delete PANEL_CONTROL.init; + }, + open: function( _panelW, _panelH, _borderSize ){ + PANEL_CONTROL.w = Type.isFinite( _panelW ) === true ? _panelW : DEFAULT_PANEL_WIDTH; + PANEL_CONTROL.h = Type.isFinite( _panelH ) === true ? _panelH : DEFAULT_PANEL_HEIGHT; + borderSize = Type.isFinite( _borderSize ) === true ? _borderSize : borderSize; + + delete PANEL_CONTROL.open; + }, + close: function(){ + + }, + resize: function( isResizerTopAction, _x, _y, _w, _h ){ + PANEL_CONTROL.x = _x = _x !== undefined ? _x : PANEL_CONTROL.x; + PANEL_CONTROL.y = _y = _y !== undefined ? _y : PANEL_CONTROL.y; + PANEL_CONTROL.w = _w = _w !== undefined ? _w : PANEL_CONTROL.w; + PANEL_CONTROL.h = _h = _h !== undefined ? _h : PANEL_CONTROL.h; + + stylePanel.left = ( _x - borderSize ) + 'px'; + stylePanel.top = ( _y - borderSize ) + 'px'; + stylePanel.width = _w + 'px'; + stylePanel.height = _h + 'px'; + + PANEL_RESIZER_TOP.onPanelResize( _x, _y, _w, _h ); + PANEL_RESIZER_BOTTOM.onPanelResize( _x, _y, _w, _h ); + GRID_CONTROL.onPanelResize( _x, _y ); + WHITE_GLASS_CONTROL.onPanelResize( _x, _y, _w, _h ); + PANEL_ELEMENT_CONTROL.onPanelResize( _x, _y, _w, _h, isResizerTopAction === true ); + }, + onWindowResize: function( _windowW, _windowH ){ + PANEL_CONTROL.x = Math.floor( ( _windowW - PANEL_CONTROL.w ) / 2 ); + PANEL_CONTROL.y = Math.floor( ( _windowH - PANEL_CONTROL.h ) / 2 ); + PANEL_CONTROL.resize(); + }, + mousemove: function( _mouseX, _mouseY ){ + if( isDraggable === true && isDragging === true ){ + PANEL_CONTROL.resize( false, startX + _mouseX - offsetX, startY + _mouseY - offsetY ); + } + }, + mouseup: function( _mouseX, _mouseY ){ + if( isDraggable === true ){ + isDragging = false; + updateMouseCursor( '' ); + } + }, + mousedown: function( _mouseX, _mouseY ){ + if( isDraggable === true ){ + offsetX = _mouseX; + offsetY = _mouseY; + startX = PANEL_CONTROL.x; + startY = PANEL_CONTROL.y; + isDragging = true; + updateMouseCursor( 'move' ); + return true; + } + }, + busy: function(){ + return isDragging === true; + } + } + })(); + + +/* -------------------------------------------------------------------------------------------- + * CONSOLE_CONTROLER + */ + var CONSOLE_CONTROLER = ( function(){ + var LAYER_BACK_BUTTON, LAYER_FORWARD_BUTTON, DELETE_BUTTON, EDIT_BUTTON, CHANGE_BUTTON, + elmConsoleWrapper, styleConsoleWrapper, + elmConsoleParent, + styleImgConsole, styleTextConsole, + currentElement = null, + currentType = -1, + visible = false, + imgConsoleWidth, imgConsoleHeight, + textConsoleWidth, textConsoleHeight, + tailSize = 10, + buttonClickable = false; + + function buttonBackOrForward( isBack ){ + var offset = Util.getAbsolutePosition( elmConsoleWrapper ); + styleConsoleWrapper.position = isBack === true ? '' : 'absolute'; + styleConsoleWrapper.left = ( isBack === true ? CONSOLE_CONTROLER.x : offset.x ) + 'px'; + styleConsoleWrapper.top = ( isBack === true ? CONSOLE_CONTROLER.y : offset.y ) + 'px'; + buttonClickable === isBack && ( isBack === true ? elmConsoleParent : app.rootElement ).appendChild( elmConsoleWrapper ); + buttonClickable = !isBack; + }; + function layerBack(){ + if( currentElement === null) return; + if( PANEL_ELEMENT_CONTROL.replace( currentElement, false) === false ) return; + INFOMATION_WINDOW.update( currentElement ); + HISTORY_CONTROL.saveState( PANEL_ELEMENT_CONTROL.restoreReplace, [ currentElement, true ], [ currentElement, false ]); + var _z = currentElement.z; + LAYER_BACK_BUTTON.visible( _z > 0 ); + LAYER_FORWARD_BUTTON.visible( _z < PANEL_ELEMENT_ARRAY.length -1 ); + }; + function layerForward(){ + if( currentElement === null) return; + if( PANEL_ELEMENT_CONTROL.replace( currentElement, true) === false) return; + INFOMATION_WINDOW.update( currentElement); + HISTORY_CONTROL.saveState( PANEL_ELEMENT_CONTROL.restoreReplace, [ currentElement, false], [ currentElement, true]); + var _z = currentElement.z; + LAYER_BACK_BUTTON.visible( _z > 0); + LAYER_FORWARD_BUTTON.visible( _z < PANEL_ELEMENT_ARRAY.length -1); + }; + function del(){ + if( currentElement === null) return; + buttonBackOrForward( true); + PANEL_ELEMENT_CONTROL.remove( currentElement); + HISTORY_CONTROL.saveState( PANEL_ELEMENT_CONTROL.restore, [ true, currentElement], [ false, currentElement], true); + PANEL_ELEMENT_OPERATION_MANAGER.hide(); + }; + function edit(){ + if( currentElement === null || currentElement.type !== PANEL_ELEMENT_TYPE_TEXT) return; + TextEditor.boot( PANEL_CONTROL.x, PANEL_CONTROL.y, currentElement ); + buttonBackOrForward( true ); + }; + function change(){ + if( currentElement === null) return; + buttonBackOrForward( true); + PremiumSatge.boot( currentElement.getArtistID(), currentElement.resourcePicture ); + }; + function onImageSelect( resourcePicture ){ + currentElement.resourcePicture( resourcePicture ); + }; + return { + x: 0, + y: 0, + w: 0, + h: 0, + init: function(){ + app.addKeyEventListener( 'keydown', layerBack, 66, false, true ); + app.addKeyEventListener( 'keydown', layerForward, 70, false, true ); + app.addKeyEventListener( 'keydown', del, 68, false, true ); + app.addKeyEventListener( 'keydown', edit, 69, false, true ); + app.addKeyEventListener( 'keydown', change, 85, false, true ); + + var elmImgConsole = document.getElementById( 'image-element-consol' ), + imgConsoleSize = Util.getElementSize( elmImgConsole ); + imgConsoleWidth = imgConsoleSize.width; + imgConsoleHeight = imgConsoleSize.height; + styleImgConsole = elmImgConsole.style; + elmImgConsole.style.display = 'none'; + + var elmTextConsole = document.getElementById( 'text-element-consol' ), + textConsoleSize = Util.getElementSize( elmTextConsole ); + textConsoleWidth = textConsoleSize.width; + textConsoleHeight = textConsoleSize.height; + styleTextConsole = elmTextConsole.style; + styleTextConsole.display = 'none'; + + elmConsoleWrapper = document.getElementById( 'comic-element-consol-wrapper' ); + styleConsoleWrapper = elmConsoleWrapper.style; + elmConsoleParent = elmConsoleWrapper.parentNode; + styleConsoleWrapper.display = 'none'; + + app.addMouseEventListener( document.getElementById( 'edit-text-button' ), 'click', edit ); + app.addMouseEventListener( document.getElementById( 'delete-image-button' ), 'click', del ); + app.addMouseEventListener( document.getElementById( 'delete-text-button' ), 'click', del ); + app.addMouseEventListener( document.getElementById( 'change-image-button' ), 'click', change ); + app.addMouseEventListener( document.getElementById( 'layer-forward-button' ), 'click', layerForward ); + app.addMouseEventListener( document.getElementById( 'forward-text-button' ), 'click', layerForward ); + app.addMouseEventListener( document.getElementById( 'layer-back-button' ), 'click', layerBack ); + app.addMouseEventListener( document.getElementById( 'back-text-button' ), 'click', layerBack ); + + delete CONSOLE_CONTROLER.init; + }, + open: function(){ + LAYER_BACK_BUTTON = MENU_BAR_CONTROL.EDIT.createOption( 'layer back', 'ctrl + B', layerBack, false, true, false ); + LAYER_FORWARD_BUTTON = MENU_BAR_CONTROL.EDIT.createOption( 'layer forward', 'ctrl + F', layerForward, false, false, false ); + DELETE_BUTTON = MENU_BAR_CONTROL.EDIT.createOption( 'delete', 'ctrl + D', del, false, true, true ); + EDIT_BUTTON = MENU_BAR_CONTROL.EDIT.createOption( 'Edit Text', 'ctrl + E', edit, false, true, false ); + CHANGE_BUTTON = MENU_BAR_CONTROL.EDIT.createOption( 'change', 'ctrl + U', change, false, false, true ); + + delete CONSOLE_CONTROLER.open; + }, + show: function( _currentElement, _w, _h ){ + if( visible === false ) styleConsoleWrapper.display = ''; + visible = true; + currentElement = _currentElement; + var _currentType = _currentElement.type, + _z = _currentElement.z; + if( currentType !== _currentType ){ + currentType = _currentType; + styleImgConsole.display = _currentType === PANEL_ELEMENT_TYPE_IMAGE ? '' : 'none'; + styleTextConsole.display = _currentType === PANEL_ELEMENT_TYPE_TEXT ? '' : 'none'; + CONSOLE_CONTROLER.w = _currentType === PANEL_ELEMENT_TYPE_IMAGE ? imgConsoleWidth : textConsoleWidth; + CONSOLE_CONTROLER.h = _currentType === PANEL_ELEMENT_TYPE_IMAGE ? imgConsoleHeight : textConsoleHeight; + } + CONSOLE_CONTROLER.x = Math.floor( ( _w - CONSOLE_CONTROLER.w ) / 2 ); + + LAYER_BACK_BUTTON.visible( _z > 0 ); + LAYER_FORWARD_BUTTON.visible( _z < PANEL_ELEMENT_ARRAY.length - 1 ); + DELETE_BUTTON.visible( true); + EDIT_BUTTON.visible( _currentType === PANEL_ELEMENT_TYPE_TEXT ); + CHANGE_BUTTON.visible( false); + + if( _w > CONSOLE_CONTROLER.w * 1.5 && _h > CONSOLE_CONTROLER.h * 1.5 ){ + CONSOLE_CONTROLER.y = Math.floor( ( _h - CONSOLE_CONTROLER.h ) / 2 ); + elmConsoleWrapper.className = ''; + } else { + CONSOLE_CONTROLER.y = _h + tailSize; + elmConsoleWrapper.className = 'console-out'; + }; + styleConsoleWrapper.left = CONSOLE_CONTROLER.x + 'px'; + styleConsoleWrapper.top = CONSOLE_CONTROLER.y + 'px'; + }, + hide: function(){ + if( visible === true ) styleConsoleWrapper.display = 'none'; + visible = false; + currentElement = null; + LAYER_BACK_BUTTON.visible( false); + LAYER_FORWARD_BUTTON.visible( false); + DELETE_BUTTON.visible( false); + EDIT_BUTTON.visible( false); + CHANGE_BUTTON.visible( false); + }, + mousemove: function( _mouseX, _mouseY ){ + if( CONSOLE_CONTROLER.x > _mouseX || CONSOLE_CONTROLER.y > _mouseY || CONSOLE_CONTROLER.x + CONSOLE_CONTROLER.w < _mouseX || CONSOLE_CONTROLER.y + CONSOLE_CONTROLER.h < _mouseY ){ + buttonClickable === true && buttonBackOrForward( true ); + return false; + } + buttonClickable === false && buttonBackOrForward( false ); + return true; + } + } + })(); + +/* -------------------------------------------------------------------------------------------- + * TAIL_OPERATOR + * - panelElementOperator + */ + var TAIL_OPERATOR = ( function(){ + var styleMover, + SIZE, + SIN = Math.sin, + COS = Math.cos, + ATAN = Math.atan, + FLOOR = Math.floor, + DEG_TO_RAD = Math.PI / 180, + RAD_TO_DEG = 1 / DEG_TO_RAD, + currentText = null, + tailX, tailY, + x, y, w, h, + balloonW, balloonH, balloonA, radA, + visible = false, + startA; + + return { + init: function(){ + var elm = document.getElementById( 'balloon-tail-mover' ); + SIZE = Util.getElementSize( elm ).width; + styleMover = elm.style; + delete TAIL_OPERATOR.init; + }, + update: function ( _w, _h, _a ){ + balloonW = _w !== undefined ? _w : balloonW; + balloonH = _h !== undefined ? _h : balloonH; + balloonA = _a !== undefined ? _a : balloonA; + radA = ( balloonA - 90 ) * DEG_TO_RAD; + tailX = FLOOR( ( ( COS( radA ) / 2 + 0.5 ) * ( balloonW + SIZE )) - SIZE / 2 ); + tailY = FLOOR( ( ( SIN( radA ) / 2 + 0.5 ) * ( balloonH + SIZE )) - SIZE / 2 ); + styleMover.left = tailX +'px'; + styleMover.top = tailY +'px'; + //log.html( [ balloonW, balloonH, balloonA].join()); + }, + show: function( _currentText ){ + /* + * visibilityのほうがいい, display:none だと ie で描画が狂う + */ + styleMover.visibility = ''; + TAIL_OPERATOR.update( _currentText.w, _currentText.h, _currentText.angle() ); + currentText = _currentText; + }, + hitTest: function( _mouseX, _mouseY ){ + var _x = tailX -SIZE / 2, + _y = tailY -SIZE / 2; + ret = _x <= _mouseX && _y <= _mouseY && _x +SIZE >= _mouseX && _y +SIZE >= _mouseY; + ret === true && updateMouseCursor( 'move' ); + return ret; + }, + hide: function(){ + styleMover.visibility = 'hidden'; + currentText = null; + }, + onStart: function( _currentText, _mouseX, _mouseY ){ + if( _currentText.type !== PANEL_ELEMENT_TYPE_TEXT ) return false; + x = _currentText.x; + y = _currentText.y; + if( TAIL_OPERATOR.hitTest( _mouseX -x, _mouseY -y ) === true){ + w = _currentText.w; + h = _currentText.h; + currentText = _currentText; + startA = _currentText.angle(); + return true; + } + return false; + }, + onDrag: function( _mouseX, _mouseY ){ + _mouseX = _mouseX - x - w / 2; + _mouseY = _mouseY - y - h / 2; //Balloonの中心を0,0とする座標系に変換 + TAIL_OPERATOR.update( w, h, + _mouseX !== 0 ? + ATAN( _mouseY / _mouseX ) * RAD_TO_DEG + ( _mouseX > 0 ? 90 : 270 ) : + _mouseY > 0 ? 180 : 0 + ); + currentText && currentText.angle( FLOOR( balloonA + 0.5 )); + INFOMATION_WINDOW.update( currentText ); + }, + onFinish: function(){ + startA !== currentText.angle() && PANEL_ELEMENT_OPERATION_MANAGER.saveStatus( x, y, w, h, startA ); + startA !== currentText.angle() && PANEL_ELEMENT_OPERATION_MANAGER.resize( x, y, w, h, currentText.angle() ); + currentText = null; + }, + onCancel: function(){ + currentText.angle( startA); + PANEL_ELEMENT_OPERATION_MANAGER.resize( x, y, w, h, startA ); + currentText = null; + } + } + })(); + +/* -------------------------------------------------------------------------------------------- + * RESIZE_OPERATOR + * - panelElementOperator + */ + var RESIZE_OPERATOR = ( function(){ + var HIT_AREA = MOUSE_HIT_AREA, + POSITION_ARRAY = [], + FLOOR = Math.floor, + CURSOR_AND_FLIP = [ + { cursor: 'n-resize', v: 3 }, + { cursor: 'e-resize', h: 2 }, + { cursor: 'e-resize', h: 1 }, + { cursor: 'n-resize', v: 0 }, + { cursor: 'nw-resize', h: 5, v: 6, vh: 7 }, + { cursor: 'ne-resize', h: 4, v: 7, vh: 6 }, + { cursor: 'ne-resize', h: 7, v: 4, vh: 5 }, + { cursor: 'nw-resize', h: 6, v: 5, vh: 4 } + ], + elmResizerContainer, + elmResizerContainerStyle, + elmResizerTopStyle, + elmResizerLeftStyle, + elmResizerRightStyle, + elmResizerBottomStyle, + x, y, w, h, + currentIndex = -1, + currentElement, + currentIsTextElement = false; + + var RESIZE_WORK_ARRAY = [ + { x: 0, w: 0, y: 1, h: -1}, //top + { x: 1, w: -1, y: 0, h: 0}, //left + { x: 0, w: 1, y: 0, h: 0}, //right + { x: 0, w: 0, y: 0, h: 1}, //bottom + { x: 1, w: -1, y: 1, h: -1}, //top-left + { x: 0, w: 1, y: 1, h: -1}, //top-right + { x: 1, w: -1, y: 0, h: 1}, //bottom-left + { x: 0, w: 1, y: 0, h: 1} //bottom-right + ], + startX, startY, startW, startH, startFilpV, startFilpH, startAspect, + baseX, baseY, baseW, baseH, + currentX, currentY, currentW, currentH, + offsetX, offsetY, + lock = false, + error = 0; + + function draw( _x, _y, _w, _h ){ + x = _x = _x !== undefined ? _x : x; + y = _y = _y !== undefined ? _y : y; + w = _w = _w !== undefined ? _w : w; + h = _h = _h !== undefined ? _h : h; + try { + elmResizerContainerStyle.left = _x + 'px'; + elmResizerContainerStyle.top = _y + 'px'; + elmResizerContainerStyle.width = _w + 'px'; + elmResizerContainerStyle.height = _h + 'px'; + elmResizerTopStyle.left = elmResizerBottomStyle.left = FLOOR( _w / 2 - 5 ) + 'px'; + elmResizerLeftStyle.top = elmResizerRightStyle.top = FLOOR( _h / 2 - 5 ) + 'px'; + } catch(e){ + alert( [x, y, w, h].join( ',')); + return; + } + + POSITION_ARRAY.splice( 0, POSITION_ARRAY.length ); + POSITION_ARRAY.push( + {x: _x +5, y: _y -HIT_AREA, w: _w -5 *2, h: HIT_AREA +5}, + {x: _x -HIT_AREA, y: _y +HIT_AREA +5, w: HIT_AREA +5, h: _h -5 *2}, + {x: _x + _w -5, y: _y +HIT_AREA +5, w: HIT_AREA +5, h: _h -5 *2}, + {x: _x +5, y: _y +_h -5, w: _w -5 *2, h: HIT_AREA +5}, + {x: _x -HIT_AREA, y: _y -HIT_AREA, w: HIT_AREA +5, h: HIT_AREA +5}, + {x: _x + _w -HIT_AREA, y: _y -HIT_AREA, w: HIT_AREA +5, h: HIT_AREA +5}, + {x: _x -HIT_AREA, y: _y +_h -5, w: HIT_AREA +5, h: HIT_AREA +5}, + {x: _x +_w -5, y: _y +_h -5, w: HIT_AREA +5, h: HIT_AREA +5} + ); + } + + function update( _x, _y, _w, _h ){ + var __w, __h; + _x = _x !== undefined ? _x : currentX; + _y = _y !== undefined ? _y : currentY; + _w = _w !== undefined ? _w : currentW; + _h = _h !== undefined ? _h : currentH; + + if( currentIsTextElement === false && currentIndex > 3 && app.shiftEnabled() === true){ + if( startAspect >= 1 ){ + __w = _w; + _w = FLOOR( startAspect * _h ); + _x = _x +( currentIndex % 2 === 0 ? __w - _w : 0); + } else { + __h = _h; + _h = FLOOR( _w / startAspect ); + _y = _y + ( currentIndex <= 5 ? __h - _h : 0); + } + } + draw( x = _x, y = _y, w = _w, h = _h ); + currentElement.resize( _x, _y, _w, _h ); + currentIsTextElement === true && TAIL_OPERATOR.update( _w, _h ); + CONSOLE_CONTROLER.show( currentElement, _w, _h ); + INFOMATION_WINDOW.update( currentElement); + } + + function flip( _flipH, _flipV ){ + var p = CURSOR_AND_FLIP[ currentIndex ]; + currentIndex = _flipH === true || _flipV === true ? p[ + _flipH === true && _flipV === true ? 'vh' : ( _flipH === true ? 'h' : 'v' ) + ] : currentIndex; + updateMouseCursor( CURSOR_AND_FLIP[ currentIndex ].cursor ); + elmResizerContainer.className = 'current-resizer-is-' + currentIndex; + currentElement.flip( _flipH, _flipV ); + } + return { + init: function(){ + elmResizerContainer = document.getElementById( 'comic-element-resizer-container'); + elmResizerContainerStyle = elmResizerContainer.style; + elmResizerContainerStyle.display = 'none'; + + elmResizerTopStyle = document.getElementById( 'comic-element-resizer-top').style; + elmResizerLeftStyle = document.getElementById( 'comic-element-resizer-left').style; + elmResizerRightStyle = document.getElementById( 'comic-element-resizer-right').style; + elmResizerBottomStyle = document.getElementById( 'comic-element-resizer-bottom').style; + + delete RESIZE_OPERATOR.init; + }, + update: draw, + index: function( _mouseX, _mouseY ){ + var p, i; + for( i=4; i<8; i++ ){ + p = POSITION_ARRAY[ i ]; + if( p.x <= _mouseX && p.y <= _mouseY && p.x + p.w >= _mouseX && p.y +p.h >= _mouseY ){ + updateMouseCursor( CURSOR_AND_FLIP[ i].cursor); + elmResizerContainer.className = 'current-resizer-is-' +i; + return currentIndex = i; + } + } + for( i=0; i<4; i++ ){ + p = POSITION_ARRAY[ i ]; + if( p.x <= _mouseX && p.y <= _mouseY && p.x + p.w >= _mouseX && p.y +p.h >= _mouseY){ + updateMouseCursor( CURSOR_AND_FLIP[ i].cursor); + elmResizerContainer.className = 'current-resizer-is-' +i; + return currentIndex = i; + } + } + updateMouseCursor( '' ); + elmResizerContainer.className = ''; + return -1; + }, + show: function( _currentElement ){ + currentElement = _currentElement; + currentIsTextElement = _currentElement.type === PANEL_ELEMENT_TYPE_TEXT; + elmResizerContainerStyle.display = ''; + }, + hide: function(){ + currentElement = null; + elmResizerContainerStyle.display = 'none'; + }, + onStart: function( _currentElement, _mouseX, _mouseY ){ + currentElement = _currentElement; + currentIsTextElement = _currentElement.type === PANEL_ELEMENT_TYPE_TEXT; + if( _currentElement.keepSize === true) return false; + currentIndex = this.index( _mouseX, _mouseY); + if( currentIndex === -1) return false; + offsetX = _mouseX; + offsetY = _mouseY; + startX = baseX = _currentElement.x; + startY = baseY = _currentElement.y; + startW = baseW = _currentElement.w; + startH = baseH = _currentElement.h; + if( _currentElement.type === PANEL_ELEMENT_TYPE_IMAGE){ + startFilpV = _currentElement.flipV(); + startFilpH = _currentElement.flipH(); + } + startAspect = startW /startH; + return true; + }, + onDrag: function( _mouseX, _mouseY ){ + var com = RESIZE_WORK_ARRAY[ currentIndex], + moveX = _mouseX -offsetX, + moveY = _mouseY -offsetY, + _updated = moveX !== 0 || moveY !== 0, + _x, _y, _w, _h, + _thisError = 0; + + var _memoryX = 0, + _memoryY = 0, + _momoryW = 0, + _momoryH = 0; + /* + * Opera 11+ often forget values, why ?? + */ + while( _x === undefined || _y === undefined || _w === undefined || _h === undefined){ + _x = _x !== undefined ? _x : baseX +moveX *com.x; + _y = _y !== undefined ? _y : baseY +moveY *com.y; + _w = _w !== undefined ? _w : baseW +moveX *com.w; + _h = _h !== undefined ? _h : baseH +moveY *com.h; + error += _thisError === 0 ? 0 : 1; + ++_thisError; + if( _thisError > 9999){ + ++error + //alert( 'opera error' +error); + this.onCancel; + return; + } + } + + if( _w >= MIN_ELEMENT_SIZE && _h >= MIN_ELEMENT_SIZE){ + + } else + if( _w >= -MIN_ELEMENT_SIZE && _h >= -MIN_ELEMENT_SIZE){ + //return; + if( _w < MIN_ELEMENT_SIZE){ + //_x += Math.abs( MIN_ELEMENT_SIZE -_w); + _x = currentX; + _w = MIN_ELEMENT_SIZE; + } + if( _h < MIN_ELEMENT_SIZE){ + //_y += Math.abs( MIN_ELEMENT_SIZE -_h); + _y = currentY; + _h = MIN_ELEMENT_SIZE; + } + } else + if( currentElement.type === PANEL_ELEMENT_TYPE_TEXT){ + return; + } else + if( _w < -MIN_ELEMENT_SIZE || _h < -MIN_ELEMENT_SIZE){ + + if( _w < -MIN_ELEMENT_SIZE && _h > MIN_ELEMENT_SIZE){ + // flipH + _memoryX = _x; + baseX = _x = _x +_w; + baseY = _y; + baseW = _w = _memoryX -_x; + baseH = _h; + flip( true, false); + flipV = currentElement.flipV(); + } else + if( _w > MIN_ELEMENT_SIZE && _h < -MIN_ELEMENT_SIZE){ + // flipV + _memoryY = _y; + baseX = _x; + baseY = _y = _y +_h; + baseW = _w; + baseH = _h = _memoryY -_y; + flip( false, true); + flipH = currentElement.flipH(); + } else { + // flipVH + _memoryX = _x; + _memoryY = _y; + baseX = _x = _x +_w; + baseY = _y = _y +_h; + baseW = _w = _memoryX -_x; + baseH = _h = _memoryY -_y; + flip( true, true); + flipV = currentElement.flipV(); + flipH = currentElement.flipH(); + } + _updated = true; + offsetX = _mouseX; + offsetY = _mouseY; + } + currentX = _x; + currentY = _y; + currentW = _w; + currentH = _h; + _updated === true && update( _x, _y, _w, _h ); + /* + log.html( [ + 'currentIndex:', currentIndex, + 'baseW', baseW, 'baseH', baseH,'
', + 'mouse', _mouseX, _mouseY,'
', + 'move', moveX, moveY,'
', + 'xy', _x, _y, 'wh',_w, _h,'
', + 'com.w', com.w, 'com.h', com.h,'
', + 'current',currentW, currentH,'
', + 'result', y, h, + 'err', error + ].join( ' , ')); */ + }, + onFinish: function(){ + updateMouseCursor( ''); + if( w === startW && h === startH && x === startX && y === startY) return; + PANEL_ELEMENT_OPERATION_MANAGER.resize( x, y, w, h); + currentElement.resize( x, y, w, h); + PANEL_ELEMENT_OPERATION_MANAGER.saveStatus( startX, startY, startW, startH, undefined, startFilpV, startFilpH); + }, + onCancel: function(){ + updateMouseCursor( ''); + PANEL_ELEMENT_OPERATION_MANAGER.resize( startX, startY, startW, startH); + currentElement.type === PANEL_ELEMENT_TYPE_IMAGE ? + currentElement.animate( startX, startY, startW, startH, startFilpV, startFilpH) : + currentElement.animate( startX, startY, startW, startH, angle); + }, + lock: function( _lock ){ + if( _lock !== undefined){ + elmResizerContainerStyle.borderColor = _lock === true ? 'blue' : ''; + lock = _lock; + } + return lock; + }, + onShiftUpdate: update, + onCtrlUpdate: update + } + })(); + +/* -------------------------------------------------------------------------------------------- + * POSITION_OPERATOR + * - panelElementOperator + */ + var POSITION_OPERATOR = ( function(){ + var currentElement, + startX, startY, + x, y, + offsetX, offsetY, + isCopy = false; + function update( _x, _y ){ + x = _x !== undefined ? _x : x; + y = _y !== undefined ? _y : y; + RESIZE_OPERATOR.update( x, y ); + currentElement.resize( x, y ); + INFOMATION_WINDOW.update( currentElement ); + }; + return { + init: function(){ + delete POSITION_OPERATOR.init; + }, + onStart: function( _currentElement, _mouseX, _mouseY ){ + currentElement = _currentElement; + offsetX = _mouseX; + offsetY = _mouseY; + startX = x = _currentElement.x; + startY = y = _currentElement.y; + updateMouseCursor( 'move' ); + }, + onDrag: function( _mouseX, _mouseY ){ + var moveX = _mouseX - offsetX, + moveY = _mouseY - offsetY, + _x = startX + moveX, + _y = startY + moveY; + if( GRID_CONTROL.enabled() === true ){ + _x = Math.floor( _x / 10 ) * 10; + _y = Math.floor( _y / 10 ) * 10; + }; + update( _x, _y ); + }, + onFinish: function(){ + updateMouseCursor( '' ); + if( x === startX && y === startY ) return; + PANEL_ELEMENT_OPERATION_MANAGER.resize( x, y ); + currentElement.resize( x, y ); + PANEL_ELEMENT_OPERATION_MANAGER.saveStatus( startX, startY ); + }, + onCancel: function(){ + updateMouseCursor( '' ); + PANEL_ELEMENT_OPERATION_MANAGER.resize( startX, startY ); + currentElement.animate( startX, startY ); + }, + onShiftUpdate: update, + onCtrlUpdate: update + } + })(); + + +/* -------------------------------------------------------------------------------------------- + * PANEL_ELEMENT_OPERATION_MANAGER + */ + var PANEL_ELEMENT_OPERATION_MANAGER = ( function(){ + var HIT_AREA = MOUSE_HIT_AREA, + currentIsTextElement = false, + currentOperator = null, + currentElement = null, + currentX, currentY, currentW, currentH, angle, flipV, flipH; + + function resize( _x, _y, _w, _h, _angle ){ + currentX = _x = _x !== undefined ? _x : currentX; + currentY = _y = _y !== undefined ? _y : currentY; + currentW = _w = _w !== undefined ? _w : currentW; + currentH = _h = _h !== undefined ? _h : currentH; + angle = _angle = _angle !== undefined ? _angle : angle; + + RESIZE_OPERATOR.update( _x, _y, _w, _h ); + currentIsTextElement === true && TAIL_OPERATOR.update( _w, _h, angle ); + CONSOLE_CONTROLER.show( currentElement, _w, _h ); + INFOMATION_WINDOW.update( currentElement ); + }; + function show( _currentElement ){ + currentElement === null && RESIZE_OPERATOR.show( _currentElement ); + if( currentElement !== _currentElement ){ + currentElement = _currentElement; + + currentIsTextElement = ( _currentElement.type === PANEL_ELEMENT_TYPE_TEXT ); + currentIsTextElement === true ? TAIL_OPERATOR.show( _currentElement ) : TAIL_OPERATOR.hide(); + + flipV = currentIsTextElement === false ? _currentElement.flipV() : 0; + flipH = currentIsTextElement === false ? _currentElement.flipH() : 0; + + resize( + _currentElement.x, _currentElement.y, _currentElement.w, _currentElement.h, + currentIsTextElement === true ? _currentElement.angle() : 0 + ); + }; + }; + + return { + init: function(){ + TAIL_OPERATOR.init(); + RESIZE_OPERATOR.init(); + POSITION_OPERATOR.init(); + + app.addKeyEventListener( 'keychange', function( e ){ + currentOperator !== null && currentOperator.onShiftUpdate && currentOperator.onShiftUpdate(); + return false; + }, 16 ); + app.addKeyEventListener( 'keychange', function( e ){ + currentOperator !== null && currentOperator.onCtrlUpdate && currentOperator.onCtrlUpdate(); + return false; + }, 17 ); + app.addKeyEventListener( 'keydown', function( e ){ + currentOperator !== null && currentOperator.onCancel && currentOperator.onCancel(); + currentOperator = null; + return false; + }, 27, false, false ); + + delete PANEL_ELEMENT_OPERATION_MANAGER.init; + }, + open: function(){ + PANEL_ELEMENT_OPERATION_MANAGER.hide(); + + delete PANEL_ELEMENT_OPERATION_MANAGER.open; + }, + close: function(){ + + }, + hide: function(){ + currentElement !== null && RESIZE_OPERATOR.hide(); + currentElement = null; + updateMouseCursor( '' ); + TAIL_OPERATOR.hide(); + CONSOLE_CONTROLER.hide(); + INFOMATION_WINDOW.update( null ); + }, + resize: resize, + restoreState: function( arg ){ + if( arg && arg.length !== 8 ) return; + var _currentElement = arg[ 0 ], + _x = arg[ 1 ], _y = arg[ 2 ], _w = arg[ 3 ], _h = arg[ 4 ], + _a = arg[ 5 ], + _flipV = arg[ 6 ], _flipH = arg[ 7 ]; + if( !_currentElement && !currentOperator ) return; + _currentElement.type === PANEL_ELEMENT_TYPE_IMAGE ? + _currentElement.animate( _x, _y, _w, _h, _flipV, _flipH ) : + _currentElement.animate( _x, _y, _w, _h, _a ); + currentOperator !== null && currentOperator.onCancel && currentOperator.onCancel(); + currentOperator = null; + currentElement === _currentElement ? resize( _x, _y, _w, _h, _a ) : show( _currentElement ); + }, + saveStatus: function( startX, startY, startW, startH, startA, startFilpV, startFilpH ){ + startX = startX !== undefined ? startX : currentX; + startY = startY !== undefined ? startY : currentY; + startW = startW !== undefined ? startW : currentW; + startH = startH !== undefined ? startH : currentH; + startA = startA !== undefined ? startA : angle; + startFilpV = startFilpV !== undefined ? startFilpV : flipV; + startFilpH = startFilpH !== undefined ? startFilpH : flipH; + currentElement && HISTORY_CONTROL.saveState( PANEL_ELEMENT_OPERATION_MANAGER.restoreState, + [ currentElement, startX, startY, startW, startH, startA, startFilpV, startFilpH], + [ currentElement, currentX, currentY, currentW, currentH, angle, flipV, flipH] + ); + }, + busy: function(){ + return currentOperator !== null; + }, + hitTest: function( _mouseX, _mouseY, _panelElement ){ + var _x, _y, _w, _h; + if( _panelElement === currentElement ){ + var _consoleX = CONSOLE_CONTROLER.x; + _x = currentX +( _consoleX < 0 ? _consoleX : 0 ) - HIT_AREA; + _y = currentY - HIT_AREA; + var _consoleW = CONSOLE_CONTROLER.w; + _w = ( _consoleW < currentW ? currentW : _consoleW ) + HIT_AREA * 2; + var _consoleY = CONSOLE_CONTROLER.y; + _h = ( _consoleY < currentH ? currentH : _consoleY + CONSOLE_CONTROLER.h ) + HIT_AREA * 2; + } else { + _x = _panelElement.x - HIT_AREA; + _y = _panelElement.y - HIT_AREA; + _w = _panelElement.w + HIT_AREA *2; + _h = _panelElement.h + HIT_AREA *2; + } + return _x <= _mouseX && _mouseX <= _x + _w && _y <= _mouseY && _mouseY <= _y + _h; + }, + mousedown: function( _currentElement, _mouseX, _mouseY ){ + //show( _currentElement); + if( currentIsTextElement === true && TAIL_OPERATOR.onStart( _currentElement, _mouseX, _mouseY) === true){ + currentOperator = TAIL_OPERATOR; + } else + if( RESIZE_OPERATOR.onStart( _currentElement, _mouseX, _mouseY) === true){ + currentOperator = RESIZE_OPERATOR; + } else { + POSITION_OPERATOR.onStart( _currentElement, _mouseX, _mouseY) + currentOperator = POSITION_OPERATOR; + } + }, + mousemove: function( _currentElement, _mouseX, _mouseY ){ + show( _currentElement); + if( currentOperator !== null){ + currentOperator.onDrag( _mouseX, _mouseY ); + } else + if( currentElement !== null){ + CONSOLE_CONTROLER.mousemove( _mouseX - currentX, _mouseY - currentY ); + if( currentIsTextElement === false || TAIL_OPERATOR.hitTest( _mouseX -currentX, _mouseY -currentY) === false){ + RESIZE_OPERATOR.index( _mouseX, _mouseY); + } + } + }, + mouseup: function( _currentElement, _mouseX, _mouseY ){ + currentOperator !== null && currentOperator.onFinish(); + currentOperator = null; + } + } + })(); + /* + * // PANEL_ELEMENT_OPERATION_MANAGER + */ + + var AbstractPanelElement = function( COMIC_ELM_TYPE ){ + this.type = COMIC_ELM_TYPE; + this.hitTest = function( _mouseX, _mouseY ){ + return PANEL_ELEMENT_OPERATION_MANAGER.hitTest( _mouseX, _mouseY, this ); + } + this.shift = function( _shiftX, _shiftY ){ + this.resize( this.x + _shiftX, this.y + _shiftY); + } + this.busy = function(){ + return PANEL_ELEMENT_OPERATION_MANAGER.busy(); + } + this.mousemove = function( _mouseX, _mouseY ){ + PANEL_ELEMENT_OPERATION_MANAGER.mousemove( this, _mouseX, _mouseY ); + } + this.mouseup = function( _mouseX, _mouseY ){ + PANEL_ELEMENT_OPERATION_MANAGER.mouseup( this, _mouseX, _mouseY ); + } + this.mousedown = function( _mouseX, _mouseY ){ + PANEL_ELEMENT_OPERATION_MANAGER.mousedown( this, _mouseX, _mouseY ); + } + }; + +/* -------------------------------------------------------------------------------------------- + * ImageElementClass + */ + var jqImageElementOrigin; + var ImageElementClass = function( data ){ + jqImageElementOrigin = jqImageElementOrigin || $( app.fetchHTMLElement( 'imgElementTemplete' ) ); + + var jqWrap = jqImageElementOrigin.clone( true ), + flipH = data.width < 0 ? -1 : 1, + flipV = data.height < 0 ? -1 : 1, + resourcePicture = data.resource_picture, + actualW = data.resource_picture.width, + actualH = data.resource_picture.height, + reversibleImage = null, + self = this, + x, y, z, w, h; + function flipReversibleImage(){ + reversibleImage && reversibleImage.resize( flipH * w, flipV * h ); + }; + function updateResourcePicture( _resourcePicture ){ + resourcePicture = _resourcePicture; + + actualW = _resourcePicture.width; + actualH = _resourcePicture.height; + + var _reversibleImage = pettanr.image.createReversibleImage( + [ pettanr.CONST.RESOURCE_PICTURE_PATH, _resourcePicture.id, '.', _resourcePicture.ext ].join(''), + flipH * w, flipV * h + ); + if( reversibleImage !== null ){ + jqWrap.children( reversibleImage.elm ).replaceWith( _reversibleImage.elm ); + reversibleImage.destroy(); + } else { + jqWrap.append( _reversibleImage.elm ); + } + reversibleImage = _reversibleImage; + }; + /* global methods */ + this.$ = jqWrap; + //this.x = x; + //this.y = y; + //this.w = w; + //this.h = h; + this.z = data.z; + this.timing = data.t || PANEL_ELEMENT_ARRAY.length + 1; + this.keepSize = false; + this.init = function(){ + updateResourcePicture( data.resource_picture ); + self.resize( data.x, data.y, Math.abs( data.width ), Math.abs( data.height ) ); + delete self.init; + }; + this.flip = function( _updateH, _updateV ){ + if( _updateH !== true && _updateV !== true ) return; + flipH = _updateH === true ? -flipH : flipH; + flipV = _updateV === true ? -flipV : flipV; + reversibleImage.resize( flipH * w, flipV * h ); + }; + this.flipV = function(){ return flipV;} + this.flipH = function(){ return flipH;} + this.resourcePicture = function( _resourcePicture ){ + if( _resourcePicture && _resourcePicture !== resourcePicture ){ + HISTORY_CONTROL.saveState( updateResourcePicture, resourcePicture, _resourcePicture ); + updateResourcePicture( _resourcePicture ); + }; + return resourcePicture; + }; + this.getArtistID = function(){ + return resourcePicture.artist_id || resourcePicture.artist.id || -1; + }; + this.actualW = function(){ return actualW;} + this.actualH = function(){ return actualH;} + this.resize = function( _x, _y, _w, _h, animate ){ + self.x = x = Type.isFinite( _x ) === true ? _x : x; + self.y = y = Type.isFinite( _y ) === true ? _y : y; + self.w = w = Type.isFinite( _w ) === true ? _w : w; + self.h = h = Type.isFinite( _h ) === true ? _h : h; + jqWrap[ animate === true ? 'animate' : 'css' ]( { + left: x, + top: y, + width: w, + height: h + }, 250, flipReversibleImage ); + animate !== true && flipReversibleImage(); + }; + this.animate = function ( _x, _y, _w, _h, _flipH, _flipV ){ + flipH = _flipH !== undefined ? _flipH : flipH; + flipV = _flipV !== undefined ? _flipV : flipV; + self.resize( _x, _y, _w, _h, true ); + }; + this.destroy = function(){ + delete self.destroy; + + reversibleImage.destroy(); + jqWrap.stop().remove(); + jqWrap = reversibleImage = resourcePicture = data = self = null; + }; + }; + ImageElementClass.prototype = new AbstractPanelElement( PANEL_ELEMENT_TYPE_IMAGE ); +/* + * / ImageElementClass + * -------------------------------------------------------------------------------------------- + */ + + +/* -------------------------------------------------------------------------------------------- + * TextElementClass + * + * type + * 0.none + * 1.speach balloon + * 2.think + * 3.bom + * 4.black-box( dq style) + * 5.blue-box( ff style) + * + */ + var jqTextElementOrigin; + var TextElementClass = function( data ){ + jqTextElementOrigin = jqTextElementOrigin || ( function(){ + var _OLD_IE = $( app.fetchHTMLElement( 'textElementTempleteForOldIE' ) ), + _MODERN = $( app.fetchHTMLElement( 'textElementTemplete' ) ); + return UA.isIE === true && UA.ieRenderingVersion < 8 ? _OLD_IE : _MODERN; + })(); + + var JQ_WRAPPER = jqTextElementOrigin.clone( true ), + elmText = JQ_WRAPPER.find( 'td,.speach-inner' ).get( 0 ), + type = data.balloon_template_id, + text = ( function(){ + var _speachs = data.speeches_attributes; + for( var k in _speachs ){ + return _speachs[ k ].content || ''; + } + return ''; + })(), + balloon = pettanr.balloon.createBalloon( data.width, data.height, data.tail, type ), + x, y, w, h, a, + self = this; + + JQ_WRAPPER.find( 'img' ).eq( 0 ).replaceWith( balloon.elm ); + + function updateType( _type ){ + if( type !== _type ){ + type = _type || type; + balloon.type( type ); + } + } + function updateAngle( _a ){ + if( _a !== undefined && a !== _a ){ + a = _a !== undefined ? _a : a; + balloon.angle( a ); + } + } + function updateText( _text ){ + text = _text || text || ''; + elmText.firstChild.data = text; + } + function resizeBalloon(){ + balloon && balloon.resize( a, w, h ); + } + + /* global methods */ + this.$ = JQ_WRAPPER; + //this.x = x; + //this.y = y; + //this.w = w; + //this.h = h; + this.z = data.z; + this.timing = data.t || PANEL_ELEMENT_ARRAY.length + 1; + this.init = function(){ + updateText(); + self.resize( data.x, data.y, data.width, data.height, data.tail ); + delete self.init; + }; + this.angle = function( _a ){ + _a !== undefined && self.resize( x, y, w, h, _a ); + return a; + }; + this.text = function( _text ){ + if( _text && text !== _text) { + HISTORY_CONTROL.saveState( updateText, text || '', _text ); + updateText( _text ); + } + return text; + }; + this.resize = function( _x, _y, _w, _h, _a, animate ){ + self.x = x = _x !== undefined ? _x : x; + self.y = y = _y !== undefined ? _y : y; + self.w = w = _w !== undefined ? _w : w; + self.h = h = _h !== undefined ? _h : h; + a = _a !== undefined ? _a : a; + + JQ_WRAPPER[ animate === true ? 'animate' : 'css']( { + left: x, + top: y, + width: w, + height: h + }, 250, resizeBalloon + ); + animate !== true && resizeBalloon(); + }; + this.animate = function ( _x, _y, _w, _h, _a ){ + self.resize( _x, _y, _w, _h, _a, true ); + }; + this.destroy = function(){ + delete self.destroy; + + JQ_WRAPPER.stop().remove(); + balloon.destroy(); + JQ_WRAPPER = elmText = data = balloon = self = null; + }; + } + TextElementClass.prototype = new AbstractPanelElement( PANEL_ELEMENT_TYPE_TEXT ); + +/* -------------------------------------------------------------------------------------------- + * PANEL_ELEMENT_CONTROL + * - mouseEventListener + */ + var PANEL_ELEMENT_CONTROL = ( function(){ + var elmContainer, + currentElement = null, + currentLockTest = false, + currentLock = false, + panelX, panelY, panelW, panelH, + startX, startY; + /* + * append, remove, replace + * + * panelElement には、z-position と dom-index がある。 + * z-position は 表示上の位置。大きいほど前に表示される( z-index) + * dom-index は 意味上の順番。htmlタグの登場順で、検索結果や音声読み上げブラウザで正しく意味が取れる順番。 + * + * editerでは、実際には z-index は使わず、htmlの順序で前後を表現する。 + * dom-index は、数値のみ保持して、投稿時にpanelElementを適宜に並び替える。 + * + * append panelElement + * 1. 新しい panelElement の z-position を得る + * 2. z の同じ panelElementを見つけ、その前に加える。または一番先頭へ。(PANEL_ELEMENT_ARRAY) + * zが大きいほど、PANEL_ELEMENT_ARRAYの先頭へ。 + * 3. dom位置は、PANEL_ELEMENT_ARRAY とは反対に、前のものほど後ろへ。 + * + * + * remove panelElement + * 1. remove + * 2. renumber z + */ + function appendPanelElement( _panelElement ) { + var z = Type.isFinite( _panelElement.z ) === true ? _panelElement.z : -1, + l = PANEL_ELEMENT_ARRAY.length, + _jqElm = _panelElement.$.stop().css( { + filter: '', + opacity: '' + }); + if( z < 0 ){ + PANEL_ELEMENT_ARRAY.unshift( _panelElement ); + } else { + for( var i = 0; i < l; ++i ){ + if( PANEL_ELEMENT_ARRAY[ i ].z < z ) break; + }; + if( i === l ){ + PANEL_ELEMENT_ARRAY.push( _panelElement ); + } else { + PANEL_ELEMENT_ARRAY.splice( i, 0, _panelElement ); + }; + }; + renumber(); + _jqElm.fadeIn(); + }; + + function onFadeOut(){ + this.parentNode.removeChild( this ); + }; + /* + * PANEL_ELEMENT_ARRAY の順番を基準に、zの再計算 + * jqElmの並び替え。 + */ + function renumber(){ + var _panelElement, jqElm, jqNext; + for( var i = 0, l = PANEL_ELEMENT_ARRAY.length; i < l; ++i ){ + _panelElement = PANEL_ELEMENT_ARRAY[ i ]; + jqElm = _panelElement.$; + i === 0 && elmContainer.appendChild( jqElm.get( 0 ) ); + jqNext && jqNext.before( jqElm ); + if( phase === 1 ) _panelElement.z = l - i - 1; + jqNext = jqElm; + }; + }; + function onTextInput( _panelElement ){ + appendPanelElement( _panelElement ); + HISTORY_CONTROL.saveState( PANEL_ELEMENT_CONTROL.restore, [ false, _panelElement ], [ true, _panelElement ], true ); + }; + + return { + init: function(){ + elmContainer = document.getElementById( 'comic-element-container' ); + delete PANEL_ELEMENT_CONTROL.init; + }, + open: function(){ + + }, + close: function(){ + var _comicElm; + while( PANEL_ELEMENT_ARRAY.length > 0 ){ + _comicElm = PANEL_ELEMENT_ARRAY.shift(); + _comicElm.destroy && _comicElm.destroy(); + } + }, + remove: function( _panelElement ){ + var l = PANEL_ELEMENT_ARRAY.length; + for( var i=0; i
', _panelElement.text(), '<\/span>', '<\/div>' + + ].join( ''); + }; + }; + + function getJsonGetString(){ + timing = 0; + + var JSON_STRING_ARRAY = [], + ELEMENT_ARRAY = [], + l = panelElementArray.length, + cr = pettanr.LINE_FEED_CODE_TEXTAREA, + _panelElement; + + while( ELEMENT_ARRAY.length <= l){ + _panelElement = getPanelElementByTiming(); + if( _panelElement === null ) break; + + ELEMENT_ARRAY.push( _panelElement.type === 0 ? getImageJsonGET( _panelElement ) : balloonToJson( _panelElement )); + }; + return [ + '{', cr, + '"panel": {', cr, + '"id": ', panelID, ',', cr, + '"border": ', borderSize, ',', cr, + '"comic_id": ', comicID, ',', cr, + '"resource_picture_id": 1,', cr, + '"x": ', 0, ',', cr, + '"y": ', 0, ',', cr, + '"z": ', 0, ',', cr, + panelTimming !== -1 ? ( '"t": ' + panelTimming + ',' + cr ) : '', + '"width": ', panelW, ',', cr, + '"height": ', panelH, ',', cr, + '"panel_elements": [', cr, + ELEMENT_ARRAY.join( ',' + cr ), cr, + ']', cr, + '}', cr, + '}' + ].join( '' ); + }; + function getImageJsonGET( _imageElement ){ + var cr = pettanr.LINE_FEED_CODE_TEXTAREA; + return [ + '{', cr, + '"resource_picture": {', cr, + '"id": ', _imageElement.resourcePicture().id, ',', cr, + '"ext": ', '"',_imageElement.resourcePicture().ext, '"', cr, + '},', cr, + '"x": ', _imageElement.x, ',', cr, + '"y": ', _imageElement.y, ',', cr, + '"z": ', _imageElement.z, ',', cr, + '"width": ', _imageElement.flipH() * _imageElement.w, ',', cr, + '"height": ', _imageElement.flipV() * _imageElement.h, ',', cr, + '"t": ', timing, cr, + '}' + ].join( ''); + }; + + function getJsonPostString(){ + timing = 0; + + var JSON_STRING_ARRAY = [], + IMAGE_ARRAY = [], + BALLOON_ARRAY = [], + l = panelElementArray.length, + _panelElement, + cr = pettanr.LINE_FEED_CODE_TEXTAREA; + + while( IMAGE_ARRAY.length + BALLOON_ARRAY.length <= l){ + _panelElement = getPanelElementByTiming(); + if( _panelElement === null) break; + _panelElement.type === 0 ? + IMAGE_ARRAY.push( [ '"new', timing, '": ', imageToJson( _panelElement ) ].join( '' )) : + BALLOON_ARRAY.push( [ '"new', timing, '": ', balloonToJson( _panelElement ) ].join( '' ) ); + }; + return [ + '{', cr, + '"panel": {', cr, + '"id": ', panelID, ',', cr, + '"border": ', borderSize, ',', cr, + '"comic_id": ', comicID, ',', cr, + '"resource_picture_id": 1,', cr, + '"x": ', 0, ',', cr, + '"y": ', 0, ',', cr, + '"z": ', 0, ',', cr, + '"t": ', panelTimming, ',', cr, + '"width": ', panelW, ',', cr, + '"height": ', panelH, ',', cr, + '"panel_pictures_attributes": {', cr, + IMAGE_ARRAY.join( ',' + cr ), cr, + '},', cr, + '"balloons_attributes": {', cr, + BALLOON_ARRAY.join( ',' + cr ), cr, + '}', cr, + '}', cr, + '}' + ].join( '' ); + }; + function imageToJson( _imageElement ){ + var cr = pettanr.LINE_FEED_CODE_TEXTAREA; + return [ + '{', cr, + '"resource_picture_id": ', _imageElement.resourcePicture().id, ',', cr, + '"x": ', _imageElement.x, ',', cr, + '"y": ', _imageElement.y, ',', cr, + '"z": ', _imageElement.z, ',', cr, + '"width": ', _imageElement.flipH() * _imageElement.w, ',', cr, + '"height": ', _imageElement.flipV() * _imageElement.h, ',', cr, + '"t": ', timing, cr, + '}' + ].join( ''); + }; + + function balloonToJson( _textElement ){ + var cr = pettanr.LINE_FEED_CODE_TEXTAREA; + return [ + '{', cr, + '"balloon_template_id": ', 1, ',', cr, + '"system_picture_id": ', 1, ',', cr, + '"size": ', 1, ',', cr, + '"tail": ', _textElement.angle(), ',', cr, + '"x": ', _textElement.x, ',', cr, + '"y": ', _textElement.y, ',', cr, + '"z": ', _textElement.z, ',', cr, + '"t": ', timing, ',', cr, + '"width": ', _textElement.w, ',', cr, + '"height": ', _textElement.h, ',', cr, + '"speeches_attributes": {', cr, + '"newf', timing, '": {', cr, + '"content": "', _textElement.text(), '",', cr, + '"x": ', _textElement.x, ',', cr, + '"y": ', _textElement.y, ',', cr, + '"t": ', timing, ',', cr, + '"width": ', _textElement.w, ',', cr, + '"height": ', _textElement.h, cr, + '}', cr, + '}', cr, + '}' + ].join( ''); + }; + + function clickGenerate(){ + var i = comboboxFormat.selectIndex(), + text = 'sorry...'; + if( i === 0 ){ + text = getJsonPostString(); + } else + if( i === 1 ){ + text = getJsonGetString(); + } else + if( i === 3 ){ + text = getAsHtmlString( false, false ); + } else { + + }; + elmOutputArea.value = text; + }; + function clickClose(){ + OutputConsole.shutdown(); + return false; + }; + + /* grobal method */ + this.MIN_WIDTH = 320; + this.MIN_HEIGHT = 320; + this.onInit = function(){ + instance.rootElement.id = 'output-console-wrapper'; + instance.rootElement.className = 'console-wrapper'; + instance.rootElement.innerHTML = [ + '
Output Console
', + '
', + '
', + 'Format:', + '', + '
', + '
', + 'Options:', + 'absolute-path', + '
', + '
', + '
generate
', + '
close
', + '
', + '', + '
' + ].join( '' ); + + delete instance.onInit; + }; + this.onOpen = function( _w, _h, _comicID, _panelID, _panelTimming, _panelW, _panelH, _borderSize, _panelElementArray ){ + elmOutputArea = document.getElementById( 'output-area' ); + + var ui = instance.createUIGroup(); + comboboxFormat = ui.createCombobox( document.getElementById( 'output-console-format' ) ); + + for( var i=0; FORMAT_LIST[ 0 ]; ++i ){ + comboboxFormat.createOption( FORMAT_LIST.pop(), null, i === 0 ); + }; + inputOption = ui.createInputText( document.getElementById( 'output-console-option' ), null ); + buttonGenerate = ui.createButton( document.getElementById( 'output-console-generate-button' ), clickGenerate ); + buttonClose = ui.createButton( document.getElementById( 'output-console-close-button' ), clickClose ); + instance.onPaneResize( _w, _h ); + + comicID = _comicID; + panelID = _panelID; + panelTimming = _panelTimming; + panelW = _panelW; + panelH = _panelH; + borderSize = _borderSize; + panelElementArray = _panelElementArray; + + clickGenerate(); + }; + this.onPaneResize = function( _windowW, _windowH ){ + windowW = _windowW; + windowH = _windowH; + instance.rootElement.style.cssText = [ + 'left:', Math.floor( ( _windowW - instance.rootElement.offsetWidth ) /2 ), 'px;', + 'top:', Math.floor( ( _windowH - instance.rootElement.offsetHeight ) /2 ), 'px;' + ].join( '' ); + }; + this.onClose = function(){ + elmOutputArea.value = ''; + elmOutputArea = comboboxFormat = inputOption = buttonGenerate = buttonClose = panelElementArray = instance = null; + }; +}, true, false, 'Output Console', 'outputConsole', null, '#2D89F0' ); + +})( pettanr, gOS, window ); diff --git a/0.5.x/javascripts/peta.common.js b/0.5.x/javascripts/peta.common.js new file mode 100644 index 0000000..9cbafb6 --- /dev/null +++ b/0.5.x/javascripts/peta.common.js @@ -0,0 +1,1054 @@ +/* + * pettanR common.js + * version 0.4.37 + * + * author: itozyun + */ + +var pettanr = ( function(){ + var IS_LOCAL = document.location.href.indexOf( 'file:') === 0, + URL_PARAMS = ( function(){ + var search = document.location.search, + l = search.length; + if( 1 < l){ + var query = search.substring( 1), + params = query.split( '&'), + ret = {}, elm, name, v; + while( params.length > 0){ + elm = params.shift().split( '='); + name = decodeURIComponent( elm[ 0 ]); + if( elm.length === 2){ + v = decodeURIComponent( elm[ 1]); + if( '' + parseFloat( v ) === v ) v = parseFloat( v ); + if( '' + parseInt( v, 10 ) === '0' + v ) v = parseInt( v, 10 ); + if( v === 'true') v = true; + if( v === 'false') v = false; + if( v === 'null') v = null; + if( v === 'undefined') v = undefined; + ret[ name] = v; + } else + if( elm.length === 1){ + ret[ name] = true; + } + } + return ret; + } + return {}; + })(), + IS_DEBUG = Type.isBoolean( URL_PARAMS.debug ) ? URL_PARAMS.debug : IS_LOCAL === true; + return { + version: '0.5.0', + URL_PARAMS: URL_PARAMS, + LOCAL: IS_LOCAL, + DEBUG: IS_DEBUG, + LINE_FEED_CODE_TEXTAREA: ( function(){ + var text = document.createElement('textarea'); + text.value = '\n'; + return text.value; + })(), + LINE_FEED_CODE_PRE: ( function(){ + var pre = document.createElement('pre'); + pre.appendChild( document.createTextNode('\n')); + return pre.firstChild.data; + })() + } +})(); + +pettanr.CONST = ( function(){ + var SERVER_SUPPORT = !( 'has_server_support' in window && has_server_support === false ), + PETTANR_ROOT_PATH = ( function(){ + if( SERVER_SUPPORT === false ){ + var h1 = document.getElementsByTagName( 'h1' )[ 0 ]; + if( h1 ){ + var a = h1.getElementsByTagName( 'a' )[ 0 ]; + return a ? a.href : ''; + } + return ''; + } + var loc = document.location; + return [ loc.protocol, '\/\/', loc.host, '\/' ].join( '' ); + })(), + RELATIVE = ( function(){ + if( PETTANR_ROOT_PATH === '' ) return ''; + var ret = '', + loc = document.location, + path = [ loc.protocol, '\/', loc.host, '\/', loc.pathname.split( '\\' ).join( '\/' ) ].join( '' ), + l = path.split( '\/' ).length - PETTANR_ROOT_PATH.split( '\/' ).length; + for( var i=0; i= 0 ? v : -1; }, + pow = Math.pow, + round = Math.round, + floor = Math.floor, + TARGET = TAIL_WIDTH * TAIL_WIDTH, + isFinit = Type.isFinite, + ACCURACY = 1, // 有効少数桁 + cround = function ( v, r ){ + r = r || ACCURACY; + return round( v * pow( 10.0, r )) / pow( 10.0, r ); + }, + DEG_TO_RAD = Math.PI / 180; + + var XBROWSER_BALLOON_CLASS = function( w, h, a ){ + var balloonElm = vectorEnabled === true ? ELM_BALLOON_ORIGIN.cloneNode( true ) : document.createElement( 'img' ), // pettanr.imageに変更 + path = balloonElm.getElementsByTagName( 'path' )[ 0 ], + shape = balloonElm.getElementsByTagName( 'shape' )[ 0 ], + instance = this, + l = ','; + + function draw( _a ){ + var rx = w / 2, + ry = h / 2, + tailRad = _a * DEG_TO_RAD, + tailX = rx + ( rx + TAIL_HEIGHT ) * sin( tailRad ), + tailY = ry - ( ry + TAIL_HEIGHT ) * cos( tailRad ), + startX, startY, endX, endY; + /* + * tailの太さをTAIL_WIDTHに一致させるため、角度を絞りつつ計算 + */ + var startRad, endRad, + _startX, _startY, _endX, _endY, + tailDeg = 0, d; + + for( var i = 45; i > 0.01; i /= 2){ + d = ( tailDeg + i ) /2; + startRad = ( _a + d ) * DEG_TO_RAD; + endRad = ( _a - d ) * DEG_TO_RAD; + + _startX = rx + sin( startRad ) * rx; + _startY = ry - cos( startRad ) * ry; + _endX = rx + sin( endRad ) * rx; + _endY = ry - cos( endRad ) * ry; //円弧上のY位置=円中心Y+sin(角度×PI÷180)×円半径 + + if( pow( ( _startX - _endX ), 2 ) + pow( ( _startY - _endY ), 2 ) < TARGET ){ + tailDeg += i; + startX = _startX; + startY = _startY; + endX = _endX; + endY = _endY; + } + } + + /* + * + */ + if( IS_VML === true ){ + var _tailX = tailX *10, + _tailY = tailY *10, + __w = w *10, + __h = h *10; + + shape.style.width = w + 'px'; + shape.style.height = h + 'px'; + shape.coordsize = [ __w, __h ].join( l ); + shape.path = [ + ' ar ', 0, l, 0, l, __w, l, __h, l, + round( endX * 10 ), l, round( endY * 10 ), l, + round( startX * 10 ), l, round( startY * 10 ), + ' l ', round( _tailX ), l, round( _tailY ), + ' x e' + ].join( ''); + + balloonElm.style.marginTop = _tailY < 0 ? floor( ( 60 + _tailY) / 10 ) : 10; + balloonElm.style.marginLeft = _tailX < 0 ? floor( ( 60 + _tailX) / 10 ) : 10; + } else { + balloonElm.setAttribute( 'width', w + PADDING_LEFT *2 ); + balloonElm.setAttribute( 'height', h + PADDING_TOP *2 ); + path.setAttribute( 'd', [ + 'M', cround( tailX + PADDING_LEFT ), l, cround( tailY + PADDING_TOP ), + 'L', cround( startX + PADDING_LEFT ), l, cround( startY + PADDING_TOP ), + 'A', rx, l, ry, + '0 1 1', // flag + cround( endX + PADDING_LEFT ), l, cround( endY + PADDING_TOP ), + 'z' + ].join( ' ')); + } + } + + this.elm = balloonElm; + this.resize = function ( _a, _w, _h ){ + w = isFinit( _w ) === true ? _w - PADDING_TOP * 2 : w; + h = isFinit( _h ) === true ? _h - PADDING_LEFT * 2 : h; + // ie6 でリサイズが反応しない対策 + if( vectorEnabled === false && UA.isIE === true && UA.ieVersion < 7 ){ + var parent = balloonElm.parentNode; + parent.removeChild( balloonElm ); + parent.insertBefore( balloonElm, parent.firstChild ); + } + instance.angle( _a ); + }; + this.angle = function( _a ){ + if( isFinit( _a ) === true ){ + a = _a; + if( vectorEnabled === false ){ + balloonElm.src = pettanr.balloon.getBalloonUrl( w, h, _a ); + } else { + draw( _a ); + } + } + return a; + } + this.type = function( _type ){ + //draw( _a); + } + this.destroy = function(){ + delete instance.destroy; + balloonElm.parentNode && balloonElm.parentNode.removeChild( balloonElm ); + balloonElm = path = shape = instance = null; + } + + instance.resize( a, w, h ); + }; + + IS_VML === false && vectorEnabled === true && ( function(){ + var detect = new XBROWSER_BALLOON_CLASS( 100, 100, 0 ), + size = Util.getElementSize( detect.elm ); + vectorEnabled = size.width !== 0 && size.height !== 0; + detect.destroy(); + detect = size = null; + })(); + + return { + createBalloon: function( _w, _h, _a ){ + return new XBROWSER_BALLOON_CLASS( _w, _h, _a ); + }, + isBalloonInstance: function( _ballon ){ + + }, + getBalloonUrl: function( _w, _h, _a ){ + var d = 360 / NUM_BALLOON_IMAGE; + _a = _a + d / 2; + return [ + pettanr.CONST.SYSTEM_PICTURE_PATH, '_w', + _a < 360 - d / 2 ? floor( _a / d ) : 0, + _w <= 400 || _h <= 400 ? '_b1' : '', + '.gif' ].join( '' ); + }, + TYPE_NONE: 0, + TYPE_SPEACH_BALLOON: 1, + TYPE_THINKING: 2, + TYPE_BOM: 3, + TYPE_BLACK_BOX: 4, + TYPE_BLUE_BOX: 5 + } +})(); + +/* ---------------------------------------- + * pettanr.image + * + * xBackendな画像反転、画像描画機能。 + * + * 画像の反転 + * - css3 + * - ActiveX (ie) + * - VML (ie) + * - canvas ?? + * - flash(lite) + * - silverlight + * - pettan server + * + * png画像の表示(アルファpngをサポートしないie6以下のため) + * - ActiveX + * - VML + * - flash(lite) + * - silverlight + * + * -moz-transform:scale( -1, -1); + */ +pettanr.image = ( function(){ + + var FetchImageControl = ( function(){ + var TASK_LIST = []; + + /* + * FetchClass original is + * + * LICENSE: MIT? + * URL: http://d.hatena.ne.jp/uupaa/20080413/1208067631 + * AUTHOR: uupaa.js@gmail.com + * + */ + + var FetchClass = function( abspath, onLoadCallback, onErrorCallback, delay, timeout ){ + var img, + size, + tick = 0, + timer = null, + finish = false; + /* + if( UA.isIE === false && UA.ieVersion < 8 ){ + var images = document.images, + i=0, l= images.length; + for( i=0; i timeout ){ + finish = true; + timer = window.setTimeout( asyncCallback, 10 ); + return; + } + timer = window.setTimeout( detect, delay ); + } + + function asyncCallback(){ + size ? onLoadCallback( abspath, size.width, size.height ) : onErrorCallback( abspath ); + destroy(); + } + function destroy(){ + finish = true; + img.src = img.onload = img.onabort = img.onerror = ''; + img = void 0; + size = onLoadCallback = onErrorCallback = timer = null; + } + this.stop = function(){ + timer !== null && window.clearTimeout( timer ); + destroy(); + } + } + + return { + load: function( URLorELM, onLoad, onError, delay, opt_timeout ){ + var src, fetch; + if( Type.isString( URLorELM ) === true ){ + src = URLorELM; + } else + if( Type.isHTMLElement( URLorELM ) === true && URLorELM.tagName.toLowerCase() === 'img' ){ + src = URLorELM.src; + } else { + return; + } + + fetch = new FetchClass( + Util.getAbsolutePath( src ), + onLoad, onError, + Type.isFinite( delay ) === true ? delay : 250, + Type.isFinite( opt_timeout ) === true ? opt_timeout : undefined + ); + // TASK_LIST.push( fetch ); + + return fetch; + } + } + })(); + + var REG_PNG = /\.png?/i, + IS_CSS3 = 0, + IS_VML = 1, + IS_ACTIVEX = 2, + IS_CANVAS = 3, + IS_FLASH = 4, + IS_SILVERLIGHT = 5, + IS_SERVER = 6, + IS_ACTIVEX_SERVER = 7, + BACKEND = ( function(){ + if( pettanr.DEBUG === true && pettanr.URL_PARAMS.rimg ){ + var rimg = pettanr.URL_PARAMS.rimg.toLowerCase(); + if( rimg === 'css3' ) return IS_CSS3; + if( rimg === 'activex' ) return IS_ACTIVEX; + if( rimg === 'vml' ) return IS_VML; + } + if( UA.isIE === false || UA.ieVersion >= 9 ) return IS_CSS3; // 不十分! + if( UA.VML === true ) return IS_VML; + if( UA.ACTIVEX === true ) return IS_ACTIVEX; + if( pettanr.FLASH === true ) return IS_FLASH; + if( pettanr.SILVERLIGHT === true ) return IS_SILVERLIGHT; + return IS_SERVER; + })(), + BACKEND_WHEN_PNG = ( function(){ + if( UA.isIE === false || UA.ieVersion > 6 ) return BACKEND; + if( UA.VML === true ) return IS_VML; + if( pettanr.FLASH === true ) return IS_FLASH; + if( pettanr.SILVERLIGHT === true ) return IS_SILVERLIGHT; + if( UA.ACTIVEX === true ) return IS_ACTIVEX_SERVER; + return IS_SERVER; + })(), + CLASS_NAME = 'reversible-image-container', + CLASS_NAME_LOADING = CLASS_NAME + ' loading', + CLASS_NAME_ERROR = CLASS_NAME +' error', + RETRY_DELAY = 5000, + NUM_RETRY = 3, + ReversibleImageClass, + ReversibleImageClassWithPingfix; + + var css3Image = function( url, w, h, onLoadCallback ){ + var elmWrap = document.createElement( 'div' ), + elmImg = null, + retryTimer = null, + fetch = FetchImageControl.load( url, onLoad, onError, 100, 10000 ), + instance = this; + elmWrap.className = CLASS_NAME_LOADING; + + function onLoad( _url, _actualW, _actualH ){ + if( elmWrap === null ) return; + elmImg = new Image; // new Image でないと ie6,7 でクラッシュするかも、、、? + /* + * createElement 直後に append しないと、ie(ActiveX)で img が正しく表示されない. + */ + elmWrap.appendChild( elmImg ); + elmImg.setAttribute( 'src', url ); + elmWrap.className = CLASS_NAME; + onLoadCallback && onLoadCallback( _url, _actualW, _actualH ); + onLoadCallback = fetch = null; + instance.resize( w, h ); + } + function onError( _url ){ + if( elmWrap === null ) return; + elmWrap.className = CLASS_NAME_ERROR; + retryTimer = window.setTimeout( retry, RETRY_DELAY ); + fetch = null; + } + function retry(){ + elmWrap.className = CLASS_NAME_LOADING; + fetch = FetchImageControl.load( url, onLoad, onError, 100, 10000 ); + } + + this.elm = elmWrap; + this.resize = function( _w, _h ){ + w = _w !== undefined ? _w : w; + h = _h !== undefined ? _h : h; + if( elmImg === null ) return; + elmImg.className = w < 0 || h < 0 ? ( 'img-flip-' + ( w < 0 && h < 0 ? 'vh' : ( w < 0 ? 'h' : 'v'))) : ''; + } + this.destroy = function(){ + delete instance.destroy; + + elmImg !== null && elmWrap.removeChild( elmImg ); + retryTimer !== null && window.clearTimeout( retryTimer ); + fetch !== null && fetch.stop(); + elmWrap = elmImg = onLoadCallback = retryTimer = fetch = instance = null; + } + } + + var activexImage = css3Image; + + var vmlImage = function( url, w, h, onLoadCallback ){ + var elmWrap = document.createElement( 'div' ), + vmlImg = null, + retryTimer = null, + fetch = FetchImageControl.load( url, onLoad, onError, 100, 10000 ), + instance = this; + elmWrap.className = CLASS_NAME_LOADING; + function onLoad( _url, _actualW, _actualH ){ + if( elmWrap === null ) return; + elmWrap.className = CLASS_NAME; + vmlImg = document.createElement( 'v:image' ); + vmlImg.src = url; + onLoadCallback && onLoadCallback( _url, _actualW, _actualH ); + onLoadCallback = fetch = null; + instance.resize( w, h ); + } + function onError( _url ){ + if( elmWrap === null ) return; + elmWrap.className = CLASS_NAME_ERROR; + retryTimer = window.setTimeout( retry, RETRY_DELAY ); + fetch = null; + } + function retry(){ + elmWrap.className = CLASS_NAME_LOADING; + fetch = FetchImageControl.load( url, onLoad, onError, 100, 10000 ); + } + + this.elm = elmWrap; + this.resize = function( _w, _h ){ + w = _w !== undefined ? _w : w; + h = _h !== undefined ? _h : h; + if( vmlImg === null ) return; + vmlImg.style.width = ( w < 0 ? -w : w ) + 'px'; + vmlImg.style.height = ( h < 0 ? -h : h ) + 'px'; + //if( flipH !== _flipH || flipV !== _flipV){ + vmlImg.parentNode === elmWrap && elmWrap.removeChild( vmlImg ); + //} + vmlImg.className = w < 0 || h < 0 ? ( 'img-flip-' + ( w < 0 && h < 0 ? 'vh' : ( w < 0 ? 'h' : 'v'))) : ''; + elmWrap.appendChild( vmlImg ); + } + this.destroy = function(){ + instance.destroy; + + vmlImg !== null && elmWrap.removeChild( vmlImg ); + retryTimer !== null && window.clearTimeout( retryTimer ); + fetch !== null && fetch.stop(); + elmWrap = vmlImg = onLoadCallback = retryTimer = fetch = instance = null; + } + } + + var serverImage = css3Image; // function( url, w, h, onLoadCallback ){} + + if( BACKEND === IS_CSS3 ) ReversibleImageClass = css3Image; + if( BACKEND === IS_VML ) ReversibleImageClass = vmlImage; + if( BACKEND === IS_ACTIVEX ) ReversibleImageClass = activexImage; + if( BACKEND === IS_SERVER ) ReversibleImageClass = activexImage; + + css3Image = vmlImage = activexImage = activexImage = null; + + return { + createReversibleImage: function( url, w, h, onLoadCallback){ + return new ReversibleImageClass( url, w, h, onLoadCallback ); + } + } +})(); + +/* + * bind : 製本 + */ +pettanr.bind = ( function(){ + var BIND_WORKER_ARRAY = [], + NAMESPACE_CLASSNAME = pettanr.CONST.NS_PETTANR_COMIC + '-', + RESOURCE_PICTURE_PATH = pettanr.CONST.RESOURCE_PICTURE_PATH, + ELM_DETECT_WIDTH = ( function(){ + var ret = document.createElement( 'div'); + ret.style.cssText = 'width: auto;height: 0;padding: 0;margin: 0;display: block;visibility: hidden;float: none;position: static;'; + return ret; + })(), + ELM_TITLE_ORIGN = ( function(){ + + })(); + + /* + * original + * http://d.hatena.ne.jp/uupaa/20090720/1248097177 + */ + var ResizeAgentClass = function( onResizeFunction, opt_elmCheck){ + var _globalLock = 0, + _size = { w: 0, h: 0 }; + _ie = !!document.all, + _quirks = (document.compatMode || "") !== "CSS1Compat", + _ieroot = _quirks ? "body" : "documentElement"; + _root = opt_elmCheck ? opt_elmCheck : ( _ie ? document[_ieroot] : window); + + function getInnerSize() { + return { + w: _root.innerWidth || _root.clientWidth, + h: _root.innerHeight || _root.clientHeight + }; + } + + function loop() { + if (!_globalLock++) { + var size = getInnerSize(); + if (_size.w !== size.w || _size.h !== size.h) { // resized + _size = size; // update + onResizeFunction( _size ); + } + setTimeout( unlock, 0); // delay unlock + } + setTimeout(loop, 500); + } + function unlock(){ + _globalLock = 0; + } + loop(); + } + + + var ElementBuilderClass = function( elmTarget, noClassnameMode ){ + var RIMG_ARRAY = [], + BALLOON_ARRAY = []; + + function buildComicElement(){ + + } + + function buildPanelElement( json, zoom ){ + var _elmPanel = document.createElement( 'div' ), + _style = { + 'border-width': typeof json.border === 'number' ? json.border + 'px' : 0, + width: json.width + 'px', + height: json.height + 'px' + }, + _cssText = [], + _comicElements = json.panel_elements || [], + _comicElement, _elmImg, _rImg, _rPic, + _balloon, _elmBalloonWrap, _elmText, _text, _speechesAttributes, _key; + if( noClassnameMode === true ){ + + } else { + _elmPanel.className = NAMESPACE_CLASSNAME + 'panel'; + } + for( var _key in _style ){ + _cssText.push( _key + ':' + _style[ _key ] ); + } + _elmPanel.style.cssText = _cssText.join( ';'); + elmTarget.appendChild( _elmPanel ); + + for( var i=0, l=_comicElements.length; i 0 ){ + RIMG_ARRAY.shift().destroy(); + } + while( BALLOON_ARRAY.length > 0 ){ + BALLOON_ARRAY.shift().destroy(); + } + Util.removeAllChildren( elmTarget ); + } + + this.build = function( json, zoom ){ + clean(); + + // json is Comic ? Panel ? + var panels = json.panels; + if( Type.isArray( panels ) === true ){ + // comic + for( var i=0, l=panels.length; i 1){ + var _cssTexts = _elm.style.cssText.split( ';'), _css, + _separate, + _cssObject = {}, _target, _value, _number, _px, + j; + for(var i=0, l=_cssTexts.length; i= 3){ + _target = _css.substr( 0, _separate +1); + _value = _css.substr( _separate +1); + /* + * ie filter + */ + if( _target === FILTER){ + for( j=0; j<_numAttributes; ++j){ + if( _targetAttributes[ j] === OPACITY){ + _cssTexts[ i] = [ + _target, ':', + _value.replace( REG_ALPHA, "alpha(opacity=" + _updateParameters[ j] * 100 + ")") + ].join( ''); + break; + } + } + /* + * other + */ + } else { + _number = '' + parseFloat( _value); + _px = _value.indexOf( _number); + _px = _px > 0 ? _value.substr( _px + _number.length) : ''; + for( j=0; j<_numAttributes; ++j){ + if( _targetAttributes[ j] === _target){ + _cssTexts[ i] = [ _target, ':', _updateParameters[ j], _px].join( ''); + break; + } + } + } + } + } + _elm.style.cssText = _cssTexts.join( ';'); + return; + } + /* + * 一度に update する Attributes が少ない場合、cssText は使用しない. + */ + } + + var AnimationTaskClass = function( ELM, currentParameters, offsetParameters, endParameters, targetAttributes, onComplete, onEnterFrame, numFrames){ + var l = targetAttributes.length; + return { + elm: ELM, + onEnterFrame: function(){ + var _updateCss = {}, i; + if( numFrames === 1){ + for( i=0; i box.offsetWidth) { + // clearInterval(iID); + self.removeTimer( GameLoop ); + iID = null; + Init(); + + // box.onmousemove = ''; + self.removeMouseEventListener( box, 'mousemove', MovePaddle ); + + msg.data = 'You Win!
Click on Paddle to Re-Start Game.'; + } + + // COLLISION DETECTION + + // If ball hits upper or lower wall + if(ballY < 0 || ((ballY + ball.offsetHeight) > box.offsetHeight)) + dy = -dy; + // Make x direction opposite + + // If ball hits player paddle + + if(ballX < (paddle1.offsetLeft + paddle1.offsetWidth)) + if(((ballY + ball.offsetHeight) > playerY) && ballY < (playerY + paddle1.offsetHeight)) + dx = -dx; + + // If ball hits CPU paddle + if((ballX + ball.offsetWidth) > paddle2.offsetLeft) + if(((ballY + ball.offsetHeight) > cpuY) && ballY < (cpuY + paddle2.offsetHeight)) + dx = -dx; + + // Place ball at calculated positions + + ball.style.left = ballX + 'px'; + ball.style.top = ballY + 'px'; + + // MOVE CPU PADDLE + // Move paddle only if ball is coming towards the CPU paddle + if(dx > 0) { + if((cpuY + (paddle2.offsetHeight / 2)) > (ballY + ball.offsetHeight)) + cpuY -= CPUSpeed; + else + cpuY += CPUSpeed; + + paddle2.style.top = cpuY + 'px'; + } + } + + // TO MOVE PLAYER PADDLE ON MOUSE MOVE EVENT + function MovePaddle(e) { + // Fetch y coordinate of mouse + var y = (e.clientY - (box.offsetTop - document.documentElement.scrollTop)); + // Here, (box.offsetTop - document.documentElement.scrollTop) will get the relative + // position of "box" w.r.t to current scroll postion + + // If y below lower boundary (cannot go above upper boundary - + // mousemove event only generated when mouse is inside box + if(y > (box.offsetHeight - paddle1.offsetHeight)) + y = (box.offsetHeight - paddle1.offsetHeight); + + // Copy position + playerY = y; + // Set position + + paddle1.style.top = y + 'px'; + } + + var self = this; + + this.bgColor = '#000000'; + this.MIN_WIDTH = 500; + this.MIN_HEIGHT = 300; + this.onInit = function(){ + self.rootElement.id = 'pon-root'; + self.rootElement.innerHTML = [ + '
', + '
', + '
', + '
●
', + '
msg
', + '
', + '
close
' + ].join( '' ); + }; + this.onOpen = function( _w, _h ){ + winW = _w; + winH = _h; + + Init(); + self.onPaneResize( _w, _h ); + + self.addMouseEventListener( paddle1, 'click', Start ); + self.addMouseEventListener( close, 'click', self.close ); + }; + this.onPaneResize = function( _w, _h ){ + var h = Util.getElementSize( self.rootElement ).height; + self.rootElement.style.marginTop = Math.floor( _h / 2 - h / 2 ) + 'px'; + }; + this.onClose = function(){ + // iID && clearInterval( iID ); + }; + + }, false, true, 'pon', 'pon', null, '#1C1C1C' ); +})( gOS, window ); diff --git a/0.5.x/javascripts/system.js b/0.5.x/javascripts/system.js new file mode 100644 index 0000000..b123e1f --- /dev/null +++ b/0.5.x/javascripts/system.js @@ -0,0 +1,3867 @@ +/* + * http://pettanr.sourceforge.jp/test/type.html + */ + var Type = { + isObject : function(v) { + return v !== null && typeof v === 'object'; + }, + isFunction : function(v) { + return typeof v === 'function'; + }, + isArray : function(v) { + return Object.prototype.toString.call(v) === "[object Array]"; + }, + isBoolean : function(v) { + return typeof v === 'boolean'; + }, + isString : function(v) { + return typeof v === 'string'; + }, + isNumber : function(v) { + return typeof v === 'number'; + }, + isFinite : function(v){ + return Type.isNumber(v) === true && isFinite(v); + }, + isHTMLElement : function(v){ + if( 'HTMLElement' in window ){ + Type.isHTMLElement = function(v){ + return v instanceof HTMLElement; + } + } else { + Type.isHTMLElement = function(v) { + if( Type.isObject(v) === false ){ + return false; + } + var r; + if(v && v.nodeType === 1){ + try{ + r = v.cloneNode(false); + } catch(n) { + return false; + } + if(r === v) return false; + try{ + r.nodeType = 9; + return r.nodeType === 1; + } catch(n) {} + return true; + } + return false; + } + } + return Type.isHTMLElement(v); + }, + /* + isElementCollection : function(v) { + return (Object.prototype.toString.call(v) === "[object HTMLCollection]"); + }, + */ + isNull : function(v) { + return v === null; + }, + isUndefined : function(v) { + return typeof v === 'undefined'; + } + }; + +/* ---------------------------------------------------- + * Util + * + * extend( baseInstance, extend) + * cleanCommnetNode() + * cleanElement() + * getElementSize( _elm) + * getImageSize() + * getAbsolutePath() + * getGrobalObjectName() + * + */ + var Util = ( function(){ + var ELM_SIZE_GETTER = ( function(){ + var ret = document.createElement( 'DIV' ), + style = ret.style; + ret.id = 'elmSizeGetter'; + style.position = 'absolute'; + style.left = '0px'; + style.top = '-9999px'; + style.visibility = 'hidden'; + document.body.appendChild( ret); + return ret; + })(), + IMG_SIZE_GETTER = ( function(){ + var ret = ELM_SIZE_GETTER.cloneNode( true ); + ret.id = 'imgSizeGetter'; + document.body.appendChild( ret); + return ret; + })(), + CLEAN_TARGET_ELEMENT = 'script,style,object,applet,embed,iframe,frame,base,bgsound,frameset,listing'.split( ',' ); + + /* clean comment node */ + cleanCommnetNode(); + + /* clean noscript */ + ( function(){ + var nodeNoscript = document.getElementsByTagName( 'noscript' ), + noscript; + for( var i=0; i array + for( i=0, l=_children.length; i'; + return e.firstChild.href; + }, + getAbsolutePosition: function( _elm){ + // Find the destination's position + var destx = _elm.offsetLeft, + desty = _elm.offsetTop, + thisNode = _elm, + body = document.body; + while (thisNode.offsetParent && thisNode.offsetParent !== body){ + thisNode = thisNode.offsetParent; + destx += thisNode.offsetLeft; + desty += thisNode.offsetTop; + } + return { + x: destx, + y: desty + } + }, + pullHtmlAsTemplete: function( html ){ + var elm = document.createElement( 'div' ); + elm.innerHTML = html; + return elm.firstChild; + }, + getElementsByClassName: function( _elm, _className, opt_tagName){ + var _all = !opt_tagName || opt_tagName === '*', + _nodes = _all === true ? ( _elm.all || _elm.getElementsByTagName( '*')) : _elm.getElementsByTagName( opt_tagName), + _node, _classes, ret = []; + for( var i=0, l = _nodes.length; i' : 'iframe'); + + if( ua.isIE){ + el.onreadystatechange = detect; + } else { + // iron(chrome) の場合、append の前に onload を指定しないと onload が呼ばれない + el.onload = onLoad; + //setTimeout( asynkCallback, 0 ); + } + + document.body.appendChild( el); + el.id = el.name = id; + el.setAttribute( 'name', id); + el.style.cssText = 'width:1px;height:1px;visibility:hidden;position:absolute;top:1px;left:1px;'; + // http://d.hatena.ne.jp/onozaty/20070830/p1 + // [JavaScript]IE6ではJavaScriptで動的に作成したiframeに対してsubmitできない(IE7は未確認) ->解決 + el.contentWindow.name = id; + + window[id] = el; + + function detect(){ + if ( this.readyState === "complete" ){ + this.onreadystatechange = new Function(); + this.onreadystatechange = null; + setTimeout( asynkCallback, 0 ); + }; + }; + function onLoad(){ + el.onload = null; + setTimeout( asynkCallback, 0 ); + }; + function asynkCallback(){ + callback( el ); + }; + } + } + })(); + + +/* + * UA + * + * detect userAgent + * detect plug in + */ + var UA = ( function(){ + var ua = (function(){ + var acme = {}; + + var n = navigator; + var dua = n.userAgent; + var dav = n.appVersion; + var tv = parseFloat(dav); + acme.isOpera = (dua.indexOf("Opera") >= 0) ? tv: undefined; + acme.isKhtml = (dav.indexOf("Konqueror") >= 0) ? tv : undefined; + acme.isWebKit = parseFloat(dua.split("WebKit\/")[1]) || undefined; + acme.isChrome = parseFloat(dua.split("Chrome\/")[1]) || undefined; + acme.isGecko = (dua.indexOf("Gecko\/") >= 0) ? parseFloat(dua.split("rv:")[1].replace( /^(\d*\.\d*)\.(\d*)/, '$1$2' )) : undefined; + var index = Math.max(dav.indexOf("WebKit"), dav.indexOf("Safari"), 0); + if(index && !acme.isChrome){ + acme.isSafari = parseFloat(dav.split("Version/")[1]); + if(!acme.isSafari || parseFloat(dav.substr(index + 7)) <= 419.3){ + acme.isSafari = 2; + } + } + if(document.all && !acme.isOpera){ + acme.isIE = parseFloat(dav.split("MSIE ")[1]) || undefined; + } + + return acme; + })(), + isIE = navigator.userAgent.toLowerCase().indexOf( 'msie') !== -1, + ieVersion = isIE === true ? parseInt( navigator.appVersion.toLowerCase().replace( /.*msie[ ]/, '').match( /^[0-9]+/)) : 0, + ieRenderingVersion = ieVersion === 8 ? document.documentMode : ieVersion, + isStanderdMode = document.compatMode === 'CSS1Compat', + ActiveX = ( function(){ + if( isIE === false || ieVersion > 8 ) return false; + var b = document.body, + c = b.className || '', + x, + ret = undefined, //pettanr.URL_PARAMS.ActiveX, + ns = 'pettanr-ActiveX-', + enabled = 'enabled', + disabled = 'disabled'; + if( ret !== true && ret !== false){ + if( Util.hasClassName( b, ns + enabled) === true ) return true; + if( Util.hasClassName( b, ns + disabled) === true ) return false; + x = document.createElement( 'div' ); + b.appendChild(x); + x.style.cssText = 'width:1px;height:1px;line-height:1px;filter:progid:DXImageTransform.Microsoft.Shadow()'; + ret = x.offsetHeight > 1; + b.removeChild(x); + } + b.className += [ c !== '' ? ' ' : c, ns, ret === true ? enabled : disabled ].join( ''); + return ret; + })(), + VML = ( function(){ + if( ActiveX === false || isIE === false || ieVersion > 8) return false; + var globalObjectName = Util.createGlobalUniqueName(), + script, + id = 'detectVML'; + document.write( [ ''].join( '')); + if( window[globalObjectName] === 1){ + script = document.getElementById( id); + script.parentNode.removeChild( script); + window[globalObjectName] = null; + return true; + } + return false; + })(), + isStandAloneMode = ( function(){ + if( isIE === false) return false; + if( VML === true) return false; + var globalObjectName = Util.createGlobalUniqueName(), + script, + id = 'detectStandAlone'; + document.write( [ ''].join( '')); + if( window[globalObjectName] === 1){ + script = document.getElementById( id); + script.parentNode.removeChild( script); + window[globalObjectName] = null; + return false; + } + return true; + })(); + return { + IE: ua.isIE, + GECKO: ua.isGecko, + OPERA: ua.isOpera, + KHTML: ua.isKhtml, + WEBKIT: ua.isWebKit, + CHROME: ua.isChrome, + isIE: isIE, + ieVersion: ieVersion, + ieRenderingVersion: ieRenderingVersion, + isStanderdMode: isStanderdMode, + ACTIVEX: ActiveX, + VML: VML, + STANDALONE: isStandAloneMode, + VENDER_PREFIX: ( function() { + var ua = navigator.userAgent.toLowerCase(); + if ( ua.indexOf('opera') !== -1 ){ + return 'O'; + } else if ( ua.indexOf('msie') !== -1 ){ + return 'ms'; + } else if ( ua.indexOf('webkit') !== -1 ){ + return 'webkit'; + } else if ( navigator.product === 'Gecko' ){ + return 'Moz'; + } + return ''; + })(), + startVML: function(){ + delete UA.startVML; + if( UA.VML !== true) return false; + if (!document.namespaces["v"]) { + document.namespaces.add("v", "urn:schemas-microsoft-com:vml", "#default#VML"); + } + document.createStyleSheet().cssText = "v\:shape,v\:image{behavior:url(#default#VML);display:block;};"; + } + } + })(); + + + +/* ---------------------------------------------------- + * gadgetOS + * + */ + +( function( window, undefined ){ + + var doc = window.document; + var body = ( doc.compatMode || '' ) !== 'CSS1Compat' ? doc.body : doc.documentElement;// doc.getElementsByTagName( 'body' )[ 0 ]; // + + var SERVICE_LIST = []; + var SUPER_USER_KEY = { getUID: function(){ return 0; }}; + var API_USER_LIST = [ SUPER_USER_KEY ]; + var numApiUser = 1; + + function isApiUser( _user ){ + if( _user === SUPER_USER_KEY ) return true; + if( File.isDriver( _user ) === true ) return true; + if( Application.isApplicationInstance( _user ) === true ) return true; + return false; + } + + var Const = { + FILE: { + TYPE: { + UNKNOWN: 0, + FOLDER: 1, + IMAGE: 2, + TEXT: 3, + HTML: 4, + CSV: 5, + JSON: 6, + XML: 7 + }, + STATE: { + UNKNOWN: 0, + OK: 1, + LOADING: 2, + ERROR: 3, + BROKEN: 4 + }, + UPDATE_POLICY: { + _____: parseInt( '00000', 2 ), + ____C: parseInt( '00001', 2 ), // hasCreateMenu + ___W_: parseInt( '00010', 2 ), // isWritable + ___WC: parseInt( '00011', 2 ), // isWritable + __R__: parseInt( '00100', 2 ), // isRenamable + __R_C: parseInt( '00101', 2 ), // hasCreateMenu + __RW_: parseInt( '00110', 2 ), // isWritable + __RWC: parseInt( '00111', 2 ), // isWritable + _S___: parseInt( '01000', 2 ), // childrenIsSortable + _S__C: parseInt( '01001', 2 ), + _S_W_: parseInt( '01010', 2 ), + _S_WC: parseInt( '01011', 2 ), + _SR__: parseInt( '01100', 2 ), + _SR_C: parseInt( '01101', 2 ), + _SRW_: parseInt( '01110', 2 ), + _SRWC: parseInt( '01111', 2 ), + D____: parseInt( '10000', 2 ), + D___C: parseInt( '10001', 2 ), // hasCreateMenu + D__W_: parseInt( '10010', 2 ), // isWritable + D__WC: parseInt( '10011', 2 ), // isWritable + D_R__: parseInt( '10100', 2 ), // isRenamable + D_R_C: parseInt( '10101', 2 ), // hasCreateMenu + D_RW_: parseInt( '10110', 2 ), // isWritable + D_RWC: parseInt( '10111', 2 ), // isWritable + DS___: parseInt( '11000', 2 ), // childrenIsSortable + DS__C: parseInt( '11001', 2 ), + DS_W_: parseInt( '11010', 2 ), + DS_WC: parseInt( '11011', 2 ), + DSR__: parseInt( '11100', 2 ), + DSR_C: parseInt( '11101', 2 ), + DSRW_: parseInt( '11110', 2 ), + DSRWC: parseInt( '11111', 2 ), + CREATE: 1, + WRAITE: 2, + RENAME: 4, + SORT: 8, + DELETE: 16 + }, + EVENT: { + UPDATE_ATTRIVUTE: 'onFileUpdate', + GET_SEQENTIAL_FILES:'gotSeqentilFiles' + }, + DATA_PROPERTY_RESERVED: [ + 'children', 'driver', 'state', 'type' + ] + }, + TREE: { + EVENT: { + UPDATE: 'onTreeUpdate' + } + }, + KEY: { + EVENT: { + KEY_DOWN: 'keydown', + KEY_UP: 'keyup', + KEY_CHANGE: 'keychange', + CURSOL: 'cursol' + } + } + }; + +var EX = ( function(){ + var F = new Function(); + + function clone( src ) { + var ret; + if( Type.isArray(src) === true ){ + ret = []; + } else + if( Type.isObject(src) === true ){ + ret = {}; + } else + if( Type.isNumber(src) === true || Type.isString(src) === true || Type.isBoolean( src ) === true ){ + return src; + } else { + return null; + } + for( var key in src ){ + ret[ key ] = clone( src[ key ]); + } + return ret; + }; + + return { + extend: function( base, extend ){ + F.prototype = base; + var ret = new F; + for( var p in extend ){ + ret[ p ] = extend[ p ]; + }; + return ret; + }, + clone: function( obj ){ + return clone( obj ); + }, + kill: function(){ + var self = this, v; + for( var p in s ){ + if( self.hasOwnProperty && !self.hasOwnProperty( p ) ) continue; + v = self[ p ]; + v && v instanceof TicketBase && self.kill(); + delete self[ p ]; + } + } + } +})(); + +var TicketBase = function(){ + this.kill = function(){ + var t = this, v; + for( var p in t ){ + if( t.hasOwnProperty && !t.hasOwnProperty( p ) ) continue; + v = t[ p ]; + v && v instanceof TicketBase && v.kill(); + delete t[ p ]; + } + }; +}; + + + +/* -------------------------------------------------------------- + * System Timer + * + */ + +var SystemTimer = ( function(){ + var setTimeout = window.setTimeout; + var clearTimeout = window.clearTimeout; + var INTERVAL_TIME = 16; + var TICKET_LIST = []; + var timerId = undefined; + var next = 0; + + function loop(){ + for( var i = 0; i < TICKET_LIST.length; ) { + if( TICKET_LIST[ i ].call( next ) !== false ) ++i; + }; + timerId = undefined; + update(); + }; + function update(){ + var l = TICKET_LIST.length, + n = 99999999, + c; + if( l === 0 ){ + timerId !== undefined && clearTimeout( timerId ); + timerId = undefined; + return; + }; + for( var i = 0; i c ) n = c; + }; + if( next > n || timerId === undefined ){ + timerId !== undefined && clearTimeout( timerId ); + timerId = setTimeout( loop, INTERVAL_TIME * n ); + next = n; + }; + }; + + var TimerTicketClass = function( _apiuser, _callback, _time, _once ){ + this.apiuser = _apiuser; + this.callback = _callback; + this.time = _time; + this.count = _time; + this.once = _once; + _apiuser = _callback = null; + }; + TimerTicketClass.prototype = new TicketBase(); + TimerTicketClass.prototype.call = function( c ){ + this.count -= c; + if( this.count <= 0 ){ + this.callback(); + if( this.once === true ){ + this.destroy(); + TICKET_LIST.splice( Util.getIndex( TICKET_LIST, this ), 1 ); + return false; + } else { + this.count = this.time; + }; + }; + }; + TimerTicketClass.prototype.destroy = function( _apiuser, _callback ){ + if( _apiuser && _apiuser !== this.apiuser ) return false; + if( _callback && _callback !== this.callback ) return false; + + this.kill(); + return true; + }; + + return { + add: function( _apiuser, _handler, _time, _once ){ + if( Type.isNumber( _time ) === false || _time < INTERVAL_TIME ) _time = INTERVAL_TIME; + + var _ticket = new TimerTicketClass( _apiuser, _handler, Math.ceil( _time / INTERVAL_TIME ), _once ); + TICKET_LIST.push( _ticket ); + + update(); + }, + remove: function( _apiuser, _handler ) { + var _ticket, + i = 0; + while( _ticket = TICKET_LIST[ i ] ){ + if( _ticket.destroy( _apiuser, _handler ) === true ){ + TICKET_LIST.splice( i, 1 ); + } else { + ++i; + }; + }; + update(); + } + } +})(); + +/* -------------------------------------------------------------- + * Async Callback + * + */ +var AsyncCall = ( function(){ + var CALLBACK_LIST = []; + + var CallbackTicketClass = function( _apiuser, _callback, _argments ){ + this.apiuser = _apiuser; + this.callback = _callback; + this.argments = _argments; + _apiuser = _callback = _argments = null; + } + CallbackTicketClass.prototype = new TicketBase(); + CallbackTicketClass.prototype.call = function(){ + var f = this.callback, + a = this.argments; + if( Type.isArray( a ) === true ){ + f.apply( this.apiuser, a ); + } else { + f( a ); + } + }; + CallbackTicketClass.prototype.destroy = function( _apiuser, _callback ){ + if( _apiuser && _apiuser !== this.apiuser ) return false; + if( _callback && _callback !== this.callback ) return false; + + this.kill(); + return true; + }; + + function dispatch(){ + var _ticket = CALLBACK_LIST.shift(); + if( _ticket ){ + _ticket.call(); + _ticket.destroy(); + CALLBACK_LIST.length !== 0 && SystemTimer.add( SUPER_USER_KEY, dispatch, 1, true ); + } + } + + return { + add: function( _apiuser, _callback, _argments ){ + CALLBACK_LIST.length === 0 && SystemTimer.add( SUPER_USER_KEY, dispatch, 1, true ); + CALLBACK_LIST.push( new CallbackTicketClass( _apiuser, _callback, _argments ) ); + }, + remove: function( _apiuser, _callback ){ + var _ticket, + i = 0; + while( _ticket = CALLBACK_LIST[ i ] ){ + if( _ticket.destroy( _apiuser, _callback ) === true ){ + CALLBACK_LIST.splice( i, 1 ); + } else { + ++i; + } + } + } + } +})(); + +/* ----------------------------------------------------------- + * 画像一覧は + * お気に入り画像一覧 > tag:ペン次郎 > ペン次郎:笑う + * 最近アップロードされた画像 > images + * 最近使われた画像 > images + * キャラクター画像庫 > アニマル系 > tag:ペン次郎 > ペン次郎:笑う + * 風景画像庫 > + * 効果画像庫 > + * アイテム画像庫 > + * + * 画像一覧を読み込むタイミング + */ +var File = ( function(){ + var DRIVER_LIST = []; + + var FILE_TYPE_IS_FOLDER = Const.FILE.TYPE.FOLDER, + numFileType = Const.FILE.TYPE.XML, + FILEDATA_RESITER = [], // store all of fileData( json object ) + FILEDATA_ACCESS = [], // file operations for Kernel only ! hide from Out of File + FILE_OBJECT_POOL = [], + EVENT_LISTENER_REGISTER = [], + TREE_ARRAY = [], + TREE_ACCESS_ARRAY = []; + + var REQUEST_CONTROLER = ( function(){ + var REQUEST_TICKET_RESISTER = [], + currentTicket = null, + currentData = null, + DATA_TYPE_ARRAY = 'json,xml,html,text'.split( ','), + DATA_IS_JSON = 0, + DATA_IS_XML = 1, + DATA_IS_HTML = 2, + DATA_IS_TEXT = 3, + numError = 0; + + var RequestTicketClass = function( _apiuser, _type, _data, _url, _onLoad, _onError ){ + this.apiuser = _apiuser; + this.type = _type; + this.data = _data; + this.url = _url; + this.onLoad = _onLoad; + this.onError = _onError; + this.state = 0; + _apiuser = _type = _data = _onLoad = _onError = null; + }; + RequestTicketClass.prototype = new TicketBase(); + RequestTicketClass.prototype.load = function( _data ){ + AsyncCall.add( this.apiuser, this.onLoad, [ this.data, _data ] ); + }; + RequestTicketClass.prototype.error = function(){ + AsyncCall.add( this.apiuser, this.onError, this.data ); + }; + + function request(){ + if( currentTicket !== null || REQUEST_TICKET_RESISTER.length === 0 ) return; + currentTicket = REQUEST_TICKET_RESISTER.shift(); + $.ajax({ + url: currentTicket.url, + dataType: DATA_TYPE_ARRAY[ currentTicket.type ], + success: onSuccess, + error: onError + }); + } + function onSuccess( _data ){ + currentTicket.load( _data ); + currentTicket.kill(); + currentTicket = null; + request(); + } + function onError(){ + ++numError; + currentTicket.error(); + currentTicket.kill(); // retry + currentTicket = null; + request(); + } + + return { + getNumTask: function(){ + return REQUEST_TICKET_RESISTER.length; + }, + getNumError: function(){ + return numError; + }, + getJson: function( _apiuser, _data, _url, _onLoad, _onError ){ + REQUEST_TICKET_RESISTER.push( new RequestTicketClass( _apiuser, DATA_IS_JSON, _data, _url, _onLoad, _onError )); + currentTicket === null && request(); + } + } + })(); + + var FILE_CONTROLER = { + createTree: function( _apiuser, _rootFileData ){ + var _tree = new TreeClass( _apiuser, _rootFileData ); + TREE_ARRAY.push( _tree ); + return _tree; + }, + getFileUID: function( FILEDATAorFILE ){ + if( FILEDATAorFILE instanceof FileClass ){ + return FILEDATAorFILE.getUID(); + } + + var uid = Util.getIndex( FILEDATA_RESITER, FILEDATAorFILE ); + if( uid === -1){ + uid = FILEDATA_RESITER.length; + FILEDATA_RESITER.push( FILEDATAorFILE ); + } + return uid; + }, + getFileDataAccess: function( UIDorFILEorFILEDATA ){ + var _uid, _data, _access; + + if( typeof UIDorFILEorFILEDATA === 'number' ){ + _data = FILEDATA_RESITER[ UIDorFILEorFILEDATA ] || null; + } else + if( UIDorFILEorFILEDATA instanceof FileClass ){ + _uid = UIDorFILEorFILEDATA.getUID(); + _data = FILEDATA_RESITER[ _uid ] || null; + } else { + _data = UIDorFILEorFILEDATA || null; + } + + if( _data === null || typeof _data !== 'object' ) return null; + for( var i=0, l = FILEDATA_ACCESS.length; i= _bit; + }, + move: function( _prentUID, _targetfile, _newFolder, _newIndex, _opt_callback ){ + var _parentData = FILE_CONTROLER.getFileDataAccess( _prentUID ), + _parentType = _parentData.TYPE, + _targetData = FILE_CONTROLER.getFileDataAccess( _targetfile ), + _targetType = _targetData.TYPE; + }, + replace: function( _uid, _file, _newIndex ){ + + }, + addEventListener: function( FILEorNULL, _eventType, _callback ){ + var _uid = FILEorNULL instanceof FileClass ? FILEorNULL.getUID() : FILEorNULL; + EVENT_LISTENER_REGISTER.push( new FileEventTicketClass( _uid, _eventType, _callback )); + }, + removeEventListener: function( FILEorNULL, _eventType, _callback ){ + var _uid = FILEorNULL instanceof FileClass ? FILEorNULL.getUID() : FILEorNULL, + _ticket; + for(var i=0, l = EVENT_LISTENER_REGISTER.length; i= l ) return null; + return PARENT_FILE_RESITER[ l -1 -_index ]; + }; + this.down = function( _index ){ + if( typeof _index !== 'number' || _index < 0 || _index >= currentFile.getChildFileLength()) return; + PARENT_FILE_RESITER.unshift( currentFile ); + currentFile = currentFile.getChildFileByIndex( _index ); + currentFile.getSeqentialFiles(); + return currentFile; + }; + this.up = function( _index ){ + var l = PARENT_FILE_RESITER.length; + if( l === 0) return null; + + if( currentFile ){ + var _currentFile = currentFile; + currentFile = null; + _currentFile.destroy(); + } + if( typeof _index === 'number'){ + if( _index >= l) return null; + currentFile = this.getParentFileAt( _index ); + PARENT_FILE_RESITER.splice( 0, l -_index); + } else { + currentFile = PARENT_FILE_RESITER.shift(); + } + currentFile.getSeqentialFiles(); + return currentFile; + }; + this.addTreeEventListener = function( _eventType, _callback ){ + FILE_CONTROLER.addEventListener( null, _eventType, _callback ); + }; + this.removeTreeEventListener = function( _eventType, _callback ){ + FILE_CONTROLER.removeEventListener( null, _eventType, _callback ); + }; + this.destroy = function( _apiuser ){ + if( _apiuser && apiuser !== _apiuser ) return false; + // removeEvent + var _currentFile = currentFile; + currentFile = rootFile = rootFileData = null; + // currentFile, rootFile を null にしないと .File.destroy() ができない. + _currentFile.destroy(); + while( PARENT_FILE_RESITER.length > 0 ){ + _currentFile = PARENT_FILE_RESITER.shift(); + _currentFile.destroy(); + } + + AsyncCall.remove( apiuser ); + instance = apiuser = null; + return true; + } + }; + + var FileEventTicketClass = function( _uid, _eventType, _callback ){ + this.fileUID = _uid; + this.eventType = _eventType; + this.callBack = _callback; + _uid = _eventType = _callback = undefined; + }; + FileEventTicketClass.prototype = new TicketBase(); + + var FileEventClass = function( eventType, file, key, value ){ + this.eventType = eventType; + this.targetFile = file; + this.updatedAttribute = key; + this.updatedValue = value; + }; + +/* + * file の data は object で保持している。 + * File の外からファイルをみるときは、FileClassを通して操作する。 + * fileの変更、それに付随して追加されたイベントは、TreeClassで管理される。 + * treeがdestryされると、fileのイベントリスナーも全て削除される。 + * 他の tree も data の共通する currentFile に対してのみは、file の変更イベントを受け取って流す. + * + */ + + var FileClass = function( tree, parentData, data ){ + var uid = FILE_CONTROLER.getFileUID( data ); + + FILEDATA_ACCESS.push( { + TREE: tree, + parentData: parentData, + DATA: data + } ); + + tree = parentData = data = null; + + this.getUID = function(){ + return uid; + } + }; + + FileClass.prototype = { + isChildFile: function( _FILEorFILEDATA ){ + return this.getChildFileIndex( _FILEorFILEDATA) !== -1; + }, + getSeqentialFiles: function(){ + var _driver = FILE_CONTROLER.getDriver( this ); + if( _driver !== null && typeof _driver.getSeqentialFiles === 'function' ){ + _driver.getSeqentialFiles( this ); + } + }, + addEventListener: function( _eventType, _callback ){ + FILE_CONTROLER.addEventListener( this, _eventType, _callback ); + }, + removeEventListener: function( _eventType, _callback ){ + FILE_CONTROLER.removeEventListener( this, _eventType, _callback ); + }, + dispatchEvent: function( e ){ + e instanceof FileEventClass && FILE_CONTROLER.fileEventRellay( this.getUID(), e ); + }, + getChildFileLength: function(){ + var children = FILE_CONTROLER.getChildren( this ); + return Type.isArray( children ) === true ? children.length : -1; + }, + getChildFileIndex: function( _FILEorFILEDATA ){ + var children = FILE_CONTROLER.getChildren( this); + if( Type.isArray( children ) === false ) return -1; + var l = children.length, + _fileData = FILE_CONTROLER.getFileData( _FILEorFILEDATA ); + if( _fileData === null ) return -1; + for( var i=0; i= _children.length) return null; + var _file = new FileClass( _access.TREE, _access.DATA, _children[ _index ]); + // _file.init(); + return _file; + }, + getName: function(){ + var driver = FILE_CONTROLER.getDriver( this ); + if( typeof driver.getName === 'function'){ + return driver.getName( this ); + } + return BASE_DRIVER.getName( this); + }, + getThumbnail: function(){ + var driver = FILE_CONTROLER.getDriver( this ); + if( typeof driver.getThumbnail === 'function'){ + return driver.getThumbnail( this ); + } + return BASE_DRIVER.getThumbnail( this ); + }, + getType: function(){ + var _data = FILE_CONTROLER.getFileData( this ); + return typeof _data.type === 'number' ? _data.type : Const.FILE.TYPE.UNKNOWN; + }, + getState: function(){ + var _data = FILE_CONTROLER.getFileData( this ); + return typeof _data.state === 'number' ? _data.state : Const.FILE.STATE.OK; + }, + getSummary: function(){ + var driver = FILE_CONTROLER.getDriver( this ); + if( typeof driver.getSummary === 'function'){ + return driver.getSummary( this ); + } + return BASE_DRIVER.getSummary( this ); + }, + isWritable: function(){ + return FILE_CONTROLER.getUpdateFlag( this, Const.FILE.UPDATE_POLICY.WRITE ); + }, + isSortable: function(){ + return FILE_CONTROLER.getUpdateFlag( this, Const.FILE.UPDATE_POLICY.SORT ); + }, + isCreatable: function(){ + return FILE_CONTROLER.getUpdateFlag( this, Const.FILE.UPDATE_POLICY.CREATE ); + }, + isRenamable: function(){ + return FILE_CONTROLER.getUpdateFlag( this, Const.FILE.UPDATE_POLICY.RENAME ); + }, + isDeletable: function(){ + return FILE_CONTROLER.getUpdateFlag( this, Const.FILE.UPDATE_POLICY.DELETE ); + }, + read: function(){ + // simpleDeepCopy + var driver = FILE_CONTROLER.getDriver( this ), + data; + if( typeof driver.read === 'function'){ + data = driver.read( this ); + } + return BASE_DRIVER.read( data || this ); + }, + write: function( _newData, _onUpdateFunction ){ + var driver = FILE_CONTROLER.getDriver( this ); + if( typeof driver.write === 'function'){ + return driver.write( this, _newData, _onUpdateFunction ); + } + return BASE_DRIVER.write( this, _newData, _onUpdateFunction ); + }, + viewerApplicationList: function(){ + var driver = FILE_CONTROLER.getDriver( this ); + if( typeof driver.viewerApplicationList === 'function'){ + return driver.viewerApplicationList( this ); + } + return BASE_DRIVER.viewerApplicationList( this ); + }, + editorApplicationList: function(){ + var driver = FILE_CONTROLER.getDriver( this ); + if( typeof driver.editorApplicationList === 'function'){ + return driver.editorApplicationList( this ); + } + return BASE_DRIVER.viwerApps( this ); + }, + create: function(){ + + }, + sort: function(){ + + }, + onCopy: function(){ + + }, + onDelete: function(){ + + }, + move: function( _newFolder, _newIndex, opt_callback ){ + var _access = FILE_CONTROLER.getFileDataAccess( this ); + _access.TREE.move( _access.parentData, this.getUID(), _newFolder, _newIndex, opt_callback ); + }, + replace: function( _newIndex, opt_callback ){ + var _access = FILE_CONTROLER.getFileDataAccess( this ); + _access.TREE.replace( _access.parentData, this.getUID(), _newIndex, opt_callback); + }, + /** + * サーチ + * 探しているファイルの属性と値を指定.一致する child の index を配列で返す. + */ + search: function( obj, rule ){ + var _children = FILE_CONTROLER.getChildren( this ), + _child, + ret = [], k, c; + for( var i=0, l=_children.length; i _w || instance.MIN_HEIGHT > _h ){ + if( Type.isHTMLElement( instance.rootElement ) === true ){ + // 小さすぎる!、と表示 + }; + return; + }; + instance.onPaneResize( _w, _h ); + }; + this.onPaneResize = function( _w, _h ){}; + this.close = function(){ + instance.onClose(); + instance = this; + }; +} + +var AbstractApplication = function( appClass, isOverlay ){ + var self = null, // init で設定 + uiList = [], + finderList = []; + this.rootElement = doc.createElement( 'div' ); + this.bgColor = '#C1CACF'; + this.getUID = function(){ + return Util.getIndex( API_USER_LIST, appClass ); + } + this.init = function(){ + self = this; + self.onInit(); + }; + this.open = function( _w, _h /*, _option */ ){ + if( self.MIN_WIDTH > _w || self.MIN_HEIGHT > _h ){ + if( Type.isHTMLElement( self.rootElement ) === true ){ + // 小さすぎる!、と表示 + } + } + if( arguments.length > 2 ){ + self.onOpen.apply( self, arguments ); + } else { + self.onOpen( _w, _h ); + } + }; + this.resize = function( _w, _h ){ + if( self.MIN_WIDTH > _w || self.MIN_HEIGHT > _h ){ + if( Type.isHTMLElement( self.rootElement ) === true ){ + // 小さすぎる!、と表示 + }; + return; + }; + self.onPaneResize( _w, _h ); + }; + this.close = function(){ + if( self.onClose() === false ){ + return false; + } + MouseEvent.remove( self ); + KeyEvent.remove( self ); + SystemTimer.remove( self ); + AsyncCall.remove( self ); + + while( uiList.length > 0 ){ + uiList.shift().destroy(); + }; + while( finderList.length > 0 ){ + finderList.shift().destroy(); + }; + var elm = self.rootElement; + Util.removeAllChildren( elm ); + elm.parentNode.removeChild( elm ); + self.rootElement = null; + + Application.shutdown( self, isOverlay ); + self = appClass = uiList = null; + }; + this.createUIGroup = function(){ + var _ui = UI.createUIGroup( self ); + uiList.push( _ui ); + return _ui; + }; + this.createFinder = function( _elmTarget, _tree, _header, _footer, _onSelect, _viewerOption, _editorOption ){ + var _finder = Finder.create( self, _elmTarget, _tree, _header, _footer, _onSelect, _viewerOption, _editorOption ); + finderList.push( _finder ); + return _finder; + }; + this.createBasicPane = function( _class, _options ){ + if( Type.isFunction( _class ) === false ) return null; + _class.prototype = new AbstractBasicPane(); + return new _class( _options ); + }; +} + +AbstractApplication.prototype = new AbstractBasicPane(); +AbstractApplication.prototype.onInit = function(){ + // overrride +}; +AbstractApplication.prototype.onOpen = function( _w, _h /*, _option */ ){ + // overrride +}; +AbstractApplication.prototype.onClose = function(){ + // overrride + return true; +}; // false の場合、close の拒否 +AbstractApplication.prototype.addMouseEventListener = function( _element, _eventType, _handler ){ + MouseEvent.add( this, _element, _eventType, _handler ); +}; +AbstractApplication.prototype.removeMouseEventListener = function( _element, _eventType, _handler ){ + MouseEvent.remove( this, _element, _eventType, _handler ); +}; +AbstractApplication.prototype.addKeyEventListener = function( _eventType, _handler, _keyCode, _shift, _ctrl ){ + KeyEvent.add( this, _eventType, _handler, _keyCode, _shift, _ctrl ); +}; +AbstractApplication.prototype.removeKeyEventListener = function( _eventType, _handler, _keyCode, _shift, _ctrl ){ + KeyEvent.remove( this, _eventType, _handler, _keyCode, _shift, _ctrl ); +}; +AbstractApplication.prototype.shiftEnabled = function(){ + return KeyEvent.shiftEnabled; +}; +AbstractApplication.prototype.ctrlEnabled = function(){ + return KeyEvent.ctrlEnabled; +}; +AbstractApplication.prototype.addTimer = function( handler, time, once ){ + SystemTimer.add( this, handler, time, !!once ); +}; +AbstractApplication.prototype.removeTimer = function( handler ){ + SystemTimer.remove( this, handler ); +}; +AbstractApplication.prototype.addAsyncCall = function( _callback, _argments ){ + AsyncCall.add( this, _callback, _argments ); +}; +AbstractApplication.prototype.removeAsyncCall = function( _callback ){ + AsyncCall.remove( this, _callback ); +}; +AbstractApplication.prototype.fetchHTMLElement = function( id ){ + var elm = doc.getElementById( id ); + if( elm ){ + elm.removeAttribute( 'id' ); + elm.parentNode.removeChild( elm ); + return elm; + }; +}; + +var Application = ( function(){ + + var LIVE_APPLICATION_LIST = []; + + var currentApplication = null, + coveredApplication = null, + winW = 0, + winH = 0; + + var ApplicationReference = function( appClass, isOverlay, displayName, id, thumbnailUrl, tailColor ){ + var self = this; + var application = null; + this.id = id; + this.displayName = displayName; + this.thumbnailUrl = thumbnailUrl; + this.tailColor = tailColor; + this.getUID = function(){ + return Util.getIndex( API_USER_LIST, appClass ); + }; + this.boot = function( /* _option */ ){ + application = Application.boot( self.getUID(), appClass, isOverlay, Util.copyArray( arguments ) ); + }; + this.shutdown = function(){ + if( !application ) return false; + + if( ( isOverlay === true ? Overlay.hide() : application.close() ) === false ) return false; + application = null; + }; + }; + + function asyncBootHome(){ + currentApplication === null && Home.boot(); + }; + function asyncOpen( /* arguments */ ){ + var _arg = Util.copyArray( arguments ); + _arg.unshift( winW, winH ); + currentApplication.open.apply( currentApplication, _arg ); + }; + return { + register: function( _class, _overlay, _tail, _displayName, _id, _thumbnailUrl, _tailColor ){ + APPLICATION_LIST.push( _class ); + API_USER_LIST.push( _class ); + var _ref = new ApplicationReference( _class, _overlay, _displayName, _id, _thumbnailUrl, _tailColor ); + _tail === true && Home.add( _ref ); + return _ref; + }, + isBasicPaneInstance: function( _basicPane ){ + return _basicPane instanceof AbstractBasicPane; + }, + isApplicationInstance: function( _application ){ + return _application instanceof AbstractApplication; + }, + isApplicationReference: function( _reference ){ + return _reference instanceof ApplicationReference; + }, + isCurrentAppplication: function( _application ){ + return true + }, + boot: function( uid, appClass, isOverlay, arg ){ + if( currentApplication ){ + if( currentApplication.getUID() === uid ) return null; + if( isOverlay === false && currentApplication.close() === false ) return null; + } + + appClass.prototype = new AbstractApplication( appClass, isOverlay ); + var application = new appClass(); // new は boot で + + coveredApplication = isOverlay === true ? currentApplication : null; + + Application.onCurrentApplicationChange( application ); + + if( isOverlay === false ){ + body.style.backgroundColor = application.bgColor; + + body.appendChild( application.rootElement ); + application.init(); + + application.addAsyncCall( asyncOpen, arg ); + } else { + Overlay.show( application, arg ); + } + + return application; + }, + shutdown: function( _application, isOverlay ){ + if( isOverlay === false ){ + currentApplication = null; + AsyncCall.add( SUPER_USER_KEY, asyncBootHome ); + } else { + Application.onCurrentApplicationChange( coveredApplication ); + coveredApplication = null; + } + }, + onCurrentApplicationChange: function( _application ){ + if( Application.isApplicationInstance( _application ) === false ) return; + if( currentApplication === _application ) return; + currentApplication = _application; + MouseEvent.onCurrentApplicationChange( _application ); + KeyEvent.updateCurrentListener( _application ); + }, + onApplicationShutdown: function( _application ){ + LIVE_APPLICATION_LIST.splice( Util.getIndex( LIVE_APPLICATION_LIST, _application ) ); + }, + onWindowResize: function( w, h ){ + winW = w; + winH = h; + currentApplication && currentApplication.resize( w, h ); + Overlay.onWindowResize( w, h ); + UI.onWindowResize( w, h ); + }, + onSystemShutdown: function(){ + + } + } +})(); + +/* -------------------------------------------------------------- + * Home + * + */ + var Home = ( function(){ + var APP_REF_LIST = []; + var ELM_TAIL_ORIGIN = ( function(){ + var ret = document.createElement( 'div' ), + h2 = document.createElement( 'h2' ); + ret.className = 'tail-wrapper'; + ret.appendChild( h2 ); + h2.appendChild( document.createTextNode( 'appName' ) ); + return ret; + })(); + + var TailClass = function( appRef ){ + this.elm = ELM_TAIL_ORIGIN.cloneNode( true ); + this.destroy = function(){ + appRef = self = elmName = null; + }; + + var self = this, + elmName = this.elm.getElementsByTagName( 'h2' )[ 0 ].firstChild; + + this.elm.style.backgroundColor = appRef.tailColor; + elmName.data = appRef.displayName; + }; + + var ref = Application.register( function(){ + var self = this, + winW = 0, + winH = 0, + tailList = [], + elmContainer; + + function draw(){ + var tail, elm; + for( var i=0, l=APP_REF_LIST.length; i 0 ){ + tailList.shift().destroy(); + } + self = tailList = elmContainer = null; + }; + }, false, false, 'home', 'home', null ); + + return { + add: function( _appRef ){ + if( Application.isApplicationReference( _appRef ) === false ) return; + Util.getIndex( APP_REF_LIST, _appRef ) === -1 && APP_REF_LIST.push( _appRef ); + }, + boot: function(){ + ref.boot(); + } + } + })(); + +/* -------------------------------------------------------------- + * Event + * + * screenX + * スクリーン座標は、コンピュータのディスプレイの左上を原点とする座標系である。screenX, screenY属性で取得できる。Javascritpでは、同名のプロパティとして実装されている。 + * しかし、これは、現実的には、何の役に立たない。ブラウザ自体がディスプレイのどの位置にいるのかがわからないので、画面上の位置を知ったところで、何にもならないからだ。 + * + * clientX + * ウインドウ座標とは、現在のブラウザのウインドウの、ドキュメントを表示している部分の左上原点とした座標である。 + * 問題は、ウインドウは、必ずしもドキュメント全体を表示するとは限らない。スクロールと呼ばれるUIによって、ドキュメントの一部だけを表示しているかもしれない。 + */ + var XBrowserEvent = ( function(){ + var wrappedHandlerClass, + wrappedEventClass, + tmp; + + if( window.addEventListener ){ + wrappedHandlerClass = function( element, handler ){ + this.handler = function( e ){ + if( handler.call( element, e ) !== false ) return; + e.preventDefault(); + e.stopPropagation(); + return false; + }; + this.destroy = function(){ + element = handler = null; + delete this.handler; + delete this.destroy; + }; + } + } else { + wrappedEventClass = function( e, element ){ + this._event = e; + this.type = e.type; + this.target = e.srcElement; + this.currentTarget = element; + this.relatedTarget = e.formElement ? e.formElement : e.toElement; + this.eventPhase = e.srcElement === element ? 2: 3; + + this.clientX = e.clientX; + this.clientY = e.clientY; + this.screenX = e.screenX; + this.screenY = e.screenY; + + this.altKey = e.altKey; + this.ctrlKey = e.ctrlKey; + this.shiftKey = e.shiftKey; + this.charCode = e.keyCode; + + this.wheelDelta = e.wheelDelta; + + e = element = null; + } + wrappedEventClass.prototype.stopPropagation = function(){ + this._event.cancelBubble = true; + } + wrappedEventClass.prototype.preventDefault = function(){ + this._event.returnValue = false; + } + + if( doc.attachEvent ){ + wrappedHandlerClass = function( element, handler ){ + this.handler = function(){ + var e = new wrappedEventClass( window.event, element ); + if( handler.call( element, e ) !== false ) return; + e.preventDefault(); + e.stopPropagation(); + e._event.keyCode = 0; + return false; + }; + this.destroy = function(){ + element = handler = null; + delete this.handler; + delete this.destroy; + }; + }; + } else { + tmp = { + list: [], + find: function( _ticket ){ + for( var i=0, l= tmp.list.length, _item; i<\/script>'); + script = document.getElementById( 'ieDOMContentLoaded' ); + script.onreadystatechange = ieDetect; + } else { + ticketReady = new EventTicketClass( doc, 'DOMContentLoaded', onReady ); + ticketLoad = new EventTicketClass( doc, 'load', onReady ); + } +})(); + + + + +/* ===================================================== + * ResizeEvent + * + */ + +var ResizeEvent = ( function(){ + var _globalLock = 0; + var _resize; + var root = window; + var w = 0, h = 0; + + function getInnerSize(){ + return { + w : root.innerWidth || root.clientWidth, + h : root.innerHeight || root.clientHeight + }; + } + function unlock(){ + _globalLock = 0; + } + + if( document.uniqueID ){ + _resize = function(){ + root = (doc.compatMode || "") !== "CSS1Compat" ? doc.body : doc.documentElement; + + // resize agent + function loop(){ + if( !_globalLock++ ){ + var size = getInnerSize(); + if( w !== size.w || h !== size.h ){// resized + w = size.w; + h = size.h; + // update + Application.onWindowResize( w, h ); + } + window.setTimeout( unlock, 0 ); + // delay unlock + } + window.setTimeout( loop, 100 ); + } + loop(); + }; + } else { + _resize = function(){ + new EventTicketClass( window, 'resize', onResize ); + + function onResize(){ + if( !_globalLock++ ) { + var size = getInnerSize(); + if( w !== size.w || h !== size.h ){// resized + w = size.w; + h = size.h; + // update + Application.onWindowResize( w, h ); + } + window.setTimeout( unlock, 0 ); + } + } + onResize(); + }; + } + AsyncCall.add( SUPER_USER_KEY, _resize ); + + return { + getSize: getInnerSize, + onSystemShutdown: function(){ + + } + } +})(); + + +/* ===================================================== + * MouseEvent + * + */ + var MouseEvent = ( function(){ + var CLICK_OFFSET = 2 * 2; + + var EVENT_LIST_MAP = [], + TMP = {}, + currentEventList; + + /* ClickHelper + * mousedown, mouseup, の移動距離を調べて clickハンドラ を呼ぶ + */ + var ClickEventTicketClass = function( element, clickhandler ){ + var startX, startY, + mousedownTicket = new EventTicketClass( element, 'mousedown', mousedownHandler ), + mouseupTicket, mouseoutTicket; + + function mousedownHandler( e ){ + startX = e.clientX; + startY = e.clientY; + + mouseupTicket = new EventTicketClass( element, 'mouseup', mouseupHandler ); + mouseoutTicket = new EventTicketClass( element, 'mouseout', mouseoutHandler ); + } + + function mouseupHandler( e ){ + var offsetX = e.clientX - startX, + offsetY = e.clientY - startY; + mouseoutHandler(); + if( offsetX * offsetX + offsetY * offsetY < CLICK_OFFSET ){ + if( Function.prototype.call ){ + return clickhandler.call( element, e ); + } + element._currentHandler = clickhandler; + var ret = element._currentHandler( e ); + delete element._currentHandler; + return ret; + }; + }; + function mouseoutHandler( e ){ + mouseupTicket && mouseupTicket.destroy(); + mouseoutTicket && mouseoutTicket.destroy(); + mouseupTicket = mouseoutTicket = null; + }; + + this.element = element; + this.handler = clickhandler; + this.destroy = function( _element, _eventType, _handler ){ + if( this.match( _element, _eventType, _handler ) === false ) return false; + + mouseoutHandler(); + mousedownTicket.destroy(); + element = clickhandler = mousedownTicket = null; + + delete this.element; + delete this.eventType; + delete this.handler; + + return true; + }; + }; + ClickEventTicketClass.prototype = { + eventType: 'click', + match : EventTicketClass.prototype.match + }; + + /* WheelHelper + */ + var WheelEventTicketClass = ( function(){ + if( UA.GECKO ){ + return function( element, wheelhandler ){ + this.wheelTicket = new EventTicketClass( element, 'DOMMouseScroll', onWheel ); + this.element = element; + this.handler = wheelhandler; + this.destroy = function( _element, _eventType, _handler ){ + if( this.match( _element, _eventType, _handler ) === false ) return false; + element = wheelhandler = null; + + this.wheelTicket && this.wheelTicket.destroy(); + + delete this.wheelTicket; + delete this.element; + delete this.handler; + + return true; + }; + + function onWheel( e ){ + e.wheelDelta = e.detail * -40; + return wheelhandler.call( element, e ); + } + }; + } else + if( true || UA.isIE ){ + return function( element, wheelhandler ){ + this.wheelTicket = new EventTicketClass( element, 'mousewheel', wheelhandler ); + this.element = element; + this.handler = wheelhandler; + element = wheelhandler = null; + }; + } else { + TMP.wheelList = []; + //TMP.wheelLegacy = undefined; + TMP.onWheel = function( e ){ + e = e || window.event; + var cancel = true, + f = TMP.wheelLegacy; + if( f ) cancel = f.call( this, e ); + + for( i = TMP.wheelList.length; i; ){ + if( TMP.wheelList[ --i ].call( this, e ) === false ) cancel = false; + } + return cancel; + }; + return function( element, wheelhandler ){ + this.wheelTicket = null; + this.element = element; + this.handler = wheelhandler; + this.destroy = function( _element, _eventType, _handler ){ + if( this.match( _element, _eventType, _handler ) === false ) return false; + + TMP.wheelList.splice( Util.getIndex( TMP.wheelList, this.handler ) ); + if( TMP.wheelList.length === 0 ) this.element.onmousewheel = ''; + + delete this.element; + delete this.handler; + + return true; + }; + + if( TMP.wheelList.length === 0 ){ + //TMP.wheelLegacy = Type.isFunction( window.onmousewheel ) === true ? window.onmousewheel : undefined; + element.onmousewheel = TMP.onWheel; + }; + TMP.wheelList.push( wheelhandler ); + element = wheelhandler = null; + }; + } + })(); + WheelEventTicketClass.prototype = { + eventType : 'mousewheel', + match : EventTicketClass.prototype.match, + destroy : function( _element, _eventType, _handler ){ + if( this.match( _element, _eventType, _handler ) === false ) return false; + + this.wheelTicket && this.wheelTicket.destroy(); + + delete this.wheelTicket; + delete this.element; + delete this.handler; + + return true; + } + }; + + + return { + add: function( _apiuser, _element, _eventType, _handler ){ + if( isApiUser( _apiuser ) === true && + ( Type.isHTMLElement( _element ) === true || _element === window || _element === doc ) && + Type.isString( _eventType ) === true && + Type.isFunction( _handler ) === true + ){ + var _uid = _apiuser.getUID(), + _events = EVENT_LIST_MAP[ _uid ]; + if( Type.isArray( _events ) === false ){ + _events = EVENT_LIST_MAP[ _uid ] = []; + } else { + // 2重登録の禁止 + for( var i=0, l=_events.length; i overlay -> view + * + */ + +var UI = ( function(){ + var UI_LIST = [], + currentUser = null, + currentList = null, + currentUi = null, + currentItem = null, + windowW = 0, + windowH = 0; + + var CLASSNAME_COMBOBOX_OPTION = 'combobox-option', + ELM_A_ORIGIN = ( function(){ + var ret = document.createElement( 'a' ); + ret.href = '#'; + return ret; + })(), + ELM_INPUT_TEXT = ( function(){ + var ret = document.createElement( 'input' ); + ret.type = 'text'; + return ret; + })(), + ELM_COMBOBOX = ( function(){ + var ret = document.createElement( 'a' ), + elmToggle = document.createElement( 'span' ), + elmValue = document.createElement( 'span' ); + ret.href = '#'; + ret.appendChild( elmToggle ); + ret.appendChild( elmValue ); + elmToggle.className = 'combobox-toggle'; + elmValue.className = 'combobox-value'; + + elmToggle.appendChild( document.createTextNode( '▼' )); + elmValue.appendChild( document.createTextNode( 'null' )); + return ret; + })(); + + var InputTextClass = function( apiuser, uiGroup, elmWrapper, elmValue, onUpdate, validater ){ + var elmA = ELM_A_ORIGIN.cloneNode( true ), + instance = this, + focus = false, + visible = true, + enabled = true, + value = elmValue.innerHTML; + elmValue.innerHTML = ''; + elmValue.className += ' editable-text'; + elmValue.appendChild( elmA ); + + this.value = function( _value ){ + if( Type.isString( _value ) === true ){ + elmA.innerHTML = value = _value; + if( focus === true ){ + ELM_INPUT_TEXT.value = value; + } + } + focus === true && instance.blur(); + return value; + }; + this.focus = function( e ){ + focus = true; + start( apiuser, uiGroup, instance ); + elmA.style.display = 'none'; + elmValue.appendChild( ELM_INPUT_TEXT ); + ELM_INPUT_TEXT.value = value; + ELM_INPUT_TEXT.focus(); + ELM_INPUT_TEXT.select(); + return false; + }; + this.blur = function( keep ){ + var _newValue = ELM_INPUT_TEXT.value, + _validated = Type.isFunction( validater ) === true ? '' + validater( _newValue ) : _newValue; + _newValue = keep !== 27 ? _validated : value; // 27:ESC + + elmValue.removeChild( ELM_INPUT_TEXT ); + + elmA.innerHTML = _newValue; + elmA.style.display = 'block'; + + onUpdate && _newValue !== value && onUpdate( _newValue, value ); + + value = _newValue; + focus = false; + finish( apiuser, uiGroup, instance ); + }; + this.enabled = function(){ + return enabled; + }; + this.visible = function( _visible ){ + if( Type.isBoolean( _visible ) === true ){ + elmWrapper.style.display = _visible ? '' : 'none'; + visible = _visible; + } + return visible; + }; + this.destroy = function(){ + if( focus === true ){ + elmValue.removeChild( ELM_INPUT_TEXT ); + } + MouseEvent.remove( apiuser, elmWrapper ); + apiuser = uiGroup = elmWrapper = elmValue = elmA = onUpdate = validater = instance = null; + }; + instance.value( value ); + MouseEvent.add( apiuser, elmWrapper, 'click', instance.focus ); + } + + var ButtonClass = function( apiuser, uiGroup, elmWrapper, onUpdate ){ + var className = elmWrapper.className || '', + instance = this, + focus = false, + visible = true, + enabled = true; + MouseEvent.add( apiuser, elmWrapper, 'click', onClick ); + + function onClick(){ + focus = true; + onUpdate(); + return false; + }; + this.focus = function(){ + focus = true; + elmWrapper.className = className + ' button-has-focus'; + start( apiuser, uiGroup, instance ); + }; + this.blur = function( keyCode ){ + keyCode === 13 && onClick(); + elmWrapper.className = className; + focus = false; + finish( apiuser, uiGroup, instance ); + }; + this.enabled = function(){ + return enabled; + }; + this.visible = function( _visible ){ + if( Type.isBoolean( _visible ) === true ){ + elmWrapper.style.display = _visible ? '' : 'none'; + visible = _visible; + }; + return visible; + }; + this.destroy = function(){ + MouseEvent.remove( apiuser, elmWrapper ); + apiuser = uiGroup = elmWrapper = onUpdate = instance = null; + }; + } + + var FileInputClass = function( apiuser, uiGroup, elmWrapper, onUpdate, validater, elmFileInput ){ + var elmFilePath = Util.getElementsByClassName( elmWrapper, 'file-path' )[ 0 ], + focus = false, + visible = true, + enabled = true, + index = GROUP_ID ? itemList[ GROUP_ID ].length : -1, + value, + instance; + elmFileInput = elmWrapper.getElementsByTagName('input')[0] || elmFileInput || document.createElement( 'input'); + elmFileInput.type = 'file'; + elmFileInput.style.visivility = 'hidden'; + + elmWrapper.onclick = onClick; + elmFileInput.onchange = onChange; + + function onChange(){ + elmFilePath.innerHTML = elmFileInput.value; + } + return { + init: function(){ + instance = this; + delete this.init; + }, + focus: function( e ){ + focus = true; + start( apiuser, uiGroup, instance ); + elmFileInput.click(); + return false; + }, + blur: function( keep ){ + focus = false; + }, + enabled: function(){ + return enabled; + }, + visible: function( _visible ){ + if( Type.isBoolean( _visible ) === true ){ + elmWrapper.style.display = _visible ? '' : 'none'; + visible = _visible; + }; + return visible; + }, + index : index + } + } + + var ComboBoxClass = function( apiuser, uiGroup, elmWrapper, onUpdate ){ + var elmBox = Util.getElementsByClassName( elmWrapper, 'combobox' )[ 0 ], + elmA = ELM_COMBOBOX.cloneNode( true ), + elmToggle = Util.getElementsByClassName( elmA, 'combobox-toggle' )[ 0 ], + elmValue = Util.getElementsByClassName( elmA, 'combobox-value' )[ 0 ].firstChild, + index = 0, + optionList = [], + instance = this, + focus = false, + visible = true, + enabled = true, + value; + elmBox.appendChild( elmA ); + + this.elm = elmBox; + this.focus = function( e ){ + MouseEvent.remove( apiuser, elmWrapper, 'click', instance.focus ); + focus = true; + elmA.className = 'combobox-has-focus'; + start( apiuser, uiGroup, instance ); + OptionControl.show( apiuser, instance, optionList ); + return false; + }; + this.blur = function( keyCode ){ + OptionControl.hide( instance ); + focus = false; + elmA.className = ''; + finish( apiuser, uiGroup, instance ); + MouseEvent.add( apiuser, elmWrapper, 'click', instance.focus ); + }; + this.enabled = function(){ + return enabled; + }; + this.visible = function( _visible ){ + if( Type.isBoolean( _visible ) === true ){ + elmWrapper.style.display = _visible ? '' : 'none'; + visible = _visible; + }; + return visible; + }; + this.value = function( _value ){ + if( Type.isString( _value ) === true && value !== _value ){ + for( var i=0, l = optionList.length, _option; i 0 ){ + start( apiuser, self, itemList[ 0 ] ); + }; + } else + if( _value === false ){ + finish( apiuser, self, currentItem ); + } else + if( _value && Util.getIndex( itemList, _value ) !== -1 ){ + currentItem = _value; + currentList = itemList; + }; + return currentUi === self; + }; + this.blur = function(){ + if( currentList === itemList ){ + currentList = null; + }; + }; + this.createInputText = function( _elmWrapper, _onUpdate, _validater ){ + var _elmValue = Util.getElementsByClassName( _elmWrapper, 'editable-value' )[ 0 ]; + if( _elmValue ){ + var ret = new InputTextClass( apiuser, self, _elmWrapper, _elmValue, _onUpdate, _validater ); + itemList.push( ret ); + return ret; + } + alert( 'error createInputText' ); + }; + this.createButton = function( _elm, _onClick ){ + var ret = new ButtonClass( apiuser, self, _elm, _onClick ); + itemList.push( ret ); + return ret; + }; + this.createFileInput = function( _elm, _onUpdate, _validater, _elmFileInput ){ + var ret = FileInputClass( apiuser, self, _elm, _onUpdate, _validater, _elmFileInput ); + itemList.push( ret ); + return ret; + }; + this.createCombobox = function( _elm, _onUpdate, _optionList ){ + var ret = new ComboBoxClass( apiuser, self, _elm, _onUpdate, _optionList ); + itemList.push( ret ); + return ret; + }; + this.createCheckBox = function(){ + + }; + this.createRadio = function(){ + + }; + this.createSlider = function(){ + + }; + this.destroy = function(){ + var _item; + while( _item = itemList.shift() ){ + _item.destroy(); + } + }; + }; + + function start( _apiuser, _uigroup, _item ){ + if( currentItem !== _item ){ + currentItem !== null && currentItem.blur(); + + if( currentUser !== _apiuser ) { + KeyEvent.add( SUPER_USER_KEY, Const.KEY.EVENT.KEY_DOWN, onKeyDown, 13 ); + KeyEvent.add( SUPER_USER_KEY, Const.KEY.EVENT.KEY_DOWN, onKeyDown, 27 ); + KeyEvent.add( SUPER_USER_KEY, Const.KEY.EVENT.KEY_DOWN, onKeyDown, 9 ); + KeyEvent.updateCurrentListener( SUPER_USER_KEY ); + }; + if( currentUi !== _uigroup ){ + currentUi && currentUi.blur(); + }; + currentUser = _apiuser; + currentUi = _uigroup; + currentItem = _item; + + _uigroup.focus( _item ); + }; + } + function finish( _apiuser, _uigroup, _item ){ + if( currentItem === _item ){ + _uigroup.blur(); + + currentUser = null; + currentUi = null; + currentItem = null; + + KeyEvent.remove( SUPER_USER_KEY, Const.KEY.EVENT.KEY_DOWN, onKeyDown, 13 ); + KeyEvent.remove( SUPER_USER_KEY, Const.KEY.EVENT.KEY_DOWN, onKeyDown, 27 ); + KeyEvent.remove( SUPER_USER_KEY, Const.KEY.EVENT.KEY_DOWN, onKeyDown, 9 ); + KeyEvent.updateCurrentListener( _apiuser ); + } + } + + function onKeyDown( e ){ + if( currentItem === null ) return true; + var keyCode = e.keyCode, + _index = Util.getIndex( currentList, currentItem ); + if( keyCode === 13 || keyCode === 27 || keyCode === 9 || keyCode === 18 || e.altKey === true ){ // 13.return 27.esc 9.tab 18.alt + keyCode === 9 && tabShift( _index, e.shiftKey === true ? -1 : 1 ); + keyCode === 13 && currentItem instanceof ComboBoxClass && OptionControl.onEnter(); + keyCode === 13 && tabShift( _index, 1 ); + currentItem && currentItem.blur( keyCode ); + }; + return false; + } + + function tabShift( _index, _way ){ + var l = currentList.length, + i = _index + _way, + _item; + if( l < 2 ) return; + while( i !== _index ){ + i = i < 0 ? + l - 1 : + i < l ? i : 0; // 0 < i < l + _item = currentList[ i ]; + if( _item.enabled() === true && _item.visible() === true ){ + AsyncCall.add( currentUser, _item.focus ); + return; + }; + i += _way; + }; + }; + + return { + createUIGroup: function( _apiuser ){ + var _uid = _apiuser.getUID(), + _list = UI_LIST[ _uid ], + _ui = new UIGroupClass( _apiuser ); + if( Type.isArray( _list ) === false ){ + _list = UI_LIST[ _uid ] = []; + } + _list.push( _ui ); + return _ui; + }, + onWindowResize: function( w, h ){ + windowW = w; + windowH = h; + currentItem instanceof ComboBoxClass && OptionControl.onWindowResize( w, h ); + }, + onCurrentApplicationChange: function( _apiuser ){ + currentList = UI_LIST[ _apiuser.getUID() ]; + }, + onApplicationShutdown: function( _apiuser ){ + KeyEvent.remove( _apiuser ); + }, + onSystemShutdown: function(){ + + } + } +})(); + + +var Finder = ( function(){ + var HTML_FINDER_ICON = ( function(){ + return ( UA.isIE === true && UA.ieVersion < 8 ? + [ + '
' + ] : + [ + '
', + '', + '', + 'file name', + 'file descriptiion', + '
', + '', + '', + '', + '
', + '
', + ] ).join( '' ); + })(); + + + var FINDER_ARRAY = [], + ELM_ORIGIN_FINDER_LOCATION_ITEM = Util.pullHtmlAsTemplete( '
  • '), + ELM_ORIGIN_FINDER_ICON = Util.pullHtmlAsTemplete( HTML_FINDER_ICON ), + ELM_ORIGIN_CONTAINER = Util.pullHtmlAsTemplete( [ + '
    ', + '
    ', + '
      ', + '
      side
      ', + '
      style
      ', + '
      action
      ', + '
      ', + '
      ', + '
      ', + ].join( '' ) ), + ICON_HEIGHT = Util.getElementSize( ELM_ORIGIN_FINDER_ICON ).height, + ICON_CLASSNAME = 'finder-icon-thumbnail', + FINDER_ICON_POOL = [], + BREAD_OBJECT_POOL = []; + + var FinderIconClass = function(){ + var elmContainer, + ELM_WRAPPER = ELM_ORIGIN_FINDER_ICON.cloneNode( true), + ELM_THUMBNAIL = Util.getElementsByClassName( ELM_WRAPPER, ICON_CLASSNAME )[ 0 ], + ELM_FILENAME = Util.getElementsByClassName( ELM_WRAPPER, 'finder-icon-filename' )[ 0 ], + ELM_DESCRIPTION = Util.getElementsByClassName( ELM_WRAPPER, 'finder-icon-summary' )[ 0 ], + ELM_EDITOR_BUTTON = Util.getElementsByClassName( ELM_WRAPPER, 'finder-icon-console-editor-apps' )[ 0 ], + ELM_VIEWER_BUTTON = Util.getElementsByClassName( ELM_WRAPPER, 'finder-icon-console-viewer-apps' )[ 0 ], + ELM_ACTION_BUTTON = Util.getElementsByClassName( ELM_WRAPPER, 'finder-icon-console-action' )[ 0 ], + instansce = this, + file, w, index, style, + onDownCallback, onEditorCallback, onViewerCallback, onActionCallback, + viewerList, editorList; + + MouseEvent.add( SUPER_USER_KEY, ELM_WRAPPER, 'click', onDownClick ); + MouseEvent.add( SUPER_USER_KEY, ELM_EDITOR_BUTTON, 'click', onEditorClick ); + MouseEvent.add( SUPER_USER_KEY, ELM_VIEWER_BUTTON, 'click', onViwerClick ); + MouseEvent.add( SUPER_USER_KEY, ELM_ACTION_BUTTON, 'click', onActionClick ); + function onDownClick(){ + onDownCallback( index ); + return false; + } + function onEditorClick(){ + onEditorCallback( file, editorList[ 0 ] ); + return false; + } + function onViwerClick(){ + onViewerCallback( file, viewerList[ 0 ] ); + return false; + } + function onActionClick(){ + onActionCallback( file ); + return false; + } + function draw(){ + var _thumb = file.getThumbnail(); + if( _thumb.image ){ + ELM_THUMBNAIL.className = ICON_CLASSNAME + ' has-thumbnail'; + ELM_THUMBNAIL.style.backgroundImage = [ 'url(', _thumb.image, ')'].join( ''); + } else { + ELM_THUMBNAIL.className = ICON_CLASSNAME + ' ' + _thumb.className; + ELM_THUMBNAIL.style.backgroundImage = ''; + } + ELM_FILENAME.firstChild.data = file.getName(); + ELM_DESCRIPTION.firstChild.data = file.getSummary(); + + if( Type.isArray( viewerList ) === true && viewerList.length > 0 ){ + ELM_VIEWER_BUTTON.style.display = ''; + } else { + ELM_VIEWER_BUTTON.style.display = 'none'; + }; + if( Type.isArray( editorList ) === true && editorList.length > 0 ){ + ELM_EDITOR_BUTTON.style.display = ''; + } else { + ELM_EDITOR_BUTTON.style.display = 'none'; + }; + } + function resize(){ + // ELM_WRAPPER.style.top = (index * ICON_HEIGHT) +'px'; + } + function onCollect(){ + elmContainer.removeChild( ELM_WRAPPER ); + elmContainer = null; + FINDER_ICON_POOL.push( instansce ); + } + + this.init = function( _file, _elmContainer, _w, _index, _style, _onDownCallback, _onEditorCallback, _onViewerCallback, _onActionCallback ){ + if( elmContainer !== _elmContainer){ + _elmContainer.appendChild( ELM_WRAPPER ); + elmContainer = _elmContainer; + } + if( file !== _file ){ + file && file.destroy(); + file = _file; + viewerList = file.viewerApplicationList(); + editorList = file.editorApplicationList(); + draw(); + } + if( index !== _index){ + index = _index; + resize(); + } + onDownCallback = _onDownCallback; + onEditorCallback = _onEditorCallback; + onViewerCallback = _onViewerCallback; + onActionCallback = _onActionCallback; + }; + this.elm = ELM_WRAPPER, + this.index = function( _index){ + return index; + }; + this.style = function( _style ){ + return style; + }; + this.onResize = function( w ){ + + }; + this.destroy = function(){ + //MouseEvent.remove( SUPER_USER_KEY, ELM_WRAPPER, 'click', onDownClick ); + //MouseEvent.remove( SUPER_USER_KEY, ELM_EDITOR_BUTTON, 'click', onEditorClick ); + //MouseEvent.remove( SUPER_USER_KEY, ELM_VIEWER_BUTTON, 'click', onViwerClick ); + //MouseEvent.remove( SUPER_USER_KEY, ELM_ACTION_BUTTON, 'click', onActionClick ); + elmContainer.removeChild( ELM_WRAPPER ); + file && file.destroy(); + file = elmContainer = onDownCallback = onEditorCallback = onViewerCallback = onActionCallback = viewerList = editorList = null; + FINDER_ICON_POOL.push( instansce); + }; + } + function updateIconPosition( _style, _w, _index, _elm ){ + + } + var BreadcrumbClass = function(){ + var elmContainer, + ELM_WRAPPER = ELM_ORIGIN_FINDER_LOCATION_ITEM.cloneNode( true ), + ELM_FILENAME = ELM_WRAPPER.getElementsByTagName( 'a' )[ 0 ], + instansce = this, + file, w, index, + callback; + MouseEvent.add( SUPER_USER_KEY, ELM_WRAPPER, 'click', onClick ); + function draw(){ + ELM_FILENAME.className = 'file-icon-' + file.getType(); + ELM_FILENAME.innerHTML = file.getName(); + } + function resize( index ){ + ELM_WRAPPER.style.left = ( index * 90 ) + 'px'; + } + function onClick(){ + callback( index ); + return false; + } + this.init = function( _file, _elmContainer, _index, _callback ){ + instansce; + if( elmContainer !== _elmContainer ){ + _elmContainer.appendChild( ELM_WRAPPER ); + elmContainer = _elmContainer; + } + if( file !== _file){ + file = _file; + draw(); + } + if( index !== _index){ + index = _index; + resize( index ); + } + callback = _callback; + }; + this.elm = ELM_WRAPPER; + this.index = function( _index ){ + return index; + }; + this.onResize = function( w ){ + + }; + this.destroy = function(){ + elmContainer.removeChild( ELM_WRAPPER ); + file = elmContainer = null; + BREAD_OBJECT_POOL.push( this ); + }; + } + + var FinderClass = function( application, elmRoot, tree, header, footer, onSelect, viewerOption, editorOption ){ + var ICON_ARRAY = [], + BREAD_ARRAY = [], + elmContainer = ELM_ORIGIN_CONTAINER.cloneNode( true ), + elmLocation = elmContainer.getElementsByTagName( 'ul' )[ 0 ], + nodesDiv = elmContainer.getElementsByTagName( 'div' ), + elmSidebarButton = nodesDiv[ 1 ], + elmStyleButton = nodesDiv[ 2 ], + elmActionButton = nodesDiv[ 3 ], + elmBody = nodesDiv[ nodesDiv.length -1 ], + headX, + headY, + headH = Util.getElementSize( nodesDiv[ 0 ] ).height, + bodyY, + currentFile = null, + breadW = 90, + size = Util.getElementSize( ELM_ORIGIN_FINDER_ICON ), + iconW = size.width, + iconH = size.height, + style = 0, + w, h, bodyH, + instance = this; + + tree.addTreeEventListener( Const.TREE.EVENT.UPDATE, draw ); + elmRoot.appendChild( elmContainer ); + + function draw( _w, _h ){ + w = Type.isFinite( _w ) === true ? _w : w; + h = Type.isFinite( _h ) === true ? _h : h; + bodyH = h - headH; + var l = tree.hierarchy() + 1, + m = BREAD_ARRAY.length, + _file, _bread; + for( var i=0; i 0 ){ + ICON_ARRAY.pop().destroy(); + }; + }; + + function onHeadClick( i){ + var l = BREAD_ARRAY.length -1; + if( i < l){ + var _file = tree.getParentFileAt( i); + if( _file !== null){ + tree.up( i); + draw( w, h ); + }; + }; + }; + function onDown( i ){ + if( i < ICON_ARRAY.length ){ + var _file = tree.getCurrentFile().getChildFileByIndex( i ); + if( _file !== null && ( _file.getChildFileLength() !== -1 || _file.getType() === Const.FILE.TYPE.FOLDER )){ + tree.down( i ); + draw( w, h ); + } else { + Type.isFunction( onSelect ) === true && onSelect( _file ); + }; + _file.destroy(); + }; + }; + function onEditor( _file, _app, editorOption ){ + _app.boot( _file, editorOption ); + }; + function onViwer( _file, _app ){ + _app.boot( _file, viewerOption ); + }; + function onAction( _file ){ + + }; + this.MIN_WIDTH = 240; + this.MIN_HEIGHT = 240; + this.onInit = function(){ + var position = Util.getAbsolutePosition( elmLocation ); + headX = position.x; + headY = position.y; + bodyY = Util.getAbsolutePosition( elmBody ).y; + }; + this.onPaneResize = function( _w, _h ){ + draw( _w, _h ); + + w = _w; + h = _h; + elmBody.style.height = ( _h - headH ) + 'px'; + + for( var i=0, l=ICON_ARRAY.length; i 0 ){ + BREAD_ARRAY.shift().destroy(); + } + while( ICON_ARRAY.length > 0 ){ + ICON_ARRAY.shift().destroy(); + } + }; + }; + FinderClass.prototype = new AbstractBasicPane(); + + function getFinderIcon( _file, _elmContainer, w, index, style, onDown, onEditor, onViwer, onAction){ + var _icon; + if( FINDER_ICON_POOL.length > 0){ + _icon = FINDER_ICON_POOL.shift(); + } else { + _icon = new FinderIconClass(); + } + _icon.init( _file, _elmContainer, w, index, style, onDown, onEditor, onViwer, onAction ); + return _icon; + } + + function getBreadcrumb( _file, _elmContainer, index, callback ){ + var _bread; + if( BREAD_OBJECT_POOL.length > 0 ){ + _bread = BREAD_OBJECT_POOL.shift(); + } else { + _bread = new BreadcrumbClass(); + } + _bread.init( _file, _elmContainer, index, callback ); + return _bread; + } + + return { + init: function(){ + + }, + create: function( _application, _elmTarget, _tree, _header, _footer, _onSelect, _viewerOption, _editorOption ){ + //if( Application.isApplicationInstance( _application ) === false ) return; + + var _finder = new FinderClass( _application, _elmTarget, _tree, _header, _footer, _onSelect, _viewerOption, _editorOption ); + _finder.init(); + FINDER_ARRAY.push( _finder ); + return _finder; + }, + registerFinderHead: function(){ + + }, + registerFinderPane: function( _finderPane ){ + + }, + isFinderInstance: function( _finder ){ + return _finder instanceof FinderClass; + }, + isFinderPaneInstance: function(){ + + }, + isFinderHeadInstance: function(){ + } + } +})(); + + +/* -------------------------------------------- + * + */ + + Application.onCurrentApplicationChange( SUPER_USER_KEY ); + + SERVICE_LIST.push( MouseEvent ); + + new EventTicketClass( window, 'unload', function(){ + var _service; + while( SERVICE_LIST.length > 0 ){ + _service = SERVICE_LIST.shift(); + Type.isFunction( _service.onSystemShutdown ) === true && _service.onSystemShutdown(); + } + }); + // beforeunload + + +/* --------------------------------------------- + * broadcast to global + */ + window.gOS = {}; + + gOS.registerApplication = Application.register; + gOS.registerDriver = File.registerDriver; + +})( window ); diff --git a/0.5.x/js/create_new_comic.js b/0.5.x/js/create_new_comic.js new file mode 100644 index 0000000..db89220 --- /dev/null +++ b/0.5.x/js/create_new_comic.js @@ -0,0 +1 @@ +$("#newcomic").html("
      <\/div>\n\n
      \n