HTML5之Canvas绘图实例——曲线图
实现正弦、余弦和正切函数画图(如下图):调试环境:Firefox
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA0wAAAEvCAIAAAD5ANY9AAAgAElEQVR4nOzd+XtTZdoH8PmP3n+hszijPshaEAREFERRFKUICFRGBwRFsIhTZUQchBHFQtkteze6nKRp07RZmn1fmn05+znvD096cpKmC22Sk4T7c/Wai2a947TpN89yP38SAQAAAABA3fmT0gUAAAAAAIDSg5AHAAAAAFCHIOQBAAAAANQhCHkAAAAAAHUIQh4AAAAAQB2CkAcAAAAAUIcg5AEAAAAA1CEIeQAAAAAAdQhCHgAAAABAHYKQBwAAAABQhyDkAQAAAADUIQh5AAAAAAB1CEIeAAAAAEAdgpAHAAAAAFCHIOQBAAAAANQhCHkAAAAAAHUIQh4AAAAAQB2CkAcAAAAAUIcg5AEAAAAA1KHpIa9945/+9Kc/bWwXRVEUdcf+7/+O6XIX42/aN05dL07dSrpS/u8ZtG8suB4/9gz30R37v/xnm/suAAAAAADPusKQl81oOFVlv/nTxnZ5yMvmq1zwKghc064vUCSfyZ+o6I2npTkIeQAAAAAAsygIeVNp609TmUtKbNmQt3Fj4UDdVAybXe4OubSY/2Qz3WPqVvl5DkIeAAAAAMAs8kJe0alW3bH/29iu0x2bymb5c7VTEU92EX6UGeKXNFIom4WVzwTPcJ9pV0LIAwAAAACYRV7Imy1tFb1ufqN4sgyYm8pt35g/nveUcQ1CHgAAAADALIqN5OUmTI/NHOJkq/PmPZInW/Anbb4oWMHXvnHm4Db79C4EPgAAAAAASf6avPZjx9rlEW2W4TvpwnmN5uEMl3/Tje3TJogLNmAUD5HyqyDYAQAAAAAUM62Fim5hIW++a/Lyri+yqXbaRXnbfQuLgJAHAAAAAFDUfELe7JOj81yXVywUznrXXKc+CHkAAAAAAE9JHvIK17xNrcl7ypG8WU0f5svdX/pX+8Y//d+xdp1OVhSEPAAAAACAp7D46dqnkjd2J1+olxfyptcztYBPuhJCHgAAAADALCozXZu3sWJaG74/5W20LR7y8qZwRQh5AAAAAACzmjHktR/7P+mYi/nsri0+XztnEzz5bKwU8uTH1eZCXt4zQMgDAAAAAJjFDCEvtziuLCGv8LA0+bhhNuQVtF2BNXkAAAAAAE9hWsgrEruKza8uaLpWCpC5FXjTH0l+Gkb2TkWiHIQ8AAAAAIBZFIY8XftGWaYqkvhmWh23kOnawuMt5Ovv5rtdFwAAAAAATDdtJA8AAAAAANQ+CHkAAAAAAHUIQh4AAAAAQB2CkAcAAAAAUIcg5AEAAAAA1CEIeQAAAAAAdQhCHgAAAABAHYKQBwAAAABQhyDkAQAAAADUIQh5AAAAAAB1CEIeAAAAAEAdgpAHAAAAAFCHIOQBAAAAANQhCHkAAAAAAHUIQh4AAAAAQB2CkAcAAAAAUIcg5AEAAAAA1CEIeQAAAAAAdQhCHgAAAABAHYKQBwAAAABQhyDkAQAAAADUIQh5AAAAAAB1CEIeAAAAAEAdgpAHAAAAAFCHIOQBAAAAANQhCHkAAAAAAHUIQh4AAAAAQB2aK+S52poas1r6Z7+F/Pr5XwgAAAAAAEpv9pDX3yIlsv6WxsamNteMt5Dd9CkuBAAAAAAA5TBryOtvkeU6V1vT9Gwmu0Xu+vlfCAAAAAAAymL+a/KKDcDlxbWpGDf/CwEAAAAAQHnMN+S52pqKBDMIeQAAAAAAVWleIc/V1lR8GV3pQt5qUH3WrV79zqpVSlcBAACF3mxsVLoEAMpuYcFObu6Q52prKrrlYuq6koW8Bb4CUDb+9nYCIde5c4o8u+3kSQKh0L17ijw7AKBq8SSpXrVqZPNmnqaVrmVGnosXCYQ8Fy8qXQioVZUIeTOO4WWVbOMFhLxqQ/l84zt3EghNPnigSAH2U6cIhIJ//KHIswMAqpb/2jUCIfPnnytdyGx8ly8TCLl+/FHpQkCtKn/IK74QL0+pWqhAyKs23l9/JRAy/+tfAssqUoD9228JhIK3biny7ACAKiUIpoMHCYRCd+8qXcps8EyI88wZpQsBtarsIa+/pbHAtEE5+a3kwW3+F5byxYBSIZ3OsXffJRAKd3YqVYOjtZVAKHDjhlIFAACqUIwgCITG3nuPiUSUrmU2wVu3CITs336rdCGgVlVoTV5lQMirKng1ieXoUQVrcH7/PYGQ/9o1BWsAAFQb/PHP/d//Kl3IHEIdHQRCtpYWpQsBtQpCHiiLtNU6um2batmyyJMnCpbh/OEHAiH/lSsK1gAAqCqkx6PdsmVo9erk2JjStcxh8uFDAiHr8eNKFwJqFYQ8UBbun36qhvcm148/Egj5fv9d2TIAANWADoUiPT22r79WfJJhniLd3dW/OwRUMwh5oPRSRqP2jTfUq1bFBgeVrQRnTe9vvylbBgBAcf72dvWKFQRC+Mt8+LDSFc0t2tdHIDTx2WdKFwJqFYQ8UHp4krQa1pG4f/6ZQMj7yy9KFwIAUFJscBBnO9OhQ6ZDh1RLl9ZEB82YSkUgZGpuVroQUKsg5IESo7xe9YoVqqVLSZfyp85BK1EAgCiKhr17CYSCt2/jb0P37hEIje/cqWxVc0potQRChr17lS6kTqgWROmqFwVCHigxfMiE7eRJpQsRRQh5AABRFEVRvWoVgRBPkvhbnqYJhNSrVilb1Zwg5JXWAhJb4V1cbU35XeHm6AO8MMWOe1gYCHmglCivV7V0qWrpUsrrVboWUYSQBwAQRVEUxz/8kEAo2teHv8XhaWzHDmWrmhOEvNLCiS3c1TDPL7F4yCvs3VuWnFciEPJAKdm/+YZAyPn990oXkuX7/Xc4FAgA4LlwAQ/duc6edZ07N7RmDYGQr61N6brmkLZYCITG3n1X6ULqRBlC3gwHcFUNCHmgZGIq1dDq1SOvvZbU65WuJct/5QqBkPOHH5QuBACgGDoUsnzxhbSvNru79sgRgeOULm0OpNNJIDS6bZvShdSJsoQ8+QFeuclcaXTP1dbU2NI2dXlLf+420sPITwbDF0rPkn/v3JBh7i5zDCNCyAMlYz1xotqGzfAZ5NUzsggAqDCBYfDJN2Pvvx+8fdvX1uZra0sZDErXNS+Uz0cgpH3jDaULqRPlCXnSRbIxvdw/XW1NUhLrb5FSmautKfuvgns1tbkKQp783tPOhc0/InY6CHmgNKJ9ferly7VbtqQnJpSuJSdw4waBkKO1VelCAADK8F66RCA0snlzuKtL6VqeGh0KEQiNvPqq0oXUifKGvLyrpPAlv3Smf0um7pUX8uTDhFLIm+8MMYQ8UBqWY8cIhNznzytdSB443huAZ1nw9u2h1avVK1cGbtxQupaFYGMxAiHNK68oXUidKO90bd6gWv6E6+whL2/H7vSQVzQW5uZrZ097EPLAwnGplKO1Vbd9+8imTXjhSMZmU7qoPME//iAQsp86pXQhAIBKi/T2at94o6b313PpNIHQEPxpK5HybrxY2EiefKyu+EjeXGN/s8a8Coa8Wfq+yGNsfhCellOLXpgFIa+SuFRqZPNm+UJmdWMjHQopXVee0N27BEK2r79WuhAAQEUldDrcNsXx739L7fFqTraf34oVShdSJ8rcQmXGNXmzhbyCO80n5MlzYdWEPDy0OEMp/S2zxFP5Syh6oQRCXiU5WlsJhPS7d2fsdtLlMjU3EwhZjx9Xuq48k/fvEwhZT5xQuhAAQOWQTufEP/9JIGT+/HPK71e6nEUQBNXSpcSSJQLLKl1KPShRyMuTl0Rm2l0723St/D79hcv7Zrp3Ve2uxa+gqaVlppG8YrtDCvYkT9tRUmxcEEJeJeFhPKnpMROJEAiNbNqkaFGF8OFFVXL8BgCgAgSOMx06hDdbMJGI0uUsFp4nUbqKOlGCkFdrKhLy+vsLJ6bzr29rmpbxis5tF5/wzoGQV0nDGzYQCEnvoTjkadatU7aqAhDyAHjW4EkG9apV1XB89uKpV6yQH8gGFqMEx5rVmmpYk9ff0tjUVNDqD0Je1Zv4178IhEzNzWw8zsbj5iNHCIQmPvtM6bryRLq7cddTpQsBAFSCr62NWLJkeP36yfv3la6lNAo+ToPFUC2I0lUvShWEvMKtJTPvUplHyDOCitB3d2v27CnoIK9auVLf3a10aXnGfv+dQEizd6/ShQAAyk534YLq5ZeJJUtGv/9e6VpKRr1hA4GQvr9f6UJqGP0sKXjtVRDy8sya52AkrzqQbjc+I2j8gw/0u3apV61Sr1plam6uwsmRaH8/gdDEp58qXQgAoLxig4O6t98mEHKdO6d0LaU0unUrgRDp8ShdCKhJ1RryYONFtZISnmHPnsTIiNLlzCE2OEggZPrkE6ULAQCUUcpoNOzdi/slsYmE0uWUkm77dgKhjN2udCGgJlVByJN3Q5HtwYAWKlWothKeKIoxtZpAyHjwoNKFAADKhfL7s2uCP/20CucTFmnsvfcIhNJms9KFgJqkWMiTz7bK+s4U9hic34VZEPLKquYSniiKcY2GQMi4f7/ShQAAyoLLZOzffksgpN+1K6nTKV1O6Y3v2kUglNTrlS4E1CQ41gzMC+nxWL78kkDI8NFHtZLwRFFMjIwQCBn27lW6EABAWXguXCAQ0m7ZEnnyROlaysKwZw+BUEKrVboQUJMg5IG5SQlP/9FHieFhpct5CgmdDpetdCEAgNILXL+uXrFiaM2a4J07StdSLsYDBwiE4kNDShdSD6CFysJAyKtnlMdjnUp48ZpKeKIoJsfHCYT0TU1KFwIAKLFwZ+fIa68RCHkvXVK6ljLCp3dEBwaULqQelKAZ8vTdBfPaVDqzRd59LhDywGxqOuGJopgyGHCrF6ULAQCUUnx4GO9IcJ45U9/nupoPHyYQivT2Kl1IPcCJ7aqBmueXWKaQV+ZgJwchD8yI8nqtx4/XbsITRTE9MUEgNPb++0oXAgAomYzVajx4kEDI8uWXzOSk0uWUF97uFn78WOlC6gGEvIWBkFeHcglv9+64RqN0OQuUtlgIhMZ27FC6EABAaTDhMH5rMh44kLZalS6n7KwnThAI1c0pbcoqe8jL9QqRHdYgNQXJtQGWfSvd3dXW1NjSNvUAuftLj9nStoBsCCEPFFEfCU8UxYzNRiCk275d6UIAACUgcJzzzBkCobH33qvpt6b5s3/zDYFQHe8sqaQShbzppPMapkJY7p+yfnHSPwtzoRTypm6ad/fsv/AzQ8gDi1U3CU8URdLpJBAafestpQsBAJSA99dfCYRGNm16dqYvHa2tBEKBGzeULqQelHckr/jJq8WObpgx5E070yvvANeip0DMAUIeyEP5fNavvqqPhCeKIul2EwiNvvmm0oUAABaCjccdra267dt127cb9uwZWr1avXx54Pp1peuqHOcPPxAI+a9cUbqQelDekJcXyOS3y83XZi+ZMeQVXigPfgtbygchD+TkEl5TU320ZaJ8PgIh7RtvKF0IAOCpsfG4Zt06AiH5l+P775Wuq6LcP/1EIOT99VelC6kHSozkyUgjcfMOeTCSlwdC3mLUX8ITRZEOBAiERjZvVroQAMBTwzOV+t27M3Y76XKZmpsJhCxHjypdV0V5Ll4kEPJcvKh0IfWgzBsviq3Jk4/FFb1w9pAHa/LkIOQtGE+S+t27CYSGN2yopxO+IeQBULtGNm8mEKK8XvwtE4ngBXmKFlVpEPJKqDp21+ZuNzUjO0vIk++ubSkyOjgXCHmgbhOeCCEPgFo2vGEDgRATieBvccjTrFunbFUVhkOe+/x5pQupByUIeUoqNgU8Fwh5zzrK78d9mPS7dtXNLK2EjUYJhDSvvKJ0IQCAp0N5vbrt2wmETM3NbDzOxuPmI0cIhCzHjildWkUFrl8nEHK0tipdSD0owbFmFVZ0tvdpVDDkzbYvJDcc2b+QC7Mg5M0HT5Lu8+f1u3frd+92tLZa8Kllu3bF1WqlSys9NpEgENKsXat0IQCApxAbHMQr8FQvvSTfdaFetUqavX1GBO/cIRCyf/ON0oXUA9WCKFuzrDHfUw/jiRUMeXhSunjIk+KpPKfO/0Iswwp7jpxyxLgMKyz8pdQ7niS1W7YU7FYb37mzLhOeKIpcKkUgNDTDTzmXttKT3Vy6/pvmA1AreIbxX7miff11AqGJTz+dfPjQdOiQetUq9apVpubmOltPMh+T9+8TCFlPnFC6EFCTKhHycA5tammZYSRPNs2ct6NknheKoiiOh9hrxuwkeruRGg3W83nVi+E6dw6nupTBkDIY8FI8U3Oz0nWVC0+S+NN/4eVUMD6yM9zVgL/iIzt50qdIhQAASdpqtZ06RSCkXrnS9eOPdDCodEXKCz9+TCBk+eILpQsBNakiIa+/v/Acj7yri7WWmf+FouhNcFcNVLuBUnlZtY9tN1JXDZQjxi3+hdWf0W3bCIQydjv+lvJ6CYS0W7YoW1VZ4dHKggtxwov0LUuOHYj2rwx3NcTUW0QBfmYAUExybGxk0ya8tSI2OKh0OdUi3Nn5DK5EfGbxgshwIsOJXImmJKtgTd6iQ163k7lqoOxTqc6b5K8aqAc2WoBp22kKdqvh2cz63q02PeSxibFwV0N0YDVPh0VRFNhkTPVquKuBDtwTeFqhMgF4dgkc57l4UbV0KYGQYe9eOhRSuqIqktBq8X8WpQsBZUdxQpLOfVGlWHtWDyHvpom6aqAYPnsFL+Q2SF83ZG4ZUh2G2ANDuNMQ7DX6B4wetdE5bLTpjGbjM2b8zh31q68SCFmPH+dpmqdpW0sLgZBmzx6lSysbwzixZAmxZIlD85Nr6CsPccDf/3aoZ2m4qyFtOS39DKZtZ6Sp23BXQ6h3Rah3lb//TX//2x5in4dodg195dScdgz/ZNP+ah29YR57ZB5/YjLoFHxlE3r1hF6tYAEAlMT4H38MHzhAIKRas0Z76pRhaEjpiqrL2PXrBEKaDz9UupAaRtcCkmaTtJCiBYoTaE5I0UKSFkiafdrHKXjt9RDy8EieJ5FNeb4kf9VAXTNStyboObvg3DbTD2x0t5NR+1hdkJ0Ic44YF0rzcUqgSzVaWgW4TMZ/5QqeqyWWLCEQUq9YoV6xgkBItXRp2mJRusDFEpgYmzTQk92k+3La2poc/ySu2Y7nYVUvIQKhyccN8hgX7mqID++Q7p7Q7gp3NUT6VoS7/1pwszm/ogOro4Nr4yM7E6MfpYxH0+aWjP0c6b5M+e8w4SdsTMOlHTzpK+FcMJsYi6k242ePqV5lYzV/xDB4ZoU6OsZ27MDHWoQ7O5UupxplR/L27FG6EFBeGVZI0gI7NVzFCWKSFtLMYnNIFYS8RW+8cMY5nOo0flbjZ2+YqKsGyhbN/k1NM0KUFHxJ3hHj9CF2xM8SHqbbyXRYaHzL2b86LPQjO93rYtQ+Vh9iLVHOleBDaT7F5P7PWCSaEyxRThtgLVGOLMPW4PjwsOXYMbyW2fn995HeXv3u3aqlS1VLl+p3766lhCdwPOljYxrKfyfjOJ8yfZkY/SimejXS8/eZElik9wXVsiUEQsnx46TzIh24y8a1fNoZHVgd7mpIjh2gvNeS45/g9XkCm8TPw5M+LuNmYxomMkD575CeKxn7ubS5JWU8mhj9KD6yM0asjw6ufdo4GO5qiA6ujRHrF5MIubQDv97IkyWRJ0vCXQ3h7r+ySUOl/j8AoDToQMB19iz+qGlraamlN6LKSur1BELju3YpXUg9qLYWKrwgsrxIcQJOeMn8VWZ4YG+RT1ENIa8ELVR0QU7aXXvVQGn87DwX5PGCmGaEyQzvSfC2KKcPsUM+tt/NPHYwHRa63ThHBLxmpDosdJeD6XczGj+rD7H2GOdN8pMZPs0I86khmOblI443TZQ3WaLwKIpsIuG7fFn7xhv4g+Dkw4e5F07TPF2l688EJsalJujJbtJzJW1tTeo/jWu241g2Y3jqXxnXbE/qP01bW0nPFXqym0tN4NCmXrWKQIgnSflTMFFVpG9ZLgs+WUJPdi+oVo4nfVzawcY0TPgJ5b9Dui+XJhF2/zU6uDamejU+sjOh25cyHk1bTmfs52JDb4a7GlLGo6LAiQKXNreEuxoSun0l+S8PQGXE1eqJf/4Tn0bja2ur2veiapCemCAQGnvvPaULqQclaoYsa133lKfJ8oLI8CLFCWlGSFp//7Cx5TGdtw5PWnjG8jU+kpd/PId0tJv8v9b8LxRFUUzQwt6j39pjXHLRyVciCCLJCjFKCKR4V5w3R7ixIDvkY/vcTKeDuTvXWGC7kbpjph/a6F4nQ3gZbYA1TnL2GOdL8uEMn2IEmhP/MNNXDVS/m7FFuQEPc9VA3ZqgmVLEvJhKZT58GHeJc/7wA+l2l+BB8wlsMm1uiak2x1SbUxMnBCb2VHfHw3J04G7esFzvCzMOy/X8PUasT2h3pYxHM/ZzlP8OG9NwGffsM6FDq1cTCHHpdGHxTIz0XElbTpOeK3gHRtllE6GVjWnoyW7Kf4d0XcrYz6UmTqSMRxPaXfGRndHBtbPHWfwlDToKbDLc1RDpeR5awICaIPC8/9q10a1bCYSMBw5E+5+2gf8zJ2O3Ewjptm9XupB6gBNbQafYWb7EYiEvf4zJ1dY0Y87DA3UMJ1KskGGzy+ykrxQtpBmBZAWaE1leZHgRX06yAjk1sLf4CUM41myxSFaIU0IwzTtinDHMjQZZtY/tdjL3rPR8FgVeNVBdDkZ6tB4nc9Ww2ME8JhLx/vLLyGuvEQgZP/64TCtdBDZZMEAV7V/JU4V9rQQ2yaUmmPAT0nMlbTuT1H8aH94xe46J9C2LD21Ljh1IW06Trkt06DGbGFtwDtOsXUsgxCYSi37FFSXwdNFEiKdoudQEvhmXccvngpP6TynvNelaAKpKxuGwf/stXhns+O67cnzyrD+kx0MgNLp1q9KF1INShLxpB8jKBrAEQWR5keZEkhXSTF6kw1841eEOKdOHoxhOlN+YLsVCbgh5ZTfLokA8xawN5Fo364LsVQP1yEbbogsckowODOB5EM3ata5z5yhfuQZ48ERhfHgHl7ZyaQfeuxAffifjvJCaOJkc2x8f2hbtXzVjknuCYqpNidGmlPFoxvYD5b3GTPaySSNPR0pbp+aVVwiE2NjTjTJWrYz9LN5vwYSfMJGB+NC2cFdDlFgfU22S/+eNEeuT44cyzgtMZKBC45QAzCrS22vYt49AaPSttwI3bypdTs2gAwE8r610IfWgFCEvb+hOvqguxQhJuu+rqclGPA+btrXt2tVysvA4VldbU2NLm2x6UzYD/HWfyPKiIIjFpy6ly+Z3yhmEPCWFM/xVA/WHmcb7LRhevGfNG/y7baZVXtYR4+YzMU8Hg+6ff8ad8IwHD0Z6espafHTg5XBXA5fJfhbnSd9MWx9iqs0J3b7UxInc1odpA37lM7xxI4EQE66ToCNwGdzVTz6Ah2dvubSD8t1MGY/GiPUF09zx4R1p2xkmMiDN8wJQVpGeHkdrq6O1NdzZySYS3l9/xb+JE//6V3x4WOnqagkTiRAIDW/YoHQh9WDxIY8XRIbvPyEtyDvZJxt7c/6yq/FEr0Bxgu33pmwGy2VC2Yifq62pqc2Vt6lUdlX2n/n/yiY62TjitCHFoiDkKQzPz96aoPvdzG0zjds4W6LckI99aMsLfI/s9LCftce4GFUk8EV6e/F53sPr17vPny/fcUBc2kF6riRGPwp3/Tnc1SCNEvF0ONzVEO55Dm99YMJPpK0PysI99OupvarA06TrUkK3L6HbRzovClxm+m14OkwHH6Qtp2PqLQWxO6bekja30MEHlYza4NkhcJxh7175X0rNunX4dEHXuXP19JtYGWwigWdmlC6kHjxtyBMEUaVS5RbVFc7ATo3bfd3P8iLvnKn1WzaLSakNZ7zc90XjWvGecQWbTucGIU9hGVbAff7wV7eTkQbteEEMZ3hLhFN72fuyEb5rRqrTwYwEWEecS9AC5fW6zp3DK89Mhw5F+/pKXiSXcVKBjvTE1/GhN2XbP58LdzUkxw4ITExgYknDYfxtyZ99kUY2byYQogMBpQtRDE966VBXxn42odsX7W+UBb4/x4feTJm+ID1X2fiowFNKVwrqga+tDY88BW7cCN6+jX8BhzdsCN27p3RpNWmmA7jBAjxtyEvRgkqlmmmrBI//VksxLn/TbeP0/r65cJd3lSwHyhR9NFGUz9fOJ+1ByKsKcUrwJvl4sSE6jOPFyQw/EeEILyOf0v3jtnrw1c0EQsTSpbbzFwWuZB13BTbOhPsz9nOJ0d3ZfmxdDeGuhvjQtrT5ayrQwcRG5JfjmVku7ShVAaUCIU+OZ6JMZJB0/S+p/2eM2Ji/jG9jUv8p6fofEyF4Jqp0paBW4ebGCa0Wf5u2WAiERrdtU7aqmiZNHYL5kLeeLTjU4KlDHiOoVCoKb5XA6+SKDKXJw9q03FXYV6SprT+b8Z5mJK+Y+Q3qQcirGXQoFOnpifT0pIOhYJo3elKDx7/FP4i9b71386HhponqcTK6IOtO8AtursMm9KTnStLwL/m6rujAy0n9IdL9Gxsflfcr4UlfQrcv0vtCpPeFxOhHVZjwRAh5MxN4ko2Pkp6rKdMX8aE38fz71P/jjQndvoz9LB3q4kmv0pWCWlLQmRIGohYPQt78TWbyWs/emqCD6Vy3CpVKxQlPM10708YLWSYrNh+bPzU7bdvEtJsXrMkryIAFjyZbkwchr254Ll7EreEJhFRLl5oPH8bZRbVixcQvvxsCdL+bwS33pJ/sXhczHmK9ST4z1ykaPOmlgw/Slm/imu3SX/pIz/MJ7Qdp2xl6srumt2dCyJsnLmWm/HfS5m/iI+9Fel+Ud4pOjOxMW76lAh1cyqp0maB68TTta2tTLV1KIOQ+fx5f6Lt8mUBIv3u3srXVNAh588QLYoelsPXsTRNFc9kNsHjudXG7a0VRPmNauMlVuqbI6VxTN5DvqC2yu7bYTtpibYVhd23diPb1ZbPdkSOWY8fweyiBkPnIkf0f6hUAACAASURBVLhaLd2MF8RQmteH2G4nIz//45qR6nYy+hAbSvP8VN4TuDQTVWUc5xO6fdG+5bJV+ZtTpi8p300uVSenDOm2bycQytjtShdSS7iMmw49ztj+k9DtwUcAS+dwxDVvpUzHKe81NjEm8HBQARBFUWRjscC1a+O7dmX/Oi5ZQiCk274d//YRCMUGB5WusYbhnSt10weqfPwpvmjrWWlRnUqlSjElCHk1BEJeDcBb1UIdHfhbnPlGNm2aZQUey4v+FK8Lso8djPxwthtGssfs1hkfODWHJrv+KjUxTo7tzzgvMNEhgSNneswapd2yhUCIdM3jIw8ohqfDTGQg47yQHD9U0JwlptqUNHxGui4xUZXAxJWuFCgj0tODf8vw2rtoX1+kpwfnEgKhoTVr5AcqggWA6Yj5YHlR5WWKtp5NM9n+wyU61qyWQMirAYVrXGj6qda40GTI5RkZmhi6p7fKe7JcN8S7jWajUx+J13MrDRyRpWXgYDEELsPGRkhPW8p4tKA5S3RgTXJsf8Z+jp7s4Sn/LA/Cpa30ZDeXhpnfmpfQavE2C/yxM3TvnvTJk6fplMmUMpngXNrFg5A3C5oT7DGuz52bv+qwZI8GZadaz0q7L1QLouCrWzwIeVVN4LjQvXvq5csJhKTmxrHBQQKhsR07ZrsjT7ExDen6X3LsoLxrhlfdNGG4orEaOq2x67IRvntWmvAy5gg3meG5kp39WxUg5JWNwCZNlO9W2twSH3430vu8bBnf0oT2w7S1lQ7c49K5iXKe9MVHduZ2amu2V+dmHTCntMUiNcMbWrPG394OYa58IORNF6MEc4Qb8DDSNos7ZprwZLtP3DbnWs8+tD3TP5kQ8qoUm0gEb982fvyxtDhAvXw57iCPB/aCt29PvxeXtlK+WynT8Zj6jbyF86MfZeznmHC/wObm1OKU4IhxI372sZ1pl43wPbDRah9riXIRkhdqP/Dpm5oIhJLj40oXUue4jJMOPkzbvk+M7o72rcgN8vU8F9e8nZo4Qfmux9Sbw10N0YHVSf2n+ODjmGqzfL82qH7x4WFbSwt+FxrdutVz4QLpdCpdVJ3TvfsugVDaCoPfYoTkTWGuz83cMOXG7VRe1h7jUrQgztp69tlUmZAn7RuZYbuvvOlfbr9I0XvN9lD1EfLYeDx465ZhKt6Nf/ih78oV29dfy1eD2lpapGkRgafZmCZtO4OPMZWfdpUyfUkHH8zn2IkYJdhinMbPPrLnHbPx0EZrfKwtykXJ4r8nwTQ/HmLHQ6x8m3pV0X/0EYFQUqdTupBnCP6ZzDjOJ0Y/ivS+UHCoLj6iQ+AyMdXmcFcDE63t2ZBnR0qvd3z/PT4MenjjRucPP6RMJqWLeiaM79xJIJQyGpUuRDGTGd4wyfW6cnOy96z0kI91xouf+Tln69lnRyVCntTMZcauLrI9xbPfa/aHqvWQl413+/ZJ8c5/5Yp0QFnKZPK1tfna2lIGgyg7Xkz+RxT3qyPdlxc8CyaIYoQUrFFuyMc+yD9X7fHUuWrSbw7hYeQ3GPAwVTjyB9O1iuNSE6T7cmxoa7irIW05LV2etp0JdzWQjp8VrA3MR8Zmc//0k/b11/HkrP306cToqNJFPUP0u3cTCCXHxpQupKIEQQxO9Ytol000DftZd4In52oNBrAKhDxZL+cZOjgX6/Zc9F5zPFTthjw2FgvcvCmtcdHv2uW/enX6IY8Cm6SDD1KmL/FUV95ppLYzTFRV2pYW+Fw1c4RTFTtXTTp11xjmjGEOr34wTFbd1Jtx/34CobhGo3QhzzomMoBPTJHmZ7Pr87r/ktDtowN3ix7CCyqJS6WifX3Rvj4ulcKXUD6f99Il3dtv4y5O1q++ihGEskU+g/An//jwsNKFVALHi/4UPxZkOx25QYRHdlobYL1Jnq6zNePlV/6QV/yQ3YJbTLuw6L3meqhaDHlMNOq7cn5s56vZ0bsPdhTEu5mOF4upNqdMX1C+GxVraIcXuva7mZum3OidNEs7meGrc4mr8eBBAqGYrKEgUITA0/jDSXxkJ+m+nBj9CK/Yi/Ytkw5WSRmPUoEOnqrn7d5VK3DjBl5pRyCkXrHCff68v719/IMPsl05Dx+W9n6BCjM1NxMIxWp8m+fsBEGczPDaACvv6t9hobUBdjJTpWuBakI1hLz+lsampqZZmkTXZ8hjotHAjRvju97K9pd683nrieeCd/5BB+6KMx0v1rciOfZxxnmBiaoVHPYQBDGc4fHmXGbqt48XxKsG6rqRmvOAjQozffIJ9GKtEmxcG5mKdOGuhkjfMiaq4lJW0tOWHDsgHbMRIzakJk7QoUcCA91fKySmUuE3ItOhQ6ZDh6SO6wRCpoMHJ+/fFxhm7kcB5THx2WcEQtG+PqULKT08JzvkY+Vnkd210OMhNgYr6kqhCkKe/Cw2aXVeXYc83BhFah86vOEF98/vU4HO1MSJcFdDuPtv+QeJ/jk+/E7acpoOPuBJn9K15/S6GPn8rC3K4d/PdiPV42QcMY6tjk9fsCavqghMjPRcSVtOk54rBRmOTRpI1y+J0Y/C3c9NrUN4PW35hpnshZnccsO/JtKe/dC9e3hHv7z1HVCK7eRJAqHQvXtKF1IyvCB6k7zKm5ftHtpowySXpCHblVIVhLw8s+a5eYQ8YzXR9/Vpdu9WrVypWrlSs2uXvrvbqNfrLlxQb9qU7S/16lr7t3+Lad6XXkJy7AD+8zbZ/Q/v4IeO4f+Yx58o/TqK0xgd+Dezy8FIW9bvGmI3DWn875uG1CPD5KDRPWY0K1jn8McfEwjpLl1SsAbwVMzj3a6hk8EnuYWnod4VbtVhy9h9pUurW6oVK6Z3XFetWKF0XcBoNBqHDx0iENJduKB0IYs1arQMGD2PDJO3DKnsCm8Dec8Q7TX6h412paurT1Wx8aLYjWt+4wUdCg2tWSPve6Jevnzktdfwv7VbtoTu/pHUHy7cb2htDXc1pM2naqJ5mC3KSc2KbpgoS5QTRTFJC9YoNyBbuvfARmsDrC/Jc0qM7dXfh+BnB5eayNjPyrcZxYj1GftZLuNWurT6wUQi7vPn8fysNCGY0Grn7LgOKqbW38QStGCLcoSXkdbb3Zyg+t3MRGTG5lygVKqghYr8UtkejFpvoYJ/LU3NzWw8zsbj5iNHcLwz7Nnj+601pj4stT6J9q/EK815Ooz/nrHxmplbZHgxmOaDaZ6ZFuAipGAMcz2yvpSdDmY8xIYq21HPcuwYgVC4s7OSTwpKi41r05bT0f6V8h3lpPMibNFYjOjAgP2bb4Y3bCAQIpYswYclus6edZ07hz+g+tralK4RiKIo2r/9lkAoeOuW0oU8nTglWCLcoIe5PTUne9tMD3oYS5SDDnYVU5lmyP0tjYUdjOWzrbJeyPLgVuReM1yYVVUhD791MpEI/paJRAiE1CuXxdRvZ/9QdT+X0O3FR1NEel+Ia7bj2Bcf2als5SUXTPNjIfbxVJvldgPV62JM4Qp9hqv1D8FAIrAJOtSZnvg6pto01Rjy+YTuY9J9mUuZla6uZggcF+7sHP/wQ/yxU7V0qeXYsZTJhH9TpC/zkSOwGq9KOFpbCYT87e1KFzIvUVKYyO/D8IeZVnlZWxTW2ykAjjUri5hKpV65kkCI8nrxJTjkada+GO5qiA9vz9jPsrERURQFNpkyHpXGJ1LGo/M5oKIWsbzoTfIjgVzLvZsmasDDWMv8mw8hr/7w9CQduJcyfREdXDe1UXdpcvwTytvOZeCIrRmx8bjv8uWRqTXBmnXr3OfPSx9ExWkd10GV8Fy8SCDkuXhR6UJmE87wxjD3xMVcN+U2yQ75WEes+KEUoDIg5JUS6XL5r1yRjqwgENLv3p2x20mXCzc6Mn2yhZ7snr5VUOAyXGriGdlCSLKCM86pfbl+SH9YaLWPdca5cjQxxyfChe7eLfkjA8XxpJfy3Uoa/hXtXzW1+KExZThM+W/zpF/p6qpIXKNxfPfdyOuv4/cl48GDgRs3pNN0QJVz//wzgZD3l1+ULqSIUJrXT3I9TqZ96sCx+1Za42ddcb7a2mk9myDklUZco3GeOaPdujXb9G7bWvPhVUMvvyif/hhe/8r0QyyeZdktGp7cqP59Gz1S6i0a9lOnCISCf/xRskcE1YdLO0jv1eR4c+TJS1NnN7+SMn1JB+/zdFjp6hTDpdOTDx9ajh5Vr1iBTySzfvVVpLsbmt7VFu8vvxAIuX+u6AGAGVbwJHhPokhW4wUxkOLHQ2yX7FCKhzZ6JMB6EjwFh1JUEwh5i8LGYqF798xHjqiXLycQUr20RN+02vbN34K3/xzu/kuM2GX9ctfoW1t027fbT59m4/EKl1croqRgCnO95dmiUaNrlsHCcMkJ0v1bQrc30vOPqbNhXkubW+hQV70uhCBdrlBHR6ijg3TlekqRHo//yhXDnj1THzu3uc6eTeh0CtYJFsz3++8EQq4ff6zYM5oj3LWpkbl2Y7YfKsuLviSvC+YWWOMzzUeDrC9ZZO8dqAYQ8hYobTZ7fvlFOvNneOMKY/Pzrv/+NdzVENe8lbH9h4kOVayYujG1RYMp4RYNvGY5cONGCesE1Y9NjGWcFxLaXVJf8fjQ1rS1lQn3l/aIZ2W5zp6Vn05hP306odW6fvxxdNu23Hb+tjbSDU1napi/vZ1AyPn995V5Ol+Sx9luwMMQnuw8bK+LeWij5Z/Dx0JsIMXDsF2Vg5D3dASej/b12U+dGt6wHr+H6rYvsXz5nO/KX2LE+tTECTrUKXCpcpdR9yYzhQfd9DgZ+4JO0XB+/z2BkP/atTKUCWoAE9Nk7D/Gh3dI25viw+9kbD/UwcewyYcP8Tmz9tOn7adP45Nn8ZYv9YoV5s8/n3z4kEvB21HNC966RSBk//bbyjwdbm5vj2X3VnuTvHxOVg8HjtUUCHlFxDUa9/nz7vPn4xqNdCFP06GOjrF338n2HXgJjb33vOu/f408WZrU/5Py3ayqM8fqAz76ZsDDSBMH14zUgIfxJnl+3m8yNbExDZSdwDKRgbT1u/jQNintJbQfZBzn2fio0sUtED6LLNLTg7+NDQ7ijne2lpaM3a5sbaCE8ClztpMnK/N0+FxyNv9c8mtGKgWbZGsQhLxCuHeuvFkU5fO5zp4dWr0qexZZ44sTn/09cOPPCe0u0vULmzQt/knB7FhetMfy+irfmqCHfOxkZu6RPQh5QE7g0vRkT9p8KqbenG2/0vP3xOge0nWJTRqVru7pDDU2EghJY3X4LLIhpZsMgJKrTMijOcES5R5NrbfzJrPvrv4Uj8fwyvrsoEwg5OUJdXTgtu/u8+c9Fy8WnEum3fqCo/VvscGtadv3TFRVkprBU8lu0XAx7fPeogEhDxTFM1E6+DBl+ipGrM+mvScoOXaQ9Fzh0jalq5sNl0oFbtwY37kTvy+FOjrw5dG+PgKh8Z311k0dlDXk0ZzgivNqH3tnqqcV/scNEzXiZ0f8LO5+MBGGztg1CUJeHtwFvuAAR2IJMuz7h799Tcp0nA49EtjEoisFixWa9xYNCHlgdjwVoPx/pIyfRwfWZNuv9K1I6j+lfDd50iO/JR16nDa3pM0tdPCBIqUmtFrbyZO4HwqBEB7JUy1daj1+3HbyJN6BEbx9W5HaQPnEVCoCIeP+/aV92GCa1wVZaeju1gRNeBlHjCNZQRtgpWmTqwZqyMcKMFVbmyDk5cErlwumP9SrllLe6wVv96AazOcUDQh5YJ64jIvyXk/q/xnpW55NewMvp4xHqUAHT/mTYwekxXzhroaEdlfFdukykYjv8mVpwyw+FDvc2cnTtOvcOWl3rWrpUtfZs5UpCVQSHm4w7N1bmkejBXOEe+LKtS/udjLGaZ+Qo6QwEeYmwlx4HqtiQNWCkCeKokgHAq4fTwyvb8TvldJHYTxIrt+9u3Q1grIocoqGOXuKhuNnCHng6XApK+n5PTm2P9L74tTY3vJwV0OkbxnpukS6LkX7V4a7GtK2M2UtQ+C42ODgxGefSTFuZNMmz8WLdCAgv1nRPnmgnpQk5EnTstKb5H0rrQ2w/hQPo3R17JkOeXQoFLzdbmp+V73ypeyquzdekD4om5qb8XtruLOzTAWDkpt+ikb3d/8jEDL859z09isZVgil4ewdMCOeCpLuyzH1Fhz1pJW4bFwb7mqIqTaX6XmT4+Pun3/OteFcv9564kT48WM2WZ/9nMHskmNjixluCKX5Mdm07M0JatDD2GMcvPU9C57RkBdTDdhOfaJ9fdXU5+MXJv75gr99FxMZCFy/hidtca8p3+XLZa0ZlIm0ReN+6yUCoYfH//PYwYxNbdHIsEK/O7dXt8fJwBHaYBaRnufDXQ3S6dICT4e7GsI9zy3szDSB40IdHdbjx63Hj4c6OgQuu6SdnpwMdXSYP/8cL7bDgze+335LWywleyWgBqWMxgVsqZGmZa/Jp2UnF9VbHtScyoQ8V1tTY2NjY2NjS/9T3GD+F2bN+WIyDof3l3+P79qYzXArXxzf9Q/n2deT45ekt29RFLlUKq7RxDUa6CNaByy/thEI9Z34Xr5F466VxguNu53MbTN91UA9djAwZwFmkhj9KNzVkHGcx99S3mvZxXndf03o9tGhx/NfnydwnH73bvm2/fEPP4wODLjOntVt356dUnj9dfvp09G+Pp6GvhVATFutBEJj7747nxsznOhO8EOyadl71uyZ4PNvLwrqRiVCXn9LNpJJ/5jPDeZ/oWSmF8Ol06GOC+bD72heWZY9yXHrC9YTGycfn2QTY/N/naAW+a9dwycCFZyi8YeZJllBFEWGF+9Z6asGKliKo3JBXcLzs+GuhvjQtrhm+9Teiw+j/atyJ+RaTjPhPlFgZ38o3+XLBEIjmzeH7t0L3bun3bIFdzDG/2tqbvZfuwar64Ac6XQSCI2+9dbsN0vSgi6Yy3btRqrXxbgSkO2eaRUIef0tjU1t+C3L1dZUJOUVvcH8LxRFUWTCLsuxt9VrX9Ssf8l8+E3Kk21qSjqHHN/tH96Q7TigWoYMe1cFbh5iwv1zvheD+lDQYooXRLWPvWqgRoO5HwBdkL1qoEzQCArMjPLfifQtm+qot4T0XBHxFg33b4nRj8Ldf8kmv5EPMs4LbNIw0+OM7dhBIJQcy368TFssBEKql15ytLbCtCwoig4E8AeDotcyvGiLco8dufUndy20MQxL7oAoViLk5aUxWUqb/Qbzv1AUmbBraPUS+fSHeiXyXPhMv2t9ro/xGy+5zr6XtlznmcjiXzCoIdP7iOKjGLscjHQJPkvj1gStC7JxOJYRzEDgaTZpYJOG6ZOzTFSdtn4fG9o6lQLxaYe3eCpvJywTieAud7k+TSRJIDS0Zk2FXgOoQTOFvGCaJ2SnPt4wUfM8Bwg8O+oh5FmOvY13HlFeLx0ImJqbc2lvFTIf3hR5coZLOxb/OkEtmh7yWF7EMxr9bsYR4wY8DJ7akBbtPXExExEO0h54WgITo4P3U8aj0f7GqWncV9PmU3SwJ9LdaTp0SGqG4j6fXd6HZ29L3ucW1BM6FCIQGt6wAX87meHHQ+xje15zUFuMg91jYLp6CHma9S8RCFFeL76CiUTwzKyv7TN6UrP4lwdqWtETgYJpXuqxgj8BexK8L8lrZX2Vb5tplZd1xjkSZj3AU+LSNtJ9OaHb47vyN9M//z7U+GJ2xcjyZcb9+1UvvUQgNLptm9TfOKHVKl0yqGr458QS5frczPWpT6RdDsYwyUVIGLoDM6qfkEeHQvgKHPKG1i4xAmA06i5cIBAaPnSo8HKjudfof2SY7DX6dUaLdPmY0Txg9Dw0hG8Y0tm0Z0h2GYJqo9NgNFW2dlCrDMPDo+fODb31ljSrMLL5BeuJ54Idf/X1v2P69Qv1K69kZxvWrx+7elXpekH10hsnCKML/7Rkzx8zpDoNIZXRBe9IYCb6gYHh5mb1+vUPlyyxHj8uBaQyhLzyb7wwH34Tty9mIhEmEjEfOUIgZNz/6mJeEqgbk48eEQhZv/zyae8Yo7Kd9qQBP9xlKgJdpsAMuEwm0tNjP3VqZPNm/FdZ9/bbzjNnYgNddOB+yngsOrA6O41LbIz2f54cv1mxs9FAzZmalmWu6snBpUuJJUsGnKQtCtOyYA5sPK5Zt06+UUHz8suU37/gB1S4hQrpMahXIfnrUa9AaevQgl8PqCfhzk4CIcuxYwt+BHyM90PZCphBWAHzrGLjcTYen355Sq/3/O9/+qYm/BY0tHq1+fPPQx0dBR+gubSd9Pye0O0Nd/8t25Nl5L2M4zybGK/UKwDVLkUL1ijXnz8tq1q5ikCIJ0mlqwM1wH769PSRr8X8EZyzGXJ/S2NhB+P8idsiN3iaC0XSYzA1v6Z++UXNuiXG/a9CwgOSomvyFgCf/ChvMXrXSg/7WW+Sn35gGqg/KYNBalY8um0bXkXH03S4s9O4f79sWnaz5+LFOSdH2JgmY/tPXLNtajcuSo5/Qvlu8KSvIq8GVB2WFz0JXuNnOyy01AkFv8NwvIjPYYKQB+YDzyQUrGEb2bRpwQ9Ye8eagWfH5MOHi/wQUyBBC5ZI3vLnTgczHoLOBfWMdLlw65PhDRuGN2zAne3MR44MrVkjHYFoPX48rnm6nV4Cm6CDD1OmL6IDa6amcTekzV/Tkz0CT5XptYBqE87w+hDbOdXo7oaJGnAz1iiXks0VZP9sBwKzPA4AoijGVCr1ypXTd6NCyAP1KaHV4jNAS/7IeMWM9NZ83Uj1uRlLhEvSMI1bb/B8h/30aXzOrPv8+dyhZDt3Bm/fXuQRiFzGQXraErp9kZ7nstO4wzsyjv/CkTx1LMVMTcuach8X9SE2XOzjIoQ8MDs6FPJcvDiyaZP01lTQV66s07UVAiEPTFe+kIexvOhN8sN+9q41d2DakI91JXiag7RXJ/CIXUEHY9Xy5Rm7vbRPxMaGM/Yf4pq3stO4vS8mx5sp73We9Jb2iUAFeJN8j5PpsNA9TsYZzx6ok3vHkE3LavysJzHbwg8IeaAogeNig4PyHpzaLVs8P/+sWbu2chsvKgZCHpiu3CFPkmYEW5Qb9DBSB75HdloXZOFI3JrGxuO+tjbVsmUEQimTCV+Ysdvxm2mZnlRgk3ToUcr0ZXRw7dQ07vrUxEl6slvgYFVWbdCHWGljPv4ivIx+ksuN/Zuo/mnTsjOBkAcK0IGA69w5vHoErxixHDsmddykQyHr8eMjmzZVoIVK5UDIA9PFNZoKnygQIQXjJNftzPVe6XUxE2EuBkdo1A6BYaJPnthPnZJPf2i3bIn09ER6enATY/vp0+Uug8s4Sc+V5Nj+SM8/pqZx3804fmLjunI/NViMDCtcM1LtRsoe49KM4Erw0uFjC1vFO/beewRC6YmJ8tUMagITDofu3jUfPTq0ejV+XzLs2+f7/feMzVb09uVvhlxBEPLAdImREfxrUPmnDmf4ET97ayI7KdNupPrcjCfB8xD2qhjpdPqvXDF+/LH0+dh8+HDw9u2xd9+VT3/otm9f5Dq8p8LGRjL2H+Oa7VPTuC8kxw5S3ms86alYDWD+HDHuqoFSeVnpEo2fxfFuYUP7+l27CISSen3pagTViA49TulPpvQn6eCDgqsSWq3r3DnpjWhk82b76dPRvj6BYYo+FAYhD9S5pE5HIKT/6COlCiBZwRHnVF729lTvlftWWhtgfUlIe9WE52ODg45//1v7+utSjHOdPZsYGcHXCxzna2szHTpkOnTId/kyTyvQxFjg0nSoM2X6Kjq4Dqe96OArqYkTdKhL4DKVrwdMR7KCK853OZmrBkrjLwx5lii3sIc17NkDx9/VOYELdXw4uu151UtI9RLSbn0hcH27wNN0MBi8c8f8r3/hDf4EQsaDB/3t7aTLNfdjQsgDdS85Pk4gpG9qUroQMU4JE2Gu18W0y47QgKMnFUd5PIFr10wHD2aPl126dOLTT4O3b9PBoNKlzYjLuClve3LsQKTn+alp3Hcy9nNsfFTp0p5RFCu4ErzGz96b2oCFB++9SV4URV+Sv2GirhqoBa/ZMB44QCAUH4IWsHUrpvpBtQwRCKlXrcJtEYklyHToLd3bb2eXi2zd6vjuuxhBiMJT/BRByAN1rmIbL+YvmObHguyjqSM0bpioAQ9jm9/6a1BCKZPJfvp09v0UoaE1axytrSXfMFtWPOnL2M9J+zPCXQ3xkZ2U/870gT2eCrIxDU9Vb3KtRRQnuBP8sJ+9P5XtrhmpXhdjnOQIL1Ow8WLIx879iDMw7N0LI3n1zfBxI+7bL3CcwHGO1taCPk0La4UNIQ/UuSoMeRjNie4EP+TLa3A/ZycF8FRIl8t06BD+ZGxqbk5bLKIo8jQdundv/MMPS/IeWiXYmCZlPBrpfSG7aK/n70nDYSaqEkVRYGLJ8U+kFJjQ7ePpsNL11jZ6WrZrN1I9TsYwycm3U1iiHO6TctdCT4S5pxl/KWQ5doxAKNzZWYLqQbUROCaqGlrzIoGQdGoil0oRCKmWoUV+7ISQB+oc7nYxum2b0oXMKEkLlvyeqI/tzHiIDUHvlcWhAwFpFUt2Kvall6xffik/psJ++rTUGKUOCFyG8t+Jj+yUIl10YHWM2ID3asRHduIUGNdsF4UFLg57ltGc4EnwI372gW0q2xmKZLtysJ08SSAUunevrM8CKkrgmKgqZfoy0rfMe+kv6hUvEgjhD6KiKFJeL4HQ8KvLF/kkEPJAncvYbARCunfeUbqQuRWcbnTNSPW5GXOESxQ7QoPmBGi2PDv8d3His894kuRpGn+bXbm8f7//6tV5rlyuRQXTuNGB1Xj0TmCT+EI8yAfmg+FET5IfCeSyHV5Qq5/kKvZJzHriBIS8+iDwND3ZnTQcjvS+EOz4s/3038bef156axrdti2u0SS02vGdOwmELF8stvkXhDxQ5+hAAO82V7qQ+eJ40ZvkR2QruP8w02of64rzUKWO+wAAIABJREFUFCeIohjO8NIfm3tWGgb8ZoLbhDKRCP4WT3+oly9PGQzKFlZJ6YkT4a6GtLU1d4m1NdzVkLGfVbCqmsDwojfJawPsw4Jsp8QoO4zk1TqBy9CBu8nxT/Boeujen60nnhvesAxnu+ENG9z//e/IplfkMw8jm9ZJs7cLBiEP1LmaC3mSNCPYY9ygh7k5kf0D89BGD/lY3FX1tpnGPVnajVTRwy6fcUwkgpuFSqd0Z38SFnFKdy2iJ7vxbgzpkuTYgewpGuotGfs5LgX9dfMUzXZdDoVXUEDIq1ECE6P8d5JjByI9f8e/d4GbfzMffmVo9QqpVVOoowO3ZOJJ0v3fc+Mfvjv+4bvu/54rySrhyoQ8V1tTY2NjY2NjS//s1zc2Nja1uWa712wPBSEPTIdXNpTvBKoKyLCCMczJp4o0fhYv4h4PsVcNVI9ztmaYz5qEVuv47jvppIrxnTtTJlPKZNLv3k0gZD1+XOkCK0rgMtGB1eGuhqThMOW/k5o4Ee5qCPc8FyM25jbkat5KW76lQ108E1W6XiVNZnhtgP3DnPtFu2uhx0NsNZxV4/zhBwIh/5UrShcC5oVLmUlPW3K8OdK3PLtkom+57/L75iMfaNaukU4hCz9+zFNUWSupRMjrb8lGMukfRW4x7fKi95r9oSDkgelqdyRvuigp4GE8ZmpAgeVF3IRlMRv36kZscND29ddDL79MIKRZt8524sTw+vXy6Y/hDRsWeYZjLWKiqsiTJVKki/S+QE92C2ycnuxJW1ulUzTCXQ0xYmPK9AXlv8Nl6na14nTVnO0k7p9+IhDy/vqr0oWA2bAJPem6lNB9HHmCstmuvzGm+sT32xemT/ZNTcJucvz73xVreViBkNffIo3OudqaiqU82S1mv9ccDwUhD0xHh0L1NEmHF+pFyeyfnzglSM32CA/jiHEkW0V/mSpDYNlwV5fl6FHVsmU40DvPnEmMjoqiyKVSjtZW3fbtuu3b7adPL36BS43iqWDGcT5lPJpxnOdJX951AsfENBnH+cTobqm1crR/ZXK8mXRfZpN1u36xJrKdxHPxIoGQ5+JFpQsBRbDx0YzzQmJ0t3TGdHRwbcr4eXz4f95LP+I5BAKhsR07PBcupM3mStZW/pCXl8aKxTnR1dY07cKi95rroSDkgemYcJhAaHjjRqULKQ08P3vXQnsSvCfB48x3W/aH6oaJ6nUx+kkukOK5el+qxyWTobt3TYcOZVe3vP22+/x5OMR9wdikifS0JccPRftXSv32EtpdGcdPTFQt8jW/KoATRH+K1wXZx/bcr8xjOzMWZAOpqj5m0PvrrwRC7p9+UroQMEXgmehQxv5TuPPdsfefV694Ub3ixbH3l0d6/kkF7iZGel0//ji6bVt2O//HHweuX6cDgcqXWQ0hr7+lsampKX9FHoQ8UCJsLEYgpHnlFaULKQ1eEB/J/j5dNVAPbDTDi+EMPxHmBjzMHVnge2ijh/2sM16HZ2nQoVDg+nV8DACB0PgHH3h/+62OW6JUGJdxU/47KdMXRZbuTXYJtbZ0jxfEQIofC+b6E101UI/ttC7I+lN8TXQi8l+5QiDk/OEHpQt51gk8xUQGM7b/xIffDXc1BG79Wb0KydeEqFesMB85olm3Lrvw7ujR8OPHCjZar4KQ52pryl04tTpvoSHPCEA+g0ZDIKSqo58Ng9H4xOi7Z4jeM0R7jX6D0SS/Vme0DBrdnYbQHUMiN7xnSN83RJ4YfRqjXamyS0Xf3a3997+H3noLv6Vq3n9/9Icf9IODStdVnyb0Kpv2klv1r0Dfa1LaCz552UPsdwyfM493K13gbAxG05DR0W0I/GGIS78LfxgSXYag2ujU5//iVLnRs2cJhEY+/1zpQp5RJsOwTXvZrTos/0UIPNmo2/8agZCpuZmNx9l43HzkSDbqvfLKyJEjY9evK124sSwhL7dZtqV/HiN5crPmORjJAwuCf+uUrqLSOEEMpnnDJPfExdw05Ub+Oh3MaJD1JPhqXr3HpVJxjSau0XCplHQhE4m4zp2TzqsY27Ej2tcncHByQyUIPMNE1RnHuYT2w3DPc7Kle5+Q7t/ZpFHpAnMEQQym+fFQ3rjdIzs9GmR9yVo9MzB07x4+2FTpQp4tAhOlQ51p86mY+o28IW1rKxN+InDpgmacTCRCIKReuVK6RHFVsfGi2I1h4wUomWcz5MnFKcEW49S+XIPlqwaqw0ITXsYa5aptpXngxg31qlXS3Ifv8mXK63W0tkpnlBn374eT2hXEJvSk+7fk2MHoVHuISM8/EqNNGcd/meiQKLCKVCWI2WzXJct2D+30aKCGs50EQl4l8XSIDt5PTZyIqTblst3wuxnbf5jIoMDT0i1xyJOaceKQV1X7/KqghYr8UtkeDGihAkqCp2mcFZQupCrQnOBL8mNBttvJtBuzfwivG6keJzMeYv0pnlH6b2FMpcJJztTcbGpuVi1dSiA01NhIIKR5+WVbS0tscFDhEsEULuOkfLdSxqOxwfWycY6305Z/05PdAhOrTBmhNK8vyHY2WhtgvUnlf55LJfz4MYGQ5dgxpQupZzzppfx/pIzHotLPc/dfEiMfZOznmOiQKOT9MMXVautXXxFLlhAI6XfvztjtpMtlam6utmaclWmG3N/SWNjBWD7bKuuFLA9uRe41w4VZEPJAUTCSV1SEFMwRbtDDyLtIPLDRGh/riHHJYgfmVgB+lwzevo2/xQMYxJIltpYW6eMyqDY8HaZDj9LmU/GhrbKue6+mTF9S/j940rPgR2Z4ccTPPrDRD2y0xs/Kz2sOpXn9JNvtLJbt6m4OP9zZSSBkPnJE6ULqEJdxUr4bScPh6MCa3Kby0d0Z589svMiMAROJ2Fpasp8/V6+Wph3w19CaNVXVjBOONQP1D0Le7DKs4E7w2gAr37d7a4LuczPGMBdK85XstIyX3ElL8fBA7BD8atcIgSOZyGDGfjYxsjPc/deppXurkuOHSE8bmzQ91aMxvNhhydtLfttMe5KcYZKTZ7sHNnokwHoSPF132U6S0GoJhAx79ypdSP3gUhbSczWplzUM6n0xodtHun5hE+NF78KTpOfiRbxuRLV0qfPMGS6VYuNxeTPOqkp4IoQ88CyAkDdPvCCG0rwxzPW5mVsT8kZitDbAuhN8psx7NQSOG3ntNQKhaF8fvgT/bRvbsaOszwvKgY2Pka5LybH9kScvTQ2QPJ8Y3T3/pXsjfhbvmYiSQpQU5BOy2Wznx9muuhaVlgOEvKcgcGxcS/nvsHGtKBQGfzZpJN2/JccO5H4snyxNjh0k3Ze5mT+ECBwXvH0br8DD8+a1MrEAIQ/UP/zBC58ADeaJ4UVXgld5WXnau2ak+tyMLcqly9B4L/z4sfHAgex+i1Wr3OfPey5exAN73kuXSv50oGK4tI3yXU8ZDkcH1+Yt3bPOsXQPN32UujymGeGqgWo3UEM+NljZAWbFZUPenj1KF1LtuLQ1PrQtt2ZA9SqXmhBFkY3rSNf/Ero9kd4XcnvD9f8kvVe5tHWWBxQ4bvL+femtyXzkSPTJk0q9mhKAkAfqH14zoWA7yprG8KI/xY+H2B4nc92YS3vdTmYsyPqSJRhHSY6P20+dwoeSGQ8c0O/aJV/jYj5yBPqk1AeeCtLBB+mJr+UNKWKq3NK9BC24E/x4iO13M3enJmqlXj8ML141ULcmynuge3VK6vUEQuO7dildSHUTOJzwYqpXU8ajMdXmcFdDpG9ZQvtBuPtv2Ww3sCZpOEz5bnIZ55yPF+3vtxw9Km3qD927J7DKbB5fMAh5oP4NrV4tX+YFFixGCpYoR3gZ+Uqpe1Za7WPtMS7x9Hs16MlJ76VLo1u3EgiNvvmm99dfmXBYFMW4RuM+f959/nxcoynD6wDKY+PatO1MUPWOuX/XiOqbJ8M37+nG2w0Z+bDxrQnqqoHqdzMsL/KCqPax+Fula1dA2mwmEBp77z2lC6lqbEyDE57AZUQxl/nCXQ2R3heShsN08EH2qrkkRkft33yDBwjG3n/ff/UqE62xg14wCHmg/mnWriUQYhMJpQupHyQreBL8aCCv3+xNE/XExRgmuWB6XkdFTT58aNy/n0BItXy5/Ztvknp9+QsHCuMEMULy9hinDbDdzryln1cN1J0xW9fII7X6xwnt9yF7e3xSe82QlN+g3ZCOxX1KvwgFZOx2AiHd9u1KF1KNeCpIT3Zn7GdxW7u0tVW6Km07E+5qSBmPypvbzS5js7nOnRvZtIlASLtli+fnn2v6vEQIeaD+aV55hUCIjVWoa9czRRDFyQxvCnP9bua27A/2Qzs94mddcb5g9Z4vyfc4mQd3h/uPnCReWkogZDp4MNzZqVT9oAKStOCZNgkrbeLudjIjAdYW48LJRNp7Jzl2INLzd2ky19W7sVs/csNE3jCRXfpxx5M3kvpPlX5BCiA9HgKh0a1blS6kKnBpKx18kLa2JrS7Ik+WSD8t2QUA6i3Z/RYCF9dsD3c10JPd0x+Ep+mUyZQymaTl2nQw6PvtN9077xAIadaudXz3XcpgqOTrKgcIeaD+ZU+eCYeVLqTOpRjBGeeG/ewDW+4P+R0zPeBhJiJcOMObI9z1fveDb37ue/UNAqG+zW+O/PRr9Zz/A0qFYoVgmp+IcGof+8hOXzPKh+KohzZa5WVNYS6QKn62nsBl6MnulPFouPsv4a4Gngriy3k6HO5qiDxZwkQGePrZ+nWmAwECoZHXXlO6ECUIHJeaoHw30+aW+PAOaeeE9BXtX5nQ7cvYz9KhR9HBV8JdDfGhbRn7OZzwogOrBTZZ8JCRnh7NunVSZ7tgR0fw9m39Rx/hrpzW48djKpUir7XkIOSB+vf/7d39WxNXogfwf6337t3nPntPa7VFra219W6t1q7VdaFV29raV61bbfrG9uXWrlu7topvKBZf6gsokRMIJAGSQAghgZBA3l9nMjO5P5wYAiQkSMiZDN/Pkx9KSOXLEYdvZs6cw068q235Ig3LyFlfXB6ake65xdaCbXOv/dTeuXsfJcSwbp3p2Bdt18wXbGleqy5DFclKNpRS2EXYzvE553TZBnpdHnFgOuOJykuauBl68Ezg7mNS0pP7KkKg8Fd78P7jEePO+PCxlOeM5msf2y+rb/Nm3kFqQZGSmehAauJc3H403PNSfsHFgnW2n4sNvpN0nRQD9+fdnS3Fhwtv4g49WL9wQeO41cqWMmaL2xXe5jV86JDGLiyg5IH29W/dSgkRfD7eQVajVEZxhaUHJk/HG4fYYdSyc2dsYCCbzc2j75vKhNNKvW8tugqJctYbk4emM10e8XJBlT9vTV+wpX93CsapzFhYiixjZ+T48LHA3ccifbukpEdOeaPm19m0+tjAW+GercHOP84/o9O9KWpuTIx8lvKcEQNdUnI8m9XIWwg5ldLw9oxSyiMG7qXc/47bDkeMrwTv/c/8Nt/3atz+Scr9ixjoklNlFqhTpKTgu5YcOyH4ri08h5d9uK1OfmGmqQsX2Mzg6evXq/+98YaSB9qHkseRLAiTp0+zpQofNGzo+de5/HooJl+m8FbK66PCPbdonMrYZiR3RA4ki1/LA17SkuJPyCNBqdebuT0mXLLNKXY3H16EnYpXbdFsRQwHu56c9/teTuVuvJDTPjHUm568lBhtjg28GTa8mF8mo6D2PRs1v54Y0aUmWsSAPn9SsB5paFF3RUo4henbSdc/Y0PvhXv+PO8vLqRfF+3fEx8+npo4J4Z6ZGGmul9+3qJauQL99NPV/SoqgZIH2oeSVxvC9HSwszPY2Zm/Mh7u7ja99BL75WT/5GirYeqiLe1PyNlsNpCU2emfLrd41zVn/1w0P5VgF2FdYcnsy9xzi1fn/h39xi7C+jPuiLyc03VlMqT9MeuHoQfrQw/Wx6wf5ufnlXjxlBgypCcvJhxfRS0HwoYtxa70bY5a3kiMfJ6aOCcGHyxnX90aq9+Sp8jpTMwm+K4lnd/FBt4K0y3zu/iDjVHz6wnHV2nv5UzErGRWdiUEdmtF1JS7jJtwODR85zJKHmifeccOSkhqvPzSl/DI8ls6sl0dHYcPjx47lqt3774b7OjIZrPGqcy8GmeYzK0sqijZuKj4E/JYWBqcztBJ8Y5rfqso0vwCaH4VkZWsNyaPBCVvTJYXHaq4qEzGZOuM1D0hXh+dM/6X7em7LrFvKjMakmaSslgPV9jl1KQYpKnJ8wnHl1HLvjB9PnD3P+c2jP8I0+ejln0Jx5epyfNikJa9GshLHe3co2SimYgl7b2ScHwdtbxROEnuYdV+PjbwVtL5XdrXnolZFbl2K9VHenrYb4S+zZt9ra3+tjZ2FsB94kTNMtQSSh5oH5tamxwb4x1Es0JdXazbjXz0kePIETapmb059ra0ZCIR9jJFyY4EJbaIxjWHYJ2RFt+ZSlayMUHxxWVnSBpA83tUkbRSWNeujwrhghNvgqRMJ2RHUDJ6M7fHxEv2+Rdh6aRoC0je2PzVcOqUnJoQg92piXOJkS+iljfCdPO8/hHo+EPYsCVqOZBwfJWevCiGDHJqinfqbLbmi7rLab8wfVuYvr342dPci4WAGOpNTZxPjHwWNf01pH9q/pD2/G9s6FDS9aMwfUuKj2YVPm8R/G1trOEZn3uu8H4L25tv1kV7fgQ1LHnulsYGnb705xoaGhrmvKDyJ3NQ8qAodsWwrhe0VDnrvn2UkOn2dvYh63zGTZvy9a6KCpufxZ/pnhBvj4ltaH4lKEr2d6fAup3Jl1vd5uqIMBaWLP5iF2FHhPtu0eLPjEek8IpdhFUVKekRg/rUREtiRBc1v87W4JjbUf4rbHghNvBmYvTr9OQlMdQjpyua+1H2DoAlqeUqASnPmdnVCjv+kHSdnPcCOeUVg/qU55e4/Wik7y/B+0/MmTp5708R44647ePU+M/CzD01TIVUJGn8229ZpXMcOSKnUsHOTldzs6u5WWO3085Ts5Kn15VoZrnP6fSF/7GkJ/NQ8qAoVkHyMzCg6uZPZBaE2k9kTmYUf0J2hiSzP6P3iDedc5ZnK3y0jQh3XWKvN2MLSBNRucJ7e0U52z+VuekUbjoF41Rm+Tv2Vp2iZBOikhCVuKhMJ+TphOxPyAP+DGt47HtUlOytsfmF+KZT6PVmnCEpnFYWP7e6OihSclwMdKU8ZxIjn0XNTaHuTfNrX+cfw4atsYG3EqP/SHtbxbBx4emuStbyWJKazS0WA/dZ5qhlf9Syn81rTLpPCTMdyfGfYtYPI70vBzv/e06r63oy0v9a3P73lOeMGOyusATXjDA9Pbh3L7vaMHXhAu84NVWLksdOvjXqdCXO5Ol1DY0t7vxL2Wsqf3IWSh4UhZK30tgBNNjZyT4Md3dTQgZ27eKbKju3+XV5xOujwoVHan6inG2fu1VD24hQrXtIRTlXzsLpXDmbjMmusOQKS46QNDSdGZrOmP2ZHm+mx5t5MCF2jIsd4+Jtl9juENodQtGzmPMeJt/sruoWf4YVO7YBHRavqYQsBMTgg5TnTHz4WMS4c+EuC4G7j4W6n4la9idGm9NTVzPRQXYheM6qvN3PVL651kKVlDxZCMgpb9FHJmLKhI1FH4LvWnrqav7BboxIT15kf2Z66urCbzZ470+R3u2JEV3ae1mKDy/n+1ppYYOBrXvc/8ILGtjBYqlqUvL0ene29OXaOc8/rHGVP1kAJQ+KGmpspITEBgd5B9GmtNfLanTP2rXs8gc7sedtaeEdrbi4qEzFZUdIMvkqbX5si967LjGSVmKCcs8tnrem9R6RlbOZpMzK2XhEYuXMFsiVM+NUrpzdc+fK2U2nwMpZq71MM1vq44Itzf7kdofAvlbHuHjfLZ63pn93CuwUnaJkb7vE89a0N4ZytyyV1L6F+2tFTXvjtsP5R9SyP9K/p+gjbNga6n6m8NH/whOUEF/bhsJt31buoUhJ9p0qssDuUIma/pYYbRZ816TEKM+hr5gUi02cOtW7cSMlZPTTTxPDw7wTcaCCOXkoebDC2GY1MYuFdxANitvtIx9/TAlhGwTnH06dLr8eXl1Y2PwWtqj4wzsPUhmliuXssj1Xzn535spZl0dk1bB/KsPKoi2Qq4/uaK5QBpIyq5iLn1DMz8m7NSZY/BnW8NodwuL32MIjkNN+MXA/5T4dtx0OPVgfuPtYYrQ5/9mE89tltq7+rX+ihHjP/ucirwnpn5pXDfOPiHFnqUIZs35YWD1DXWsDBfu9ZsLGXGGtK4mRkdFPP2W7lk2cOiXFljsnsk5preTZABYw7t5NCRm4coV3EK0ZuHTJuGcPJcS4e/fApUuDN26Yv/nG/M03g9eu8Y5WBVabzWQb7bGNd9m8F62p89Z0/qaNfMm7bI1ftsbbrZF2a7jdGr5pDdyyztyyznRYfZ02X6fNp7dNPrBNPLBN9NjGjTaX0eYy2UYtNofF5hi0DdfmGzHZRtussdnTk9ZYv81Zmy+9ao2aWwN3HwsbtuTOhylSpHd74O5jE4b3XX0/5h9O0y+j5taij5GBWyOD9wsfxh3bKCHW9rN2q2lFw7v6/o9dkE2MNiec37KTlOPGL1f0i1aX5ddfe3ftooT0bt9u+ekn3nF4WpGSl78DdsF9sTiTBxzY3nyTEhIxGnkH0ZTAnTsDr71GCRn56KO43c47zspiO7DpPaIgKYKkGCZzH/LOVanK18mD6njY6sKGLXHb4bBha67zLWPu2lBTEyWEbQm40uK2w4UnCGOD7+SuO6ueksl4z57t37KFHZpwAUcFZ/Jw4wWsMNvbb1NCIj09vINoh//KFTYNfOzzz9OTKl08toqSGWXe9qyt9nRMQF2CkqTEKOt5ufl5hi1SfFlzwmwHDlBCIn191Uq4uEzMmnKfTrlPZ6K1qJVVkXK7x776ihJiePJJ9w8/CDNV3g+tHqmh5GEJFVhZ9nfeoYSEu7t5B9ECRZImT5/ubWhga8RnVs1Ml4SodHnEVnu61Z6+5xbR8KA8RcpETOmpq5mIaflnwnLHMUqrEk17wpSy9/Pm7dv9V67wjqMW3Ere3KutbBW9edd3K38yByUPihp+7z1KSEhfYiluqFgmHB7//ntKiPGZZ7xnzvCOA7CKDL//PiUk1NXFO4ga+Vpbzdu2UULs77yDizaFsK0ZaN/wBx9QQoL37/MOUt9Sbrfz+HFKiOmll/y//cY7DsDq4jh8mBISuHuXdxB1Efz+8e+/Z1spur7+OjUxwTuRuqDkgfaNfPQRJSTY0cE7SB2LDQ2xEwmDf/1rftFjAKiZ0b//nRIy8/vvvINwJgtCfp/ZqMnE3sP3v/ji1Llz9bVsU22g5IH2OY4coYRoe4PCFRXu7mZrDdrefjva3887DsBq5NTpCneIXoUSDsdQU5NhzRrDmjVDTU0TP/888Je/UEKs+/bhQk0pKHmgfaNHj1JCZm7d4h2kLs3cvGnZuZMS4vjkk4TDwTsOwCrF7htdtbcUCD5fz7p1bFNstqdObt3148dxXFoESh5o3+ixY5SQmRs3eAepP1MXL/Y9/zyb7CL452/BDgA1M/7tt5SQqQsXeAfhg12tdh4/rkiSIkmu5mZKiHnHDimR4B1N1VDyQPvY7QLT16/zDlJnJk6dYu+V3SdO8M4CsNqxf48Tp07xDsJH3+bNlJBMJMI+lOJxSohx0ya+qdQPJQ+0DyVvqRRJYu+bDWvWrOY5QADqscpLnnn7dkpI/spsenKS3enPN5X6oeSB9o19+eVqnsuyVEmnk81iNO/YMY1r3ADqMPnvf1NCPCdP8g7Ch/vECbbQccRojJpMg3v2UEKcOh3vXGqHkgfax2Zv+FpbeQepA1GzmS2sP9TYiOWjAdTDe/YsJcT9ww+8g/Dha22ljz+ev9+CEtK/dWv+6i2UgpIH2jf+zTeUkKmLF3kHUaNgZ6erudnV3By4cyfY2Tm4dy8lZPjQodrsgw4AFZq6cIESMv7NN7yDcBDp7bW88golxLZ//1BT01BTk+fkSTmV4p2rDqDkgfaNf/cdJWTq3DneQdRFkSTrvn2F74zZCgWjn36adLl4pwOAOfxXrlBCxr76ineQWku53faDB9n3Losi7zh1BiUPtM/9ww+UEO/Zs7yDqIu3pYUS0rd5s6+11d/W1r91KyVkcM8eMRjkHQ0A5ptub6eEOD/7jHeQmpLTaTap2v7uuymPh3ec+oOSB9q3yu9KK2Vg1y5KSNRkYh8mHA5KiGXnTr6pAKCo6evX2UJxvIPUFHsv2rthQ3pykneWulTDkuduaWzQFZ/I7W5pbHioscU9/9nC/6vokzkoeVAUSl5RbNX4/LwWOZViq8nzTQUARa3CkhcxGg1r1lBCwt3dvLPUq5qVPL2uRDPLfXLBZ/S63Mvz/1HqyTyUPCgKJa8oNs0lvyKD98wZSshQUxPfVABQVKirixIy/P77vIPUSMxiGdi9G4fuZapFyWMn3xp1ulJn8vS6gvN3C5+bPQVY9MlZKHlQVG59qX/9i3cQdYlbrWxJAsvOnWx3WrxjBlCtsMFACbEfPMg7SC0IPt/Ihx+yOYhSPM47Th2rScnT693ZRS7XulsaF3S8OS9+2O2KPlkAJQ+Kmvz1V0qI58cfeQdRl8CdO4Z16wxPPMHqXe+GDTO//847FAAUF+3ro4RY9+/nHaQW2Ea9tgMHkk4n7yz1TQ1z8vS6hsbGxrkz8lDyoHpW+SKiRaW9XtuBA5SQiZ9+itvtcbtdFgTeoQCgpNjAwCqZUDF1/jwlxLxtGy4sLJ8KSp67pXG2rj2cnYeSB9Uzde4cJWT8++95B1ERz48/skWPsWAKQF2I2+1skSPeQVZW8N69/hdfNKxd67t8mXcWLViRkjd7s+z8+2JL3Hgxa9E+V0HJswEsYP7uO0pI/5EjvIOoxcDZs4YNGwwbNw60tPDOAgAVGbx1ixLSu20b7yAraPDGjd5duyghpk8/5Z0TBAg5AAAKL0lEQVRFI1RwJm+OfHXDjRdQNb7WVkqIq7mZdxBVEAMB+7vvUkI8//wn7ywAUKmU200JMW/fzjvISsmEw46jRykhjk8+EUMh3nE0QgUlr3A1lIJ7MLCEClTLqt0OqKiJn3+mhNjefDM9NcU7CwBUKu31UkJMf/4z7yArhc0hGWpqittsvLNoB7eSV3i1tWAt5MLixpbWq+TJHJQ8KMr/22+UkLHPP+cdhL+wwdD/wgu969cH7t7lnQUAlkCYmaGE9G/ZwjvIivC3tfWsW9f/4ovBzk7eWTQF25qB9k1fu7YK93xcKBOLsaWncA8KQN3JhMOUEOOzz/IOUn1hSs0vv0wJmTp/nncWrUHJA+2buXGDEjJ67BjvIJyxpWSGmppS4+O8swDA0kiJBCWkV3O/5pIul+2ttygh499+m1UU3nG0BiUPtG/m1i1KyOjRo7yD8BQ1mUzbthmefHLmxg3eWQBgyWRRpIT0rF3LO0g1ScmkU6ejhIx8+KHg8/GOo0EoeaB9gTt3KCGOI0d4B+FGTqdHjx6lhLi+/pp3FgB4JIpiWLOGPv64ksnwjlI1bM/Jgd27YxYL7yzahJIH2hfs6KCEjHz8Me8g3PguXmTLqCYcDt5ZAOAR9Tz9NCVETqV4B6mOmRs3jBs3Gp99dubWLd5ZNAslD7QveP8+JWTkgw94B+EjbrVaXn2VEuJva+OdBQAenXHjRkpIJhrlHaQKoibTwK5dlJDJX37hnUXLUPJA+0J6PSVk+L33eAfhQVHYlBfnZ58pssw7DQA8ur7NmykhYiDAO8hypb3e4ffeo4SMffklds1eUSh5oH3h7m5KiP3dd3kH4cB/9SolxLJzZ2xoiHcWAFiW/q1bKSH1foOCIsuuf/yDEmJ/552Ux8M7jsah5IH2hXt6KCH2t9/mHaTWEg7H4J49lJCpixd5ZwGA5TJv20YJqfdi5G1pYe88I729vLNoH0oeaF/EaGQbefEOUmuu5ma2EaScTvPOAgDLZdm5kxKSHBvjHeTRBTs6+rZs6V2/frq9nXeWVQElD7Qv2t9PCbHu3887SE3N3LxpWLvW9NJL0f5+3lkAoAoGXnuNEpIYHuYdZGmkeDxiNLLH0N/+RgmZ+Okn3qFWC5Q80L6o2UwJsb7+Ou8gtZNyu4def50S4j1zhncWAKgO1pDqa36tr7WVrfxCCTE88QQlxHn8uBSL8c61WqDkgfbFBgcpIUONjbyD1M7499+zReS1sdoCAGSzWesbb1BCoiYT7yCVChsMrN7ZDx60HzzISh7eedYSSh5oX9xqpYQM7t3LO0iNBDs6etev79+yJWww8M4CAFXD9nito/sV7AcPFq7QOX39Ots+m2+qVaUmJc/d0tiQo9Mv/orCz1f+ZA5KHhQVNZkoIdZ9+3gHqQVZEMzbt1NCJk6d4p0FAKrJum9ffZ3J692wgRIixePsQ1kQKCG9GzbwTbWq1KDk6XX5RqbXNTQ0trhLvqLgpUt4Mg8lD4pKjo1RQszbt/MOUgvuEyfY8gSKJPHOAgDV5DhyhBISuHOHd5BKDe7dSwkJdXWxD9n77YFdu/imWlVWvuTpdQW9zt3SuLCbFbxi9vOVPzkLJQ+KSjqdlBDLq6/yDrLiQnp933PPGTdtCt6/zzsLAFSZ45NPKCGB27d5B6mUv62NEtLz9NOekycnTp1iJ/YmT5/mnWsVqfGcvGIn4ObUtYc1rvInC6DkQVGp8XFKiHnHDt5BVpYYCg0fOkQJcZ84wTsLAFTf6LFjlJCZGzd4B1kCNi0v/xj56CNcZKilmpY8d0tjkau1KHmwwlIeDyXE/PLLvIOsrMnTp9lygOnJSd5ZAKD6xr74ghLiv3qVd5Al8F26xN5je06ejBiNvOOsOrUree6WxuL3XaDkwQoTfD5KSP/WrbyDrCBFkthq+HU0KRsAlsR5/DglZPr6dd5BlsCp09VdZi1ZkZI3ezftw0rmbmksesvFw89VreQBrFqb1q8/8NRTvFMAAMzxytNPP8c7w2pW/ZJXpMWVWjtlXl1b3o0XAAAAAFBFi5a84hPx5qjWEioAAAAAUEWLlTy9rmGeBSflCl9VWNwqfxIAAAAAqk8t25oBAAAAQBWh5AEAAABoEEoeAAAAgAZxKXn5dVpKTc4r+wJeygWbXYGm5LIznC12a7Nqhz2bzS6aXM3DXpCtXHqVDXvZ5Goe9tkJxaWSqXXYyyZX87AzOMjUWPlsah32ssnVPOwF4cr9W+U57BxKXtnbbFV7H275YHqdqgIvwH6BFI+o2mHPZrOLJ1fxsBeMpV5X9FCg1mEvn1y9w164LECJYVXpsFeQXL3D/pBeV6cHmcWSq3rYy2VT77CXHVUVD/vscbHEOiQqGfbal7yyC+apdkW98sGKrPKsGuw9RaNOV2JIVTvsZZOreNjnJCs6rGod9vLJVTzscxSNqdZhn6P4AKt92PW6hsbGujvIZLOLJ1f1sJfLpt5hLzuqKh72pWTnOuw1L3nltr4o/wJeygdztzSqJu0Cbr3+4XuOineoU4cyydU97AWKvZ1T8bAXKPpGtD6GfQmbbqtMibMDKh92d0ujTl+HB5kyyVU97OWyqXfYy46qioe9bG9TzbCj5FWsfLDcO0F1Th/IqcvjbzabXeQfVT0MuwbbhuqHPTcfplg2lQ/7IsnVPey538l1eJApk1zVw14um3qHveyoqnjY9bqGxhb9InPuVDPsKHkVqyh5/km1TiWow+NvzmLJ1T7sJbcHVP2wL5pc7cOezZY+C6nuYc9mF0mu2mHX62anKNXXT3slydU67GWzqXbYK0qu1mHX62aLZ9FZy6oZdpS8ii0tmJqSF6q/4+9DFU1rUGNyd0vjondfqXfYF0s+h+qSF6irg8wcdXaQmf0lXG8HmfLJ579cLckXwE97rZSdtayaYceNF5VbUjCV/UTmLXo9QpXD/lB9Hn9LngnLUe+wl0teSHXDXkBrN14s5QW1pF+wC2a93GZUSfJ5r1fPsM+Dn/ZamTOSqr6pDkuoLEGZYIXPqnbCaOmfNtUOe06p5Goe9hLT2QqpdNjLJlfzsFeQTaXDXja5moc9DweZWsJPOyezJa7EsKpk2Lkshpx/5zT7fc9t6UVeoA5lkrvLLnzL3dyjWJ0MezabXSy5aod94SkClk/9w15JctUOe7ZENvUPe7aC5Goe9hwcZGoLP+2czKYrcV1WFcOObc0AAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANAglDwAAAECDUPIAAAAANOj/AYicD7veJ8FXAAAAAElFTkSuQmCC" alt="" />
页面代码:
<!DOCTYPE html>
<html lang="en">
<head> </head> <body>
<div class="widget-box transparent" style="width:58%;">
<div class="widget-header widget-header-flat">
<h4 class="lighter">
<i class="icon-signal"></i>
销售统计
</h4> <div class="widget-toolbar">
<a href="#" data-action="collapse">
<i class="icon-chevron-up"></i>
</a>
</div>
</div> <div class="widget-body">
<div class="widget-main padding-4">
<div id="sales-charts"></div>
</div><!-- /widget-main -->
</div><!-- /widget-body -->
</div><!-- /widget-box --> <!-- basic scripts -->
<!--[if !IE]> --> <script type="text/javascript">
window.jQuery || document.write("<script src='assets/js/jquery-2.0.3.min.js'>" + "<" + "script>");
</script> <!-- <![endif]-->
<!--[if IE]>
<script type="text/javascript">
window.jQuery || document.write("<script src='assets/js/jquery-1.10.2.min.js'>"+"<"+"script>");
</script>
<![endif]--> <script src="assets/js/bootstrap.min.js"></script> <script src="assets/js/flot/jquery.flot.min.js"></script> <!-- inline scripts related to this page --> <script type="text/javascript">
jQuery(function ($) { var d1 = [];
for (var i = 0; i < Math.PI * 2; i += 0.5) {
d1.push([i, Math.sin(i)]);
} var d2 = [];
for (var i = 0; i < Math.PI * 2; i += 0.5) {
d2.push([i, Math.cos(i)]);
} var d3 = [];
for (var i = 0; i < Math.PI * 2; i += 0.2) {
d3.push([i, Math.tan(i)]);
} var sales_charts = $('#sales-charts').css({ 'width': '100%', 'height': '220px' });
$.plot("#sales-charts", [
{ label: "Domains", data: d1 },
{ label: "Hosting", data: d2 },
{ label: "Services", data: d3 }
], {
hoverable: true,
shadowSize: 0,
series: {
lines: { show: true },
points: { show: true }
},
xaxis: {
tickLength: 0
},
yaxis: {
ticks: 10,
min: -2,
max: 2,
tickDecimals: 3
},
grid: {
backgroundColor: { colors: ["#fff", "#fff"] },
borderWidth: 1,
borderColor: '#555'
}
}); })
</script> </body>
</html>
所需引用的js文件下载链接:
HTML5之Canvas绘图实例——曲线图的更多相关文章
- HTML5之Canvas绘图实例——饼状图
实现饼状分布画图(如下):调试环境:Firefox
- HTML5自学笔记[ 15 ]canvas绘图实例之钟表
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- HTML5之Canvas绘图——使用Canvas绘制图形的基本教程
原文转自:http://www.cnblogs.com/picaso/archive/2012/11/26/2789077.html HTML5火的正热,最近有个想法也是要用到HTML的相关功能,所以 ...
- HTML5之Canvas绘图(一) ——基础篇
HTML5火的正热,最近有个想法也是要用到HTML的相关功能,所以也要好好学习一把. 好好看了一下Canvas的功能,感觉HTML5在客户端交互的功能性越来越强了,今天看了一下Canvas绘图,下边是 ...
- HTML5自学笔记[ 19 ]canvas绘图实例之炫彩时钟
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- HTML5自学笔记[ 21 ]canvas绘图实例之马赛克
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- HTML5自学笔记[ 20 ]canvas绘图实例之绘制倒影
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 【HTML5】Canvas绘图详解-1
----->Canvas绘制基础 1,线条绘制 1-1,线条组成的图形和beginPath 案例:绘制由不同颜色的线条组成的图案 1-2,多边形的填充和closePath 案例:绘制封闭具有填充 ...
- HTML5七巧板canvas绘图(复习)
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
随机推荐
- iPhone各控件的默认高度
1.状态栏 状态栏一般高度为20像素,在打手机或者显示消息时会放大到40像素高,注意,两倍高度的状态栏在好像只能在纵向的模式下使用.如下图 用户可以隐藏状态栏,也可以将状态栏设置为灰色,黑色或者半透明 ...
- iOS APP上线流程
前言:作为一名IOS开发者,把开发出来的App上传到App Store是必须的.下面就来详细介绍下具体流程. 1.打开苹果开发者中心:https://developer.apple.com 打开后点击 ...
- css制作三角形
#triangle-up { width: 0; height: 0; border-left: 50px solid transparent; border-right: 50px solid tr ...
- Jquery 中toggle的用法举例
toggle用法是使得两个以上的方法交替出现. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ...
- LeetCode Combination Sum III (DFS)
题意: 在1-9这9个数字中选择k个出来,若他们的和为n,则加入答案序列,注意升序. 思路: 用DFS的方式,每次决定一个数字,共决策k次.假设上个决策是第i位为5,那么i+1位的范围就是6-9. c ...
- 帝国cms教程:帝国cms在列表页使用sys_ResizeImg函数自动生成不同大小的缩略图
先说说 ecms7.0的sys_ResizeImg这个函数 下面是在列表页使用方法 在右侧把使用程序代码打勾! 如下图: 例如你原先的列表页循环内容代码为: <li><img src ...
- TCP的分层结构
TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂.开销不大的文件传输服务 ...
- hdu 2335 Containers
水题,就不解释了,不过这个题有一点很好,就是枚举的时候,枚举宽,也就是列数,因为这样才能越来越接近正方形 #include<cstdio> #include<cstring> ...
- 15. 3Sum
Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all un ...
- 11. Container With Most Water
Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). ...