diff --git a/lab-p4/README.md b/lab-p4/README.md new file mode 100644 index 0000000000000000000000000000000000000000..b7b4812b75392a8caca73907a138e6baa58f4222 --- /dev/null +++ b/lab-p4/README.md @@ -0,0 +1,62 @@ +# Lab-P4: Conditional Statements and Pokémon API + +In P4, you will be playing with some Pokémon and you will simulate simple Pokémon battles using conditional statements. In Lab-P4, you will learn to use `project.py`, which you will need to complete P4. You will also be introduced to some simple conditional statements and 'helper functions' which will be useful for P4. + +### Corrections/Clarifications + +None yet + +**Find any issues?** Report to us: + +- Ashwin Maran <amaran@wisc.edu> + +------------------------------ +## Learning Objectives + +In this lab, you will practice... +* learning and using an 'API' (Application Programming Interface), +* building 'helper' functions that can be used to create more advanced functions, +* writing conditions using if/elif/else statements, +* writing advanced conditions using nested if/else statements, +* writing advanced conditions using logical operators (or/and). + +------------------------------ +## Note on Academic Misconduct + +You may do these lab exercises only with your project partner; you are not allowed to start working on Lab-P4 with one person, then do the project with a different partner. Now may be a good time to review [our course policies](https://cs220.cs.wisc.edu/f23/syllabus.html). + +------------------------------ + +## Project partner + +We strongly recommend students find a project partner. Pair programming is a great way to learn from a fellow student. Project difficulty increases exponentially in this course. Finding a project partner early on during the semester is a good idea. + +If you are still looking for a project partner, take a moment now to ask around the room if anyone would like to partner with you on this project. Then you can work with them on this lab as well as the project. + +------------------------------ +## Segment 1: Setup + +Create a `lab-p4` directory and download the following files into the `lab-p4` directory: + +* `pokemon_stats.csv` +* `type_effectiveness_stats.csv` +* `project.py` +* `lab-p4.ipynb` +* `public_tests.py` + +**Note:** If you accidentally downloaded the file as a `.txt` (or `.cvs` or `.csv.txt`) instead of `.csv` (say `pokemon_stats.txt`), you can execute `mv pokemon_stats.txt pokemon_stats.csv` on a Terminal/PowerShell window. Recall that the `mv` (move) command lets you rename a source file (first argument in example: `pokemon_stats.txt`) to the destination file (second argument in example: `pokemon_stats.csv`). + +Once you have downloaded the files, open a Terminal/PowerShell window and navigate to your `lab-p4` directory. Run `ls` to make sure the above files are available. + +------------------------------ +## Segment 2: Learning the API + +You will be finishing the rest of your lab on `lab-p4.ipynb`. Run the command `jupyter notebook` from your Terminal/PowerShell window. Remember not to close this Terminal/PowerShell window while Jupyter is running, and open a new Terminal/PowerShell window if necessary. + +**Note:** For P4, you will be working on `p4.ipynb` which is very similar to `lab-p4.ipynb`. + +**Note:** Unlike `p4.ipynb`, you do **not** have to submit `lab-p4.ipynb`. This notebook is solely for your practice. + +------------------------------ + +You can now get started with [P4](https://git.doit.wisc.edu/cdis/cs/courses/cs220/cs220-f23-projects/-/tree/main/p4). **You can copy/paste and use any helper function that you have created here in P4.** Good luck and have fun! diff --git a/lab-p4/images/README.md b/lab-p4/images/README.md new file mode 100644 index 0000000000000000000000000000000000000000..2ec21d5f4cb7c35c604dc5e5157f974bd35594ac --- /dev/null +++ b/lab-p4/images/README.md @@ -0,0 +1,3 @@ +# Images + +Images from lab-p4 are stored here. diff --git a/lab-p4/images/add_new_cell.PNG b/lab-p4/images/add_new_cell.PNG new file mode 100644 index 0000000000000000000000000000000000000000..17cb9f00c6df4cf8e373e41ffd910945d724872a Binary files /dev/null and b/lab-p4/images/add_new_cell.PNG differ diff --git a/lab-p4/images/pokemon_stats.png b/lab-p4/images/pokemon_stats.png new file mode 100644 index 0000000000000000000000000000000000000000..05f47e0d3554d554298fa37f1d806603e7a4ef00 Binary files /dev/null and b/lab-p4/images/pokemon_stats.png differ diff --git a/lab-p4/images/type_effectiveness_stats.png b/lab-p4/images/type_effectiveness_stats.png new file mode 100644 index 0000000000000000000000000000000000000000..7644b92f3fa198b29e829703146713e824c1d98d Binary files /dev/null and b/lab-p4/images/type_effectiveness_stats.png differ diff --git a/lab-p4/lab-p4.ipynb b/lab-p4/lab-p4.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..65439376fcb82a16e61cf52fa803a0b6504d1a9b --- /dev/null +++ b/lab-p4/lab-p4.ipynb @@ -0,0 +1,3293 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "2d8961bd", + "metadata": { + "cell_type": "code", + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "# import and initialize otter\n", + "import otter\n", + "grader = otter.Notebook(\"lab-p4.ipynb\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4d2d1de1", + "metadata": { + "editable": false, + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.165214Z", + "iopub.status.busy": "2023-09-27T00:13:02.164213Z", + "iopub.status.idle": "2023-09-27T00:13:02.404073Z", + "shell.execute_reply": "2023-09-27T00:13:02.403064Z" + } + }, + "outputs": [], + "source": [ + "import public_tests" + ] + }, + { + "cell_type": "markdown", + "id": "7335aae2", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "# Lab-P4: Conditional statements and Pokémon API\n", + "\n", + "**WARNING:** Please go through Segment 1 of [Lab-P4](https://git.doit.wisc.edu/cdis/cs/courses/cs220/cs220-f23-projects/-/tree/main/lab-p4) **before** you start to solve this notebook." + ] + }, + { + "attachments": { + "pokemon_stats.png": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA4oAAAF+CAYAAADEEeTeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAI59SURBVHhe7Z0/euI+E8cn71lgi2xOQE4A22y1bTooQ5MuZbo0pAxd2lTbBE4QTsAvxZq78M5IspFk2ZaxIYC/n+fRbvBfMhqNZqSRcrVlCOzFf//9Rz9//jSfwDmCOmwG5NcMyK8ZkF8zIL9mQH7NgPyaAfk1A/KL43/mfwAAAAAAAAAAQIFAEQAAAAAAAACAAwJFAAAAAAAAAAAOCBQBAAAAAAAAADggUATgjFhOrujq9oU25nNn2LzQ7RX/7lK6+PuDE2RDL7fQx++is7bwkMDOVgK9A10DgWLbLCfayF5NaGkO7VjShM/dvsDEnAfGEeQ6m+QrExSwebk1bcAt++s918PdlFbjBckmzdvPe+qZM5eIll+c/QjKuuPKGta/W4LZjWVn944ju0uzs8eR3+Xa2WPr36Xgyy1QTqWBpX7ySTX4c5Cf9gHs73SMr4RAsWU2/9bmpzmNLqPX6y7LZ5quxjQec23+DdSlMnaBTqzoeKcY00KcjbQkM6Jpf8+R2IS+VkSD6775DBwGM0oyWS9oPB9hxNvTP61+bXeqPbr/5Odf1MCFOEt9mpKlU8kfer87oD7ta2dPkmPL79Ls7Dfo38Vg7FEqtwU3KBrQLLGOvQ71pd+GCcZGc/P5lDh1+YnsRsQNPvs+8hXno8MHiwgUD8KYZrMB1+ATRsLOmOVfNmbj3/T6W3kwgRkeEE3vnj7ZiRmspnSHRnFAhvQgtmf1Th8Qc0bv/pGtckEgAixMsPDn1y74lbZ7wGD4suzs8eXncPZ29pvlBw7K5uWOpisJvhKSbgrUQQeydqw6fOC2zv+v/x22rSNQPBA/7t+4IaxoGjESpnLe7elkb3hAnedjTqpJOmKYpbpax2zs80XXgABL0v4Lt8rhb3Yy5/RkdbyqTtSoGNdxX8tWUn6KjqdU1bXgpxSVpRKl1+6fbnREuMN/ZF9wNX12ncEyHVXnRix9ua+f/10r9Lu07aTY63K45KrkzNpQ78eN+Qn45GZLKuvWjIDb16iiU4OVflXokxRfp6L08htZfSXmpzzy3aUNunYqlCodw352NsQp2cLjyS/AIezskWlFfjF2O+IapYPp+UB/fW7o3ycvL3Xc/P6tytiid/9J2+0n3Z9x1P+d8vsuECgeDI7+tbWm5xLbIgr1dJ3sprZlNHA+yjurfKz/9WiuW9CYn9sXxfr72zlmjyIqJVUz1ebZ24RmxPedqDKeFMu/3GmOSfwXmaWRwe7V+0cmt+Ery9NLTfhk61d0XIipa6mz/pSsdIeE/rzfhWem2cj0pysaL3bvOHX612r8i9IBsEodHb7yMdZt/nEw07JLf9do/Q60nV07WdJECzx7xvXTzqCfYxvapb+DlOVEnOAB/fm1ayfVdWvS4G7Mmi0uqmmzNi62r2wVAkjHz/p0Y6UHiT2Q9KCc412ql9+FmZHm71aW7inBxO67s9wGcxrt0yb2tLM5TsYWHll+BbRpZ49LO/KLsdsx10ifPZrv0nuT6yf+bE6eKXoWak5OcsXmhZ5kwOZxN3PbhowvkZOSX/JFK/7v5seB2yp/QbAn6/Xa/LQjmQ22rC5brnwF93HW58WWDfGWDbH6FCbZsp3cSo+Xop4xmPGZHdXH9Lusx2gWY/4+g23pV+gQoToM1UFQbkWyjJax/x79uUw/sjpW7wjU75GJaQMOjmxidTTUbuLuVfLyLgq1k7DMD9+GiuXH37Gg2N9VXWvbgWS2ZTcr9ztfKtHyy1diRN0GrgnpVyb/gN0wqOv8fsG7zn3WcQjbPybVI1VcXQ9+z73aRDM7m30PdT5Ql0fgO+V3HDt7WA4jvz3bthC4xpfHd7TTIgrlJ+TqNyXf7nxdakfGZRTbymNyvvIT9DOOoYuYUTww6eiDnU7j4qc29WkqQwRN2fwjmVeQkWxnavvch8OOweaD3rkOVDpUikqLWtF7o4VfFXVt3ls5OiSzyVyP3IE5+erngDPb1URHW9NvPYIto3+5EexvbUPeJhWq6BH/HGl2gZR0dvTcFKN1rFkArl+ZoXCyNKLqtk8yMWOva1Tr6eiGwk1Ur69y7IZhKFNl/MYDLyVpD1kXJvKTrAeV9umlTd38cNeM9a/VdSUZg3nasLOnaguPIb8SWrOz30UT+cX8vjWuOfhszdHp0a8/yrAZmW7oQzdE7g0tmsr4YjkN+aVZMrO3w6/fRaB4aNjgvSlHNJQ+aFKbyN61UKaozekWGNspUFk57xzxQ7P5eOfm7DfidP2Gt+4jmhbrejCjhQluzm3JRCKetOdoN9HRNvRbr5uQtMJ0HZTrlJx8G3J2PT2fNORjIfW74Dht/pRP6YmqW5UGp+2ATkMrSDs1nX8xRQHmCSMOuwjPT7VqgVbs7KnbwgPKr4y27ey30UB+Mb/vWcqkBfTmXmYCIzRgEwnk9z3y0ynRko5/HFkjUDwCWqnYCX3+a44YUgWz8ppbo/eDu4nD74Z0eaSjQ7t1SVlp0uHH1HWNOuunzu/oXLaNZ0we/2D2oB3tJjp6AP1W66HUCLapY7Shi0HN6K2s9eIxdava7G5tnC4FQaJgnhnaWVXNRA6u6Sz/wIsaCfdY/3ODbrVWZkDxf1mhPTt78rbwIPIroU07ewrUlV/M79vWNWfLbj3wUgZsBjN68A1bUxlfNN8nPx0kiuk8XkCOQPEoDOlV9WRz7v4sjLI4qU2TllJP+Z06pc6byZTNFi58sXEj1N/04kYYGh1SaVFWfdmpBDah41F1HaozmYkMO0DDV5mRDKTlnCKyE2R/qgzqW2bdmuhoS/ot19tTEY7DhjZ0MQwf1Oz9blYxom5Vm01nma1SWPf6mTID6cxu8TNVx36IAcG2yek22587brds+RyTKCmf2S+5pIn+BTPHRZyZ0r992IadtTgZW3gs+RXRup09Mq3IL+b3jbtGjy/tZrdTJ/0SSAfPRtwQnT9HktJYxpfNd8hPNsBRj1m4fybj4GzB3oQWwpYtMOdYkc95C1idRdtc+KS6zrpIffYWrMYe09+Hj6flCAtfzwm/DnUdFWwQwPjn9Wdd7HoNHo+oa8GvM3sxvbreqUOzoNl7xrEobgO775+Woq9YraPhTQWEqntD8vVlaNeVFP97HrIN1bMheTmoa1v8PudGHfnp4+5GAeV1qzctcPXBbGRgrsu3R0ZtSGA9M7A5QYxeHoOo9ut9p/S7O9eFrinZlEGfb2Zn1THnvce3hd8lPyH3HlOKfv2q75XKL2RnD8Wh5CdU/74x15j2bs6LbNQ9gWd9ByH5ZVRujJL+bsX2qQ0Z2+Suz0qxLTgk5yU/Y9+CpdxWNOVK/uEXgT3477//6OfPn+YTOEdQh82A/JoB+TXjkPKT0dv+9Ca3JrHo+Dmyj/zUrAotsGESA/k1A/JrRjP7Z+2b8OlmO3RFxpBfHEg9BQAAAIL4a+WW9KxzJs8+SAQAdJhD7pHRBTokPwSKAAAAgIfslprMBrldOdf48yMAgDNn+RxY+wmi6ZL8kHragGbT1uAUQB02A/JrBuTXDMivGZBfMyC/ZkB+zYD8mgH5xYEZRQAAAAAAAAAADley64/5GQAAAAAAAAAAQOppEzBtff6gDpsB+TUD8msG5NcMyK8ZkF8zIL9mQH7NgPziQOopAAAAAAAAAAAHBIoAAAAAAAAAABwQKAIAAAAAAAAAcECgCAAAAAAAAADAAYEiAAAAAAAAAAAHBIonzHJyRVe3L7SxP0+W5hMAAAAAAADgtNjQy63rw58rCBQDbF5u6eqKKzgtNYKz3L2q3NLLuWsKuDgyXQ0YMjUoYenwLRQ4B+TXjCL5+bJLS6wZ9gfYFMuJegbqAQg5HbOUq6n+dQHIrzmHsn8Zmxe6zT1nQqiGcoI+fMeVF4GihyhJf0o0S7Ykf2Jyu13QeD6qqShjWqh7dVmMVzTtI1gEJwR3Ines5+PxwBzYIR3VaG7p8GJMq2kfTrYN5NeMEvkpBjNKUvmZ8jo05+oiDtNozi9b0Od9zxxsCRWAwrafD3qUf7T29MtXrjb176KA/FrhwPZPBZvsyN4s3GckszWNAgObwMORv4kBasutR/effP/nPf903iBQdFjS83TFOvJGO39iSA8zbszzv3uPxAwfZjSgFb1/oHmCU4A7e+mlWM8frs2hFO7AntinHsweWPMNw1fiWIdW7x/oYBSQXzNK5Nc6S5qww7SSjh+eaufZvNzRdDWmxQU4b98B5NcGh7V/Mtkxmg/UZIdv8nr3nxcRuBwXEwOs3qmrLjwCRZvNP1rzfzc/3GbU+3HD/87pb8PZ591z9aicP0upRoFiRi1MGpUu+VSCXOqCPxsqI+zWef90+f1x31195muyZ2EU62RIO/vH0OxK8kUr/s9vA/1rMZRflJjPXQbya0ap/FpFbNWILXfYsa2yk6kNc1KRfBsnM5Vc49O+Pu/MGnt2Vor3CnBUNvTxLgPB1iAOqAHk1waHtX+6jmj8aE12FFPmp1XZR9++OacrfMxzQ8cAHhH2XcnQ9n2r5BL7TD5Y1C8dAgSKNsrJG9B133xO6V/z0f1ZPk/5uWP63YZ1lSnwv7/NlHhCs8HcSSUQJXq6Tsx5LsmMBnzPTtn0CDvN0msSun7aBZvV99eA7xvRQj8Ho1inARuiuylr4+I13NkX6Lo2lGv6d0hrdA5Afs2okl/Kakp9q7PcJ233Y9LXsx/b/Lui7Rwf6389musWNObvdWe+y/CVj8lUMdd4ulQhS22VwTw/9YuvnY+wTvL7SOhLRnG+nj1nLJA63IL+XR6QX2MObf82HyRx4iDnxJYQ8NOa+ZHlPuY5svknU0gWe9n3CrnUeWZJv3QIECgeBA7erEYug86tjcI5KVQ9un9UOW3ZlLg4L846nN4v+sOe67xwOlTyqHdGq/79ZbCThnSvk0INWowXxesd0vp+skeoNvQi+ZQA8mtIpfwYFYClHSWXZDaov8aTO86piHxwTSGXKdrO8Xfdrb8a0u+oFGJT3/7vmaYgT5/P2mk6d1bra3rL9EsGW2VGeOewtaJ/Fwzktz/Hsn92Rktuc5bc7FPeT4u2jxmuH+lSdu4MMMH9bpa2Lftuy6XmM/fql/YHgeJBkFFsq7EnM2JL2s708M0PVi8LNYOxoq8sp40VTlJDM8Mgo+rmlELnW4vhCW/CUHV/Dca/z9c4XCLLid5kpayXUsZLj1DtRjT79HXDlohuyMuo7BaQXzOi5JdH1tWozrJORygDajIKLvUQTIdo0c7l0DMv40AKyVB6dMwsfyuDP7+sPpTbqwy2liwt2Uv/LhjIb0+OaP/WloFR6xKNLyrPyRH005r4kVU+5hlg99/pLGBWb/va9zK5nHafgUDRJhd0GYpSUmPp3dMbKwi39AMvhpXGzQ2a7B2bZMTPnDakhkPvxiqNIR0NjLsfnCfLvzLF4s5298X6G6O4G7Ec0mtW/7o8XK8LZ2e6AuTXjHj5FVB3jSfb3U/xjHIppQe2c2atezEdHzA4NWKXlmCNcRjIL4qj2L/eD7YucmkTSTf1I8vPnQXerrPO7GoD+14olxPvMxAo2phGZo/GCDo/uc2K6lFobWwU63/cjC3sINbkp48f49YDqhQHGXVPRwOj7m/w3cG34qe0SJG0ltQoOsbQwWxi4Iwkdw/IrxlN5KdM8D6BtkndmY+sEdyadrI2ph8JpWkpZ7HjAwbfR5/UnlL+zEzlQHAD/bsoIL8mHMf+6Vkrmj/tP5PX1I+0KDt3trRg33NyOfE+A4Gig8n1nd5ZToXOT262xlD/2Y1djrMMwrmNWRYPqw30qpDRp2x4fEkT9ffBzHMDyrZUGzqYD4IsmLWH120jH3M/s/d3B2fIbnTxrbAjA8VAfrVge3vrpejrXQL3D+yGr946qkg7F0UwCyV11ryZTJV6dsAAFVRg0iS5D33O6sXrQw+gf5cD5HdwWpBf7/7N2Dt/x0wTcFbR1I8sO3cR7GnfS+Vy4n3GFuRYjGkroknLYJaYMy7r9dr8tCOZDZx7szJemCtSki3rRXZe3qHuHcz4jEZ9D+9zdl36XOu8IpltWd125/m96jnW+/3fz/lqEfdHf3fnntMkVIddwq83v25THSgC8oP8mhAlPxpviyQYkp+yPUV2Ma2LWDvp1V3o2eqYeY5z+WK8e74qg21BV/JtdFH/nP5TilNpzfXv0oH82uMQ9i8jZ3+4hGyXZ+MUDf3IsnOnREh++TopIMK+KzlYz6qUS+wzvRv997TNlfzDXwjswX///Uc/f/40n8A5gjpsBuTXDMivGZBfMyC/ZkB+zYD8mgH5NQPyiwOppwAAAAAAAAAAHBAoAgAAAAAAAABwQKAIAAAAAAAAAMABgSIAAAAAAAAAAIcr2fXH/AwAAAAAAAAAABB2PW0Adkw6f1CHzYD8mgH5NQPyawbk1wzIrxmQXzMgv2ZAfnEg9RQAAAAAAAAAgAMCRQAAAAAAAAAADggUAQAAAAAAAAA4IFAEAAAAAAAAAOCAQBEAAAAAAAAAgAMCRQAAAAAAAABohQ293F7R1e0L/3TeIFAsYjmhqyuu5MnSHIhE3XdLL+euGeCiWU5Yt0W/0+Lo+ZIm9jkudZvBpQP5NaNcftzFvtyWni9DPdvvnI09v4Vh7jw53Qs4ck3079KB/JpzSPuXsXmhW/sZqky4dwJl5GQvpeP6i0AxhxkFGM3NZwAuCa3fo/WMku2W5M+oqvI6tM6PiBa7c4sx0XyEYEdTJT9xAkLyw+CRplp+0lH3p0SzJD2/oPF8tH9nLQ6T2PPxgj7ve+ZgS2Bg8KwQB300H3PztHRrNaW+Fey0rn8XBOTXlOPYPxWI8kNurH5ISjJb0ygQ2AOPgV0/Rv615daj+0++//OefzpzWBDAIpkNtqwl21mSbGcD2rJzYc7kWa/X5ieLxdjcbz6DkyZYhxeM1u/xtlirAySz7YBNxSCg1JBfBJBfRrX8FluOq3OyKrovJD8OzLfc0W/1E/Tzdp9b5sztfbf0L9ynu7rVXP8uF8ivKUVy2NFcfvpa+KAxFMrP6y+6LlPMKHr07j85eP6ktgaedYpBfrpfHb99oZeK82oEw0sh8AeW9Dus4lygR7D80Sjn+elnviZ7FkadLpANfbyv2AY+0G78EsTTTH43P85+XLEhEfLb/KM1/+fLqvfjhv+d01/fUJaiZ8fnNKZFYFS33G7ubKKTiuTbTJV5sqJpX593UlsDqV/eK8BR6ZFSo/W/rA5TnaTxb62TrerfpQH5NeMY9i+tj8coH7bM76uyj6V+aYXPem5o+XtE2HclQ9uXrpJL7DP5YFG/dAgQKB6Y4e8x/+s38CX9Zf9i8OcX3T/MaOCfZ2V5kkypR3FuljTReQhmGjyh66ddYClK83SdnuOS8PPmo/0aJt83ooV+ziVMlwOPhL64D6GvZ88YVaTOJV/sCiPQ2U9+HKzcTWk1mNHDPtHlRREhP6VrA7rum88p/Ws+Wo+PSZ+mK0mTe805ZtF2k4/1vx7NdTrN7s582eErH5O8Yv5mM5MmlqW2Skqqn/rF10oKN9ZJfh/DV5MqqXRO1hIbHUlT/1rUv0sE8mvCEezf5oMkThzkHlBCwO+rto9lfmm5z3qObP5J+G6xl32vkEudZ5b0S4cAgeKhGT7QjFv4+p9Vicu/HBqO6VGcit4v+sPn51akuPl4Z2Mxpt9Bx1LynneOjzgrzrqbwPPisQw+uFhW62t6Sw0RG6vZQGZEigw5GzeZNUGgk1EtPzOLr5wA40hh4CWjnv7tCXecU5nsG1xTyGWKtptjdqAymzgkGfdbvX9UjN5y/auRvgU55nT4qtarrqbP7f6uoAZDehXHinvYaV9mm6Wa8gMJoAjIrynHsH/2oK4z8yQlN/uU9/vq+5WuX+pSdu4M2LzQ3ZSj72yWti37bsul5jP36pf2B4HiwenRL25hdiUuZToxTdUw57kFGkXwUjn43weONFfTPjfy0MyF7ZRKEcfUnKpL9k5wychM9q4LYGP1yFYmN+utkY1Z5jSg2RsCnZRq+UkHkDoCZgMBbpuYSdLU0b+9kc0IZBRcZj+C6RUt2s0ceuZgHBjp0xkma7LHDcHx0E7zbrOphPtWGbHPpdWBIJBfc45h/+yJCb2cSteXBB05gn5flX0s80urfNYzQM2am989nQXMArN97XuZXE67z0CgeAR6v/6ww/JOH6qiddqprRC9+0cas6F4Es0xqQPued3QF2MZeRLlTUefpDFzAyZ7hyYZoVInAYijIK1F0k9Gc0mra2/N7kVSkRbUu39TbRIzSQXY8lM/r+grMZ9TilKyyujd06d4RrmU0gPbTbPOqJgb6nwW93dgZgYG7PSlPp/qW20daVP/Lg3I7zC0af96P9i6cF+Te0Ad4uxjsV9afu4scHY99WZXG9j3QrmceJ+BQPEYqGn7Fb1LpChpp7k0vt3U8VLSTgvS/NSaGBklT0ef0qBSrWUswixAB4D6dC0Bi5+iEOiEdJDIurVAkLgjXn5BCtIgu0OE/Iyj46TqM3qNyB6dpUndcf48SZTdbID5HUJpWiqbpPN68E0oPXPT8hS2o962/l0SkF9DjmH/9KwVzZ/2n8mraR9zfqlF2bmzpQX7npPLqfcZHN2CIC3/eQw5PphtZ+PwNvn6Pn6fvzWyHLe/g/N8s/W7dZ6dIv0c65i/tW92jbUFsDpW8rteKl3bnlvrD213VZ3XIa0v9jXFQH6+/OSzt425uSfU7iG/Ihtm2dCaf15E3e9sb25subeFf/6dgWPWZyH3bPPdvMvCbSj3u38/3dI/U+/e1ve67ndtVn/eX/8uF8ivMUewf3yDsXe+rTHHK/2+CPsov4d9n/q9zHcuO3dihOSnbLen4z6x9l3JLX1WhVxqPdO5yHvPAUCg6JFWVr7E/Q0bv/J3mMZX2GDSxp0/nzVSUxwdMUYkO88n84q0MxxSxOD4jSGkfF2gcx0Vk9Nxp95TPQ2VvG5Cfly8dhOyIUVNC/LjEhCOb/NCTpIQkl+w00ztZPquCLsZsomhZ9vf1bncdPK7UmT7v4/u6V/IvuX7drtOpdTRv8sG8mvKoe1fRs7+cAnZrsD7o+2jdY39mLJzp0RIfqp+YoKuCPuu5OD72dY9ObnEPtO70X9P21zJP/yFwB78999/9PPnT/OpKVZeOHZIPBrt1mH3gPyaAfk1A/JrBuTXDMivGZBfMyC/ZkB+cWCN4qlw6HUzAAAAAAAAABAJAsUTYfk8peK/nQgAAAAAAAAAxwOB4omgdkHa4g/XAgAAAAAAAL4fBIoAAAAAAAAAAByuZNcf8zMAAAAAAAAAAEDY9bQB2DHp/EEdNgPyawbk1wzIrxmQXzMgv2ZAfs2A/JoB+cWB1FMAAAAAAAAAAA4IFAEAAAAAAAAAOCBQBAAAAAAAAADggEARAAAAAAAAAIADAkUAAAAAAAAAAA4IFAEAAAAAAACgFTb0cntFV7cv/NN5g0Axx5ImV1y5VpkszakKlpMypTBKE/swAA6E0lNbx3M6u38b6AKQXzOq5cfW8uXWvaaGAIN2eDlRz7l9CVtncEGYui7SmRjdaqJ/Zw/kd1AObf8yNi90az9DlQn3TqCMnOyldFx/ESg6SDA3IlpsSf68pJTFmGg+inP0hr/54tWUnkPXbj7ofUU0/j00BwA4PtJJjeZjVvFUxxc0Zp3tZ51VszZw6VTLT64Jye+WEKPEyU866v6UaJZY18xH+3fW4jCN5mx8F/R53zMHW0I51ajb08AMxkpdFxCjW63r39kA+R2aY9k/FYzyQ26sfkhKMlvTKBCYAo/BjJJMbkb+teXWo/tPvv/znn86c1gQoIxkth2wmAbcan3W67X5KWWxZZ9wyw6J+bwjmQ227KnwFeCUyNfhJZNsZ4O8flbqZq02cMlAfs2IkZ+2ob6simQckh8H5lvu6Plt6pO2ydnnllmM+XsNtoGqPQsuSf+0jkhdhPUsTrea69+5AvkdmuPYv109mgOgkEL5ef1F12WKGcVWGZJMKtL8rze9v6EPPZ3IV1ikKR5p8UYs1KjQZKlGmMLXhNNZ1X32dV4Kgj8wpa63zrvPi3tH+l2zZ9UefQGHp0c/bvi/9T+rbgp0EwRoJr+bH2c/rtiQCPlt/tGa//Nl1VM3zumvZ7vK0bPjcxrTIjCqW273djatyP6q82r2ZUXTvj7vpLYGUr+8V4AW6d1/0nb7SYWTxjG61ar+nReQ36E5hv1Ln/dYXI8WZX5blX0s9SsrfM5zQ8vfI8K+KxnW8MWjn8kHi+OC9kGgWEXyxW5AvuEWodJP/QYdSDtVlawy1NLp7YRm5KYgKOYj6n89mmt0msJdrTynJU10HkP2nuunXZ66KN3TdXqOSzKjAb9zr4bN941ooZ9zCdPtF8jw1aS6qHQ5WUvXp+mKHenXkjCnZhu4ZOrLj4OVuymtBjN6KBFxV6iUn9K1AV339ceM/jUfrcfHxDx7+5oL4qPtXon9Hb7yMckr5m82M2liWWqrDAL6qV98raRwY53kNxGjWy3q38UB+TXm4PbP+JqD3ANKCPht1faxzK8sO3eebP5J+G6xl32vkEudZ5b0S4cAgWIpXLEyYlzHyRs+0Ixb9NyKFDcf756juKTn6YrGC9uB6dH9Izsdq3f6sOt7zA04c0L1jOXq/aPB6IHkTe/eK86Os26n94v+eN8/noqAA5wAQ3oVw8Ld0bQvsy2iYnlHescebeCiiZGfmYVXo33GEcDAiaGu/u0Jd5xTefjgmkIuU7Td28v+cv0/8cv5XsccDl/VetXV9HnnHAAAOsRx7J89qOvMPAVnn/J+W32/0PUrXcrOnQGbF7pjf303S9uWfbflUvOZrccF5SBQLEE2pZjTgGZvdZy8Hv3SLcpUrE4FGPz5tXuGSS+QkQKnAZcsIt+fIT1w5Lqa9vkdoU0XbKdWiji25lRdkL548uhOY7fZSsK6ofSwYAp5vzZwucTJTzoAMyKorlnTiNsWZpLq69/eyGYEMgouo/fBZ7do93Ik9CV+RWDjMp1xsqZ/UAUAOsex7N/aMjA6pVi/T4KOHEG/rco+lvmVVT7nGaBmfc3vns4CZoHZvva9TC6n3WcgUCxApt5Hc0kpKsnZL6D36w+71mnOvqQCDOjPr/xDxvYUc1bqv6+K1FAsxulamnS6W4wBGwCyd3hK1IwouEDMyNiAjV5q85RuSO8RSLtr0gYukpryS+ndv6k21fmZpBj5qRSrFX0l+nxGUUpWGb17+gzWzYHtnhkILOaGkMX9DcToVpv6d2lAfs04hv3r/WDrwn1N7gF1iLOPxX5l+bmzQAYas9/dm11tYN8L5XLifQYCxQDaQZZAbk8H2ZqmXz7L+qQ/5MSJpjHboz77YRZHR6LW1MgouxPE8u/5WDZbVO8d4IRRnU1graHqnFwat4FLpIb8ghSkQXaGGPkV2Ea9RmSPztKk7jh/niTK7jXA/A6hNK3lX25UXdeD7yJGt9rWv0sC8mvGUeyfnrWi+dP+M3k17WPOr7QoO3e2mDpqYt9zcmnhmQeFo1tgobfBpW1uZ+gAZVs7p8+R4m91LOjz3na7stW6tS0vOzi5rZTVMesa/znqvLw3vUaeaT/D2c5db8Vsn8/ut45VviM9FiO0E6Nb23Ob+va2ftb1udt6u602cHnEyE+u8bYxV20ubAcgP19+6WfLNtb88yLqfucdZlt6p474c4XdU8e8RpB7tvluflsJtiGjB/6138ll6l/Rn3dI67lct2KuSYH8IL94jmP/svrje9wqNMet96t35eo5wj6W+ZVl506MkPyU7fbqyCfWviu5pc+qkEutZzoXee85AAgUHUwDCZa8opcbufRZntNokSpGVkIGpFIhdkZBihgTX9HVPdZ7nEcaI5Sd55P590a+w/uu50C3OiohpOO2jrbZBi6RKvkF2jWXoqYB+UnJ20jfZoWcJCEkv7yNZFI7l1ZEhN0L2bTQs+3v6lxuOvldOT1n6ZL0L9TudHH1y64vKSHdirlGgPwgv3oc3v5l5OwPl5Dt8mycItY+WtfYjyk7d0qE5Of7toVE2HclB99Ptu7JySX2md6N/nva5kr+4S8E9uC///6jnz9/mk/gHEEdNgPyawbk1wzIrxmQXzMgv2ZAfs2A/JoB+cWBNYoAAAAAAAAAABwQKAIAAAAAAAAAcECgCAAAAAAAAADAAYEiAAAAAAAAAACHK9n1x/wMAAAAAAAAAAAQdj1tAHZMOn9Qh82A/JoB+TUD8msG5NcMyK8ZkF8zIL9mQH5xIPUUAAAAAAAAAIADAkUAAAAAAAAAAA4IFAEAAAAAAAAAOCBQBAAAAAAAAADggEARAAAAAAAAAIADAsVvYjm5oqvJ0nzqBup3vn2hjfkMAAAAAACOwYZebuGHgXogUMyxpMkVNySr7BXPbV7o1nvO7QuaJvheVLDu6aUUV8dbagMXzublVssn1+lCfsXEycbX0zq2MzggtZzUfg64XHJ20FPCrG0XnO8qcf0H5FdFmf7FyriInOxNge2Lo5b8TL9ydTXhns1H93X2fUXPPvXAHYGix3IyIlpsSf68pJTFmGg+uqU6bUw19P6UbqznbLcJ/Xnvo7GC72cwoyTTS11eh+acGnEMtQEEOw6bF7qbEo3HA3NgRxs25FKJkY3Yz9F8zJeZ6/ii1bSB7ZRBu9GcK2tBn/c9c7AllKOAuj0f9IzKaO3ZwJ0BVM4cd980S9LzCxrPRwh2Ukr7D8ivnGr9U1TIuJLA/dr29ej+kz9/3vNPoBir/5GSzIi4D/IDus2/tflpTqNo/faeLeXE6wOBosfw1W2Qw4cZDWhF7x+RngA7Dton8Ru2bqCtOyoAtIrW03wbIFr/gzes4c5eosTZGz1cm0MWjW3IBVMpGw7qnth+DmYPlF02fFUB5er9w+mk41jShL3WlThOrkEGHWTzckfTFTtqhY7Zkp6nK9a/N9p11UN6mLEFnP8NzBoAF8ivjGr9AydJ754+OVgcrKZ0lxsVHNNM6ffTxQ4YIlCM5OZHTLNmB1J7OfQQ6ZM4U9GB6eeyFAVBnedj2XXmGenx4POz6XLrmEXsO2t9d+8ZGfZ3CTwnfVf2rMB7ADgmaWf/WHPQJ86GdJNMNskXh415WfWvuSNefVFiPsehZ8fnMoIbcMya2jl1XkYF+RtP+/q8M+sZWH5QZAbBMdjQx7sEMdYghM/mH8kcga9/vR83/O+c/qL+yoH8SojQvyOg7JZvx4p8rAr/rFNwsPgoA5bT59yAx4/7N5oNuB+4u0z5IFAsRc8cyGh0XOCX0Jf2cuJGi+Yj6n89munnBY290QppuE/XyW56WkY0+J6cs8HHRrTIT2EHnt+Xxv73t3Ns33dWfXc7fSy5flIzrTbKAVOZaOZd24RmxN/RN0ZFvx/Yj1QPTKlM6Stw3juJSjld0XjxGtnZ17UhXSIgm/61mr320Y7mmupMan9M+nr0fpuvqzbsnMyOSlos8TdO0+yyjBFxsPzlB3ytpHBj+cF3Yfrnr2cvgLdSh5WtG9B133xOKdDLTlLWf0B+JUToX0rdPropAR8r2j/rEGrAMtgP9eheR5H0fIGDIQgUc8godNpAjaNRMzgZ5KxkAWNumFk61JB+e+lV4og4qaq9X/SH9XSeG5bj7xhKq3LSrfTzQ8f2emfpd1/SXy99rHf/qdLHdugUFdfhThvbO7lZegW/H6iNcm4zw88B/GzAtq1s/deSJhLhI9BRLJ85sGHdL1fH5jbkcqmQTWpvnmxnhO+RTI06cIc9lVsG1xSyxu3YuSLM9/X1JE2hDYxIg+OxWl/Tm+38ykxAP7QZBfCp338Anyr9a0XGXqBZvY7a97Hq+GfdQQ9YFmDs+3xUZUvmNKpVN98PAsUceo3WrpGuVaXWaaSrr3oJUsXYTpUUcazMKZvxb6sxNyXynWUUpJ84mGtkhH33Li7+tKPQ6u8HbNIAvsj5lc1H5jJj8oZAR2aJ1Cx55aBFcxtyuVTJRs5b2Q+q9OnrhpWUbih6UlsGxMyakn4w37MFO1eInjkY/87ryVCN1tWbGQXtMvjzy7JlxvlFWuleVPUfIE9d/dtLxmL/jI3V5dNaMxrA97Hq+GcdYrd5TRi95n5OT6V9PfsQdermBECgWEFP5R5zI40aBe6Tnpn+14LRFEeGnReyG7yMPpnTB+H475RNf3YNJi2n33AujsD6L50+LGl1qA9hKdPk3mhgX6ILE9QUBYL1bEi3CMtmSK+eTXi45g66YHawENmAQA/xeimlB7ZzxskqpkbACw6PnRapfl5Rbqy3KKUSaNL+A/KrT2xabu012s2Bf+aS6LVlxfab+5w37khW07uL2tgGgWIsUU5Kj35J/hI7jo3zlDcf9C6j0o9HnMlp6529H9yUKnbJjLkGHIENqUEyT791kCgdBYLEFD8lSIqkBaWjt5U7GtcNdLpEqWzMJhDOSHwkWTqQld5zaNtqbFt+iYAZbIAefBN6IDc3M2MHMQX9kp5JQICfx+s/IL8SIvQvSLiPPijwz/KEduQO0Lt/pDHX6PT5rzly/iBQdJA/kOnlFy+fVUpSrJOSjpCH/u6cON/R6WcBZ2OpNmcwHw5Ba+80a3msWYI08Niht8zOjbzIJhBd3lnrkMgujJ5s9Q6ertMsi9h1kOj/iRdQTXMbcrnsI5vd7N/bniMWw1dvHVCbtjU4g5L+OQBvJlOlLh8wQAUVmDQ/ZyDXrMEeP5oBsbTvsvols4HVd+9W+e1E9R+QXzER+hfZRx8e+GcOUi/mzyxV90NDelWjk3NyXN4zBoGigzQOvWbGzskWh7lytiBD1tjomQY/v1t22Yt/Diub2YkvvV92pRL9OxztvVM7Z7s0Pfnd1eyLheTe8+uyreVVebqmBBt/HAbZsEN2LUtlzaU/vVH58ruAUC9iF3LrE/CHxSNow4ZcKjGyCawdvFk03O2YbfKbXjui/yhyi7bVbJmetpU0MBTblu5ymv0uo7XaHRWDL9/I8NXrm0c0dzYskku2rAsysGCu0X89Hu03qv+A/Eqp0r9IGR+Dbvtn3oYz6Q7Wsb+7yWQR8nt1+JvZcDnx4PtqK/lTYC/+++8/+vnzp/kEzhHUYTMgv2ZAfs2A/JoB+TUD8msG5NcMyK8ZkF8cmFEEAAAAAAAAAOCAQBEAAAAAAAAAgAMCRQAAAAAAAAAADggUAQAAAAAAAAA4XK3Xa2xmAwAAAAAAAAAgA7ueNgA7Jp0/qMNmQH7NgPyaAfk1A/JrBuTXDMivGZBfMyC/OJB6CgAAAAAAAADAAYEiAAAAAAAAAAAHBIoAAAAAAAAAABwQKAIAAAAAAAAAcECgCAAAAAAAAADAAYHiN7GcXNHVZGk+nRfqu9++0MZ8BgAAAAAAp8yGXm7hv4F6IFAsYfNyS1dXezaqzQvdyr1WuX1B0wSngQr2bf0sGLRo1AYukJzcTPHFl7sO8lMcQ37qXv/65UQ9BzYYxOhWZvfScqaDuociJ0NLPrFtvKscWv9y95oC2xdHLfmZfuXqakL5GlrSxLuv6Nmn7h8gUCyCA727KdF4PDAH4lGGoD+lm8WW5M9U6pLQn/c+Giv4ZvSI4mg9oyTTTS6vQ3PeokEbuGgGnuy42OKT9j+aj2mRnV/QeDWl/ol3Bkfj2PKTQbvRnBV5QZ/3PXOwJZSjcEsw6+dBjG6JM8fdN80S65r5CMGiIrL/qGjjXeVo+heQv7Z9Pbr/5M+f9/wTKMauIy7JjGjazwV0m39r89OcRtH14z1byonXBwLFIGwM76SlvtHDtTkUCzsO2ifxDaNuoK07KgDUYPNyR9MVG6pKw9SgDXSaDam+Y/ybds1/SA8zDrZXX5SYI6CItuW3pAl7XStxnOCpdpwY3VrS83TFfvYb7bpqc838b2DWoFvE9x8gD/TvbOnd0ycHiwMO6u9yo4Jjmqn6ebrYAUMEigFSY/hYO6hj5/qJo0R2Sh4ifRJnKjowYq5mJ+0pam/UQp3nY9l15hnp8eDzs+ly65iNfb7oGp+YewLpuP4gTOn3Bg3Z0Me7dEIPVkcVZv820HV69OOG/1v/s3RWy911EECYNuUnsx8jmssIbsCxjbWtRbZInZdRQVrRtK/POxkjEfYOHJMI3dr8I/Hlb3642tJTN87pb6frL77/ACFOQ/+U3fLtGBumzB7a/tY+vuClwsHi45it/fQ5F7D/uH+j2YD7gbvLlA8CRR+Vbrei8eJ1D2OY0Be3eW7lOackyHxE/a9HM/2sUxDs0QppuE/XyW56WkY0+J6cs8HHRrTIT2EHnt+Xxv73t3PMfqdyikZkTY0nNKPytK+oe8Tg+Om4izF/xUDud4VcwL4Y/fx69hxYL3WuURvoAGk7MsXX3+Fr2tZErrJOoa9H4TGjpTmS/D4m5r5tXo/r2NYiWzR81TaMaJCliWUZI3XsHTgalbqVfHHYP6Drvv6Y0b/mo10nsv8QKtp4VzlZ/Qv4kPv4gpdO/1pqYU3/cgLo0b2OIun5EgeTWAGABfflW8kbTUlmgy0NZtvEfLZZr9fmp5TFllVlO2CvoQr/PYI6VvAuTbKdDdz71D005je7hJ5VfUx/f+9ryUX8jsE2/bXq35P/3in+91efa8tlf/J1eMnounJlaeqmpA7qtYFuoWQTbPNG1qYEVF8B+bUvP21TTIm2GwW2tcoWebZRE2/vvptu6l+JbgXrk0lmW3YRc3qI/iPff/gUt3Ho3yH0L5W3W4r8N/M5V3/6O+ZMWNH3O1OK5Vegz97v71/rylLL0Nb7qro5VTCjaLOU9YXNR/5XX22tRNILx9NRuSs1+mRO2bSV0mbSHmTUe/dOLiq9qoCoe/RI5Ph3/lsOf3NTCo7QgEMx+PPLmvE2I2FpWktLbaAr9O4/iTsHWr1/ZKOsOlVRDcWqkVjuHHT7QN5hjoPJT9YkmjUl/eB9kbZ1L2DvThW0zeaU9h8BQm28qxxN/3Kb2Xxaax4D+D7kPr5gB9htXhNm+MB9DreFp9IZdMlyqVE3JwACRYvlX2kEcxpZDaMv3oNJo6hOn+iTnpm2c9D3RRwZdl7IbvAJsV05OGM7XSor5cpceo8xOsXckJeSD46JldbSvA10lHQzApO2O5gl2WZW4ijJUCP3ulijVsQh5CcbEATvO7Bthb07TWJ0S9nCFeXGeotSAkF8WuRem1FdEGeof/v4gpdMoteWFdtv7nPeuCNZTe/y6dhnDAJFC7XmxGsUMuKTjs5U71jao19/+Po28pQ3H6TWOD8ecXex3g9uAhLn1tDwmHvMNfPAkKMKTAbXHGKDw6MHMnIju1Yn1LwNdA2zk12qw0qW+c0Iop2pznFg+Q1f1WzGfGStozq0bYW9O01idKugP9MzCV0P8Kv7jzBeG+8q56R/MX5d1+BAX+9VWb6ZU+/+kcZc09Pnv+bI+YNAsWV6avcjcUzCO3pGz8gEnI2l2pzBfDgIehvm3GiIbMxQuIA55p50e2dvZF+lOR45GO40oQXXS5roSujsKGE03FHceu1A7w5r6fDwN3cSrOpP7nXL5yl3HWMKZCN2h2+S3/BVZgtlZ1LzR5HbtK3BGQDYu5MkSreGJNnBTn+WzQR1fbfPiP4jpo13lbPSv318wQtG9Nr8maW3SkdpSK9qdHJO3DIugy0oJZHFp3ts5KHu8xat2otaWY+qN0owC5izZ/D1/n2h5wi5ZzGxx3LfvYV7FGohsHVNYBFv6PcJva8turiYPldXAf2x2bcNXB7pxg12CS16dzcrKL4O8juE/IL2IrWlqa7vaVtDz1bHzHOcyyPs3XfTPfsXp1t2nUqx+24b9B9cHKWPbeMa6F9YPk30r6y/Fnwbpj57di4lyq87YwrlZ//OpoREpK8N63dah/Z9Rc8+dbleyT/8RcEe/Pfff/Tz50/zCZwjqMNmQH7NgPyaAfk1A/JrBuTXDMivGZBfMyC/OJB6CgAAAAAAAADAAYEiAAAAAAAAAAAHBIoAAAAAAAAAABwQKAIAAAAAAAAAcLiSXX/MzwAAAAAAAAAAAGHX0wZgx6TzB3XYDMivGZBfMyC/ZkB+zYD8mgH5NQPyawbkFwdSTwEAAAAAAAAAOCBQBAAAAAAAAADggEARAAAAAAAAAIADAkUAAAAAAAAAAA4IFAEAAAAAAAAAOCBQ/CaWkyu6mizNp7bZ0MstP//2hX86Pup3+6Z3AwAAAAAAn+/1DS+Bev7tZcgbgaKHUoKrfKkd021e6NZ7xu0Lmib4fnI6XmLENi+3ldd0hkCbtottI+rIuDMcSX7Bjnw5Uc+BDe4Apq6LBmIzm5aWwHW+/kFvdlS1zdx5U2r7UOdKC/oXc00RuXtNgQ7HAfnlQaAYYjCjZLsl+ROTaXkdmnMRKEPZn9LNwn5GQn/e+0dSth7df/I7P+/5JwB2iG6O5mNaZHq5oPFqSv2QI86O/d2UaDwemAMdp3dPn5ncdiWZiXzG9NvYiFoy7hLfJT8JUEdzfsWCPu9btojKKbwl+GCngBm9l7ouQJxA7ppplli6NR85jnhO/xZjWk2P1XefNtFts6EPdZ60o38x11QSkL+2ffANoyiUX10uQ94IFNuGHQftk/iGUStM644KANFs6N+a/xv/pp1qDulBHPXVFyXmiIY7vTvprd7o4docAgGW9DxdWTKtI2NwePktacJe10o6/sv3VDvN5uWOpqsBO9gJqbGHHFrXBmzTdt2w0a35Xz7LbF7oifvvwexhp3/DV+JYkVbvH6ydXQa2rYxW9C/qGgCOCwLFVmHnWvcy9BDpkzjT3IERcxnBs6e//VEldZ6PZdeZZ6jP2fPYWbKfoYo7Cr7ve7JzBfeBU6JHP274v/U/S8829PFuO+oa3emN6REDG6VsXp5oTuwcZA0+Xsbg0PKTEf4RP39Mi8CIbqzNK7LR6ryaPVjRtK/PO7NOgVRbmMfD0bv/pO3203KwPTb/SOKcmx/uBT2lcHP6K3WTfHFt5q/pXyMYgm0rpxX9i7mmIcpu+XaswLfjg479cs4BI7NJLoC3ZVwk73Lf38xO27JXJf+uY4BAMYSkUliVE59yktCX7mVyTkmQ+Yj6X49maluncNxZ7xKFerpOzHkuyYwGfE/O2eBjI1roa4JT3EN6TZ/BRUZHafCHfpkLm7xH7rVTUZLrJzWjCk6T4atJFVIDBTKA0FcB4cKebVEppysaL14R2JSSOkmPjnMQJWPAHFZ+HxNz3zavx3VsXpGNHr7yMW1MszSxLGNEHCx/+QFfOx9hrdC3oYLAAV33zeeU/jUfNdg/W2hHfU3/Ol510W1TXbOPD3XBxOhfzDWHIODbqUBmRFaacUIz4npFsJgxfOB+ww/gTVbC+LEk3bSkX5F+8eWW29WNqQ8uqpuRAc9AX3YMECh6qM4/axh6/Uzd9QmDXCsvYMyKkBnYIf320lvkuzipqr1f9IetxTw3rFTDiVKpsezYvO2UeP/3LOmvl6Yjo2paqcFpIoMGbJjULIjMtogausZn+TylFetmTb+8eyyf2Uli+aWL6zKqZQyYQ8qPO96p3Di4ppA1jrZ5FTY6jMks8dtQmsI4fUYK2amS6sGT7Qyb+gRMddtsw4cCDfEC9ep11HnfTlJg3brt0f2jMoD0celVGSu/QL+x+Xjn1rFbcx+ktF/RE052vziUC75xoAqBYgVp4FNnfcLqq60EFX/6WUbvzCmb6LSPJU3UAkp3BH/v9xSkSYDTRac7qGHCrBOXWY4s7U4NJNQYeOgsxnkMpJlXyhgwB5afrEmUWULp8IP3Rdq8vch39Cnf3eGDKmQvAT3Cv3MU+/R1I/V2Q13v6vZpm/v4UKAhYv+4fqSOdClJiRUKfDtVt1k74NKVdLFo+fXol44UzeBfG6nYfZJMdzv4XMqMzDfaHwSKsUStT9AV7Obw74s4Muy8kK2wRYuk41hOzHodJwho/z3gRDEppYNZks10qHUV0oubtDttkOY0sjqHvnjQxnHCqLAhnQ3z00siZAyYY8hPdlkN3ndgm2ecrGIQcHwLKn1vRblx3Fy6n7tUQ8rDNddowex0Z2jaNru+xjNG/6J19DjIpox2O9ClIujsGL37R/aq5/QkvtHmg3ScaPvYe8JtKvXB9PKu78tKQqBYidnpK6qTMKML7FQ/N3UIU4Ury3OuQ5o37adwNXlP7we7PBIXI3g4C1RnE5gBttY/+GlDUmTUOB1hw669Gh1QB9JLImQMjig/k+45H1mpQ23bVh9jF/Op++b37nrA8V0U9Fcb1cGXBe96lmDw59dh9OVc2Ltt1vGhLpgY/dtbR1sGvl0NdqmjS0k7DWTJ1EL1T7t177p8X5AoIFC04WDq1luoq3d/jHcqevdvamRapuz9ETbZQCF6RibgbCzV5gzmQy026k8dBNedNXqPaSDWmhu9uY35AE6L4W92zbmunfU3XGeyJjHktIMwZtDF2UI/BTKu5sjyG77KbKGsqTI7xrVpW4MzAOl29t4sS/qnkw4VoIIK0v7qzho0SGfJArqo2M0+v3V9kCymbbbgQ10uMfq3j44eAm3DnO8hyCZd2Mwmh1pSsJrSSOqp6YCS6p+kv9pldanynXLnaBVkJFtuG1sRy66Mtwtz1me9Xpuf8iSzgfcc2g5miTm7lWyNrczr26hjgxl/C0My27K7sXsGX+/fF3qO4DzLf44p2fdp8B5fZvJM9bvbv8cJU1aHl8liyyZtV9eqFOu4UFaf3ZOfaQulMouXMeQXopn8HNuXktq41IbtafNCz9a/jy7O5Yvx7vmqDLZWF3ASXJL+hfpcXVzdsetLit0v+/2ZKp4O2KD/kGLLtz0f6txoR/80MdcIIflV+V++DVOfC3Q89zuVPPccaUN+mlTv8zY+Rt7uNfpZ7iXm+d8k/yv5hxUA7MF///1HP3/+NJ/AOYI6bAbk1wzIrxmQXzMgv2ZAfs2A/JoB+TWjPflZ696Df6IuHtkwqj+9ya1JLDp+DJB6CgAAAAAAAAB1aX3du/e3Gc2fK2m2m+r+IFAEAAAAAAAAgJq0uQeB7CSczMyfncnWKI5oPUusv714XBAoAgAAAAAAAEBN9G7x7aWEqj87k+14qst37jiPQBEAAAAAAAAAgMOV7PpjfgYAAAAAAAAAAAi7njYAO06dP6jDZkB+zYD8mgH5NQPyawbk1wzIrxmQXzMgvziQegoAAAAAAAAAwAGBIgAAAAAAAAAABwSKAAAAAAAAAAAcECgCAAAAAAAAAHBAoAgAAAAAAAAAwAGB4lmyoZfbK7q6feGf9mM5aXY/AAAAAAAA4HJBoFiACqSurDJZmjNVmCAuu/eWXhCNgRNk83KrdTQwYJDTfwwqOJTZh9w5U6JNSEco07+UmGt8goNgy4l6zi2McaeJbZuZ3qUFjdehzP7Z7NN+u0KxbJY0sWXLJVb99DNDPqd5ZqgeNi90y+dgGzW5tm9KUD6mX7m6mrCEfbTM7fuKnn3q7QOBYg4d6I3WM0q2W5I/M6nK69CcL0Pu7dOUrHuTP/R+17YS9Oj+k5/9ec8/VaAUGcEq8ODO4W5KNB4PzIEd4gSM5mNaZPq/oPFqSn109kykfRh457lEmZCuUKJ/GTHXxCCO0GjOD1rQ532lxawH7Ov5UdE2xZnrs97NkvQ827/5CMGiooZ/1Fb7vURK+98RceebyXYxJpqP4mxM79cfGtCK3j+8izf/aC3/r97JP0XJF98xoD+/atjGi7d7tv/DJZkRTfu5gG7zT0mVmdMo2j54z5YS48t/IwgUPTYvdzRdcUXuVXEJfa24H/rza3dv754+T1wJQNfgzl56qdkbPVybQxkbUrZv/Jt2Xf+QHmbcoa2+WMO7TTP7ADRl+pcSc00MS5qw17+S4ACROqhkSc9TdptZ73ZjCsb+zf8GZg26Rbz9a6v9XiLlshm+ugMXw4dZOPgL0ftFf6Srfv/gt+zYfLyzDRwEn7P8OxenlerEiZ1D/HgOFgerKd3louMxzZR9eLrYwBmBosOGPt6lk3iwnOT6rL7K3WknbWOyZON7a41UsBGR1FVvdMJPpwp+5nuyZ/O5F/lZRtLZOEz7+nhpekE2jb57xoXqfadJO/vH4OxKj37c8H/rf1bd63bhBo9dpB370HXK9U8Tc001YktHNJcR3IBj69hhKSGbm9rngE1U58vsq8xkpveZ4r0CnBpm5uXmh6stPWUU5/S30/UXb//aab+Xyb6y8XUyTI9+qUjRHdRNZAbj5o8OIh3/dEk6TrQmN5gy21hp9yr8yNSuZu84Fz+Tg8XHMf/W0+fcgNGP+zeaDVgerWcPngYIFB30jCB9PXsdfOwUezryOCq8RxqHndaXXD9RfyovbQF+74gW2VT2/Sv/L3kLNMjSaIpSr5QzpDIe9HXbbUIzQrrhxaFSXlY0XrwWdvbDV5NqqnRY8uz7qmNbdH5GpoZ9UPLbXVM6QNMlIvQv6poIPiZGb7f554gdfrpOjK3jIqPFbD9zgRwf6389mut0u0hHlGXkv9C+irPUn9KNlUIm185H0IVvp6xtmjS86775nNK/5qNdJ9L+tdR+L5LastGzj5IR8RApTJ1+ag9q6GBw/PteB5H2zLgaGHHTTqtsY5ndi/YjPV817JWeHv1rsQJr+pcz4T2611EkPft9yAWAQDHAan1Nb7aiy0hBP7RYNU/v/lM3rGy0xTaiZvTGGpGT61Wba4V9nXmdbuMar1TxAznt4GxZPnOnM15UrJcb0qs4xUqHZUaGNQudfkaVfVAdaXZ+S8mMrcG0jwCBidG/OB2tgDvsqSju4Jp8n1+QOnIGzUzK1tyfMuLvsVt/NaTfyiS6aV152Ll7Es/M+x2Gr8rWh0akwXFA22xOlf1rpf1eKHGyMVllKgg3g111gqneD1Lz36ktW/5VWRW/+Z1+EKlSUvlqe7Iy2jbmqONHnufAs84sKMDY9/moKlaY06hsoOUEQaAYwJ2GN4rujNBUIPnMYkSzgNEoTkFaS2vsmxpovpeMdu+Ul4tKLwAXw3KiZ7MrDLROtdstqBdnSukG8uYUde1DOhhUHWBcODH6F6mjlciaRLOmpB/UW9sZkyIOmTnVGD3zMhbPzGMokWZwRBp8B2ib9Sm1f22130skWjYsU9ms0ATjyWytAov4wQw9oJUuH1EbrqQDZiboWysDVLSkZE/bWMePPNNlLLvNa8Lo9aRzeiqtK9YBU7e6fFrroU8TBIox7Jt2IgGjmi6sEWR+I2M7TeqMlBjEoRatsy7ao1kq7dmkYqmOyKTGDGZJNuqpZsn1UBnWWIWItQ8d3wwoRv+idDSW1P7m9FYcIXZ+7N2p1cyIOd0U4zAV447ggxMgbZuqLa8ot81AUUoqcOxfq+33wthXNj21/k0ui89EUANSahbPrCvNgnu9B4EeGAkNaDW3jZfsR6q1nmX2m/ucN5WlcHfys4R1QKDo0CdJQc6NLjbpJGwn0qQE6NGcIsxmIsck6nuBc8dPu5Iis4Vq9oV/VukmStcDs977DpZcFPvaB7OTbEEaZFeI0b8oHa1Dlg5kpfdsPkgNpD8eaG2Mn/ploZzFjuvBaeG1zYK+UM8kdD3Ar7Z/rbffC6KxbOrYjeFvtXTk/eNDBYN2f54FkS+7lNSMJrbx0v3IzQvJioKqzZx6949K9tPnv+bI+YNA0SHNp7YXpC5pIlPn48fqEZHlxNvBaaMXImeN0axxsUaG9OY25oNBLZi1ttoNXRNN0Qipg96EJzcKkvt9wMWjOhhRP7fe1doKv1PpHBH2gTuTW6/N6F3uDhiYgFKGr946qkAgt1Qb35gPdQja192mZs5Mpko9gx58G1FtM+2jrb4wy7Lo+m7HDf0jEIFsHuetcVs+Kx31dyYtJ9XjaT4YNEHkVBZx+ymgsbaxxO5dpB8ptsP8maW3SkUf0qsanZyz7C+ELciRzAZbEU1WxgtzxmW9XpufduTuHcy2iTmnSbbclrLzg1kiWX3edflr1HOta/x71OeC76nOmWell+TfGfPdL49QHXYJX680iy2bOVcXaMxH83RRfuX2wW27uoRlJ0D/QvrnUnZNSH4h28YP2XLotqur9HNa+LhvQ0M2NfRsdcw8x7l8Md49X5XBlk35SdEt/Ytvm3adSpE+OATsHxevjfjUbb9dIiSbnHy5FIm4TH7ZcwI3p/od1OsI2ygU2b3c9w/Zy6Jf6MiE5BeSv5TQV9bXltuQUtmkpaB9nApX8g9/UbAH//33H/38+dN82h81Y7ieUXJG2wRfCm3VYVeB/JoB+TUD8msG5NcMyK8ZkF8zIL9mQH5xIPUUAAAAAAAAAIADAkUAAAAAAAAAAA4IFE8AtRsW0k4BAAAAAAAAJwICRQAAAAAAAAAADley64/5GQAAAAAAAAAAIOx62gDsmHT+oA6bAfk1A/JrBuTXDMivGZBfMyC/ZkB+zYD84kDqKQAAAAAAAAAABwSKAAAAAAAAAAAcECgCAAAAAAAAAHBAoAgAAAAAAAAAwAGBIgAAAAAAAAAABwSKYG+Wkyu6un2hjfkMAAAAAAAAuAwQKNpsXuj2ioOfgjJZmusK2Lzc8nW39JKLnJY0kWeEgirzztv8TQAcDBXkW7p95Si30VerVOl+l8jJLtCutS2wroEAFTnZmeKLx7+ujn0MDmAtJ7WfAy6XMvsXq6NdJScf2L9oYnUrRsYh4IM2J6e7pgTlY/qVq6sJS9hHy9y+r+jZsfX7XSBQtOnd0+d2S/KnJe2SzAZ8cky/h/qyInq//tCAVvT+4VX55h+t5f/VO/mnKPniOwb051fPHGiAUtqQkWjIoZ4LvoENvdxe0Wg9o8TW89edci8nI6LF7txiTDQfof4F6cBH8zGLJ5XPgsarKfUtQy+dQX9KNEusa+YjOEspA0/3uFjql5cxK+Bq2t/fkRFHaDRnE76gz/sW7KwNbOOZUW3/FBU62lVg/1qgrv0LyLiIo/mgF2/3bPlzSWZE3Af5Ad3mn5IqM6dRtH57z5byeU8t90ytgkCxkiU9T1dct7+psp/o/aI/HFOu3j9cZfp4p9VgEGzAy7/swAz+UBtxIgBVbF7uaLpiQ1VimIavbsc1fJiFO5/OsSHVLzi2YEgPMpC0+qJEfdb2YjB7o11MYq6Z/w2MOgIHDuqexCTOHnYyHr6qwQrfrsaxpAl7rStxzuDpd54Y+weKgP07PDEyLgE+6GGQSSQOFgccsN/louMxzZR+P11s4IxAsYLNyxPNuXnNHmKcjB79Uq3UbdDJFweaN390A/6yzyxJt9FfTqeVSzvwRirUeT6WXXf7Qi/ys4yasyGY9vVxZwQ+kFbrD4Ds9VyfbCp+94wLbTtnyIY+3qUTt5zwGtz86HpP0qMfN/zf+p+l01qmWcduRm59WfXUjXP6C0+pHDW6nZdf/zrSUXKQ2aMRSz0cGMTaWSddyLJn6nxDmwuOSTP7B2D/Dk+EjEs5vA9aafcqfMDUrmbvOBcfkYPFRxmwnD7nBjx+3L/RbMDyuLtMfxeBYilpA320RsfK0VP/tkHUDXH8+143YHtUTRlVd8pfGs/TdeJMeQ/mo7yDwcdGtMimre9f+X8Zdpeg1qR8ZGlW0nD7U7qx0gnl2vkoEPTVea6HcqhU1qJ5xzahGcWlTIBjkJD0F/T17DmwZSkk7Gzf6RmZqLGSC2f4atKAlMxkDUJfz1Cks1Umjee6rz9m9K/5KFAo+e30z7FBBXLSjuaa/tUwJB8TUzfb15yDVcfO9r8ezXW67tMRZZl5b8XmgiNRw/6V6WiHgf1rgQrdqpRxBYf2QcvsXrQP6PmZYY/y9FADlsF+qEf3OoqkZ78PuQS4okARi/FWRDRmrQ+xXq/NTzaLLavLltKb1DPGfJRJZltWs+x5yWywO1dIsp0NrOcx3EbD96l3DbbceC3y96f4z6n3XHP9YMZvUJ/U7517TcG9p0K4Di8Vo5tZnQlGP5x6T4+lpVhHuyW/FCNHUxydL9J3r+2ndFN+O7QNpO0gE5jRvaCO5uUakp+2Y6Y4zykjbyfVc7wKc20e09Dmfjewf6luFddJXkd3wP7B/jWhWLdKZGwRlp+5N71J1YnR75Z80HA96/fmvqt37SnZwJD8SmXi/S7+te7vpuVh121a324JtJcTAzOKhWzoRS+WqTmTMqTfrB1p6oBa7Dq4JjXAZvLH12o4oiidQC+2T0ebrtRokjllE5WGIOhR1HFgJ56h/qLu6Ej0cz1MyomMmO++OxeVogBOCTfNxIyEOSOQfOwzHRGUzZzWNOK6xKg6q7lKQ9xt9sOGX+t8bioKxNC7//TWH4rupSPqqR3p09eN6OgNRWc/y5pEs6akH6ybSDu7FzVtLjgq1fbPJa+j3QX2r11CutVcxkfyQX3q+ID7+pnfzG7zmjB6P4c5PZX6SpLlsvOvttvP6IzF7wKBYhHLZ9U4xo/1p8WVM6B2l9INcdcx6fxzbRRCzoQ0UG6UZO+KlRDbif0xjbeYGs5XBGM71Sorp98QOk1FWlBP5d+z3gZy8zvF5oXu1EYNSbbZj3T0MozIvaNOzVGyXJGzDEQoSskCGmdNzZBePRvycG05O7HIBgR23WQcwM7aHNnmgobEpkXWXiN7YcD+HY5Ut2JkHMF3+qCX7AOqtZ5l9pv7nDcW1mp6V7Kc5/xAoFiA2gmKI/+qP4kRZPib75TdpT5UQ7QXdmcN+OUvySYLbhv9IL0kssWc7d4PVmu2MYHhUr3bVU3nqwjzHj1SBU6TPqk9QfyR8dhOvC1dOVeUnNz2rLAdzYJ2oEciESDkMbv8leqW7+zUwOyY6vx5l0PYWZtj2VxQk33tX4yOdgDYvwPg6VaMjGP4Dh/00n1ADuJzO3IH6N0/KtlPn/+aIxcAR/vAx+Rx5/PGXcry69k5MfnHfq6zlXueT+Z2c8uZ7Dn+sdy9TME6gDQv2jmucq3dY3Wfq6631nvo93j51vKe6HVCx6dzayRy9e7rnHz2dNbcE2oP3ZKfkZWnz7qN+usUrHZQYk86JT+Rgye7oG1yMOtjCmxISH6+Xcqe4a0d2cfO5p7d0OZ+N7B/ni7U1FHYP9MmYP+qidKtOBmnlMlP3xO6z7xDSk6p42xjWqf+7TE+oHpe7r3fQ0h++nfwZGZ+X79egtcKxs5IsfW+8PoTB4FigKJG6VPWSFMDEGoQacMLBqKpQqaF7/cbVllDS58txbnEUlxd8gto6z5XHSswfFnxzp8a3eroNbk68uo8d55LgVp0UH5WJ5uVvK2w24uUYFtnuiW/NGCziy+7wDVFyseE5BeyS5ldTZ+1p50NPduua+fyCJv73cD+cXEqLUZHd8D+heVjtwkpsH9CrG7FyVgok98hfVChyO5V+YChZ30XIfmF/B8poa+srw3XTSqfUtmk5cT95Cv5h78o2IP//vuPfv78aT6BcwR12AzIrxmQXzMgv2ZAfs2A/JoB+TUD8msG5BcH1igCAAAAAAAAAHBAoAgAAAAAAAAAwAGBIgAAAAAAAAAABwSKAAAAAAAAAAAcrmTXH/MzAAAAAAAAAABA2PW0Adgx6fxBHTYD8msG5NcMyK8ZkF8zIL9mQH7NgPyaAfnFgdRTAAAAAAAAAAAOCBQBAAAAAAAAADggUAQAAAAAAAAA4IBAEQAAAAAAAACAAwJFAAAAAAAAAAAOCBS/ieXkiq5uX2hjPn8vG3q5PaXvAwAAAAAAAPhOECgGUEHclVVqBFCbl1v3XlVu6QURGDgRqvV7SRP7PJfJ0pzqAsuJ/r0LfulcGw9cF3NN59i80K0tE6/YIvJ19LaGAQ0Owpk6rfMccJlU2b/ceVM604Qb2r/Oy6+IBvYv1gfVdRPyN02fHnqO+V6wjZqwD18gn7StXE1Ywj5a5vZ9Rc+Ord/vAoGihzTQ0XxMi+2W5E9MbrcLGq+m1K9Vkfb9W1qMVzTtHzhYVAq77zt6dP/J3/Xznn8Cl0yMfi8nI+ILLP0lmo+6MNhhZtZHc/M5jxj6/pRolljym48cZynmmk7Su6dPo1N2SWYDPjmm30N9WU5HWQFX0/7+jow4QlKn4wV93rds4RrZXXBsovv3wYyS7BpdXo1+Xi7t2D9FJ+VXwb72r0hHA/R+/aEBrej9w7ty84/W8v/qnfxTlHzxHQP686uGbbx4u+f68NtkRuzE5wK6zT8lVWZOo+j+3Xu2lBP3vREoOmxI1fv4N+1s2pAepCGvvigxR+oyfJiFGy8ARyVOv4evbqfeFf3dvNzRdDVgJygh1XfnWNLzlLvU2Rvt4g0jv/lfM6IYcw3YoeWV6SQHdU/spw5mDzsdHb6qwYrV+0elo5RnSRP2bFfiuHbeU+06h+nfL4V27B+oh2f/mupo7xf9kUs9W7n5eGcbOAj248u/YnD/UJ04sXNIkM/B4oAD9rtcdDymmWoDTxcbOCNQdOjRjxv+b/3PamQb+ni3G/L+3Pwob4kykuRMR/sjFF7qQnpa3adGAWXmUp9zRt8DKQ/+o9Uz7NGSgndlZFPupkSMdoHvppl+V+nvudO7/6Tt9tNygjzMqKwvh54S6pz+ShuJuQZkbF6eWCrsnD4Y7VOj23n59a8jHSUHmSEZ8fPHtAiM2FbZW3WejznpQpada8PugmNy2P793GnF/oFa5OxfYx3t0S8VKbq2Mvni+2/+6CDyyz6zJB0n/nLsY5ltrLR7Fb5halezd5yL78jB4qMMWE6fc4MiP+7faDZgedxdph+MQNFj+Gqm+dW0uuQY92m6YkejwWj08nnKTWqXWhBCGs3TdbKbipbRi/nIciz0yDjN0msSun7SedEyAyTpWdzcs5SQLMVKGi3fd2OlEsq181FBzrWi+F2CcpxUdmL6zIRmVDc9F3wH9fWbne07PSOT9WVdxaToXPfN55T+NR81xFwDDKkD9LhzTgvkpJ3RNf2rYWA+Jka3t685B6va3hr4WP/r0Vyn2046oty+3QWHJtr+qWuMI8sFdcbUsW2QXwQB+8c09UF1+qkduOtgcPz7XgeR9uyvCv7dtNMq21hm96J9Q37eiBb6mjNa8qQGLIP9UI/udRRJz34fcgEgUMwxpFdxCNRoiYxGcwNb5B2NcuY0soykDL44qVQBpPE562dMCsG8cJhO1hVWfS928iWPa7xw1wekqVyBkZEw9rt0qoQrk7SRBPLfwYkRo99mrYrSX9NJYf0qaJvlM+uWODCW9qV278l2LIwdqwN32FO5ZXBNvl8rRNtbtp3bzHgO6bcyc1UpsG3ZXdA+1fZPOcKZo6vXkDVaI9sxIL9IQvZP0dAH7f0gNceb2rLlX36Gnqjwg0iVkspX25PE9X3RlDq+YXzge0roAcsCjH2fj0Ib29i48cE5rPVEoOih04x2m3mIkZNR4FwaaCkyim0Zy4KFsC62cy5FHHRzSqHz1MXgxitWQpJxkDdE/DTxeApH6EveZdJPlExsZS9ZAA9Ohzj9loGBnf4ms7UybOjoQXuYYCo3Uy26l46op/alT183Yq9ch6YUWZNo1pT0g7a7yt42YV+7Cw7NPv27pGSqAH+vNbIA8gtRZP/201EXPaCVpq+qDVfSATMT9K2VASpKad3TNtbxDc801Xu3eU0YvZ/DnJ5KfSUvPihL9z4RECjabF7ojlvEYJZkI8Eqb18PE+y/vqR3T2/c2Itn3KRhcmMke6ew/IJyvYYg3UVVGmHFyIVpuMUUO15V7xrbKVVZOX2F7zR76ndP5d9jJkSnWK3IWeIh2ClZMdeA3Wj6Y2imWkbUXdvycG05O7HIBgRB3Y6zt3vTwO6CA9K0f+/6hjdNbRs2DNpRZP9a8kHVgJTyN3UwuFuDqNdA6qA9NKDV3DZesm+o1nqW2W/j66+mdyc/S1gHBIo2yuCxGvhaULBupjU2H6RT1ePS+1Rqh4yWWykEQfwUBAu901W145V7l3mmHpECZ0VT/a7rqF8aBbqvRxlN5xFzDdD2x6RDVeM7OzXI0oGszIia9rY2LdhdcAD2tn9mJ0rYvz1tG+TnU2j/2vJBh7/56bLD6YcKBu3nZUHkyy4lNaOJbbx035CDeD0JXL6MrHf/qGQ/ff5rjlwAHO2DjMWWm9CWNWGbmCMCOxpbbjp81mW9XpufdiSzQeBa89zx7qh6ZvaegvP2scXYOa8+02A7S79oMtuyIdnalwj6+3jH1b3uMef7VLxLP9N6tyDXeHI7B0J1eLnE6Ldc4+mv0ZeBU+Gay5Rfsp0NrLZnoWWVb3e2bGKuSemW/hlK5JHH1EWBbQnJz7FlCvMMR8f5s1W/us4CxzwdyD27od39bmD/0ro3uiH16Z0P1qUB9s9ry5BfNaX2L6aP3lEmP31P6D7zDim5Somzjenv4N8e4xuq54WU4RsIyU//Dp7MzO/r10vwWsHYeil2PRdef+IgUMxhNaKshCu2WMn8+7l4DUM1FlvpUkW0rvcb1K7h6+K3Nfu8c85SWl28hsz436fqXbnf02tA50L3Oqpq/Q7psF//KZckv8K268nHbxuhDj/mGqF7+pfKpqizTIM6qxQpHxOSn2/LFKl9TZ8Va2+9d4eerX8fXZzLI+zudwP7J8XWxYD+Feoq7J8U17Z1V36xaPkVy6RaR3eUyS+rT8+GCWkdBvulCNsoFNm9Kt8w9KzvIiS/onYQ+sr62nDdpPIplU1aTtx/vpJ/+IuCPfjvv//o58+f5hM4R1CHzYD8mgH5NQPyawbk1wzIrxmQXzMgv2ZAfnFgjSIAAAAAAAAAAAcEigAAAAAAAAAAHBAoAgAAAAAAAABwQKAIAAAAAAAAAMDhSnb9MT8DAAAAAAAAAACEXU8bgB2Tzh/UYTMgv2ZAfs2A/JoB+TUD8msG5NcMyK8ZkF8cSD0FAAAAAAAAAOCAQBEAAAAAAAAAgAMCRQAAAAAAAAAADggUAQAAAAAAAAA4IFAEAAAAAAAAAOCAQBF4bOjl9oqubl/4JwAAAAAAAEAXQaAYYDnhQOlqV25f9giZNi90az1j7+cA0CpLmnh6OVmaUxabl1vnmqvQRZ2kWn6+/Si6rutkOuYNSjWVn7rfH+haTtQzYIO7DuxfMyC/tjiU/cvJXpVbgumLIyy/gr7D9CtXVxNuGT66rdj3FT371CdmECh6SCMdzce02G5J/sTkdjGm1bRfy8FQDb0/pZuFeYYqCf15r/ccrYTHbuA9uv/k7/t5zz+BS2M5GRErd6aXrN40H7k6JsaM1ZdmSXrdgsbzETp7JkZ+isGMEnNNWl6H5hwQJaM71rHxeGAOeLQpPxm0G835ZQv6vG/Zqn2LjQb7IdkyofbrOuGwf0VAfq1xcPtn+bBcFuMVTfuwU/G48tsmM2IB5gK6zb+1+WlOo2j99p4t5cT9bQSKNtx4n9ifGMweKGuTw1dlDFfvH3ERPzsO2ifxG7YOwFp3VACowfDV1cvhw4wGtKL3j1S7l/Q8XXEbeKOdqg7pYcYd2vxvYNSsW1TLD1TDDqd4SaxjD9fm0MFY0oS91pU4XntHmuAy0H1wvv0Srf/B/lUD+bXDMe2fBv1UQ3r39MnB4mA1pbtctD2mmdLvp4sNxBEo2iRf3JSIbn64wVz/mpVg9UWJ+VwMGwAdadJDhE+SSzGwRiTUOYk4+RtN+/q8MxuZTXmbEkpf4Odl7zDn5bM8x50Cd6fN1T3+VHjF+8B5k+n85h/JGJnfBno/bvjfOf1FTx/ElxcoZvNyR9PVmB4PPmimZ0DmMoIbGLHNbGNavBHh1IY6ttKye+p8mY0OLD+IHnQG3wPsXzMgv0qOZ//y7OpFbCPbpJDNc3w7c51nx8KplhcOB4uPMmk0fc797j/u32g24H7g7jL9YgSKNv1rNTrmo43cmrJBs0IS+tKRZuU0sjTIp+vEmdoezEeZIyEzF5L2ylFnlsKRzkYqx0VlgJh7twnNaEp9P3jj541ooa+xHCVJpe1/Pe7uHcxpVBL4Rb8PnBl6ZFNmW7KBDTVYMqDrvvmcUtA2uk1Afikrbh9Wx1or5fySUSlXKxovXndZGyFakN/HpK8cssU2/64q+5vBx3a2ckFja0S5zEbzC/LLD/haSdODLpwQ/uAw7F89IL96HNH+2SyfuZ+iMf0ufamPBIlsQ2+MD8lFmTuVOlnx/S8UNWkUjAV6dK+jSHq+wAgagaJN7xf9YT2YP3kjKjJLWINBzkrmESfDSUNN31055KZTO1xDkyrpO7mZBdygQ+lWThpW0b0pdd4HTh97hNA40liPWoNq+akAIg0OuCSzgRqcQYBgHJbxwkvLd2lFftxhT8VsD64pZI2j7S9/1232ZYf0W5m9qmUIps/wf890GUNgRBp8B0uayIxwZAYQ8IH86nI0+ydr5qxAU1eTtaQqCj3xMbaiy6EYwKhJk8tETxoVYOz7fFQ12+rWzTmscUeg6CA5+HrUeDea06evG2kcN+RlUxSy+qpOUnUdTv0ejseqMakdMjK9u5eLSoHyGP8OGwZ/xlON9q0o+LXrvA+cAaLjdie0VkYLQUws9eXXu/+st875UlHrtwsGr0rYS34yGGbWlPSD+Z572t8o8g5WStcdrVNCNqaac883e8NA2T5AfjU5pv1Ts367fqpoM5Zy+iQTaPbg2fKv+H3xvvClsdu8JoxeCzqnp1J/yqub7ae1nvc0QaCYY0ivTiVu6eGalaNgZNpFNyxa/6tojOKksGNC9s5WkgJqTkcgm+XY31GXwyncsd8HjkNP5dZbsxxFgwZFKUUdJye/MqLWOV8u2slwR1P7Ep2ZgbnKwYq68pMNCPQQr5dS2tz+lmIG14rprqN1Kkjq8WguKcNeHwb7FwXkV5+j2z8btoVvqqPaIwuM7Wf6ffVfBOhm2qmQ6LVlxfbbyHk1vbuojW0QKFayoY93NnF/fkWMmvXol+QvccMvzVPefBA/ksaPe4zE9X6wmkos2kAL/UC2zIi38T5w+qQDIQX1rUfS4OAWUjqQtCElvqjBpsvFT6mSImlVavaPfy7eEbqB/LJ0ICu9p4n9jcG0odAyAuUsdlwPvhsd5MjgZ2CgE/avEshvP77F/hXSo7IsSoWyk7v117p0N0iU9aW5v4oQoHf/SGP2qKfPf82R8weBYim7kee3wkbsks4w+H9bSBADq0aNAo7EUm28YD6kBEfn9FbTuREL2TwhNq3ASccy6wzGjwWzgy28D5wI8gdgvfz55bPSu91AiFmHZde3WYBff43DpREhP9np0msXepe7AwYml8QB5Dd8ldlC2ZnU1F2s/Y2hxEbnZjJV6hn04DuRjdl0kOP/+aoU2L8yIL8Dc7D+Q+81Yft5amMW6086pAMAGcpO7nZ0zkoX/T6pF/NnlqpjgSG9qtHJOdniPGu2wCLZcv++FbFkhS1iEev12vyUJ5kN3OdwGcwSc5ZJZltuprvz/B7Wrdz71DFzjX0q9/zBjL/9jtCzhPS4c3/oXu9Y1fvOlbI6vERCehlQE0fvpDi6awH5+fIL2BAabwMiVnRNfj5Kno4taS6/kP3iF2l7m1ZWhP31PwuhZ9ttxbl8Md49X5XBtqAZfRvd0r/Flt03r07S4taNXadSYP8EyK9tDmH/Qn2UKp4t898ldeR+H33evc3c49vXM6WO/HLiY/S14fpJ24B9X2HdnLg8r+Qf/qJgD/777z/6+fOn+XQeqFEj+ZMZNRdUXyrnWIenBOTXDMivGZBfMyC/ZkB+zYD8mnFI+cnscX96k1uTWHT8HIH+xYHUUwAAAAAAAIDFnNyl1mkKa8GO+uAiQaAIAAAAAAAAUMif5UhmA7Xfxm6N4ojWswQZaR0DgWLHUDtvoZEDAAAAAIACJFiU1Wl2Kd6dFVwqCBQBAAAAAAAAADhcya4/5mcAAAAAAAAAAICw62kDsGPS+YM6bAbk1wzIrxmQXzMgv2ZAfs2A/JoB+TUD8osDqacAAAAAAAAAABwQKAIAAAAAAAAAcECgCAAAAAAAAADAAYEiAAAAAAAAAAAHBIoAAAAAAAAAABwQKILWWE6u6Or2hTbmMwAAAAAAAOA86WaguJzQ1RUHNZOlOeCyebnV59NScF2I3b239FIYMS1pYp59W3wRAAdgp3tpCal3kzZwyajBEFsuptjiibmmq8TKpon+BQesjM2Hve061fYP7bcMyK8Zh+9/c/eqUuaPApuw/Ar6jjSWuJpwzfrourbvK3r2qU+wdCxQ3NDLLVfKaG4+55GK7E+JZsmW5E9MbrcLGs9HezjKK3r/CFf95uWJir9BBUox0ejBPoj+j4gWqW5vaTEmmo/czqq9NnChDGaUGPml5XVozqXEXNNVKmTTuv5tXuhWbP54QZ/3PXOwJWCPz4g4+6dA+w0A+TVlOQnJz7Uf7di/Mb/Gfs+Kpn3YqXhc+W2TGbEAcwHd5t/a/DSnUXT9eM+W8nlPLfdMrdKpQHHzckfT1YAbYEKzgTnosKTn6Ypt3Bvt/IkhPcjF87+BEYMixjTje1bT58A9G/p4l3fM+CoAjkmP7j/dDnv4MCNpCut/qflrqw0AsA9t69+SJux1rcRxhafacWLsHygG8mvK8DUkP3tS4TD9b/49oBa9e/rkYHGwmtJdLtrW/j7Nny42EO9UoNi7/+To/dNqgB6bfyTjAzc/3At6P2743zn9rdFKf/z6ww0zcM/yWQWrf379MAc8sqns/JS0SulQs6EyOqTP29PauZQPb4RDzsv17vR3YMpcRuDt53AJDZY476s12gVOlhbbAAC1aVX/9AzIXEZwAyO2MfZSjjn2soY9jrWjAIBuk9m7A/e/u+ea7LqQzXNmzcx1nh0Lp1peOBwsPo7Z2gcmgH7cv9FswP3A3WmnkO4LNrOxSb64yx/Qdd98Tulfq1GzWvR+0R81COQ1xL+SAvUYDFaVQ6IyE9Ip6YRmNKW+abgyGrWVXAX+NmlaQppKJQ386Tox93GR0Y/5KOeYrKZ96n897p4/mNPINgwSqPandGOlR8g7Jb3ED0pH890UenL9xJ/NSXA+KJ23OpA228ClsuI2aXWaTnCQEnNNVymTTYv69zHp03QlNuqV/LnEWHvJhs+ylwsaWyPKZfY41o6Cb8a3fylov3FAfg3gIOxOZzs8pAbqQP3v8pnfQ2P67RvCUiRIZBt6s8hsmDJ3MvAWsKldoH8ttbCm/AR6j+51FEnPFxhBI1A8GEZx7OnozQs9SZwYbK065WC8sBtgqnzvVJUxIE6Ls/6mIFAlJwXLfz4bBvUFF+56guGrMhC7kZQlSbw7mD1k31Vma7URAefDkiYS3dsdFShFBQep488lUSnmfccRirmmqxxNNtxhT2XganBNvs8lRNtLtoXbzBgO6bcylx+7gbUgsXYUfC9h+4f2GwvkVx97hs4MZB1kfdqcRlagrqtp56/FkdDXyvVXh2IAg4FSN9AzuwUY+z4fVc22unVzDmvcESgekuFvGtMuL3zz8e6OHtmYlAMZcd4pEJfoaTrbAEkRI2RO2dz8cI2SGqla0VciH/KGIcUxEAXpEeC8kIX1c5kNeTvthdSnTDpAUhY8xFzTVQ4mGxkQM2tK+sF8z0h7uReRdhR8K7H2D+03DOS3D3qd5y6IXqugof0gepftpUrBZizl9Ekm0OzBM5URRzfUVddvt3lNGL0WdE5PpfXp1U3ZcrgTAYGijRM0WRSlA1RiRqDVCLJZpPznV6lRHdupStGKJE4POzpk7zRWtGFPCSYALKa7BuLS0KnDkjLn6VbrbaAjrL44PKgg5pquksqmTf2TDQjEQ82llLZkL4uAHT15Cu1fGWi/GZBfO/TU2jYWTZplcKj+l23hm3pRdXZaDtlx1Qyo6eVG3Uw7FRIZASyz30bOq+ndRW1sg0DRpveDVSC/g5ceRdivc09HGP5O/vK/Y3ossqoF745i80HvMoL9GDEztP7njijZBsh8h1z6FaNGktI0ribfFXw7upOXQYlAJ3+ANnDZbEiJpiDFURNzTVfxZNO2/mXpQFZ6Tx17uQ+xdhR8C6X2Lwjarw3kdwAOZf8K6VFZFqVC2UkZDEgH06R0N0hMl45VpfD27h9VJuH0+a85cgFw5XeQZMtB/1am73zYqdiyKmy5cWiS2XbAYhpkB3as12vz045kNuD7x9vdk827+Bnu+xZb9l+c5+p7rXcLi/GWNZOfYjDfx/3q+ln28/XvUXUsf5/+Dt7z5Tt4x/Szdr9n9mz7u54BoTq8ZIL169G0DVwsIgdPv3PyjLnGAvLLy6ap/qn7nfekNji1VzXspVdpuWeb7+bXbawd/W5g/zzQfkuB/Jogdsf2DRljE2zb1tT+aXl77wnYPH3d7j2ZDczqz9zjF69+z5lo+Zk68H/3sKwZU69S8j5+4PoTp1OBoq4kS+Gz4lZc1mBMCTVQIVbJ0ve6hlI3Qv/Zue8YaJT298uemSpyWviEus56afrZeUeo0VtKrosXvCqsAJiL/B7quWdmRLrXUdn1ahe3jpu0gcvF1XldfKMfc80OyC8smyb6p+717VBqH1N7WMNe2oSebX9X5/IoO/q9wP6lJa0btN9iIL+m5Pw7Lp6JUdg2RUp9H9S9X5Xci9y6yvtw+rx7m7nnzPy8IurIL1RP+tryPsy+r7BuTlyeV/IPf1GwB//99x/9/PnTfDp9VMoI2bv4gXOrw1MD8msG5NcMyK8ZkF8zIL9mQH7NOKT85M+19ac3uTWJRcfPEehfHFijCAAAAAAAALDw/8i/3pSRxr+7u1axgyBQBAAAAAAAACjkz5oks4H3J9tGtJ4lyErrGAgUO4T6Q7ho4AAAAAAAoAQJFmV1ml0+o/8eCrgUECgCAAAAAAAAAHC4kl1/zM8AAAAAAAAAAABh19MGYMek8wd12AzIrxmQXzMgv2ZAfs2A/JoB+TUD8msG5BcHUk8BAAAAAAAAADggUAQAAAAAAAAA4IBAEQAAAAAAAACAAwJFAAAAAAAAAAAOCBQBAAAAAAAAADggUAQ7Ni90e3VFV1JuX2hjDgMAAAAAANBllpM6/vGGXm7P35/uZqC4nOhgaLI0BwLEXBNg83Kr73PKLb2cvJawQt9NaTVekPzFlO3nPfXMGXCZZLrqGTFlCHM6fEU1m8JFEiubnB2A8BxycvTk00R+wY7c2PPb0zfE4MD4uhfSCbTfYnJtN+AEQ34B7IH4QLFF1ER+uXtVOQcf9DQIy6/bfUfHAkUT3Y/m5nOImGuqGNNCgi1TFuMVTft7NFTl3ATuKzreiIS+VkSD6775DC4a7rTupqyp44E54DGYUWLpsJTXoTnXdSpkIx1Nn2U7S9LzCxrPR3CWFNq+jtaeDC0Bti4/cdDEno8X9Hnf8vDXQWwxOBQS5IzmVv+8GNNq2necQLTfYnLyE9msptS3gkXIr4DePX1mctuVZCZ98Jh+GxPYjvxa8kG7SqCP36/v6NH9J99/5hMvnQoUNy93NF0NuAEmpNpmgJhr6jJ8mNGAVvT+gVYKTgE9e0yzN3q4NodASyzpebrifuaNdv3KkB7EmMz/8tluo+0rOzGFHWfb8lvShL2ulXT8GOnoNpsXepqLD/jAGmUYvrITTbR6/zCBDtpvMRv6t+b/xr938ktls/qiRH2G/Oqh5bWT6WHkBx8UNKFTgWLv/pO220+rAeaJuWZfbn6kDzWzlt4IkZ0ypX5Ws5oyEsQ/m6nvouMZacpsWkJphfxe9X96Xt0zIvXUaV8dT58ZvF6dYSrepYi5BhyV1Fl/PISSd53NPxJfatfWNb0fN/zvnP522lPa0Me7OEGWo+7TqvzEzopdCwemmU1LS8ge8zEZ4Q/ZL3W+zBYHUs28V4BjknxxTeV1q39tBTpovyX0SIlh/c/qw3WbzgIdyK8Wm5cnlsqAZg/GIh5YfrvnVvugGnOdZ8euriYI+hndh+RlYcvRl6n6XNKvaE5L7tjM5ggsn6fcQe1SC2IYvm5VWgyJETEpCDL1XXRcUIo3IivlIKEZuWkhivmIRmStRRy+8s8L/oYy2po4z1T41/OhmHdFfx9wPFTKKWvj4rXYWRckncgyUI4D3HXKZKOc0QHlMrj713y06+j0dvp69gIoKyWqRfl9TPp69nKb13XprJ+uta1TJZnRgO1cLpDjY/2vR3OdTrO7M1+2zBbzC+iqP6WbhXm+FL52PkJb+jYKdEg74Wv6J9WC9lvK8NWkmqo2u6TJlWlj6Ww95FeDNMh+3E1MHEh++/ig8v1ebrl+b4zvx0WZO5XWWuE/dAQ9U+sF8CZzYfxYkm5a0q+cotwRKB6EOY0sR0gGnUtH0VtBpyy4AUCP7h9Zw1bv5GYcWIY9Cv/6mHfV+T7gWKgOY7woXW+oHGBjoKTIGgp/HU9XgWyas1pf01smQ0nxlxm5lkdKueOdymTf4Jp8n0uQenQGw3q/6A97YnN/yF4298oay5B+K/OVpikWwR298hS8dpamOU6fv2VUuPOkdfxkD1SaugKRDOlVDSpLm9VZSJWDjiDM8pmDbJZfvegtkjZ8UD2wZ3+/oRjAdFDlkvEGgwvXoQf6jc3He3VQXtqvnJ7cESgeBIn8LYcymRFb1cD0couYlAUZsd4pNxeVGuXhrDGIwL8+5l11vg84DsuJ3oigLEoMIOnYysGtdJC7B2RTn8GfX9ZIqxk8aiGtykHWJMosoXT4wXxPP7VHZkbMqcbkO/qUzjhaJ4lsLJHOiO3q/etG6uSGvGw/EECny6k0oWygTPXxyKmuiRmgYDuVZp22Sxs+aJ8kK9sOgpZ/xX/rQFvJbWZTtBytR790pGgG/7xU7L04PbkjUDwGvXt6k8XIR5hJG9upTpVK3oyYdx3z+4BytLFxRxr74h0bx6lyVizbsADkSGWjUoRW9OULqiilCLhpVW3KT3YZlCg+l1JqUnvIdgba27wsHSQrBkHJ9yEzYnZftKWHa66tdOYZ7bcYs2xBlqekY41qTwe7jUF+caSziX564qHk18QH5bpN/QW94y1mkG16948cls/pSfynzQfpOLEFCZ2Q3BEofgtmUXib9H6w+yHrzA8ciQox7zrm9wFR+GmTUtTW3Gb0zEnFczC73RWk8XUbTzYFer9RF3U9QNAjpbnZV9sJalt+Jt1zPrJSh9LOvGwNSRPM75BLY2XUYA3a0QlhNlhKZ7nRfotR7ZSl4AvBHuiB/KLQg7aB9MSjyS/CB1V2crf+WhcEiXl2qaNLSTttOkt8gnJHoHgU0i2Qd4uW1U5r86fMeZHNFXJZmUWjS8Hjegvl1fTOzaWWTRVaT3mNedcxvw9oDdmp0asfvUvqAR3rcyFKNqbTsPU+G4k/9DrlUyddozyl5yyGWtJEDF9mG9uX3/DVWwcZCOSWauMb86EOJbY4N5OpUr/Rjk6H3czyWzZIhvZbyPA3hzbitrg20N0oBfKrhOWR+zMtGYeS3x4+qLKTux2dswL/LYdaUsD92kjqyVlasQenKHeOVjtDMhts5VfOl/F2UeOalPV6bX7aUXj/2L872bIvkZ0fzBJ972DGZ3Ysxrtr7EcUHc+9P/S83HcRFltWdfU9bIqvr36XEHPNdxKqwy6R1zlXL3XJ635Kt+QXLxu7fUrx21VKF/UvZxMC9qWJ/NS9vp1JZlt2i3bvSj+nhY/7ti5k+0LPtr+rc/livHu+KoNtwa/xbXS+/Xr1m2LXqRS03xTtJ9iyCdlAyK8YLZviPlVoIr+cfU1LTterfFB93r3N3HNifty+FMqv5PdTdZM7n8oyb+P969Xn0n7l9OR+Jf+wkoA9+O+//+jnz5/mEzhHUIfNgPyaAfk1A/JrBuTXDMivGZBfMw4pP9m4qD+9ya2NKzp+jrQnP2vde+Bv9tbhFOWO1FMAAAAAAACAhb8bdZrC2mRXzwuk9XXvpyV3BIoAAAAAAAAAhexom8zMnz/J1sqNaD1LrL8BCAR3nW4zTlHuCBQBAAAAAAAAGerPn2Q7b+pSvDt6d9E7yreXEnpqckegCAAAAAAAAADA4Up2/TE/AwAAAAAAAAAAhF1PG4Adu84f1GEzIL9mQH7NgPyaAfk1A/JrBuTXDMivGZBfHEg9BQAAAAAAAADggEARAAAAAAAAAIADAkUAAAAAAAAAAA4IFAEAAAAAAAAAOCBQBAAAAAAAAADggECxQywnV3R1+0Kbgs8AAAAAAACAJmzo5fYyfOxuBorLCV1dcQVOluaAzZImcs4qwcsCbF5u+fpbeslphXlmSGE2L3TL527zNwFwAKr1Ww0geNeErusmcfZB2wLrOggvRyajgF1sIr/gAJix+bCzXQfttxmQXxNi+9Ym8svdq0rILwUhgvLruP52LFA0Ef5obj77yPkR0WJL8uclpSzGRPNRnJPc+/WHBrSi9w+vRW7+0Vr+X72Tf4qSL75jQH9+9cwBAA7HchLS70AnMphRYq5Jy+vQnOswMfKTjqY/JZol6XULGs9HcJZsNi90xzIajwfmwI7W5SeDcWLzxwv6vG/ZzqoAFE7YeRDXv6P9FgH5tUJF39qO/MZcTbvnL8YrmvZhp6Jx6sjIv/bMYI/uP/n+z3v+6bzpVKC4ebmj6WrADTChWd4/YXTF2o12+DDjMI5o/S9CRXq/6A9fvHr/cBRq8/FOq8EgGEQu/7IDM/hDiBPBMRi+hvQ7MLgBglTLb0nP0xX3M2+0i0mG9CAGZ/6XzwLlcN6JJ/RGD9fmUEbb8lvShL2ulXT8GOnoODH9O9pvMZDf4TmM/NDPN8HIPzTR0xE6FSj27j9pu/20GmDb9OiXihS/KDFHhORrRXTzRweRX/aZJek48Zc74pCmxqYlNJIRcY2T5hA7GhXzbnBx3Pw4WKPoBJn8TPaAL8/ejxv+d05/4SmZAbsxPYYMcavy0zMgcxldD4zq5tLAPBupzvMxGeEP2UN1XmWnyGi9Pu+ktpplBdm9XDCpcuKg/TYD8mvGgeW3e67YRrZJIZvn+HzmOs+OXV1NOhX0a/l7RNj3nDy9e3L9Qewz+WBRv3QIsJlNFSo1NN9wi9Dpp3aD1sHg+Pe9DiLtUSFlFNy0U1X5KrsjnfZOaEZT6luKEHONKNNovks/SK6f+LM5WUDMc8EloWd2ZLblwZ9sWXG9W8YKa7tCBORnUsmv++ZzSv9ajbx3Hu4I76YrGi9eKTi/16L8PiZ9FZAutvl3iX18uk6MneOSzGgwH+U7bj7W/3o01y1ozO3izrQFmV3eSu4df7M0TSxLbZUBt/6Ubqw0PblW0vTQlk4Iv39H+60H5Fefsr71QPJbPnM/RWP6HTS6RUiQyDb0ZpHZMGXuVFprgf2+UDb/JHy32Mu+6+wW7izMPQldP1kBd51nlvRLhwCBYilcsRJdhRzpIno/SI39pJHi8q8a0ZYG6geRKiWVr97FoDrtwHWienT/yK0zm/aOu0bNVM4esmtkNlU38iJingvOH3uE0DjS3myLcoBTQ8UlmQ24b+vDwVVUyw8UoxyW8cJJXzsI3HFOZWBscE2+zyWIjjvrFc2ygcxup/B33WZfdki/lTl0lxbkYR15ktFB7/ccviobvJo+s7UF388e/TuwgPzqcry+dU4jKxjV1bTzB+NISJLhxlZ0ORQDSGuKWYl1MZjBTRo/mmzEtuy7pHKn/nbNZ+7VL+0PAsUSZOOKOYd2s7c6jqCuNFr/U5WmRiJSZ8U4Izqff0Mf76oV7hqvSTuQEYS0gatiTwXWuCZ2FlQR81xwAeh1JruOaq06lLKOKh1kOKQhOh/qyw8YlhOd5eD0hAeCnddEZgll9D43TSjYAb8UCfrNqcbkHayUTjpaJ8p+/TtIgfyac7i+VWb9dv2UZEwQB6T1UhT7dO0Nnqk9NZzJjQvFnvVNZwGzfmtf+67XOsrAQH4DtNPuMxAoFqBTNyWlqP6aRlWxahZOB4O7NYg9klRnbRSKFWNsTz1nxf0eMdfsw6GeC06T3v2b2tgpahTMW3sLAvJTKUIrcpYiC0UpRR1COxnuSHdfojPTKatgu0359e7pU7ywXEqpBIkcGJK9s13RBmd7YAbdiumAo3XiFPbvaL9RQH4tk/ath5If28I31VHtkR0mO34ae62XM3Ug7VQGGi0f2Mk+aWDf9T4p6S60IlOTenrifQYCxQDaCErQtGeANPxNY27W7x8fKhi0Z/ayIPJll5KaYdJWS3dYbesan33uAZdDQYqeZkMqRb/0mo6TZQ2E25Fe49DtAMFPu5IiqVdpp6w647blZ1J3nD9hsvkglczxeKCZEPM75NJYGb3LNdrRd1Lav6P9VgL5tYnXtx5NfnrSohRlJ2UwwLbZHQgSq2jBvqu+UDJeOApQjzn1PoMrv4MkW/ZPtjJ95sOOy1bEEjiVY71em5/ysHOinsPmdOs+arFlv0WfK3z/YMuNc8divGVnir+1JuYa/f7du7Pv419T87mXRlkdXh6ie54+Sv2yXgzSSk9m24FX32VtAvLz5Mfotma1I5Gpd01Kt+SXR+mWp29N5efbNX6AtvdZ3RkbbCl0Zh/9Y57S555tvpvfNoJtxuiKf+130jX9K7NlKU3175KB/BogcojoW5vKTz+zwO+0XqSv271Hv5dL9h0tX9Uu3u9wzhTKr+J3DLaDgH13+gs5757k63fyr/VM5yLvPQegU4FiWhH54jkQwWI1XEOZkcve5VWokDbIUMMXct8zoADV16TOkS7yLnWPdV1IuWLefUl0taO3i6uirt7o4nc6OyA/X36atI2npaitd01+Pr5NSmkiv2CnaZytzB6nn9PCx9V9VmX6n4XQs+3v6lxuOvldyfch30239C++f7frVArarwD5NSO+b20iv1AfpYpny/zvI+9w7bE+795m7rkQv7BQfjG/X4R99/sLv15zVRL7zIh+qU2u5B/+QmAP/vvvP/r586f5BM4R1GEzIL9mQH7NgPyaAfk1A/JrBuTXjEPKT/5cWn96k1uTWHT8HIH+xYE1igAAAAAAAAAL/4/86z+j5uzWDy4eBIoAAAAAAAAAhezQmcwG3p9MG9Ha+VMRoAsgUAQAAAAAAABkpH/OwS7On4oAnQCBIgAAAAAAAAAAhyvZ9cf8DAAAAAAAAAAAEHY9bQB2TDp/UIfNgPyaAfk1A/JrBuTXDMivGZBfMyC/ZkB+cSD1FAAAAAAAAACAAwJFAAAAAAAAAAAOCBQBAAAAAAAAADggUAQAAAAAAAAA4IBAEQAAAAAAAACAAwLFE2U5uaKr2xfamM8AAAAAAACAU2dDL7eX4cd3M1BcTujqiitwsjQHbJY0kXNWCV5WQDDAM++7fUHYB76bav1WOuxdE7qui8TKZvNy614D4eXIZOTZy6b6BxsMioH9awbk14zDyy/X96hySzB9cQTl13Hl7VigaCL80dx8zrOcjIgWW5I/LyllMSaajxo0ss0L3cr7xgv6vO+ZgwB8B6L/If0OdEKDGSXmmrS8Ds25rlMhG+lo+lOiWZKeX9B4PkKwaMN28Y5lNB4PzAGPNvXvkDZYBaBwws4D2L9mQH5NifYvG8tvzK+x37OiaR92KhpH/qb/rj0z2KP7T77/855/Om86FShuXu5ouhqwA5fQrMA/Gb66DXL4MKMBrej9Y58WtqQJe4wrUTpYSfDtaMOV12+i9T/0IO2wpOfpivuZN9rFJEN6EIMz/8tngXI4JUpkGT1cm0MHAzYYpMD+NQPya0q7/mU8x3rPZWL679U7dVV8nQoUe/eftN1+Wg5cPDc/6t6kR9/mMrITGFHIpRdUzDak0+E6dUqenb/HT7lSn/kaZyo9MCpS97sAAArY/KM1/+fbi96PG/53Tn/RtMyA3ZgeD55h0cwGV9lPdV5lp8hovT7vpLbKTGZ6nykwrQAAn/r+5X7s3hPnQ2bXeXbs6mrSqUFP3X97RNj3nDy9e3L9Qewz+WCVX98m2MymFG4kd3o0+qHmYPTHpK+cocX2lfxbpaKfrpMsLWCbzGgwHxU7EcsJ9acrGi+29VOn+Ln9r8fdFPpqSneWM1P7u4DLIvliNzfQUbGe9C1jhbVdFmWyUfIc0HXffE7pX6uR987DHeGdsmV5u+jQgv61YoNL7KfMDmwld4xrNk0zzuyzpKT2p3RjpZnJtZKmh7Z0QsD+NQPya0CJf9my/JbP/B4a0+9afqwEiWxDbxaZDVPmTqW1VtjvC2PzT4Z/Lfay7zq7hTsLc09C109WwF3nmRV+fevwizpIsp0NaCuRVx5zjkWjy3gbukpYr9fmpx1cr7t7BzN+Wgz576OeI/cvxupZ7lcNf//sHvtzxTV5ymRzeYTqsDsstmz3K/U0mQ2UDg7YG/bptvwCslHtdbDNiSqZbTlQ9Npx9+Tn2yQlv5b1T71D9FpKxbN3FNjgKvsZrO9iG6q/W3Gfcmxg/7z6DAD7VwTkVx9jG0RuqlTbgrryS6/3i3t/jA+p69e5pKh/O1MK5WfrtOm7d7KKt+8heYbqsfYzS+utfTCjmMMsQDURfTJb06juiI6sh5ERahkVCk7N+dP5MvJtTtnI/aM5Py5x8trbJfK7gItDFtazdtHsrXyxtaRssyGi1fsHawuwgWxqsJzQaD6mRU1jtpeM27LBe5HQFz9rHBi+H/7mX4TWhCVd3w/sXzMgv32o71/uJz+Z9du9h4Mdomm/Zopin645Qppb6yWWfyXV/oaOlCn7fdgzuuksYNZv7Wvf9VrHldRDbgO00+4zEChW0Lt/UxvfrKbP9XKye/f0Ka07l85kpvPJ3lWpYHMddnYWRrEOkwpa47uAi0JS70ZzSZmrsWZ39cXmDARJZaNSTFf05QuqKCW1Q2gnY64cozRAk5T6tFOuHIyrq39t2OB9MOtUi+mAo3XiwP41A/Jrh1r+ZRP5sS18Uy/aY0MWtp+pvVYDfV1IO5WBxqxv8JZ8NbDvEvTL8/QutCJTk3p64n0GAsVYBtdU28cbvqqRIGf7480HvcvIwWP5KFxK34wmuVso9yi0trY2Nb8LuAx0J8/1vojt5DekUvT3aQMXjyeb3g826fldAPUah24HCGpNn9X5SknEeTGdcvH66wb614INro3RAXskPkUFy2hH3wrsXzMgvwNQKptDyC/Ch1R2UgYDbJvdrbWJQVqw76ovlIwXMhvcnXifgUDRQf4Yqreb0/JZpSQN/vzay6kYvspItYwemOcGFGKpNl0wHwLknsH0VU7AU+b8pMa7Fnt8F3DeyE5ZupN3t+nOkF23vPQUvUvlAR3rcyFKNkOSTJHV9M4KTPQGLoPZAzrZKg6gf23Y4EKCM8jpn0PxZjJV6i3a0XcC+9cMyK8JEf7lweSn/2wTPyQL7it9SGUndzs6Z8X7ft1jT/sum9XYNzhZRifeZ2w7RNEiX66GbKFo6JrA+lJFaCHsIrSo1F8Mm35OCx9X91kvyj/HLBzPrnEXRcsCWX8Rrv9MIffciO9yyXRrMb3RoWBJF6j7i+2lFC+475b84mWj2pB1XXgBe9fklye3cUAL+pe3ncy+Ntizg6Fn23XtXG42ItuV09sEAvYvLbB/1UB+Tan2L5vLr9DP9WyZ/668D6nPB7+fb1/PlEL5xfx+Efbd7y/svkJKrkpin+ndGOqX2uRK/uEvBPbgv//+o58/f5pP4BxBHTYD8msG5NcMyK8ZkF8zIL9mQH7NOKT8ZPa4P73JrUksOn6OQP/iQOopAAAAAAAAwMKsoctIU1h/n32QCOJBoAgAAAAAAABQyA6dyWxA8gffd2sUR7R2/lQE6AIIFAEAAAAAAAAZ6Z9zsEvx7tTgUkGgCAAAAAAAAADA4Up2/TE/AwAAAAAAAAAAhF1PG4Adk84f1GEzIL9mQH7NgPyaAfk1A/JrBuTXDMivGZBfHEg9BQAAAAAAAADggEARAAAAAAAAAIADAkUAAAAAAAAAAA4IFAEAAAAAAAAAOCBQBAAAAAAAAADggEDxAllOrujq9oU25nOYDb3cutf598U9BwAAAAAAAKDJ+9jnSjcDxeWErq64AidLcyDM5uVWX1ejorN7nHJLL4i2wImgBgAs/bwNKGdOjyvaShcpsw+QXzm+DtryyZ0zJVaEwQEuY/NDug66SVH7bap/l05OPrB/cWxe6NaWiVdSETXVv5zsVYEPGktQfh3X344FiibCH83N5xK4Ud9NicbjgTlQhzEttluSP1EpZTFe0bR/ag21R/ef/P0+7/kn0BWkExrNLf1cjGk17TsOtBjKPuv+LEl1eEHj+QidvU2JfYD8ytA2eLSeUZLqoJTXoTlvGHjnufiXRCMOmtj88YI+71u2dioAhRN2dlT1723q3wWR6z/Etq2m1LeCRdi/Anr39JnJbVeSmejgmH7b+tVY/87BBz1hHPkb/Q0MiJRzOT52pwLFzcsdTVcDNmAJqbZZCDsz0ovM3ujh2hxqwPBhRgNa0fsHWin4Rtg5emJ/eTB7oKzPGb5yJ0K0ev8wRnBJz9MVX/NGO596SA/SYOZ/+Swotw+QXxnaBrMTc7TOc0kT9lpX0vHD0weKdvv37rChf2v+b/x713+ktm31RYn6DPtXDy0vV6btAx+0CamOv1NXxdepQLF3/0nb7adlwMKkzsxjy6PPNz+856UpsGkJjVhEXOOkKgRG7dR5Pp5dZ56hPtceJQFnS/LFXUVeD/vXVke/+UfiC/jX9H7c8L9z+ouevtw+QH4lbOjjXZxIa6DioMjs5YilHg5MHbsZsJ2p3XRSkSx7qc6r7BQZrdfnndRWmclM7zOl65Mqp8Ch+vfLp0fKjK3/WT6DbtNZoAP7V4vNyxNLZUCzh+NYxF296MyOoM1zfEJznWfHrq4mnQr6tf56RNj3nDy9e3L9Qewz+WBRv3QIsJmND1fU3XRF48Vra87M8nnKroSbWqAqeURWekBCM8qncFRdI0pjp4Ik10/82Zy0mY9oRAv9HKSbdpP+NXdJebQRXNM/USoVTA7ouq9O7Si4t3NU2QfIr4SEvmSk4uvZ6wwDKVGSzmZds8/awo9JX89ebvN1JXbz6ToxdpVLMqMB28hcx83H+l+P5jqdZndnvsvwlY/JdDzXbJpml6W2ygBff0o3C/N8KXztfIR1kt9KbP/egv5dIsNXk2qq2uySJlemjaWz9bB/NUiD7Mf85EXL+hfyQauRIJHr98b4jVyUuVNpre35x+fARk2lW+xl33V2C3cW5p6Erp+sgLvOM0v6pUOAQNFDNajxouF6hDmNrEYugZs7iq7TDdzOqkf3jyoH0Exvx13z13u2zJrqxuxjGXPQTXq/6A/31vMnb8RQ8lFBFO3Yh26zWl/TW9oRyuDXQGbkdh2mCsCy83oNj7+OthLuOKei1oNr8n1WQd7hrFdM24Y/5cF1vVs/OaTfyvymadpFmDbl60ma5j193jkH4KjEtN9W9O9iGdKrOKYcdkz7Mlsvat6toKE1ls8cZLP8vOitHf2r8kFj0AN79vcbigFMB5W7ghlc2gX0bdl3WcOYtp2az9yrX9ofBIo2HNGr2bmyXiQKGXGxGnsyI7aqu+lhk54hIwVpQ1bFngqscY2f5hHkwDnw4BwQw5SOCKc61aevGzH+NxSjRp2mNfvQbQZ/flkZDWbwqyQtLR38qtURyppEmSUUXc9NEwoyWm7ZVTUzYk41Ju9gpXTS0ToV9my/e+nfhaLT3VSaUxbEKB8l2MZAMSYwYDtVlXW6n/5V+KBR9ElWpdiDZ0uZmeiCr2D7SOksYGY39rXveq2jBP35LJrT7jMQKFroRuCOxPTFezBKs/eIYu+e3lhBuKU7i2HH9hRzVtw1lDHXABCPjAi7+vRwvd7NvKgUoRV96Z0JdhSlFHWIKPsA+dUnNi0t2zAjEtllUDysXEqpBIkcGJK9s13VBmc1MAN4xWBQ5jto3L/X1b9Lw8ysDNhpTn1mte+D3cZg/+JIZxMfaywDaqJ/BT5oFFy3aXvRy5w6MIPs7TrrZJ80sO+qvfDz9C60IlOTSXPifQYCRQt/yl+K2rrYKE1rW6v3fnC1E63LhgjaugaAUswGI+ksT4FO6Rz9bju4UfYB8itBj1DnRsYrnUiz22JBGmkpJnVnPrJGcDcfpJcGHWitttGBXBoro4KVfX4P0Jj9+/cG+ndJqHbKVsw3YvZAD+xfFHrQInbN4CH0z2xMVIayk7v117ogzbgN+65skWS8pJk0J95nIFA8CukWyGmOczoFfedOP8ti1iw1IO4alZts5S/rzW3MBwBK2c2svGVOUqpTlt5lI8nH2q3ynIH8iknXWE/pOesPlzQRg5XaRpbVrZcepXep3D+wG7566yADnfJSbXxjPtQhOINitlP3ZzJV6uMBA1TQnAPo38Uw/M2hDau1s8ad1drZKAX2rxKWh846DcjjYPrn+6BiusRGPWX1lPMdlZ3c7eicFe/7dY897bv47vYNzgDpifcZ2w6RzAZb+ZXzZbxdmGt81D2D2TYxn23W67X5aUfhO8b5N+SuDbyn+ppky/qVnR/Mktx3Xoz5XOD96rh/XcnnSyRUh5eLqyuqBPRCUHVvXSd6FaJb8stTZB8gv2JyNs3RwYCOltjnkPyCdiuZbbkb3r0r/ZwWPq7us76L/1kIPduua+fyxXj3fFUG2wI1+DbQfv3221z/LpvFluPASvnYbUIK7N8OLZsinWqufzn7mhbPlvnvyvuO+rx7m7kn0OedI4Xyi/n9Iuy731/47SJXJbHPjOiX2uRK/uEvBPbgv//+o58/f5pP4BxBHTYD8msG5NcMyK8ZkF8zIL9mQH7NOKT8ZOOi/vQmtyax6Pg5Av2LA6mnAAAAAAAAAAt/N+o0hRW76HcJBIoAAAAAAAAAhezQmczMnz/J1iiOaO38qQjQBRAoAgAAAAAAADLSP+dgl9Z2/wdnAwJFAAAAAAAAAAAWRP8HPJWLPQvFB7IAAAAASUVORK5CYII=" + } + }, + "cell_type": "markdown", + "id": "a2e72aa3", + "metadata": {}, + "source": [ + "## Segment 2: Learning the API\n", + "### Task 2.1: Examine the `pokemon_stats` CSV file\n", + "Open `pokemon_stats.csv` with Microsoft Excel or any other spreadsheet software first, and take a look at it. It should look something like the image below:\n", + "$$$$\n", + "<div>\n", + "<img src=\"attachment:pokemon_stats.png\" width=\"700\"/>\n", + "</div>" + ] + }, + { + "cell_type": "markdown", + "id": "e8a15e3e", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "Each Pokémon comes from a certain `Region` and has one or two Type(s). A Pokémon with only one Type has `'DNE'` (i.e., **D**oes **N**ot **E**xist) as its value for `Type 2`. Moreover, each Pokémon has six other statistics, namely:\n", + "\n", + "1. `Attack` (short for Physical Attack)\n", + "2. `Defense` (short for Physical Defense)\n", + "3. `HP` (short for Hit Points)\n", + "4. `Sp. Atk` (short for Special Attack)\n", + "5. `Sp. Def` (short for Special Defense)\n", + "6. `Speed` (which is self-explanatory)" + ] + }, + { + "attachments": { + "type_effectiveness_stats.png": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABe4AAAHFCAYAAACEpWkhAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAHKjSURBVHhe7d09etpa1wbgxTcWkyLJCPAIzNukOm06XJomXcrTnQaXoUubKk1gBGYETorAXPgkELYA/wDLNtjc93UpMb9xHtbWFlvSVmNaCLb2+/fv+PDhQ3WLbckvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlyC/n/6q/AQAAAACAA2DgHgAAAAAADoiBewAAAAAAOCAG7gEAAAAA4IAYuOdOw/NGNE4vY1Ld3r9JXJ4e2u/Esdl/u9AOYHvbt5tZWz8fVre2cext1DrqNTu8bb+57X4vNfjSHl9f+kx4Ooe6nnoJu2+bwH4dc7t9TnI9nu0LA/dPaXgejUZROI3zWO9Sh3FePHZ6aXV1n8nlaZXf8iKzx82zO431qOZ1d+fKbHIZp/K9cV/92cjYUlVXyznetU5kyaz/uKsNswn9R86d+Rkc2J7130603xztN+fu+tMfb0p+T0T/sRP9R478sqqB45vsrPu2of42Z+D+CU3+Xlc/9aNtg3k3rV6Mp9OY1pari5PigZO4uCpuX10UP7Hq5H//RCtG8ePXykpu8jdmVTn6EasPxfhP8YpW/PO/LRJ984OLnRis1N+z19xWmR52O5jt9W924+NgOcNx7zradoDw3F66/7iz7b7ivmopv0F0+u0ddlweb19t/Zd0b/vd1pHW4JO03+fyGj6T5e2/QWcU3aYBmM0t5zfuRZFfI3wd3szB9R+v7vveyve3eQE6+Gpj8ttNOWjfjG7U+t/xP/Hjcy03B2Y9LrX9dzzbfAbun1wner1WRP9fDZSXc/K/+Kcou9GPX0sd7OTXjxi1WncO6g9/9osV5T+xzbg93KfcY97ut6I3nsa3s+rOysnF1VEO5MHrdRZfym2Zu3b6ssb6j8Oi/WadfendfUAMGzm5+Fp8Iy6+Dv80cv8Y/cczOLmIq3HRhkfd+GxAZnvy29A4/ozK4ZT/3bbRMjttlmdg4P4ZvLv4Hr3WKLr1vW33ueO0uNWjE2Z74Ys7Z3+Xz6n2fi7uXzrFZLFndLZ3b+W+mpv3Wiyv4JCI2e9c+7/cl8tM/f+/+tibdBL/m43c/ym6kFvjsjf5+M98UP9P/ZFhzMftax1N4aG6mD3WLl5UfJEpj6IpH186jemRzB/8vF6zDWpt9TSwRW4PZXpfXrPbK//Gfe//cibx60dRa52vsckO8vv+bzeP1f4v9RqcWVlnLj380GOv1KOf7dGt63az3m5WT21dLMunpd/ZvxZm7/dQ2119blGM973X3Ga/z0s6efex+qlm022W+v/vsXa5xXbQwxnuy9Ot/x7PoqqTlYBWM980r5vfoVxW3vNQzX/n9XZRz2C3PA6vDWastd972uEmeZaWsiuWu7YzHsp39f1Km7znvn18t2jUm7W9m+fV/l/z5XXWUVbrfbP6qbLB+r60TW0snnuI9fO47fqPhYfa2swmOT+0Tnjo+95rcXIRXzvF/6L7303bm/3fiv/o7O/y/13L7ua+xbIe2ONte4PcF7/Do5/hvt2RX+mxnB7KuO51t9tly2Mst2YZJMZOZnzPu62lxXJXza225ZUavJz9/Pi2ziEzcP8sTuJivqaL/1aro65siKunxQ060W/fsRLrt6Mdg/lz6nvxivubf75Wrx9Ep/g3m2WB/vy0dF99b2lZoP++H1ePF0u5R7V4n5U28DrckcusI2hH7ZSvcfSiyOWNr+jm0+X04/bglvngfOfTxXxQv/+ztmFRTqGzPE3OY3Vx9q24r6jPYjN8dlRI+ZzFaUwbZ35fHb9Sm/y/y+cUzfwms/I5//z4PDsj56FMZzbI66H3fzGTX1F+71j7gvaQO/5vj6+bhnE+/8/e/F/f/7vohB967HV67LPduN2xovzy1Yzux6r+imXWDGenCn+LmwPeitpb7V8XfemjbXfVA++18e/zwm6n/6tss81y45F2ueV20P0Z7tETrf92y/cBj+RVrm/b/dvT48fv/y1uVw8esPmR0PVtncLkMv4tt3e+PrBd8QrbYMZy+72/HW6S50bbGVu2z4PYdnnA8L9ujIrP/9NWH/7bq6NdDc/bRVWtTMe54Tpuq9oo3rPZLT6p4j13m1prz3bsPx5saxvl/MA6YdvtmwPWfF98/y2+8f6t184d/e/j3z82aNtvYXtmxWp+G48h3ZHxktfebm9UZ7cV/9+7psPJjp34nrdFza1aqcGLXbcdD0nxn2EH19fX1U+3xr3WtPjop0Xjminaae32YFo022mraLVz42nRzqflGmvV8uvWby/M7m/1ine6tel9y9Z/l8dfk3N/fsW/u7S0povIVn+n2e21XOY5r8U66Cy912t3V36L//vN5zj7P1f5jHvTolu5yWW1Vu92R43emeNmmd/9ee3HLvVXWq7BTf7f8wxv2/0d7qnN+/Ja/h02eP9nsJbfSn2V1vJ8tO3eZbUGV9ejdQ89dljubL9rdfDYZ7tZu3uL8v3HHdndtb5aCXf5PQoPtd3Ven/wvR7/fZ7SvfnV/29Vm779ve/oDyqz/0utPd/1f7u7jrd8zwczfDnPs/7bNIu7n7eaxeN53f25rL7Pc8i33/UM5q+/rwar2xvksfSUA12X7tZ+t2uHy3nOH3+ob30839Xbj7/nc9m8/lZ/v03a3uupo11tnN9KTvflV5pluG29lZnPsl3J+8A9Sf+x8h++q209nvND64TCa1v/1db/S1b+H8sZPGQ1x8fa9qa5V7cf/AyfTza/dev/7/syvvk/vsJ2u3BXfjOLPne2rOR1Z4Z31FNp6bmbPKe8WeU6v3nQNu4/dqm51fXkWg2uv+7B2j9Ajrh/RoujWP69cw/qfE6szh2Hcpx9Kprp6t7hzqcnPFKj3GtcnToyW5rRLX6Xg7B2cYqrh08dXM2luhhruXf79v9XLK/hMLK0s5iXzt/ZXtjZ0Vat9zE7hqOaA/96VlSL0zJXa2rHutgm8yet4+dwe/Tho/W3yf+7OpLm9lTrLT2WV/b9n9i8vuZm83JWORYd6Lo7/2+P1eD8yIZRecGktSMbHnrsFXrssz3qdd09Nu4/mlEeRFSfe3d2zY/4GPtpSgfy+4y68zP2ymVxJN7NhLtbbrPceKhd7vqehym3/nvhLKr1x6H0HTMbt99qasCbswjv26bZxqGtE3bwYPt9qB0+kudzbGcc2LbL3Mr233iXizO+gTra2W1+46LWyqMdl4+I3HAdt2ltlPVebO+0ijpfnRf+Ndqq/3jQpn3JG9tmvsfamYOlnb5/PNa239b2zMJ6fhuOFdzXH7+xdnujnNe+6jeKVlV0HY+c8b3RGMIRfc97cPtvx/GptRp8jm3Hl2Xg/jkVjfj7rFO84/S+qjHe77k28sriLwo+6g1kHOU21lvSqZ+mdrM8shPgDZhtHMwuRjZfGd3OYX8S5XSn84vX3rVxka+LY838WP/fS07eFWusor7umeNvM5vV4OILzaCzmC/wduPoocfeKvWXMDu1db4hOJ8yZM9TGez791nZcF46fTmxzXJvu9zbdtATe4r131vJ4oXML3xZHRhTDfTdNWCytUNbJ2zjofZbeLjvfKY8X7PqO9xOF/h9zXX0BMpaKwec+//Wdno89TquqPfB7Dt28/EpEw7Zk2w/12yR8zFsM8+u9fZobW3xHfi+tv1G+/Dl/J5gDOmttNv7lAP4s71tK1Oy3GOT73DH/T3vacctX/u2joH7ZzYvkKJD/O9ndU+l6qjre24XZntwF0dKP7VFkb6WuZy2VeVaP3LhqJx9mtXbj1+/ZoPz9SNWbgb1L38Wq6yVeTszdXGsmW/y/37ubA4m+/mRO8W3tN2P2tmyBmfzBs6ObFjfOHrosVfjsc/2WNvdU5jV2u18k/NljwMrh/b73KWqt8w2y1q7fIL3PAxPsP7bOIv5Tvi0V7/+mJ9hWB6MMPz1I0atXnzJNJjX0AafyN394wN5PketvMr626DtHVEdPWb+naN2rbdN13Fb1EZzsYOg/ZqPGH+C/qNu05xr3sQ2812q+atbvS8Pt8FNvn881rZ3yP3grea3SU4beBvt9gHN90VbesQm67kt1oVv1hPV3K0n3nZ8YQbun91ZfJutnfpFd1i36KhXTiUcnkd5BszTFeiKOzqW4Xlzs1NOXoXFqX8rZzmUF4w5igt5VCukbreot5XB+WpQv9stC2zltKBN62LWGY1i+cCQY818k//3Xc8p9x7XNlbuzHRTG7z/Czm5+B691vyoneWjKCZx15mqazapwTLb+puP/xTJtWJ2Ta+HHnuVHvtsj7XdPYFZrS2OMKst2+aWars1T/X7PKt5vW29zfJgu9zxPQ9Qev23RRazi8XVBnnmF5md/7y5xbbCfzdHWO72PvuzGBhsF53E7dmFO3oVbTDhwXY4d3+ej/VFu3iO93xqw/iv3ADpfL05svHRtvfW62gbZ19mR0XeHnW/6Tpuu9o4+1YefVlm/nqPFs/3H3Ub5vzYOuGptm/2ZXIZp83ubGDu+2OHJm/y/ePRtr1pfb8Sd+W3SU4begvtdqZsR0vr92Jd9XnlwuY7j51s8pw37glrbuFJtx1fmIH7l3D2bbZnsVQ/Anp2ilrxwNLcVe3r2d7c55v36yy+lXvVi45l8W+WV1xe/H5vQZlr8V9c7lz/fR/ju65q/gbNrwBfWJuza/5FvdRaG83csC5OLuJrcd+iZhcbJ28n8360F7//Ynmgc9zk/73+nGb8+Of77Slu92S6qUff/8WcxMXVdH2dVs5FV57i9mgtbFCD5bq0uPfmvYut4c6gOl3wocdeqcc+27fT7l7afK7S5dNPiy8RRaU2t9kYTrbdW0/0+zyzst623mZ5pF3u9J4HKbv+2zyL+iBP+Zx/34+L9UDV729h/sX5ts/b9X32phoYLLZo4p//Zdd4r6MN7myT/vGBPB/ri3bxHO+Zs7r9145+Z1C7TsAmbe+N19FWqvmEa1MNbb6O26Y2ynXvIIp3jfbunfCe5fuPuo1yfmyd8GTbNy9lpf02u/GxbIcbZbfJd+DH2/am9X2YNsnvKceQ3kK7LRTtaPzPj9vryyza7NLZGLuPnWzynLftGcYtn3Tb8WU1ihVPefVetvT79+/48OFDdYttyS9Hfjnyy5FfjvxysvlNLk+j2f24Nu/wffc/t5f+fdRfjvxyni6/8ijc3Qa2Vh3aOuEhz1d/T5fnIXvO9vua6mhX1n858svZV35vpW2rvxz55RxGfq93W8cR9wDAkVmdy3UxLcLqmUov5dB+HzhwTz736ZG3wSfP81hZl8PbpG3Dq/eKt3UM3AMAR2N+6mlr5ZT0dlz3xkvTIryUQ/t94DUY/rcyj2yCNvi0eR4rdQRvk7YNb8Nr3tYxcA8AHJXyS9jtPKXz5Wp/kysf3O8Dh+7sW9lOnm56gmNvg0+d57GyLoe3SduG1+81b+sYuAcAAAAAgAPSuL6+dnFaAAAAAAA4EI1peZ4PW3NV6Rz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlmCoHAAAAAAAOiIF7AAAAAAA4IAbuAQAAAADggBi4BwAAAACAA2LgHgAAAAAADsibHbgfnjeicXoZk+o2AAAAAAC8BssD98PzaDQaxXIew+quW8M4Lx47vTQUziMWdXS+XkVsQH458suRX478cuS3o/k22iy7ahHhDtRfjvxy5Jcjvxz55chvZ5PL03l2i0WG21N/OfLLkV/OBvktDdxP/l5XP/WjLXS2NonL06Lg2v3qNtuRX478cuSXI78c+e2uzK4dMZjGdDpfBp1iS65t8H5z6i9Hfjnyy5Ffjvxy5JdRDto3uxG98WIbZhCdftsA4MbUX478cuSXs3l+d0yV04ler1V84/s3HFzPNiaXn6M7ahUd7zjKEmI78suRX478cuSXI7+Mk7i4msa3s+pm4exLL8oYr//akNuE+suRX478cuSXI78c+WUM47/uKFq973FxUt0VZ/GlDLL/844ZIFil/nLklyO/nG3yu3OO+3cX34sXjqL7eYM54ieXcVoe1l9bVneQzuabL+6c/V0+p5p7fnH/0ulRi3npF6cL1O+ruXmvxWKv7N6dXFzFdHpV63jZhvxy5Jcjvxz55ciPfVJ/OfLLkV+O/HLklyO/hMnfKOd7+PhuObyTdx+LP/vx0/DOo9Rfjvxy5JezTX73XJz2JC6+diJG3fjvoRVmObje7MbH2unZ00Fndnr22lz4/Xa0YzB/ztVF8S9Uivubf75Wrx9Ep/g3m+VA/M9PS/d9rr1fOWj/7/tx9XixjHvRKt7H2D0AcPTGf2JU/LX6ZRgA4CDMtlVa8b5Z3V5ovp+dNQjA3D0D94Wzb9UcqXddqLY0ict/+xGdwdLp2YvXjbr/rbyuE4OlJ1ZavRjf3H8Wn4rX3nXf6Mevm6Puz75N46q+W+Lkf/FPsXbv2y0LABy1YZyXcyUW21Jf7tjsAgAA4HW4f+C+MJ8jtR//3jnZ/Tj+jCI6n9a/FZ7NRt+vY2lq1c6neLrvj9Uk/jdT5TSjWx5aBgBwxIbn7WLLrRW977WzGwEAAHh1Hhy4j5OL+N5rxaj7ef1CtdWcZPf7GM9zhnY5aN+MbvRivJgqZ+piCADAcSunEmz3y4scmW8SADhgsylxRvFnXN1euG8KHYAj9fDAfeHk4mt0ilVn97+f1T2Vk3cxu2zIHdPTDH+Wp2i/j2dZ105+xY/ySP+vjiQDACjNB+3LGQwN2gMAB64aT7pemqahPD50dsnaZzoIFOD1eXTgvpxj/ttssvt+FN8Ha87iS3mY++pFYYfn8y+OzzWwfscOg+G5qXIAgOM0uTytBu2ny9cdAgA4SNW1DOuzO0wu43N3FK3elyecZhngddtg4L5QXXC29LG26/Pk4iqmxQP9dm2++fZ19MbP+cXxLL6Ne9Hqt2/+zXYMbn4/9qccOFi65sDNZ3TfBY6pk1+O/HLklyO/HPllDOO/WWhlbGVm9eV0fapD1qi/HPnlyC9Hfjnyy5Ffztm3aQw6o+g2y8yKpdmN6I3jyqmDG1F/OfLLkV/ONvk1puUk8Wzt9+/f8eHDh+oW25Jfjvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV/OZkfcAwAAAAAAL8LAPQAAAAAAHBAD9wAAAAAAcEAM3AMAAAAAwAFpXF9fuzgtAAAAAAAciMa0UP3MFlwVOUd+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR345psoBAAAAAIADYuAeAAAAAAAOiIF7AAAAAAA4IAbuAQAAAADggBi4BwAAAACAA7LFwP0kLk8b0Ti9LH4CAAAAAACew9LA/eTyNBqNxtpyemmoni0Mz+e1cz6s7jg+a21pgyyG57Xn15YjjnFLwziXXZ72q/0myW+PtN8c+e1I//sk1F+O/PS/e2H99yS03xz55chP/5H03PmtH3Hf6sV4Oo1pbbm6OCkeOImLq+L21UXxE9ylOiuj3a9uH6ey0Ta7Eb3xog0NotNvb9YR3NH+vp1Vj/GAsvbaEYPb3AadiH7bxvPmtN+S9psjv33RfnPktzv9b576y5FfSf+7D9Z/edpvjvxy5FfSf+S8RH7muOfJTC4/R3fUKgp2HL1WdefRGcZ/3VHR/r7HbH/XzFl8KQPp/ywe5XnMdyzWV3JnX3pRluH1X2cMbUL7LWm/OfLbF+03R34Z+t8s9Zcjv5L+dz+s/7K03xz55civpP/IeZn8thq4nx3KX5vjfnb7fHh7iH99/vvF6SaLxdz4b97JxVVMp1e1gj1Ck79xXfz18d1yCCfvPhZ/9uOnNR8HSvstaL858tsb7TdHfuyT+suRX0H/yyul/ebIL0d+Bf1Hzgvllz/ivt+OdgyKgp/eTKNTnirQmJ01tjjcfxy96EbT4D1v3fhPjKIV75vV7YXm+9nRF48aFe2ktsPL9SUSZp/F+koU7qX95sgPKOl/4WXpfw+H9R/wmug/cl4ov/WB+5UXNhqn8XD2nRgsTcIzP1WgM/gWt/eexMXXTvHeP+KX7QC409m323mtymXcaxXNsWnjeSfDOC/nqmv14kt99QTPRPvNkR+8FfpfeE30v0/J+g84HvqPnG3y2+DitI+cOtL5VBugL1SnCpQXZbkd/C8WF8yArZSnbpUXOBr9+OVMlS0Nz9vRj1b0vruYNvuh/ebID14n/S+8bvrf3Vn/AcdM/5HzUH7PdnHaTu3q6hvvBIDXbnZKzCj+jKvbC/edQrOJ0Z9YfTvuV15zo90vLzJjfcOWtN8c+cFR0//Cnuh/9876D3iV9B85L5Tf0w/cn7yLchp+V1LnKN1T/5O/s0tWxHbTHU5i9rLW+9ilvR+j+UZzuePQRjM70H5z5AdHS/8Le6T/3SvrP+DV0n/kvFB+z3DE/Vl8mc3N83l5bvzheTRcnJY37yw+lae31Ot/chmfu6No9b7cTCtVbuAtXT+ieM7pSvuYXH6O4mXR+ep0y02UF8WebzRPY+myG7Ax7TdHfnCM9L+wb/rffbH+A143/UfOC+U3rRn3WtPi3afj6vaqQSeWHp/dLnqpu8zeq3j7m+WB932Nrq+vq59YWPvMb5bOdLVK3np+s7ZRy6DVW67++eOt6e3d42mvtfyau3JbUH+rBtNifbmS32Kp5zwnv3Xa7y3tN0d+L0/7zZFfhv43S/3lyO+W/velWf9lab858suR3y39R85z59co/yiexJZ+//4dHz58qG6xLfnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eU828VpAQAAAACA7Rm4BwAAAACAA2LgHgAAAAAADoiBewAAAAAAOCCN8uq+1c8AAAAAAMCeNaaF6me24KrIOfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458ssxVQ4AAAAAABwQA/cAAAAAAHBADNwDAAAAAMABMXAPAAAAAAAHxMA9AAAAAAAcEAP3AAAAAABwQG4G7ieXp9FonMblpLrjxjDOG41onF7G2kOTyzgtHjtdfxHHbHhe1FJRM+fD6o7jM29PRQaLZYMshue159eWY4xRfvtQretltyP5LWi/e6T/zZFfjvxy5Jcjvxz55cgvR3458suRn+9v+7RB/d0M3J/8759oxSh+/FoZhJ/8jevy79GPWH0oxn+KV7Tin/+dVHdsYPZL3bWDgNdvEpenRcG1+9Xt41Su9JrdiN54GtNpuQyi029v1hG0ejGeveZ2+XZWPXYk5LcPZdttRwxucxt0IvptHe9m5Leg/e6L/jdHfjnyy5Ffjvxy5Jcjvxz55cgvR34l39/2ZfP6u50q5+R/8U+rHJ//Vbz81uTXjxi1WncO6g9/Fv9A65/YZtyet2ty+Tm6o1bR4MfRK2rpOA3jv+6oWH99j4ubdnEWX8pA+j+LR3mY/PbjJC6uljvZsy+9Yr0fcf3XXtbHyW9O+90X/W+O/HLklyO/HPnlyC9Hfjnyy5FfjvxKvr/tyzb1V5vj/iT+Nxu5/xPj6p7S+M8o4uM/80H9P/VHhjEft/9f8cpba6dL1PbSzB6b7U0YRbc5f3xpmp3FKQKLZWV6ntnri/e7+Tfumr6HvTm5uIrp9KrW4I9QdYbKx3fLIZy8+1j82Y+f1nwPkx+8Xtrv3uh/c+SXI78c+eXIL0d+OfLLkV+O/HLkV/D9bW+2qb+li9POp8upfzjzwfnOp4v5oH59j8vsA16eJqccUP/3/bj4x6vTJMa9aPXbN1MFnH0r7ivnDyhetzgN46r6LWdzKs1mGqheOx1HL7rRXB2cL96vHYP5c64ulnYawN5V00e9b1a3F5rvZ0ffPmpU1Hxt59XRXT9Cfodj9lmsd+Js6Bjz034BAABeB9/fXoWlgfs4eRez/SqLkfvhz+hHJz6drQ/qz6bQKZ5dH5MoB+YXA/Ez1fQ7N+93r/npGZ3Bt7idaeAkLr52ikJYnVu/EwOTJvEGzXZs3ey4msa41yrWg00rvw3J7ykN47w8O6rViy9WtzuQ37a0XwAAgNfB97eXszxwH2fxqTwg/vrv7Cj3yd/riNb7mO18qQbh5/P1TuLXj1F5KH5toL1UTa5/s8elGd3ykMPHVKdnlBfyu31tsdw1Sf/avwlvU3nqTHmCyup1J9iM/HY3PG9HP1rR++6spl3IL0/7BQAAeB18f3s+KwP3EWflyP3sKPf54PztHPYnUU5zNP8QxlFOfd8pD8W/UQ7aN6Mb9asKb3eRh85geY/NfDFnF6/I7JSiUSxdDqJ03ylIm1i57sSbJr+9K6c8a/fL6cyse3dx1PlpvwAAAK+D72+vwtrAfZx9ik7xEf349Ws2OF+fn/dmUP/ydgqdG5NfMTsI/+sORxhWU/TMj+aHV+yeWp6dvbIytdTjJjF72eKsl2Mgv72aDzqXO1EN2u/i6PPTfgEAAF4H399ehfWB+2q6nFG3uz44Xw3qd7vlyMTKlDXVB16fz354fsdUOXfu0TmLL7P5kD7H0nRIw/NorF6cFg7aov3UanlyGZ+LhtDqfblpM+UAX6NxuvSc05Van1x+nrWfnXaGvVry25fyAuHzQedpuIzI9uRX0n4BAABeB9/fXoXpHca91rR8qByBWDXoFPcXj7V64+qemnFv2ipft1iK18+ev/I+i/col/pDN//uYmn1pvV/5a732pfr6+vqJxbWPr+bpTNd/dTeen71Gi+X1fYyf7w1vb17PO21ll9zV24L8ivvl9/TGUyL/nolv8VSz3lOfqvkV6f9vjz9b478cuSXI78c+eXIL0d+OfLLkV+O/G75/vbytqm/RvlH8SBb+v37d3z48KG6xbbklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458suRX478cuSXc8dUOQAAAAAAwL4YuAcAAAAAgANi4B4AAAAAAA6IgXsAAAAAADggjfLqvtXPAAAAAADAnjWmhepntuCqyDnyy5Ffjvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLMVUOAAAAAAAcEAP3AAAAAABwQAzcAwAAAADAATFwDwAAAAAAB8TAPQAAAAAAHJCtB+6H541onF7GpLr98iZxebrv3wEAAAAAAJ7H0sD95PI0Go3G+mKQnG0Mz+d1cz6s7mAr8suR3/q6fIMsZjtl66+pFmW4JfWXI78c+eXIb0fDOC9zqy3HGqH+d4+03xz55cgvR3458suRn+2Xfdqg/u444r4Tg+k0pvXl6iJOqkefxewXPY3LjfYOnMTF1Qv8TuygOhui3a9usx355civVHa6zW5Eb7xYhw+i029vtiHS6sV4Zf3/7ax6jEeovxz55cgvR367K7NrR/Hl4abfGHQi+u3j++Km/90X7TdHfjnyy5Ffjvxy5Fey/bIvm9efOe55MpPLz9EdtYoGP45eq7qTjckvR36lYfzXHRX95/e4uNmzeRZfykD6P4tHeS7qL0d+OfLLkV/G/ICa+pe0sy+9KGO8/ntM5+vqf/dF+82RX478cuSXI78c+ZVsv+zLNvX3NAP3i0P7F8sdU+usnnpxWh1ePzu9YraHYRTd5h2PnQ/nf9fed3Z75d+47/15OScXVzGdXtUaPNuQX478CpO/cV389fHdcggn7z4Wf/bjp5732ai/HPnlyC9HfqTpf/dG+82RX478cuSXI78c+RVsv+zNNvWXHrifDZjPzpBdnBoxjl50o1kbWF8/9WIc//z4PJsa5+xbcbs8pzbKPQ3zx6/qv3m/He0YzF93z/Q4D70/wNEY/4lRsS5936xuLzTfz45+fNSoWHfbAQpAxqwvWv8S+KbpfwGA18b2y6twx8B9P9q14B+ee35+WkVn8C1uz5A9iYuvneID/BG/Zq+bxK8fq6delKfVbrpnqxODBydJyr4/ALOdqLMdn/Nl3GsV/XBT5wvAFoZxXp5J2+rFF3OcbkT/CwC8NrZfXs4GF6d9YAC8Oq2ivADV7UB/sdQn15/8ih+jxFE3nU+1nQJ3yL4/AGvKU7fKk6FGP34tTUsGAPcZnrejH63ofb/7LFkep/8FAF4b2y/P50nmuO8M6gP9Gwz4A/D0Zqe0jeLPuLq9cN8pcJsY/YnVtwOAVeU1qNr9curLI/wOoP8FAF4b2y+vQm7g/uRdlJcsuP77wP6UTZ6T8dzvD/Ba3LM+nPydXXImtjsxaRKzl7Xexy79NQDHYz5oXx7Mc6QH7uh/AYDXxvbLq5A84v4svszmMVq5EOzwPBo3F6e96zmTuDytzZ1/316ejWzw/gBH4Sw+laen1deHk8v43C2vA/LlZtqxcoBl6folxXNOaxcUL00uP0fxsuh8Nd0BAPebXJ5Wg/bTePCyVG+a/hcAeG1sv7wK05pxrzUt71pbWr3puHrOoLN8u7T2upXHS6vPafWWnzF73+qxYsP/9r7FjZpNfofV939q19fX1U8s3Fs/0ZmuforyWye/HPndqq9Py+Xu9W1renv3eNprLb/mrtwW1N869Zcjvxz55cgvYzAtvu/dkV251PuZubeen/735Wm/OfLLkV+O/HLklyO/W7ZfXt429dco/ygeZEu/f/+ODx8+VLfYlvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HKe5OK0AAAAAADA0zBwDwAAAAAAB8TAPQAAAAAAHBAD9wAAAAAAcEAa5dV9q58BAAAAAIA9a0wL1c9swVWRc+SXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5JdjqhwAAAAAADggBu4BAAAAAOCAGLgHAAAAAIADYuAeAAAAAAAOiIF7AAAAAAA4IAbuAQAAAADggNw9cD+5jNNGIxpLy3kMq4fhQcPzec2cq5jtDON8pd0da4STy9OlHDappeF57fm15RgzlF+O/PbB+u9J6H93pP4WrP/2Qf09Ceu/Ham/J6H+cuSXI78c+eXIL2eD/NYG7mcb381ufBxMYzq9Xca962ifXsakeh6sm8TlaVE/7X51m82V2bUjau1u0Inot49v47kcNChWQdEbL7IYRKff3qwjaPViXOW3WL6dVY8dCfnlyG8frP/y9L+7U38L1n/7oP7yrP92p/7y1F+O/HLklyO/HPnlbJ7f0sB9ucHe7rdmG+yrG9snF1cxvbqIk+o2rJpcfo7uqKyfcfRa1Z1s6CQurpbb3dmXXpQxXv89pt1lw/ivOyq+/3+Pi5uVzVl8KQuq/7N4lIfJL0d++2H9l6X/zVB/c9Z/+6H+sqz/MtRflvrLkV+O/HLklyO/nG3yqw3cT+LXj1FE52ttg/1+syPzz4fzv8vD+mtH46+dMru6y35lKp6lhx96jIM227kzvdqofuBOk79xXfz18d1yEZ28+1j82Y+f1gcPk1+O/Hil9L+kWf/xSln/sU/qL0d+OfLLkV+O/HK2ye924H7yK8px+9b7ZnXHBvrtaMeg+MemN0fjl4P2/74fz+8rl3EvWsXzbgfgh3E+Pw+3es443v+7mD//ocfgyIz/RNEk175Ev2mz/3Mr1lZDzfezo38eNepGs7bj7/TyyI4Wkl+O/A7HMa7/OBz631vWfy/P+o99Un8AcFDW5rivd9Ll1DmLDfDZsjbHfScG9XPrCmffpnFV32Vw8r/4p9ji7997qE55it63WH6XhYceg7dsGOflXFetXnzRADZSrntudhgWy7jXilG3afBgQ/LLkd9Tsv5jn9Tftqz/npL6Y5/UHwAcmrWB+/p8dvND9+cb4eWFatZ0Pt0xqF5NsH8z4N+Mbrnb/sZ8vsxyg77ROI3lbfqHHoPjMTxvRz9a0fvuuhK7Ktdf5Xpr9OPXyg5HNiG/HPntzvqPfVJ/edZ/u1N/7JP6A4DDcztwf/IuylksR3/G89s7KQftm9GNXoxvjrxZn2h/sUNg0BlFt1kO7t9Oh/PQY3AMyumm5heJPsL5wman5I9ibTV03yn8mxj9icxa7VWRX4789u6o13/snf7X+m+frP/YJ/UHAIepdsT9/Gj36P+7+5Hu1Tz5na+b7aWfnVpbzoEf6xe9eugxeKvmG81FGxoc6UZztQOxfuZPafJ3dsm82G66zUnMXtZ6H7uMN7xK8suR314d/fqPvdL/Wv/tk/Uf+6T+AOBwLU2Vc3LxPXqt+ZHutxeTLVUb4I+pNvrr89kPz1emyhmeR6P+5vUjeR56DN648poS843maaxcOuKInMWn8vT67ufbHYiTy/hcrERavS83U3OVXzCWptMqnnO6cg2OyeXn2bpn0x2Jb4P8cuS3L9Z/7JP6K1n/7Yv6Y5/UHwAcuOldBp1p+dDS0upNx9XDpUGnuK/o4deMe9NW/XXFc1afO7tde079bR567JBcX19XP7Ew7rWWPrvbpTNd/Rjlt2owLb4v35FdubSmvXrjK7z1/FbXA62VAOaP13MZT3ut5dfcVXcL8ivvl9995PfSrP+y9L8Z6q/O+u+lqb8s678M9Zel/nLklyO/HPnlyC9nm/wa5R/Fg2zp9+/f8eHDh+oW25Jfjvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV/O0lQ5AAAAAADAfhm4BwAAAACAA2LgHgAAAAAADoiBewAAAAAAOCCN8uq+1c8AAAAAAMCeNaaF6me24KrIOfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458ssxVQ4AAAAAABwQA/cAAAAAAHBADNwDAAAAAMABMXAPAAAAAAAHxMA9AAAAAAAcEAP3AAAAAABwQJYH7ofn0WicxuWkug27mNVRIxrnw+oONjOM8zK32iLCHai/HPnlyC8ml6c367BNsxie155fW5ThpvQfT0L7zZFfjvxy5Jcjvx3pf5+E+suRX478dmT99yQ2qD9H3POEJnF5WhRcu1/dZnNldu2IwTSm0/ky6ET021Z+m1N/OfLLkV+pHLRvdiN648W6bBCdfnuzDeFWL8bV+m+xfDurHuMB+o887TdHfjnyy5Ffjvx2V2an/81Rfznyy5Hf7qz/8javPwP3PJnJ5efojlrRG4+j16ruZEMncXG1PEh19qUXZYzXf50Cswn1lyO/HPmVhvFfdxSt3ve4OKnuirP4UgbS/1k8yvPQf2Rpvznyy5Ffjvxy5Jeh/81Sfznyy5FfhvVf1jb1t9HA/epp76erc+ksDu1fLKeX4aM6PicXVzGdXtUGbODlqL8c+eXIrzD5G9fFXx/fLYdw8u5j8Wc/fhq550Bpvznyy5Ffjvxy5Mc+qb8c+eXIj33apv4eHbhfP+19HP/8+HwzD/5sUH92hsTt473oRtPgPeSM/8So+Gt1EAzgIM3WWa1436xuLzTfz46+eNSo2HaoHQSwdpAAm9N/AMDL0/8Cx8r679k8MnA/iV8/Vk97L0+JWOwVmJ8W3xl8i9szJIrHv3aKL+A/4pfv3LCjYZyXc121evGldvoRwFt09m2x83++jHutGHWbBu93ov8AgJen/wWOlfXfc3p44H7yK36MHthjUp0WX16AYGmqnA0m1wfuNzxvRz9a0ft+EfZXAsemPHWwvMDR6McvZ+9tSf8BAC9P/wscK+u/5/UkF6ft1K4kfLuYKwp2MTxvRLtfXqRCGwJekdmUOKP4M65uL9w3hc4mRn9i9e24n/4DAF6e/hc4VtZ/z+/hgfuTd1FeUu7eqwI/9jiwlflKr9wZZqUHvDL3bBNM/s4uWRvbTXc4idnLWu9jl/H+Y6T/AICXp/8FjpX138t45Ij7s/gym2f29mK05Zfpy9PT6vZdjxeG59FwcVrYSnmh5/lKbxrfzAsGvDpn8amc3qa+TTC5jM/d8lo5X26uhVNu4DUai+2IQvGc05Vthsnl5yheFp2vTrfchP4DAF6e/hc4VtZ/L2haN+hMI1rT3ri6XRn3WsX9cbO0Vp6w+njxDX268hZvzvX1dfUTC2t1cLN0poPqOQvyWzWYdu7MrlzW26T81qm/HPnlyO/WoLOcweo2w/zx+nptPO21ll9zV24L6m+V/iNL+82RX478cuSXI78M/W+W+suRX478Mqz/srapv0b5R/EgW/r9+3d8+PChusW25Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HLkl/MkF6cFAAAAAACehoF7AAAAAAA4IAbuAQAAAADggBi4BwAAAACAA9Ior+5b/QwAAAAAAOxZY1qofmYLroqcI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5JcjvxxT5QAAAAAAwAExcA8AAAAAAAfEwD0AAAAAABwQA/cAAAAAAHBADNwDAAAAAMAB2WLgfhKXp41onF4WP21meF48/3xY3drG9v8WAAAAAAC8BUsD95PL02g0GmvL6aXhc7YwPJ/Xzk47bZBfkvxy5Jcjvxz55cgvR3458tvRMM7L3GqLCLchv4W17/IbBDE70K7+mmo5xgzlt0f6jxz5ab/7pP52tPn2y/oR961ejKfTmNaWq4uT4oGTuLgqbl9dFD89odmHfBrL+wae6d/imVVnSrT71W22I78c+eXIL0d+OfLLkV+O/HLkt7syu3bE4PZ716AT0W8bONiM/BbKQatmN6I3XmQxiE6/vdlAyh3f/7+dVY8dCfnti/4jR34l7Xdf1N/uttt+Mcc9T2Zy+Tm6o1axwhxHr1XdycbklyO/HPnlyC9Hfjnyy5Ffjvwy5gcr1QcJzr70oozx+q8znh8nv7lh/NcdRav3PWbH282cxZeyQfZ/Fo/yMPnti/4jR34l7Xdf1F/GdtsvWw3cz04lWZp3vtrDsnJ4f6NxvtRAlk5bqb1+9n6zvTOj6Dbnjy+m5Vn9t2a3z4f3vtfcZr8Pz+Pk4iqm06vaCpNtyC9Hfjnyy5Ffjvxy5Jcjvxz5wZ5N/sZ18dfHd8uN8OTdx+LPfvz0Rfhh8tsb/UeO/Ara796ov5eTOOK+HCRvRvfjoPiwbg/tj+jEYPotbnYc9NvR/PO1es4gOqNufK4G58++FffNXlTupZm/x3xanns88F4b/z4AAACHaPwnRsVfq4MQbOgY85v9n1vxvlndXmi+nx2996jiO3WzdtDb0V3fTn7wemm/vBUPbL+sD9yvFO76/PML4/hTvGvn0+2Q+NmncqT8OpaO7O8MYnpz/P9ZlE8Z/fi1cqT8hh58rw1/HwAAgIMzjPPybORWL7446mgH8tvW7EC66qC3chn3WjHqNg1ebUh+8HppvxyOh7dfNrg47X2nPjTjfSuiXzv3ZPiznPbmY+znAIdD+30AAAA2MzxvRz9a0ft+Eb6+bE9+eeXUB+VZ6zsfaHfk5Aevl/bLvjy2/ZK/OG15tebq6Px2/wCmpTm03wcAAOAB5fW82v1y+lDzxe7iqPObTQkxij/j6vbCfVNIbGL0J1bf7s2SH7xe2i+v3CbbL7sP3E9+xY/ZFYTrR+fvcZD80H4fAACAR8y/tJWzghq038XR53fyLsrLMF6vzA87+Tu7ZOOWZ59PYvay1vvYZbzrVZIfvF7aL6/Yptsvuw/czxrIKLrN+nz4xXJ6ud1pJfftIdvWU/0+AAAAL2ByeVp9aZvGzaW82Jj8StW137qfb69NN7mMz91RtHpfbg5kKwcIlq5fVzzndOW78uTycxQvi87XY5puSH7wemm/vE7bbL8kpsqZzylf/iO3R7iPoxfdaG4zWH5yEV+LhtZvzwfaz2+nqN/SE/0+7KwsvPkOk+ZshXc7bdF57PyxHhH55cgvR3458suRX478cuSXI7+MYfw3C62MrcysvtQGGLiH/BbKiywOOrWD2JrdiN44rh46hO/kf/FP+V25lluz+zEGxffoY9sJIr/90H/kyG9O+90P9Zex3fZLY1qOcO+g/JDmhb08Hc199z+3l/59fv/+HR8+fKhusS355cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlJC9O24+fS7tSqr0GnU8vOmh/69B+HwAAAAAA2M7OA/cnF1cx7rVWDutvx3VvHNM9nFtyaL8PAAAAAADsInXEfTlYfjuf/Hx5cB6pZ3Zovw8AAAAAAGwrOVUOAAAAAADwlBrX19c7XZwWAAAAAAB4eo1pOZ8MW3NV5Bz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlmCoHAAAAAAAOiIF7AAAAAAA4IAbuAQAAAADggBi4BwAAAACAA2LgHgAAAAAADsgzDdxP4vK0EY3Ty+InAAAAAABgU0sD95PL02g0GsvL+bB6FDY0PFc7GfLLkV+O/Nb7wg2yGJ7Xnl9blOGW1J/6S5LfPgzjXHZ51n87Un8L1n97pP3myC9Hfjnyy5Hfs/e/60fct3oxnk5jOlsG0em3dzhy/iQurorXX10UP3E8qjMt2v3qNtuRX478cuRXKjvdZjeiN17pBzfZEFnqP+fLt7PqMR6h/krqL0d++1C23XbE4Da3QSei3zbwtznrv92pvwXrv33RfnPklyO/HPnlyK/0Ev3vI1PlnMWXXiti9CN+mfOGR0wuP0d31CoKdhxl2bAd+eXIL0d+pWH81x0V/ef3uLjZ61z1g/2fxaM8F/VXUn858tuP+cE69S8ZZ196UTbj67++PGzC+i9D/c1Z/+2L9psjvxz55cgvR36ll+l/H53j/uTdx+qnmsllnD5yOP/ssP/6kforr1nb+bDpexZ3lns0bp5nHv2DcXJxFdPpVa1g2Yb8cuSXI7/C5G9cF399fLccwrwf7MdP33yfjforqL8c+fFKWf+RZv23N9pvjvxy5Jcjvxz5FV6o/3104H7yt/w1asr5i5rd+Fg7JXE66MxOSTy9vG8IfRjn83MHqteM4/2/57d7H7Z5z347mn++Vs8bRGfUjc/3/rsAsKHxnxhFK943q9sLzfezo/ceVfRHzdrO5/v7RLiD+suR3+GYfRbrX2LgRRxj/Vn/AcDLe6H+9+GB+8llfO4Wmz6dr9VelElc/tsvbg+W5905+zabT3DU/W/DUwHK0xq/xfwttnzP4nnTmyeexafyOT9+OeoegL05+1bb8Vws416r6L+avvzyItRfjvye0jDOy7lOW734Ut+uhxeh/rZl/QcAL2+b/nd94L4+4r84Sv5moHwcf8px/E/rW0Jn5Qh6XMfd0wnO5/gpf4lG4zSWf49d3xMADlN56uBs57Mdy+yB+suR3+6G5+3oRyt63y/C8fa8NPWXZ/0HAC/vof53feB+5aq2V/UJi6r5e+73Me47K7H8Jcr3G3RG0W2WOwaqqXIS7wkAT2Z2Stso/oyr2wv3nQK3idGfWH07uJP6y5Hf3pXXomr3y4uUmS+Wl3fU9Wf9BwAv74X630fnuF9y8i5mU+zfMcP+8Gd5WuL7eOz3mp0OMC6v9l9N1P8E7wkAaVV/dL1ymtf8Wi/b7kSexOxl+jA2pf5y5LdX80HTckZLg/a8vKOvP+s/AHh5L9T/bjdwX015U14g9rw+zj48n28sfb3ntMTy4rP1FyztfdjxPQHgSVXXTel+vp3SrbrWS6v3pXh0rhwgWJr2rXjO6ell0dXemlx+jvklYvRhbEr95chvXyaXp9Wg6XT5elXwAtRfyfoPAF7eC/W/05pxrzUt3n06rm7fa9CZli+9XVrT3sqLBp3i/tp7zW7XXlNsXC3b9D1XXrj677yU6+vr6icWZvWz9Bkuls509eOW3zr55cgvR363Vvur1kpnNH+83keNp73W8mvuym1B/a1Tf7fUX478XtpgWnxfWclvsaxvy8tvnfVfhvqrs/57edpvjvxy5Jcjvxz53Xru/rdR/lE8iS39/v07Pnz4UN1iW/LLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458svZcqocAAAAAADgORm4BwAAAACAA2LgHgAAAAAADoiBewAAAAAAOCCN8uq+1c8AAAAAAMCeNaaF6me24KrIOfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458ssxVQ4AAAAAABwQA/cAAAAAAHBADNwDAAAAAMABMXAPAAAAAAAHxMA9AAAAAAAckDc5cD88b0Tj9DIm1W0AAAAAAHgt7h64n1zGaaMRjaXlPIbVw/Cg4fm8Zs5VzE7kt6NhnC+tsxohwu1MLk+X8lOD21B/OfJ7EvqPndZjswM+6q+pFjW4JfWXI78c+eXIT/+xT+ovR3458suRX84G+a0N3M86n2Y3Pg6mMZ3eLuPedbQdxc6DJnF5WtRPu1/dZjvy212ZXTuitt4adCL6bRvOmyq/rBSr/uiNFxkOotNv64A3ov5y5Jen/yil1mOtXoyr+lss386qx3iE+suRX478cuRX0n/si/rLkV+O/HLkl7N5fksD92WH1e63Zh3WamdzcnEV06uLOKluw6rJ5efojsr6GUevVd3JxuSXcRIXV8vrrbMvvShjvP5rd+PjhvFfd1R87/geFzcr+bP4UhZi/6ezrR6l/nLkl6X/KFmP7Yv6y5Ffjvxy5FfSf+yL+suRX478cuSXs01+tYH7Sfz6MYrofK11WPebHZl/Ppz/XR7WXz8a/46pdpZ3Vld7Flb2YM/eq/Y+i39j6bS1O476v/kdymWTveI8i9nOnenVRvXDOvmxN5O/cV389fHdcvGdvPtY/NmPn1arcND0HwXrsb1Rfznyy5FfjvwK+o+9UX858suRX478crbJ73bgfvIrynH71vtmdccG+u1ox6D4x6a3R+OX8/OsTrUz6MxOeT+93OHIueLfaP75Wr3XIDqjbnyuvU85aN/ud2JQ/Vvj9/8Wt6sHgeM1/hPFKm1tI5w7zLJqxdrqv/l+dtQzO1B/OfJjW9n1WLF92VwcBFIsO22zAvD66D8AOGBrc9zXvyQvHeleLmtHu3disDSnziQu/+0Xdw+Wp9o5+zabr3bU/W/7U82K95revNlZfCrf58ev6vcYxs/in2v1vhSPzJV7Lcp/Czhmwzgv9+C1evGlvi6CF6H+cuTHyzr7VjvYpDwIpNcqtlmbBl8AeJD+A4DntjZwX59Pdn7o/rwTunMwvPPpZsB8bhx/ytl2Pq1/0z4rR9zjOp50utp7TmsDjtvwvB39aEXvu+ty8PLUX4782LfFQSC3B4oAwOP0HwA8tduB+5N3Uc7iNvoznt/eRTWQfr+PYYwdeE7z6bPKi3yYb21js1OBR7G2+r/v1GHupf5y5MfOnmM9NvoTia1iAF4D/QcAB6x2xP3iyun/xs5ndlWD//07ruAynM1p8z7m/d5JzK71klX9e/WzBIDjNR/0K2fYMui3lXvWpZO/s3Oa7HDdkPrLkR8pT7oem8TsZTfbrQC8WfoPAA7Y0lQ5Jxffo9caRbfZiPOlsfeqA3rUYvC/vfz64fn8y/jX29Pem++XdxIsvrBvp5rzvjZ3/m7vA7x25TU55oN+0+VrbLCBxbr08+2O28llfO6Olq4hwv3UX478yNtsPVZuJzYap0vPOV25htPk8nMUL1vabgXgrdJ/AHDApncZdKblQ0tLqzcdVw+XBp3ivuIb9p3WXt+a9uovnhlPe63b57SKJ4x7raV/565/Y3bf0u/y+Ps8h+vr6+onFma5V5/D8tKZrlaK/NbJL2MwLba378iuXNbXP/K722z9WsuuXJ/eRX6r1F+O/LL0H7ceW4/NH6/X1fJ25HxZz21B/a1Tfznyy5Ffjvxu6T9envrLkV+O/HLkl7NNfo3yj+JBtvT79+/48OFDdYttyS9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL2dpqhwAAAAAAGC/DNwDAAAAAMABMXAPAAAAAAAHxMA9AAAAAAAckEZ5dd/qZwAAAAAAYM8a00L1M1twVeQc+eXIL0d+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55ZgqBwAAAAAADoiBewAAAAAAOCAG7gEAAAAA4IAYuAcAAAAAgANi4B4AAAAAAA7IVgP3w/NGNE4vY1LdftgkLk+3eT4AAAAAALA0cD+5PI1Go7G2nF4aemcLw/N57ZwPqzvYivxy5LejYZxX6/zFcqwRrvWFGwQx27Fdf021KMNNqb8F9bdH+o+d7VK3rFB/OfLTf+yF7Zcnof3myC9Hfjnyy9kgv/Uj7lu9GE+nMa0tVxcn1YPbOImLq+L1VxfFTxyH6iyLdr+6zXbklyO/3ZXZtSMGt+v9QSei3z6+Lx/ll95mN6I3XmQxiE6/vdmGyB3957ez6jEeoP4W1N++6D8yUnVLQf3lyK+k/9gH2y952m+O/HLklyO/nM3zM8c9T2Zy+Tm6o1axwTiOXqu6k43JL0d+GfMdrfUvaWdfelHGeP33mM64GsZ/3VHx/fV73O6vPosvZUH1fxaP8jzU35z62xf9R4a6zVJ/OfIraYf7YfslS/vNkV+O/HLkl7NNfjsP3M9Pqztf2xCoz4Nf/7k0u30+LH7B2ml8a3PgV3sdFo/fLOv/Fofl5OIqptOr2gYj25BfjvxIm/yN6+Kvj++Wi+jk3cfiz3781AnxnNTf3ug/EtRtmvrLkV9BO+SV0n5z5Jcjvxz55WyT384D9/O9ySsbApPL+Lcf0fn6wPQ4/XY0/3wtfsHydLJBdEbd+Hwzh345aN+M7sdB9fj8dLPiHWMw/RbO2AN4IeM/MSr+Wv0S+KbN/s+teN+sbi8038+OnnpU0Z81azucXR8mQf3dUn8csmzdAnn6j8NxjNsvADyr9YH7lY670TiNO/vuk//FP8WWQL82cj/59aPoqDrx6aER9s4gpjfnk53Fp07xT/74VR11P44/RU/Xqb3BWfmEuA5nmwG8lGGcl3OttXrxxR7TjZx9u53ftFzGvVbRnTZ9+d2J+tuW+gNgF/qPp2T7BYCnt8HFae87dP8k/jcfua+msJnErx+zUffEkfHNeL+yM2D4s5yo/2PYaQ3wMobn7ehHK3rfXVx8V+Wpb+UZY7c7ptmU+stTfwDsQv+xO9svADyH1MVpTy6+Rqfonv4t98hPfsV83P4Jdi+XV8Cvjvhv902TA/BSymuRtPvlRVKOcL662Snlo/gzrm4v3HcK+iZGf2L17bif+lN/vDLPUbfAdvQfe3fU2y8APKvUwH19qpthOU1O9rSw2eB/2eHVj/g3aA/wEuZfOsoZzY70S8fJuygv43a9Mjfb5O/skm9bnvk1idnLWu/DuNVm1J/64xV60roFdqL/2Kuj334B4FklB+6rOehH3Wh3R9H653+508JmGx2j6Dbrc+wXy+mlU/UAntHk8rT60jGNm8uQHJ1qZ3T38+21XSaX8bns33pfbnYil1/Qlq7/UjzndKWfmlx+juJlD1+snRvqr6T+eI02q1vgOek/9sX2CwDPLT1wH2dfoje7XH0r/vlftnufz3Ffdny3R9yPoxfdaBq8P3jlhst8Z0tztsF3O+XReXUdBB4ivxz5ZQzjv1loZWxlZvXlnguUv1HlRdoGndoO5GY3ojeOq4cOoSov1l72U7Xcmt2PMSj6MF/iNqH+FtTffug/cnaqW26ovxz5zek/9sH2S5b2myO/HPnlyC9nm/wa03J0PGUSl6fFPxS9GF/l9syXv/h8Y2F5epz77t+n379/x4cPH6pbbEt+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR345+SPuFxelfbLT6frxc2n3QrUnu/PJ6bYAAAAAALx56YH74X/dGEUnPj3BqPrJxVWMe61YPtWsHde9cUydrwcAAAAAwBHIX5z2WzkP/dNNYVMO3t/Obz9fzJEJAAAAAMCxyE+VAwAAAAAAPJnG9fV18uK0AAAAAADAU2lMy7lo2JqrIufIL0d+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvx1Q5AAAAAABwQAzcAwAAAADAATFwDwAAAAAAB8TAPQAAAAAAHBAD9wAAAAAAcEAOauB+eN6IxvmwunWXSVyeFs85vSx+AgAAAACAt2dp4H5yeRqNRmN5eXAgHe4wPFc7GfLLkV+O/HLklyO/9W2xDbKYHfhQf021KMMtqb8c+eXIz/pvL4ZxLrs87XdH6u9JqL8dqb8nof5yNshv/Yj7Vi/G02lMZ8sgOv32AR3hfhIXV8XvdXVR/MThqc6IaPer22xHfjnyy5Ffjvxy5FcqB62a3YjeeGU7bJMN4aXtt/ny7ax6jEeovxz55civZP23D2XttSMGt7kNOhH9tsGrzWm/u1N/eepvd+ovT/3lbJ7fI1PlnMWXXiti9CN+mZuGR0wuP0d31Co2uMdRlg3bkV+O/HLklyO/HPmVhvFfdxSt3ve4uDk6odoO6/8sHuW5qL8c+eXIr2T9tx/zg+LqOznOvvSiLMPrv778b0L7zVB/WeovQ/1lqb+cbfJ7dI77k3cfq58qk8s4veNUkvlpiudrG1az+2tH7K+eAnl6ud4olp6zcrT/6vuVNnlPnt/JxVVMp1e1DW62Ib8c+eXIL0d+OfIrTP7GdfHXx3fLIcy3w/rx08jVs1F/OfLLkV/B+o9XSvtln9Qf+6T+crbJ79GB+8nfcjNqYRjn83MYi3+gPJ1kHO//nQ/Wz/dOrWxYTS7j335E5+t8apv1UyDH8c+Pz7E0zt5vR/PP1+rxQXRG3fj8wED8Ru8JAHDIxn9iVGxJvW9Wtxea72dH/zyq2F5qOogBeI2s/w7H7LNY34kCL0L9sU/qjwP18MD95DI+d4vS7Xy9Zy9AeXrJt5idXXLyv/in2LLq10buJ79+FIXfiU+zJ0zi14/VUyDL16/sYegMYnpzvspZfOqUM/X8WjrC/taG7wkA8EadfVscvDBfxr1WjLpNg1fAm2f995SGcV7OtdvqxZfa9BHwMtQf+6T+OFzrA/f1IxYWR9fXBtLLuQbLjaFG43TlqPaT+N985H52BP5iUD06n+YD+5NfUd580r1Xz/GeAACvWHnqZXmBrfsPfAB4m6z/djc8b0c/WtH7Pj9bHl6S+mOf1B+HbH3gfuWq/Fcrh67P5+Epr7g8im6zHOC/ndf+5OJrdIpy/7cc0a8G1Tvzw+0BALjPbEqIUfwZV7cX7ptCYhOjP7H6dgAHx/pv78rryLX75UXynLnOy1N/7JP649A9Osf9fWanJY5X57W/ndpmWE6TUz/N5ORdlJcXetIrND/HewIAvLR7tmnm1xr6GNudXDiJ2cta72OX8S6AF2X9t1fzQatyxlqDVrw89cc+qT9eg+0G7ofn0TivXX32jqMgzmYj991od4tH/vlf7TSTxTQ79QvHTuLydHXKnW08x3sCALy06uCH+jZNda2hVu/LfNrBQvkFY2m6wuI5p6eXS1NCTC4/x/wSRU73BV4D6799mVyeVoNW07iZHRdeiPpjn9Qfr8a0ZtxrTYuto+m4un2XQSem5csWS1HkK8bTXqt8rDXt3fFGs3+j9vpW7Umz9155w9l9td9p9Xbpofd8LtfX19VPLKx+DrdLZ7paJvJbJ78c+eXIL0d+OfK7tbqdtbpNM3+8vo212O6qL+u5Lai/deovR3458rtl/ffSBtPOUnb1Zf27vPzWab8Z6i9L/WWovyz1l7NNfo3yj+LBJ1Qe8d6MbvRifPV2j3T4/ft3fPjwobrFtuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jez8xz391pclNbpiQAAAAAAsLUnH7gf/teNUXTikzmiAAAAAABga08+cH/2bRrT6bebiwgBAAAAAACbe/qpcgAAAAAAgJ01yqv7Vj8DAAAAAAB71pgWqp/Zgqsi58gvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlyC/HVDkAAAAAAHBADNwDAAAAAMABMXAPAAAAAAAHxMA9AAAAAAAcEAP3AAAAAABwQAzcAwAAAADAAVkauJ9cnkaj0VhZTuNyUj0BNjE8n9fO+bC6g80M43yl/YlwB+ovR37rfeEGWQzPa8+vLcpwS+pP/e2T+lN/e2H770lovzny25H2+yTUX478cuSXI7+cDfK744j7Tgym05hWy6Azim7T4D2bmMTlaVFw7X51m82V2bWjaHy1thfRb9v425z6y5FfqRy0anYjeuNFWxxEp9/ebEOk1Ytx1X4Xy7ez6jEeof5K6m9f1F9J/e2D7b887TdHfrvTfvPUX478cuSXI7+czfN7dKqcsy+9aMUofvwycs/DJpefoztqFV/4xtFrVXeyoZO4uFr+kjtvexHXf7W9Tai/HPmVhvFfdxSt3ve4OKnuirP4UgbS/1k8ynNRfyX1ty/qr6T+9sP2X5b2myO/DO03S/3lyC9Hfjnyy9kmv43nuP/4brEVX+0VWNmNPDtN9vSyeHShel55yP/Scm7j/406ubiK6fSq9oUPXo76y5FfYfI3rou/bvu7uZN3H4s/+/FT5/Vs1F9B/e2N+iuoP14p7TdHfuyT+suRX478cuSXs01+jw7cD//rxig68Wmr013LQftmdD8Oil/k9rSx+TQ838KZs7CB8Z+i7a1/iQaeyazNteJ9s7q90Hw/O3rqUaNuNGs7qk/NMcc21B/7pP4Oh+0/eL20XwCe2B0D9/1o1za8y+l2Wr0vWw62j+NP0WN1aqP9Z5/KkfvrcNYYbGIY5/PGF1/s6YKDd/btdn7Tchn3WjHqNg1e8SLUH/uk/p6S7T94vbRfAJ7eoxennY57EcXG9/I0OI9pxvtWOSXm7Xm1w5/lhPsfw85neNzwvB39aEXv+0VoMvD6lKe+lWeajX782qLvhKeh/tgn9bc723/wemm/ADyHx+e4P7mI7+VM+aMfsfX1afvt2pH7psmBTZTXi2j3y4tUmC8MXtRsSohR/BlXtxfum0JiE6M/sfp2cCf1xz6pv72z/Qevl/YLwHPZ+OK0t05idp2qh0x+xY/Z1XFrR+4btIdHzTf6IjoDG33w4k7eRdm9Xa/M6Tb5O7tk45ZnjE1i9rLW+9hlvIsjpP7YJ/W3V7b/4PXSfgF4ThsM3A/jv245Yf3Xm46oOZsH599YTF256KxuzDb+R9Ft3s6VP1u2mm4Hjsvk8rTa6JvGN3u5YA/Oorwcy6j7+aZ/KxpmfC76wPq1Xso+r9E4XXrO6Ur/Nrn8HPOu0+nSbEr9sU/qb19s/8Hrpf0C8OymNeNea1retbYUPdGy8bTXun281RvPX9vqFY/cPr78suo1N8953a6vr6ufWLi3fqIzXa0g+a0aTIvvy3dkVy6tadHElshvnfrLkd+tQWc5g7KPq5s/Xm+Xy33ifFnPbUH9rVN/t9Tfy1N/t9TfS7P9l6X95sgvQ/vNUn858suRX478crbJr1H+UTz4pMo9z83ux7U57e+7/zX6/ft3fPjwobrFtuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jezwxz3m+rHz2H148xiyp1Pr37QHgAAAAAAnsuzDNyfXFzFuNeKfrua2362tOO6N46pyd8AAAAAAOBez3bEfTl4X87CU1+uXGYdAAAAAAAe9IxT5QAAAAAAANtqlFf3rX4GAAAAAAD2rDEt57Bha66KnCO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458suRX478cuSXI78cU+UAAAAAAMABMXAPAAAAAAAHxMA9AAAAAAAcEAP3AAAAAABwQAzcAwAAAADAAdnrwP3wvBGN08uYVLcBAAAAAODYLQ3cTy5Po9ForCyncWlk/eis1cL5sHrkfrMdMfXXVMsGL31z5LcPwziXXd7wfJ6f8Lak/p6E+tuR+lvQ/+6D+ltQf3uk/8iRX478cuSXI78c+e3I9t+T2KD+7jjivhOD6TSm1TLuRXSbPoBjUn7paHYjeuNFHQyi029vtiJr9WJcq59y+XZWPXYk5LcPk7g8bUex8rrJbdCJ6LetuzZXZlh0GO1+dZvNqb889bc79beg/90H9beg/vZF/5Ejvxz55cgvR3458ttdmZ3tv5zN6+/RqXJOLr5GkX/0f0r/OAzjv+6o+P7wPS5OqrviLL70WmURFI/yMPntx0lcXC1/yT370osi9bj+65ShTUwuP0d31IreeBxlubIN9Zel/jLU35z+dz/U35z62xf9R478cuSXI78c+eXIL8P2X9Y29bfxHPet983qp8rkMk43OC1i9ZTR0wfm3Vk896Hn8Mwmf+O6+Ovju5tvHTMn7z4Wf/bD/ptHyI9X6uTiKqbTq9qAA7wc9Uea/pd9Un97o//IkV+O/HLklyO/HPmxT9vU36MD98PzdrG52Yp//ld7t3IOnmY3PtZOi5gOOrPTIuqD7uunjI7jnx+f754zv3jPZncUneI9r7Sc/Rn/iVHxea/up4nm+9nes0eNutHccEfNmyS/wzH7LNa/RMOLUH/s0zHWn/73cKi/W+oPADgGvv8+mzsG7vvRrm04tmOwshdgEpf/9iM6g6XTIuLs22xOo1H3v+p00En8+rF6ymh5OsUdexTKHQHt/mzQfuk9eVXOvtV25BTLuNcq6qHpy8eG5PeUhnFezhXW6sUX6xRenPpjn9TftvS/T0n9bUv9AQCvm+2/5/TgxWnLDcfot1emwBnHn1HxrE/rn8bZp3I2/OuYTWk0+RU/iuc9urelPMKk+IBbvbFB+zemPPVjtjPnx6/w1WN78tvd4kyh3veLsL+Xl6b+2Cf1l6f/3Z36y1N/AMBrYvvveT04Vc5iw7H/7+XthmM1h+P9PsZWZ0a0ejGojixx9eEDMDuldxR/xtXthftOAd7E6E+svt2bJb+9G543ot0vOo2x+ep4eeqPfTrq+tP/7p36U38AwHHx/ff5PTrH/ewo+lE3/lsMqp+8i9lllu64ytLwZ3lqxPuYbZtWz9vkisLNxQ6C9und89/zcu753CZ/Z5fc2m6nTExi9rJFTRwD+e3VvNMoZ/LSafDy1B/7dPT1p//dK/Wn/gCA4+L778t4dOA+zr7EbMacm6Puz+LLXVPoDM/nH9jXxakR8+eNuvWL0U7i8vTuwfmzb+Pi3xlFt3keDrzfp7OY76upfW6Ty/jcLa9X8KV4dK5soI1G7bMsnnN6WjszozC5/BzFy2o1cQzkty/lxbDnnYZrZfDy1B/7pP5K+t99UX8l9QcAHA/bfy9oWjPutaZF7NNBdXthfn9r2htXd5QGneK+qC0rj1fmr719Xqv2pEGnuK/Vm9bumRbbvNPykz9019fX1U9v0+yzuedzK80fr3/m42mvtfyau2ppQX7l/fJ7OtW6485lfd0kv3Wr6+rbZb0O5bdK/WWpvwz1V6f/fWnqr079vTz9R478cuSXI78c+eXIL8P2X9Y29dco/ygeZEu/f/+ODx8+VLfYlvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HIenyoHAAAAAAB4MQbuAQAAAADggBi4BwAAAACAA2LgHgAAAAAADkijvLpv9TMAAAAAALBnjWmh+pktuCpyjvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HJMlQMAAAAAAAfEwD0AAAAAABwQA/cAAAAAAHBADNwDAAAAAMABMXAPAAAAAAAHZOeB++F5Ixrnw+oWAAAAAADwFO4euJ9cxmmjEY2l5TwM0/OYyeXpct3YubO94bnsMuSXI78c+eXIb2f637ldcpgdjFJ/TbUowy1pvznyy5Gf9d8+qb8dDeNc7eWpvx2pvyeh/nI2yG9t4H7WeTe78XEwjen0dhn3rqN9ehmT6nkvZvafOI3LF/+H2Va5sViUTvTGi7oZRKff1oA3NonL06L9tfvVbbYjvxz55cgvR34Z+t+5VA6tXoyrbd7F8u2seoxHaL858suRX8n6b1/U3+7K7NoRtXGnQSei3zZ4ujn1tzv1l6f+cjbPb2ngvuzw2/3WrMNf7axPLq5ienURJ9VtWDaM/7qjYrvve1zcFMlZfOm1irXfT2drbGBy+Tm6o7L9jaOMje3IL0d+OfLLkV+G/ndODvui/ebIL0d+Jeu/fVF/GSdxcbU87nT2pRdljNd/HbW5CfWXof6y1F/ONvnVBu4n8evHKKLztdbhP64c7L85teSuI/LvmHZnbQ/WynMWj8+O/p/tfRhFtzl/7NSh94dp8jeui78+vlsunpN3H4s/+/HTFuOjZjvHpldbtT9uyS9Hfjnyy5Ffgv53Tg57o/3myC9HfgXrv71Rf+yT+mOf1F/ONvndDtxPfkU5bt9636zu2EC/Hc0/X4t/rDy1ZBCdUTc+1wfWy2luVqfdGXRmp5/cDsAP43x+Xl/1nHG8/3c+n/7Zt/nzi9+qeHj++itVcZjGf2JUfE5r5dN8P9trCQA8A/3vXDaHYhu2WTuIxIEiwKth/cdbMavl9Z1Q8CLUHwdqbY77epEuHU1fLqtH1HcGMb05t+QsPnWKfv/Hr+o5k7j8tz97ztK0O2ffZnNHjbr/3XPaXnnKyrfi3QAA4HnNDhRZHGBSLONeq9hObRq8At486z8OxzDOy9kWWr34YjCIF6f+OFxrA/f1+Zzmh+7PO/HZge9bGcefcuadT+tVf1aO8Md1zP+p+fx75QaCi9ACALBP5fbv7CCTm4NRAI6D9R/7MjxvRz9a0fvuuoq8PPXHIbsduD95F+UseKM/4/ntrGquvft9jMXB/YsdBIPOYi77+VQ5vCKzUzFHsVY+9526CQDk6X/nniOH0Z94oq1igOdj/ccrV17bsN0vp0c2XzYvT/1x6GpH3C+uPP/v0xz1Xu0I6N9xNZzhz/IUlPexug0xO1VvXF7J2UV0Xp3q8169Avfk7+xSSTc7aQCAJ6T/nXvSHCYxe9kd26oAB8f6j1dsPmhazrBs0JSXp/54DZamyjm5+B691vyo9/OlgfOqA9/KYkdAe/m9hufzhvG1OgWlvIBt/QmrRwbcdwQBB6a6xkH38+2On8llfO4Wn2bvi2sWAMCz0P/ObZZD+QVtaWrG4jmnK9dwmlx+juJlt9uqAAfN+o/Xqbym4nzQdLp8XUR4AeqPV2N6l0FnWj60tLR603H1cGnQKe4rKrxudt/K89bfqzXtLT2hel3tOStvu/T46mP7cn19Xf1E3epn2Vr9sCvyWzfutZayu10609Wyl986+eXIL0d+OfLL0//OPZbD/PH6tuh42mstv+auultQf+u03xz55cjvlvXfy1N/GYNp587symV9zEh+69RfhvrLUn852+TXKP8oHmRLv3//jg8fPlS32Jb8cuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5FfjvxylqbKAQAAAAAA9svAPQAAAAAAHBAD9wAAAAAAcEAM3AMAAAAAwAFplFf3rX4GAAAAAAD2rDEtVD+zBVdFzpFfjvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+OqXIAAAAAAOCAGLgHAAAAAIADYuAeAAAAAAAOiIF7AAAAAAA4IAbuAQAAAADggBi4BwAAAACAA7I0cD+5PI1Go7G2nF5OqmfABobn89o5H1Z3HJ+1trRBFsPz2vNryzHGKL8c+eXIbx+GcS67PP1vjvxy5Jcjvxz55cgvR3458tuR7ecnof5y5LejzdvvHUfcd2IwncZ0sYx7Ed1mNE4vw/A9D5vE5WlRcO1+dfs4lYN+zW5Eb7xoR4Po9NubrchavRjX21+xfDurHjsS8suRX4789qHsO9pRbHzc5DboRPTbvnxsTv+bI78c+eXIL0d+OfLLkV+O/HZXZmf7OUf95chvd9u138enyjm5iKtxL1qjbnx25D0PmFx+ju6oFb3xOHqt6s6jM4z/uqNo9b7HxUl1V5zFlzKQ/s/iUR4mvxz55chvP07i4mp5J8fZl2K7o/j7+q/tjk3of3PklyO/HPnlyC9Hfjnyy5Ffhu3nLPWXI7+M7drvZnPcn1zE107EqPvfzcDFbFqA8+H87/Kw/toR+WtTBqztMqj2zNSfM1vObwdGJpdxuvL46tssfoelaQ2cGbA3JxdXMZ1e1Qa8jtDkb1wXf318txzCybuPxZ/9+Gnk72Hyy5Ffjvx4pfS/OfLLkV+O/HLklyO/HPnlyI99Un858ns5G1+ctvl+NvYfS4P//Xa0Y1B8WNOYXl1E+XmVg+n/vh/P7yuX8mj94nm3g+7loH0zuh+r11WnBMyn6PkWsx0O5RxJzW58rJ02MC2eVJ42sDbffvHezT9fq+cNouPMAPZp/CdG0Yr3zer2QvP9bO/Zo4r6bdZ2Vh3d9SXklyO/HPkdjtlnsb4TBQAAuIPtZ3i9Hmi/Gw/cz484XNWJwcoEvmffpnFV3+Vy8r/4pxXRvzlUcRx/it+m8+n2dWefypH7xU6BSVz+2y+eMFieG/js22yAv37U/0zxvOnNE8+ifKvRj1+OuufVKdvOzY6qYhn3WkW9Nw3+bUh+OfLLkd9TGsZ5OVdiqxdfljcxAACANbaf4fV6uP1uPHA/+VtOILCi82l+hPyS1WlwmtEtdxvcaEZ58P7tQH7xK/4sL2bwMeY7FtYH9heWB/jhbStPPZrtrLIjaifyy5Ffjvx2NzxvRz9a0fs+P5MPAAC4n+1neL0ea78bD9yPy9H0m8H1+1TT4EQvxjdHHt5zoYJ++2Zwv92vTZNTzTF8v8d+B9ij2ZQao/gzrm4v3DcFxyZGf2L17d4s+eXIL0d+e1dOt9fulxc5Ml8iAAA8xvYzvF6btN/NBu4nl1HOXtPqfbnjCPuaya/4UR4t//WBvXyz55S/VH1agWrQvnTyLmaXAbzjKoCzI/Nb72OXsRN4EVX9rl4Jen7GyrY7nSYxe9kx1bz8cuSXI7+9mm+0lDPg+dIBAACPsf0Mr9em7ffxgfvJZZw2uzFq9eL7Y2uCOwbdh+crU+XMnjOKbrM+nU6xnF7GfKjkLL6Uh+gvXdC2MDyf/4ce2ikAe1ddZ6H7OW6mti7a0OeiEdR3fJUNtNE4XXrO6U0bmJtcfp61neOqefnlyC9HfvsyuTytNlqmy9e3AQAA1th+htdrq/Y7rRn3WtPyrtWleKM1g07x2F0PjHvTVv31xXOWnzue9lqr7zm/L1q94qfKoLP0O0S0pr2bB+fu+h1m99Xf55lcX19XP7FwX/0UpThdrZS3nt+sDmsZtFaKd/54vaarNlB7zV25LcivvF9+95Ffjvxe2mDaWcquvqz3/fJbp//NkV+O/HLklyO/HPnlyC9Hfhm2n7PUX478MrZrv43yj+LBF1PuVWh2P97OaV+57/5D9fv37/jw4UN1i23JL0d+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvZ+OL0z6tfixPYT+M/2ZzCnx6FYP2AAAAAADwXF584P7k4irGvVb02+UcwYulHde9cUxNzAUAAAAAwJHbyxH35eB9OUNPfblyCWwAAAAAANjXVDkAAAAAAMBdGuXVfaufAQAAAACAPWtMy3lq2JqrIufIL0d+OfLLkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvx1Q5AAAAAABwQAzcAwAAAADAATFwDwAAAAAAB8TAPQAAAAAAHBAD9wAAAAAAcED2MnA/PG9E4/QyJtVtAAAAAABgbmngfnJ5Go1GY205vTTEzhaG5/PaOR9Wd7AV+eXIL0d+OfLLkd+OhnFe5lZbRLgD9Zcjvxz57WztO6wMt6D/eBLa707tcHZAZ/011aIGt6T+1N8+qb8dbd7/3nHEfScG02lMF8u4F9FtOkKeDUzi8rQouHa/us125Jcjvxz55cgvR367K7NrR7HxdrPtNuhE9Nu+eGxO/eXIL0d+GeVgTbMb0Rsv1oGD6PTbBhA2ov/I035LqXbY6sW4qr/F8u2seoxHqL+S+tsX9be77frfx6fKObmIq3EvWqNufHbkPQ+YXH6O7qhVrDDH0WtVd7Ix+eXIL0d+OfLLkV/GSVxcLX/JOPtSbLcVf1//td22CfWXI78c+WUM47/uKFq973FxUt0VZ/GlDLL/s3iUh+k/srTfkna4L+qvpP72Rf1lbNf/bjbH/clFfO1EjLr/LRX+2qklK7sGZo8X9908756j9hentZiS53U7ubiK6fSqtsJkG/LLkV+O/HLklyM/9kn95cgvR34Jk79xXfz18d1yeCfvPhZ/9uOnERuemfZb0A73Rv0V1N/eqL+Xs/HFaZvvZ2P/sRj8Lwfj/30/Lj6o6tD+8qj8fnv9sP7ivnYM5s+5uoi1z3R4Hs3uKDqDaVz5xAEAcsZ/YlT8tfolBuBNma3rWvG+Wd1eaL6fHbXGDvQfbCvbDkfdaNYOBnUwJ1tRf7wVD/S/Gw/cz/dY3Tr7tjLQfvK/+KdoGf21XVqdGNw3SVR5EYN2fzZobx4pAICsYZyXc022evHFthUAG9N/8LLKMaWbA0GLZdxrxajbNHjKi1B/HI6H+9+NB+4nf8sTUOqqCxHc7J1qRrfcPbCq8ynu7PfLPVvFL9bqjQ3aAwA8geF5O4qtq+h9v+MsRwC4h/6DfSun3igv0Dj68evOKZbhOak/9uWx/nfjgfvxn9lB+zE/ar8ctG9GN+pXYN7yggStXgyqPVqbXOwZAID7ldMYtvvlRaLMNwkcgdlUCKP4M65uL9w3dQL30n+ws+doh6M/sfp2cCf1xyu3Sf+72cD95DL+nR21/2V+9PzkV/wYRXS+5vbGN6s9Wv32aTgbBQBgN/ONvmLbbGDQBTgSJ++inMz1enERtsr8TPHFAWc8Rv9BypO2w0nMXtZ6H/a7sRH1xyu2af/7+MD95DJOm90YtXrxffFOVeOoz2c/PL9nqpxHnH0rj9QfRbd5Hg68BwDYzuTytNroc80g4JicxadyWoPu59uDwIrvrp+LL6U3B5zxIP0HeZu1w3KAqtGoHbBZjjOdXi5NSTK5/DwbU8oeIMoxUX+8Tlv1v9Oaca81Le9aXYo3WjfuTVv15xVPGnTmfy+s3l6Y3d/qTcfV7eKeadHW7nzuobq+vq5+YuG++ilKsfiEl8lvnfxy5Jcjvxz55cgvo9qGunNpTXu3G1sz8lun/nLklyO/vNl3y1p2rdUVX0V+q/QfWdrvrcfa4fzxel2Np73W8mvuym1B/a1Tf7fU38tTfxnb9b+N8o/iQbb0+/fv+PDhQ3WLbckvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlyC9n44vTAgAAAAAAz8/APQAAAAAAHBAD9wAAAAAAcEAM3AMAAAAAwAFplFf3rX4GAAAAAAD2rDEtVD+zBVdFzpFfjvxy5Jcjvxz55cgvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+OqXIAAAAAAOCAGLgHAAAAAIADYuAeAAAAAAAOiIF7AAAAAAA4IAbuAQAAAADggBzUwP3wvBGN08uYVLcBAAAAAODYrAzcT+LytBGNxmI5jUuj6Edpcnlaq4NiOR9Wj9xvtuOl/ppq2eClzAzjXHZ5w/N5fsLbjfys/5Lktw/6j6xd6pYF9bdg/Zcjvxz55chvj3z/UH/7pP7UX9Jz51cbuC8H7ZvRjV6Mp9OYlsv4n/jxuXYE/KygDea/dWXRNbsRvXFVB9NBdPrtzVZkrVr9VMu3s+oxHlC2v3bE4Da3QSei39bxbq7a8djuV7fZjvxK1n858tsH/UdWqm6PnvpbsP7LkV+O/HLkty++f5TU376ov5L6y3mJ/GoD9+P4Mype98//4qS6J04u4urq4vY2R2AY/3VHRf18j4ubD/4svvRaxbewn8WjPI+TuLhabqRnX3pRpB7Xf+0p28Tk8nN0R61ihTmOslzZjvxK1n858tsP/UeOus1Rf3PqKEd+OfLLkd+++P5RUn/7ov5K6i/nZfJbm+N+9Gdc/bRsdhj/bE/UKLrN4udGI07rh94vTi9ZLHfNVb/Jc9ivyd+4Lv76+O6m6mZO3n0s/uzHTy2XA3VycRXT6VVthck25Few/suRH6+RuuUpqKMc+eXIL0d+e+P7R0H97Y36K6i/nBfKrzZwv9gr0I67psM5+zaNaXnua5R7pOaH8F9VFV6eGtCYnSW7OLx/HL3oRrM2ML/JczgA4z8xKj7j983q9kLz/ezoqUeNis+0tnNmaecO25l9FusrAeCZWP/lyO9w6D82l61b1h1j/Vn/5cgvR3458mOf1B/7pP5yXii/pSPuZ3ucxuXprYuj6jeZz35+akBn8C1uz5I9iYuvneKX+BG/Zq/f5Dm8drOdOzc7ZqYx7hWV1G3qPHYyjPPyDJdWL77UTj8HDpP1X478npL+g31Sf9uy/suRX478cuTHPqk/9kn95WyT39pUOVHOa1++8GYA/7zYBH9AdWpAeRGqxV6C2VK/wMMmz+HNKXcElSdpjH78clbFlobn7egXLbD33TUm4DWy/suR3+70H+yT+suz/suRX478cuTHPqk/9kn95TyU3/rA/UI5gF++asN5eTqD5b0F82V5vqhNnsOezU7pGMXapQ7uOwVkE6M/cfeVE7hLeT2Jdr+ckkrbgBdl/Zcjv73Tf+zgOer2SB11/Vn/5cgvR3458mOf1B/7pP5yXii/+wfuS7Nf4hEn76Kcdv/67wP7VDZ5Dofhns9q8nd2yYXYbrrSScxe1nofu9TrMZp/6S13chl0gRdn/Zcjv73Sf+zoSev2eB19/Vn/5cgvR3458mOf1B/7pP5yXiq/6cKgM41Wbzqubk6Ln3qtmBab4NNBdc903Ju2ipd0bu6YG/daxfNa097ti9feb5PnDDrFv7f0Oxyu6+vr6qe3Z/Y51D+r6nNv1T68O5+z8tnNP/P1eim95fx29VBeq+T3kGrd9UCQ8nvIcedn/Zcjv/3Qf+RsUrcL8lun/uas/3LklyO/HPntm+8f6m+f1J/6291L5Hc7cF9YPPFmWXmj0vwfnC/1N9zktY89Z/bed7zuEL31FV/9cy6XetGV1gqv+NTmO3rqS22nzwodx6rBtLOUXX2p5zwnv3Vr65ebZb0O5bdOfres/3Lk99L0H0/hsbpdkN8q9Vdn/Zcjvxz55cjv5fn+cUv9vTz1d0v95Tx3fo3yj+JJbOn379/x4cOH6hbbkl+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458suRX87Dc9wDAAAAAAAvysA9AAAAAAAcEAP3AAAAAABwQAzcAwAAAADAAWmUV/etfgYAAAAAAPasMS1UP7MFV0XOkV+O/HLklyO/HPnlyC9Hfjnyy5Ffjvxy5Jcjvxz55cgvR3458suRX46pcgAAAAAA4IAYuAcAAAAAgANi4B4AAAAAAA6IgXsAAAAAADggBu4BAAAAAOCAPPHA/SQuTxvROL0sfgIAAAAAALa1NHA/uTyNRqOxtpxeGoZnC8Pzee2cD6s72Ir8cuSXI78c+eXIb31bbIMshue159cWZbipYZzLLk/7zZFfjvz0H/uk/nLkt7Nd2v1bZP23D7afn8QG67/1I+5bvRhPpzGtLVcXJ9WDjzmJi6viNVcXxU8cn+qMi3a/us125Jcjvxz55cgvR36l8ktHsxvRGy+2wQbR6bc3+xJ2x/bbt7PqMR5Q1l47YnCb26AT0W/78rE57TdHfjnyK+k/9kX95cgvI9Xu3xDrv30o267t55zN13/muOfJTC4/R3fUKlaY4+i1qjvZmPxy5Jcjvxz55civNIz/uqPi+8P3uD1e4iy+lIH0fxaP8jzmB53Uv6SdfelFWYbXf51xugntN0d+OfIr6T/2Rf3lyC9Du5+Tw37Yfs7aZv239cD92ukkK7tTZo/X5rif3S6ec/O64rHL2c/na41o9bW8LicXVzGdXtVWmGxDfjnyy5Ffjvxy5FeY/I3r4q+P75ZDOHn3sfizHz998+BAab858suRX0H/sTfqL0d+Cdr9nBx4pbZZ/201cF8OrP/7fly8eXU6xLgXrX778VMhiue0YzB/zdVFXMz2xKw0osll/NuP6Hw1zQ4AcGTGf2JUbB29b1a3F5rvZ0evPGrUjWbtwArXJ0qYfRbrXwIBDpL+A45Ptt2/FdZ/h8P287NZH7hfKdxG4zQWtXv2bWW++5P/xT9Fa+g/uhurE4P6ORR3vG7y60fxIXfik/mkAAA2Vm6f3RxUUSzjXqvYnGv68rGTYZyXc022evHFNinwxuk/gGNl/feUbD8/pw0uTls/dL+aPP9mUL8Z3XKXymM6n2L5szuJ/81H7qvpcibx60fxRmvPAwBgG+Wpl+UFokY/fpl+cEvD83b0oxW9784ABY6P/gM4VtZ/u7P9/Ly2mCqnHLRvRjfqA/u7X0Tk5OJrdIqP9t9yb9bkV8zH7Q3bAwBHaHZK7yj+jKvbC/edAryJ0Z9YfTvuV04J2e6XF4ky3y7wiug/4Pg8R7t/jaz/9s728/PbfOB+Mbj+ZHPQn8Wnam/WsJwmxykVAMCxOnkX5WW0rv8uH+Mz+Tu75FZsN13kJGYva72PY/neljX/0lFs5w586QBeGf0HHJ8nbfevmPXfXtl+fhmbD9xXDaI+L/3wfMOpcu5xNhu570a7eJPWP/9zSgUAcKSqAxq6n2+uLVReuP9zuY3U+3IzlWC5gVy//lD5nNPTy6VTeieXn2fbZy74v5nJ5Wn1pWMa9UsyAbwO+g84Ppu1+7fP+m9fbD+/nC2myjmLb+NetPrtan77RrRjMJsDamdnX6qpdlrxz/80jdeubLhL1z64qZXz6loGPER+OfLLkV+O/HLkN1deJGvQGUW3Wf7fi6XZjeiN4+qhQ1jKC/5HN5qzvOZLs/sxBlMb0ZsZxn+zoivL7jbD+VL7gse9tN8c+eXIb07/sR/qL0d+OTu1+zfI+m8fbD9nbbP+a0zLyer3pjZv/tXr2qv1+/fv+PDhQ3WLbckvR3458suRX478cuSXI78c+eXIL0d+OfLLkV+O/HLklyO/HPnlyC9niyPun8GTz5sPAAAAAACv214H7of/dWMUnfjkVBQAAAAAAJjZ68B9ORfVdPrtiC6cAQAAAAAAD4n4f3wHvuJUEdoSAAAAAElFTkSuQmCC" + } + }, + "cell_type": "markdown", + "id": "1e755a56", + "metadata": {}, + "source": [ + "### Task 2.2: Examine the `type_effectiveness_stats` CSV file\n", + "Next, open `type_effectiveness_stats.csv` with Microsoft Excel or any other Spreadsheet software, and take a look at it. You will see a table of Pokémon types representing the effectiveness of one type against another. The rows represent the type of the defender, and the columns represent the type of attacker. Read the description below the image (of csv file), to understand these statistics better.\n", + "$$$$\n", + "<div>\n", + "<img src=\"attachment:type_effectiveness_stats.png\" width=\"900\"/>\n", + "</div>" + ] + }, + { + "cell_type": "markdown", + "id": "2b265857", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "All Pokémon and their moves are assigned certain types. Each type has several strengths and weaknesses against other Pokémon. In battle, you should use Pokémon and moves that have a type advantage over their opponent; doing so will cause much more damage than otherwise. There are 18 types in this table. Taking the second row (Fire) and the third column (Water) as an example, we see that Water type attack has an effectiveness of `2.0` against Fire type defense." + ] + }, + { + "cell_type": "markdown", + "id": "ce541434", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 2.3: Explore the API\n", + "\n", + "`project.py` is designed to give you access to the data in `pokemon_stats.csv` and `type_effectiveness_stats.csv`. \n", + "\n", + "Use the inspection process we learned in [Lab-P3](https://git.doit.wisc.edu/cdis/cs/courses/cs220/cs220-f23-projects/-/tree/main/lab-p3#task-22-inspecting-projectpy) to learn more details of the `project` API. In Lab-P3, we saw how to use `dir`, and `help` to learn the API." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "59827818", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.409078Z", + "iopub.status.busy": "2023-09-27T00:13:02.409078Z", + "iopub.status.idle": "2023-09-27T00:13:02.579258Z", + "shell.execute_reply": "2023-09-27T00:13:02.578249Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# include the relevant import statements in this cell\n", + "\n", + "import project # we have imported the project module for you here; you will have to add the import statement in p4.ipynb" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "71051912-1de3-4e10-81ab-05ba0acd3fdf", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.584261Z", + "iopub.status.busy": "2023-09-27T00:13:02.583258Z", + "iopub.status.idle": "2023-09-27T00:13:02.594489Z", + "shell.execute_reply": "2023-09-27T00:13:02.593479Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# use the 'dir' function to learn more about the project API.\n" + ] + }, + { + "cell_type": "markdown", + "id": "4678d44a", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "If you were to use the `help` function on the project module, you should find eleven functions here that \n", + "do not begin and end with two underscores (`__`). Read the documentation to figure\n", + "out what these eleven functions do." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9ca84082-5adc-416d-a519-2661b5c9b1a6", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.599491Z", + "iopub.status.busy": "2023-09-27T00:13:02.599491Z", + "iopub.status.idle": "2023-09-27T00:13:02.608415Z", + "shell.execute_reply": "2023-09-27T00:13:02.607404Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# you can find the documentation for any function by calling `help` on that function\n", + "# use the help function to read the documentation for the project.print_stats function\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "16e9c387", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.612415Z", + "iopub.status.busy": "2023-09-27T00:13:02.611415Z", + "iopub.status.idle": "2023-09-27T00:13:02.617786Z", + "shell.execute_reply": "2023-09-27T00:13:02.616774Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# now try out the print_stats function on the Pokémon \"Pikachu\"\n" + ] + }, + { + "attachments": { + "add_new_cell.PNG": { + "image/png": "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" + } + }, + "cell_type": "markdown", + "id": "4b176004", + "metadata": {}, + "source": [ + "Similarly, try to figure out what each of the ten other functions in `project.py` do, by inspecting them or reading their documentation. You can do that clicking on the `+` symbol on the Toolbar at the top of your Jupyter notebook. This will create a new cell for you to write your own code.\n", + "\n", + "<div>\n", + "<img src=\"attachment:add_new_cell.PNG\" width=\"500\"/>\n", + "</div>" + ] + }, + { + "cell_type": "markdown", + "id": "b35bc51f", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "When you feel comfortable, proceed with the rest of the lab. If any of these instructions are unclear, or if you are unsure about what these functions do, feel free to reach out to your TA/PM." + ] + }, + { + "cell_type": "markdown", + "id": "b4917f51", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 2.3.1: Getting familiar with `project.py`\n", + "\n", + "You will now demonstrate your familiarity with the functions inside `project.py` by answering a few simple questions." + ] + }, + { + "cell_type": "markdown", + "id": "0e276381", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 1:** What `region` is `Quaxly` from?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9073a44f", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.622785Z", + "iopub.status.busy": "2023-09-27T00:13:02.621785Z", + "iopub.status.idle": "2023-09-27T00:13:02.629728Z", + "shell.execute_reply": "2023-09-27T00:13:02.628716Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "quaxly_region = ...\n", + "\n", + "quaxly_region" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b2f853d9", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q1\")" + ] + }, + { + "cell_type": "markdown", + "id": "a40cc0b0", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 2:** What is the first type (i.e., `type1`) of `Scorbunny`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "55e53406", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.647315Z", + "iopub.status.busy": "2023-09-27T00:13:02.647315Z", + "iopub.status.idle": "2023-09-27T00:13:02.655914Z", + "shell.execute_reply": "2023-09-27T00:13:02.653900Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "scorbunny_type1 = ...\n", + "\n", + "scorbunny_type1" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2e4dd143", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q2\")" + ] + }, + { + "cell_type": "markdown", + "id": "44497e31", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 3:** What is the second type (i.e., `type2`) of `Koraidon`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d3eec867", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.673863Z", + "iopub.status.busy": "2023-09-27T00:13:02.673863Z", + "iopub.status.idle": "2023-09-27T00:13:02.680956Z", + "shell.execute_reply": "2023-09-27T00:13:02.679940Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "koraidon_type2 = ...\n", + "\n", + "koraidon_type2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a44fbae7", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q3\")" + ] + }, + { + "cell_type": "markdown", + "id": "06f30a89", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 4:** What is `Mewtwo`'s `HP` stat?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "987885b2", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.699121Z", + "iopub.status.busy": "2023-09-27T00:13:02.698122Z", + "iopub.status.idle": "2023-09-27T00:13:02.706111Z", + "shell.execute_reply": "2023-09-27T00:13:02.705097Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "mewtwo_hp = ...\n", + "\n", + "mewtwo_hp" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b502a9ab", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q4\")" + ] + }, + { + "cell_type": "markdown", + "id": "45686290", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 5:** What is `Rayquaza`'s `Attack` stat?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4a5c89bc", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.720488Z", + "iopub.status.busy": "2023-09-27T00:13:02.720488Z", + "iopub.status.idle": "2023-09-27T00:13:02.727279Z", + "shell.execute_reply": "2023-09-27T00:13:02.727279Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "rayquaza_attack = ...\n", + "\n", + "rayquaza_attack" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "05442cf4", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q5\")" + ] + }, + { + "cell_type": "markdown", + "id": "60784793", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 6:** What is `Registeel`'s `Defense` stat?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "229c668b", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.744325Z", + "iopub.status.busy": "2023-09-27T00:13:02.744325Z", + "iopub.status.idle": "2023-09-27T00:13:02.750764Z", + "shell.execute_reply": "2023-09-27T00:13:02.750764Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "registeel_defense = ...\n", + "\n", + "registeel_defense" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b3de1fcb", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q6\")" + ] + }, + { + "cell_type": "markdown", + "id": "d36a09fe", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 7:** What is `Mudkip`'s `Special Attack` stat?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fe242fbd", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.765864Z", + "iopub.status.busy": "2023-09-27T00:13:02.765864Z", + "iopub.status.idle": "2023-09-27T00:13:02.773623Z", + "shell.execute_reply": "2023-09-27T00:13:02.772609Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "mudkip_sp_atk = ...\n", + "\n", + "mudkip_sp_atk" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8a180002", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q7\")" + ] + }, + { + "cell_type": "markdown", + "id": "467d59ef", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 8:** What is `Kyogre`'s `Special Defense` stat?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ccc0212a", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.789353Z", + "iopub.status.busy": "2023-09-27T00:13:02.788356Z", + "iopub.status.idle": "2023-09-27T00:13:02.796388Z", + "shell.execute_reply": "2023-09-27T00:13:02.795374Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "kyogre_sp_def = ...\n", + "\n", + "kyogre_sp_def" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4bdae32a", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q8\")" + ] + }, + { + "cell_type": "markdown", + "id": "908cc7cd", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 9:** What is `Slowpoke`'s `Speed` stat?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "591d78f0", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.812601Z", + "iopub.status.busy": "2023-09-27T00:13:02.811601Z", + "iopub.status.idle": "2023-09-27T00:13:02.819387Z", + "shell.execute_reply": "2023-09-27T00:13:02.818374Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "slowpoke_speed = ...\n", + "\n", + "slowpoke_speed" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5092cf10", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q9\")" + ] + }, + { + "cell_type": "markdown", + "id": "2801817c", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 10:** What is the `type effectiveness` of a `Water` type attack **against** a `Rock` type opponent?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "37fc2b0c", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.832963Z", + "iopub.status.busy": "2023-09-27T00:13:02.832963Z", + "iopub.status.idle": "2023-09-27T00:13:02.840157Z", + "shell.execute_reply": "2023-09-27T00:13:02.839144Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "# do NOT hardcode, instead make sure to use the relevant function from the project module\n", + "# inspect or read the documentation of all the functions in the project if you are not sure which one to call\n", + "\n", + "water_rock_effectiveness = ...\n", + "\n", + "water_rock_effectiveness" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4742e63b", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q10\")" + ] + }, + { + "cell_type": "markdown", + "id": "425dd4fb-031d-4994-a33d-1e760c704e14", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Segment 3: Conditional Statements\n", + "\n", + "You will now use conditional statements to answer a few interesting questions about some Pokémon." + ] + }, + { + "cell_type": "markdown", + "id": "d8125dc5", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 3.1: Exploring the `project.get_region` function" + ] + }, + { + "cell_type": "markdown", + "id": "8886df1c", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 11:** Is `Pikachu` from `Kanto`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "83521844", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.853614Z", + "iopub.status.busy": "2023-09-27T00:13:02.853614Z", + "iopub.status.idle": "2023-09-27T00:13:02.861023Z", + "shell.execute_reply": "2023-09-27T00:13:02.861023Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# complete the following code that checks if the Pokémon 'Pikachu' comes from the 'Kanto' region.\n", + "\n", + "pokemon = \"Pikachu\"\n", + "if ...:\n", + " is_from_kanto_msg = pokemon + ' is from the Kanto region'\n", + "else:\n", + " is_from_kanto_msg = pokemon + ' is not from the Kanto region'\n", + "\n", + "is_from_kanto_msg" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "26f0648c", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q11\")" + ] + }, + { + "cell_type": "markdown", + "id": "5bab9d65", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "What is the output of the above cell? If you change the name of the Pokémon from `Pikachu` to `Greninja`, does the output change? What happens if you use a bad name (such as `cs220`, which is not the name of any Pokémon)?" + ] + }, + { + "cell_type": "markdown", + "id": "54ca4a90", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 3.2: Helper functions - `compare_hp`" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "45e23367-a681-462e-85ea-2e35bc259fda", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.875850Z", + "iopub.status.busy": "2023-09-27T00:13:02.874848Z", + "iopub.status.idle": "2023-09-27T00:13:02.881084Z", + "shell.execute_reply": "2023-09-27T00:13:02.880073Z" + } + }, + "outputs": [], + "source": [ + "# run the following code and observe the output\n", + "\n", + "if project.get_hp('Snorlax') >= project.get_hp('Heracross'):\n", + " print('Snorlax')\n", + "else:\n", + " print('Heracross')" + ] + }, + { + "cell_type": "markdown", + "id": "81d4b098", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "In P4, you will regularly have to compare the stats of different Pokémon. \n", + "So, let's create a **helper function** here. Helper functions are simple functions that are called by other functions that perform more complicated tasks." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ad0797e5-ab11-411b-82ba-b28651774fd7", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.886084Z", + "iopub.status.busy": "2023-09-27T00:13:02.885084Z", + "iopub.status.idle": "2023-09-27T00:13:02.890215Z", + "shell.execute_reply": "2023-09-27T00:13:02.890215Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# the function should return the name of the Pokémon with the higher HP\n", + "# if both Pokémon have the same HP, your function should return the name of the first Pokémon\n", + "# finish coding this function by removing the '...' and replacing them with valid variable names\n", + "\n", + "def compare_hp(pkmn1, pkmn2): # DO NOT EDIT THIS LINE\n", + " if project.get_hp(...) >= project.get_hp(...):\n", + " return ...\n", + " else:\n", + " return ..." + ] + }, + { + "cell_type": "markdown", + "id": "2c055cc1", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 12:** Use the `compare_hp` function to determine whether `Snorlax` or `Heracross` has the higher HP." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9f8bb028-1d19-432c-abba-9398590ac5b0", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.896226Z", + "iopub.status.busy": "2023-09-27T00:13:02.895229Z", + "iopub.status.idle": "2023-09-27T00:13:02.902470Z", + "shell.execute_reply": "2023-09-27T00:13:02.901460Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# call your function for the Pokémon Snorlax and Heracross to see which Pokémon has the higher HP stat\n", + "# replace the ... with your code\n", + "compare_hp_snorlax_heracross = ...\n", + "\n", + "compare_hp_snorlax_heracross" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b4290d3d", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q12\")" + ] + }, + { + "cell_type": "markdown", + "id": "1bde9180-9f33-4057-ab34-87ddcf93c09b", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 3.3: Helper functions - `compare_speed`\n", + "\n", + "Now, you will create another similar helper function.\n", + "- this function will return the name of the Pokémon with the higher `Speed` stat.\n", + "- if both Pokémon have the *same* `Speed` stat, this function will return `'Draw'`.\n", + "\n", + "The idea behind creating such helper functions is that if in P4 you need to quickly check which Pokémon has a higher `Speed` stat, you can simply call this function, without writing all this code again.\n", + "\n", + "**Note:** If you want to call this function from your `p4.ipynb` notebook, you will have to copy/paste this definition there." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5e58f5ee-e5c0-41fa-8fb3-93de7e1fdab7", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.916063Z", + "iopub.status.busy": "2023-09-27T00:13:02.916063Z", + "iopub.status.idle": "2023-09-27T00:13:02.922304Z", + "shell.execute_reply": "2023-09-27T00:13:02.921291Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# the function should return the name of the Pokémon with the higher Speed\n", + "# if both Pokémon have the same Speed stat, this function should return 'Draw'\n", + "def compare_speed(pkmn1, pkmn2): # DO NOT EDIT THIS LINE\n", + " pass # replace this with your code" + ] + }, + { + "cell_type": "markdown", + "id": "8d743195", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 13:** What is the output of `compare_speed(\"Bulbasaur\", \"Charmander\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a8ec214d-3d38-4511-b7a7-29a729de5660", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.927306Z", + "iopub.status.busy": "2023-09-27T00:13:02.927306Z", + "iopub.status.idle": "2023-09-27T00:13:02.935277Z", + "shell.execute_reply": "2023-09-27T00:13:02.934268Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_speed_bulbasaur_charmander = compare_speed(\"Bulbasaur\", \"Charmander\")\n", + "\n", + "compare_speed_bulbasaur_charmander" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b5f46a3d", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q13\")" + ] + }, + { + "cell_type": "markdown", + "id": "2d574fd5", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 14:** What is the output of `compare_speed(\"Beedrill\", \"Pidgey\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4655f5ca-2e48-4401-ab39-0d1033424b14", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.949286Z", + "iopub.status.busy": "2023-09-27T00:13:02.949286Z", + "iopub.status.idle": "2023-09-27T00:13:02.956652Z", + "shell.execute_reply": "2023-09-27T00:13:02.955640Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_speed_beedrill_pidgey = compare_speed(\"Beedrill\", \"Pidgey\")\n", + "\n", + "compare_speed_beedrill_pidgey" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9a54784c", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q14\")" + ] + }, + { + "cell_type": "markdown", + "id": "b2df2bba", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 15:** What is the output of `compare_speed(\"Fennekin\", \"Sylveon\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "20907d78", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.971668Z", + "iopub.status.busy": "2023-09-27T00:13:02.971668Z", + "iopub.status.idle": "2023-09-27T00:13:02.978422Z", + "shell.execute_reply": "2023-09-27T00:13:02.977412Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_speed_fennekin_sylveon = compare_speed(\"Fennekin\", \"Sylveon\")\n", + "\n", + "compare_speed_fennekin_sylveon" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4cd4d412", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q15\")" + ] + }, + { + "cell_type": "markdown", + "id": "a92f746a", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 3.4 More helper functions\n", + "\n", + "You will now create the following function - `compare_stat_total(pkmn1, pkmn2)`\n", + "- this function will return the name of the Pokémon which has the higher total of `HP` + `Attack` + `Defense` + `Sp. Atk.` + `Sp. Def.` + `Speed`.\n", + "- if both Pokémon have the *same* total, this function will return `'Draw'`.\n", + "\n", + "Before you start defining this function, it would be a good idea to create another **helper** function. It will be inefficient to write the same code to find the stat total for both `pkmn1` and `pkmn2`. So, you might find it useful to create another function `get_stat_total(pkmn)` to compute this total, and then use this function inside `compare_stat_total`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "08139bfa", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:02.992034Z", + "iopub.status.busy": "2023-09-27T00:13:02.992034Z", + "iopub.status.idle": "2023-09-27T00:13:02.998418Z", + "shell.execute_reply": "2023-09-27T00:13:02.997407Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# this function should return the total hp + attack + defense + sp. atk. + sp. def. + speed stats of the given pkmn\n", + "\n", + "def get_stat_total(pkmn):\n", + " pass # replace this with your code" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "703a4012", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.002418Z", + "iopub.status.busy": "2023-09-27T00:13:03.001419Z", + "iopub.status.idle": "2023-09-27T00:13:03.008489Z", + "shell.execute_reply": "2023-09-27T00:13:03.007478Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# the function should return the name of the Pokémon with the higher stat total\n", + "# if both Pokémon have the same total, this function should return 'Draw'\n", + "# you MUST call the get_stat_total function here\n", + "\n", + "def compare_stat_total(pkmn1, pkmn2): # DO NOT EDIT THIS LINE\n", + " pass # replace this with your code" + ] + }, + { + "cell_type": "markdown", + "id": "a410a85d", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "If your `get_stat_total` function works properly, you should get the following outputs:\n", + "1. `get_stat_total('Piplup')`: 314\n", + "2. `get_stat_total('Torchic')`: 310\n", + "3. `get_stat_total('Rowlet')`: 320\n", + "4. `get_stat_total('Quaxly')`: 310\n", + "\n", + "Yo can test this by adding a new cell (refer to Task 2.3 to see how), and calling your function there to confirm that the outputs match up with the numbers here." + ] + }, + { + "cell_type": "markdown", + "id": "f8f43ed9", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 16:** What is the output of `compare_stat_total(\"Arcanine\", \"Carnivine\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fb4c1970", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.012489Z", + "iopub.status.busy": "2023-09-27T00:13:03.012489Z", + "iopub.status.idle": "2023-09-27T00:13:03.019792Z", + "shell.execute_reply": "2023-09-27T00:13:03.018781Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_stat_total_arcanine_carnivine = compare_stat_total(\"Arcanine\", \"Carnivine\")\n", + "\n", + "compare_stat_total_arcanine_carnivine" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bff97a37", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q16\")" + ] + }, + { + "cell_type": "markdown", + "id": "a5947daa", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 17:** What is the output of `compare_stat_total(\"Inteleon\", \"Cinderace\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b53acf9b", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.034525Z", + "iopub.status.busy": "2023-09-27T00:13:03.033522Z", + "iopub.status.idle": "2023-09-27T00:13:03.042213Z", + "shell.execute_reply": "2023-09-27T00:13:03.041202Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_stat_total_inteleon_cinderace = compare_stat_total(\"Inteleon\", \"Cinderace\")\n", + "\n", + "compare_stat_total_inteleon_cinderace" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c93cc3c3", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q17\")" + ] + }, + { + "cell_type": "markdown", + "id": "731c7548", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 18:** What is the output of `compare_stat_total(\"Gyarados\", \"Lugia\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "16e7a890", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.056781Z", + "iopub.status.busy": "2023-09-27T00:13:03.055779Z", + "iopub.status.idle": "2023-09-27T00:13:03.063467Z", + "shell.execute_reply": "2023-09-27T00:13:03.062452Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_stat_total_gyarados_lugia = compare_stat_total(\"Gyarados\", \"Lugia\")\n", + "\n", + "compare_stat_total_gyarados_lugia" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b851fcba", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q18\")" + ] + }, + { + "cell_type": "markdown", + "id": "4038a83b", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Segment 4: Advanced Conditional Statements\n", + "\n", + "So far, we have only used if/else statements to compare numbers. Let us do something fancier now. As you might have seen in the `pokemon_stats.csv` file, a Pokémon might have one or more types. For instance, `Pikachu` has just one type: `Electric`, whereas `Charizard` has two: `Fire` and `Flying`." + ] + }, + { + "cell_type": "markdown", + "id": "8beb030c", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 4.1: Count how many types a Pokémon has\n", + "\n", + "Pokémon may have up to two different types associated with them. Let's write a function that returns the number of types a Pokémon has." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b7d7e844", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.079307Z", + "iopub.status.busy": "2023-09-27T00:13:03.078310Z", + "iopub.status.idle": "2023-09-27T00:13:03.086179Z", + "shell.execute_reply": "2023-09-27T00:13:03.085167Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# this function should return 0 if type1 is 'DNE', 1 if type1 is not 'DNE' but type2 is, and 2 if neither type is 'DNE'\n", + "# replace the '...' from the code below to complete the get_num_types function\n", + "def get_num_types(pkmn):\n", + " if project.get_type1(pkmn) == 'DNE':\n", + " return 0\n", + " elif project.get_type2(pkmn) == 'DNE':\n", + " return ...\n", + " else:\n", + " return ..." + ] + }, + { + "cell_type": "markdown", + "id": "5f3cd391", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 19:** What is the output of `get_num_types(\"Kubfu\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cb0e1f66", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.092179Z", + "iopub.status.busy": "2023-09-27T00:13:03.091178Z", + "iopub.status.idle": "2023-09-27T00:13:03.099521Z", + "shell.execute_reply": "2023-09-27T00:13:03.098511Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "get_num_types_kubfu = get_num_types(\"Kubfu\")\n", + "\n", + "get_num_types_kubfu" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5feec45d", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q19\")" + ] + }, + { + "cell_type": "markdown", + "id": "bcc560c0", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 20:** What is the output of `get_num_types(\"Dragapult\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bea0d0a1", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.116176Z", + "iopub.status.busy": "2023-09-27T00:13:03.115175Z", + "iopub.status.idle": "2023-09-27T00:13:03.123158Z", + "shell.execute_reply": "2023-09-27T00:13:03.122144Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "get_num_types_dragapult = get_num_types(\"Dragapult\")\n", + "\n", + "get_num_types_dragapult" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d41d9d40", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q20\")" + ] + }, + { + "cell_type": "markdown", + "id": "01be1d87-5da5-41e8-9acc-777c4eba3862", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 4.2: Determine if two Pokémon have a matching type.\n", + "Let us create a function that checks if two Pokémon have the same types." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9b89e23b-b0d1-4d36-989b-1d2e9aa1bae8", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.138523Z", + "iopub.status.busy": "2023-09-27T00:13:03.137523Z", + "iopub.status.idle": "2023-09-27T00:13:03.144520Z", + "shell.execute_reply": "2023-09-27T00:13:03.144520Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# we have written this function for you - can you figure out what is going on?\n", + "# if you want to improve this function, make edits right here; do NOT redefine this function elsewhere\n", + "def same_types(pkmn1, pkmn2): \n", + " if project.get_type1(pkmn1) == project.get_type1(pkmn2):\n", + " if project.get_type2(pkmn1) == project.get_type2(pkmn2):\n", + " return True\n", + " return False" + ] + }, + { + "cell_type": "markdown", + "id": "27a662b9", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 4.3: Debugging I\n", + "\n", + "There is a **semantic error** in the function definition above! Can you spot it? If not, see the output of the cell below to understand what the error is.\n", + "\n", + "Once identified, you **must** modify the function definition above to fix the bug.\n", + "\n", + "**Do not create a new copy of / duplicate the `same_types` function definition.** You should go back to the cell where the function is already defined, make edits by adding several lines or possibly rewriting the code already there, and then re-run the function definition cell." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ec96b7d8", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.151536Z", + "iopub.status.busy": "2023-09-27T00:13:03.150536Z", + "iopub.status.idle": "2023-09-27T00:13:03.157580Z", + "shell.execute_reply": "2023-09-27T00:13:03.156564Z" + } + }, + "outputs": [], + "source": [ + "# look at the stats below - what does `same_types` do when these Pokémon are your inputs?\n", + "# what should it do instead?\n", + "\n", + "project.print_stats(\"Dragonite\")\n", + "print()\n", + "project.print_stats(\"Noivern\")" + ] + }, + { + "cell_type": "markdown", + "id": "a6432e11", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 21:** Do `Dragonite` and `Noivern` have the same types?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ede973b1", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.162578Z", + "iopub.status.busy": "2023-09-27T00:13:03.161582Z", + "iopub.status.idle": "2023-09-27T00:13:03.169248Z", + "shell.execute_reply": "2023-09-27T00:13:03.168237Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# go back and edit the definition of the `same_types` function so that the output for this cell is correct\n", + "same_types_dragonite_noivern = same_types(\"Dragonite\", \"Noivern\")\n", + "\n", + "same_types_dragonite_noivern" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bd72e96b", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q21\")" + ] + }, + { + "cell_type": "markdown", + "id": "98e63b82", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Segment 5: Modify Previous functions\n", + "\n", + "### Task 5.1: Use Boolean operators to refactor `same_types`\n", + "\n", + "Some of the code you have written above may be messy and hard to read. We will now **refactor** the definition of the function `same_types` - which is just a fancy way of saying that we will make the code a little easier to read, by making efficient use of Boolean and logical operators.\n", + "\n", + "We will provide you with a code snippet, but you must fill in the rest yourself." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5cd1885e", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.185810Z", + "iopub.status.busy": "2023-09-27T00:13:03.184810Z", + "iopub.status.idle": "2023-09-27T00:13:03.191993Z", + "shell.execute_reply": "2023-09-27T00:13:03.191993Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# this function does the same thing as `same_types` but will hopefully be a little easier to read\n", + "# replace the '...' from the below code with appropriate operators/Boolean expressions:\n", + "\n", + "def same_types_refactored(pkmn1, pkmn2):\n", + " pkmn1_type1 = project.get_type1(pkmn1)\n", + " pkmn1_type2 = project.get_type2(pkmn1)\n", + " pkmn2_type1 = project.get_type1(pkmn2)\n", + " pkmn2_type2 = project.get_type2(pkmn2)\n", + " \n", + " if pkmn1_type1 == pkmn2_type1 ... pkmn1_type2 == pkmn2_type2: # replace ... with appropriate logical operator\n", + " return True\n", + " elif ...: # replace ... with an appropriate Boolean expression\n", + " return True \n", + " return False" + ] + }, + { + "cell_type": "markdown", + "id": "9a388d20", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 22:** What is the output of `same_types_refactored(\"Dewgong\", \"Spheal\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c65b101b", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.198004Z", + "iopub.status.busy": "2023-09-27T00:13:03.198004Z", + "iopub.status.idle": "2023-09-27T00:13:03.204473Z", + "shell.execute_reply": "2023-09-27T00:13:03.204473Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything (for now)\n", + "same_types_refactored_dewgong_spheal = same_types_refactored(\"Dewgong\", \"Spheal\")\n", + "\n", + "same_types_refactored_dewgong_spheal" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cfd09381", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q22\")" + ] + }, + { + "cell_type": "markdown", + "id": "3721dedf", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 5.1.1: Good coding practices\n", + "\n", + "It is generally considered a **bad coding practice** to define two different functions that do the same or very similar things. We have currently defined two functions, `same_types` and `same_types_refactored`, which do the same thing. In such circumstances, we should **delete** one of these functions, and **replace** all calls to the deleted function with calls to the remaining function.\n", + "\n", + "Here, you **must** delete your definition of `same_types`. Follow the steps below:\n", + "1. **Delete** the definition of `same_types` from above.\n", + "2. **Cut and paste** your definition of `same_types_refactored` in place of the (now deleted) definition of `same_types`.\n", + "3. The definition of `same_types_refactored` **must** appear **before** any calls to either `same_types_refactored` or `same_types`.\n", + "4. **Replace** the name `same_types_refactored` with `same_types`.\n", + "5. **Replace** all calls to the function `same_types_refactored` with `same_types`.\n", + "\n", + "The result should be that there is **one** definition of `same_types` and **no** definitions of `same_types_refactored`." + ] + }, + { + "cell_type": "markdown", + "id": "11e8e684", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 5.2: Write the function `same_region`\n", + "Write a new function that checks if two Pokémon come from the **same region**." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e84faa83", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.223553Z", + "iopub.status.busy": "2023-09-27T00:13:03.222553Z", + "iopub.status.idle": "2023-09-27T00:13:03.227847Z", + "shell.execute_reply": "2023-09-27T00:13:03.227847Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# this function should return True if pkmn1 and pkmn2 both come from the same region, and False otherwise\n", + "def same_region(pkmn1, pkmn2): # DO NOT EDIT THIS LINE\n", + " pass # replace with your code" + ] + }, + { + "cell_type": "markdown", + "id": "180434ef", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 23:** What is the output of `same_region(\"Dialga\", \"Palkia\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "19456368", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.232858Z", + "iopub.status.busy": "2023-09-27T00:13:03.231855Z", + "iopub.status.idle": "2023-09-27T00:13:03.239800Z", + "shell.execute_reply": "2023-09-27T00:13:03.238789Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "same_region_dialga_palkia = ...\n", + "\n", + "same_region_dialga_palkia" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7a6356fb", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q23\")" + ] + }, + { + "cell_type": "markdown", + "id": "42e412df", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 5.3: Write the function `same_types_and_region`\n", + "Write a new function that checks if two Pokémon are of the same type **and** come from the same region. You **must** use the functions we created in Task 5.1 and Task 5.2." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "23520153", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.254344Z", + "iopub.status.busy": "2023-09-27T00:13:03.254344Z", + "iopub.status.idle": "2023-09-27T00:13:03.260121Z", + "shell.execute_reply": "2023-09-27T00:13:03.259107Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# define the function same_types_and_region(pkmn1, pkmn2) here\n", + "# this function should return True if pkmn1 and pkmn2 are from the same region and have the same type\n", + "# this function should return False otherwise" + ] + }, + { + "cell_type": "markdown", + "id": "528b3af1", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "You will have to answer the next few questions by calling the `same_types_and_region` function defined above. If you do not pass any of the tests below, debug your code as you did in Task 4.3 above - use `print_stats` to print the stats of the Pokémon which cause your code to fail, and go through your code line by line to verify that your code is doing what it is supposed to be doing." + ] + }, + { + "cell_type": "markdown", + "id": "ea40405b", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 24:** What is the output of `same_types_and_region(\"Bulbasaur\", \"Ivysaur\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6f45ba77", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.266121Z", + "iopub.status.busy": "2023-09-27T00:13:03.266121Z", + "iopub.status.idle": "2023-09-27T00:13:03.273331Z", + "shell.execute_reply": "2023-09-27T00:13:03.273331Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "same_types_and_region_bulbasaur_ivysaur = ...\n", + "\n", + "same_types_and_region_bulbasaur_ivysaur" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fdc3350d", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q24\")" + ] + }, + { + "cell_type": "markdown", + "id": "a20c3e61", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 25:** What is the output of `same_types_and_region(\"Zangoose\", \"Rattata\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "73aa43eb", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.289203Z", + "iopub.status.busy": "2023-09-27T00:13:03.289203Z", + "iopub.status.idle": "2023-09-27T00:13:03.298110Z", + "shell.execute_reply": "2023-09-27T00:13:03.297098Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "same_types_and_region_zangoose_rattata = ...\n", + "\n", + "same_types_and_region_zangoose_rattata" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "84e3c0e7", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q25\")" + ] + }, + { + "cell_type": "markdown", + "id": "6e08241d", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 26:** What is the output of `same_types_and_region(\"Espeon\", \"Umbreon\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "79e4a696", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.313730Z", + "iopub.status.busy": "2023-09-27T00:13:03.313730Z", + "iopub.status.idle": "2023-09-27T00:13:03.321330Z", + "shell.execute_reply": "2023-09-27T00:13:03.320316Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "same_types_and_region_espeon_umbreon = ...\n", + "\n", + "same_types_and_region_espeon_umbreon" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "59765336", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q26\")" + ] + }, + { + "cell_type": "markdown", + "id": "59bc31f5", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 27:** What is the output of `same_types_and_region(\"Gible\", \"Golbat\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "68d3c1f1", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.336166Z", + "iopub.status.busy": "2023-09-27T00:13:03.336166Z", + "iopub.status.idle": "2023-09-27T00:13:03.346084Z", + "shell.execute_reply": "2023-09-27T00:13:03.346084Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "same_types_and_region_gible_golbat = ...\n", + "\n", + "same_types_and_region_gible_golbat" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5a33ab6f", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q27\")" + ] + }, + { + "cell_type": "markdown", + "id": "fb8ef95b", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 28:** What is the output of `same_types_and_region(\"Rhydon\", \"Golem\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "21eb1b0a", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.363932Z", + "iopub.status.busy": "2023-09-27T00:13:03.362932Z", + "iopub.status.idle": "2023-09-27T00:13:03.372083Z", + "shell.execute_reply": "2023-09-27T00:13:03.371059Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "same_types_and_region_rhydon_golem = ...\n", + "\n", + "same_types_and_region_rhydon_golem" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "08449b61", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q28\")" + ] + }, + { + "cell_type": "markdown", + "id": "b8b8cc77", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Task 5.4: Write a function that determines the stronger type\n", + "\n", + "In P4, you will have to compare the strengths of different types against each other. The `get_type_effectiveness` function in `project.py` will be useful for us here. Given two types `type1` and `type2`, we can use that function to find the effectiveness of `type1` against `type2`, and also, the effectiveness of `type2` against `type1`. So, we can compare the effectiveness of the two types against each other, to determine which is stronger. \n", + "\n", + "- Write a function that determines the stronger type out of two." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "054f5a99", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.387913Z", + "iopub.status.busy": "2023-09-27T00:13:03.387913Z", + "iopub.status.idle": "2023-09-27T00:13:03.395314Z", + "shell.execute_reply": "2023-09-27T00:13:03.394302Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code to finish this function definition\n", + "def stronger_type(type1, type2):\n", + " '''stronger_type(type1, type2) determines which of the two\n", + " types is stronger by checking if the effectiveness of type1\n", + " against type2 is greater than, lesser than or equal to the\n", + " effectiveness of type2 against type1'''\n", + " type_1_effectiveness = project.get_type_effectiveness(..., ...)\n", + " type_2_effectiveness = ...\n", + " if ...:\n", + " return type1 + \" is stronger than \" + type2\n", + " elif ...:\n", + " return type2 + \" is stronger than \" + type1\n", + " else:\n", + " return type1 + \" and \" + type2 + \" are equally strong\"" + ] + }, + { + "cell_type": "markdown", + "id": "aa861c96", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 29:** What is the output of `stronger_type(\"Fire\", \"Grass\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5c442610", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.401193Z", + "iopub.status.busy": "2023-09-27T00:13:03.400193Z", + "iopub.status.idle": "2023-09-27T00:13:03.407653Z", + "shell.execute_reply": "2023-09-27T00:13:03.406636Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "stronger_type_fire_grass = ...\n", + "\n", + "stronger_type_fire_grass" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e636cd9c", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q29\")" + ] + }, + { + "cell_type": "markdown", + "id": "37c235d1", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Segment 6: Fixing Indentation\n", + "\n", + "### Task 6.1: Debugging II\n", + "\n", + "The `def` and `if` statements you used in the functions above are two of the statements in Python that use different levels of **indentation** to encode the meaning of the statement. This means, by just changing the indentation level of some code, you might get invalid code that has a **syntax error** or you might get **valid code** that gives a different, **incorrect result**. Therefore, it is an important skill to decide on the **correct indentation level** for and to recognize a wrong indentation level in a piece of code.\n", + "\n", + "For each of the following questions, you will be provided with a function which has either **syntax/semantic errors** because of **bad indentation**. You **must** fix the indentation to make the functions work as intended. Note that you **must** fix the errors **only by changing the indentation**, and **not** by writing any code of your own." + ] + }, + { + "cell_type": "markdown", + "id": "336d48eb", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 30:** Fix the indentation errors in the `compare_sp_atk` function below." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "43e86173", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.423335Z", + "iopub.status.busy": "2023-09-27T00:13:03.422335Z", + "iopub.status.idle": "2023-09-27T00:13:03.429802Z", + "shell.execute_reply": "2023-09-27T00:13:03.428792Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# fix any indentation errors you find in the code below\n", + "\n", + "def compare_sp_atk(pkmn1, pkmn2):\n", + " '''compare_sp_atk(pkmn1, pkmn2) returns the name of the Pokemon\n", + " with the higher sp atk stat.\n", + " If both Pokemon have the same sp atk stat, the function returns\n", + " the string \"Draw\"'''\n", + " if project.get_sp_atk(pkmn1) > project.get_sp_atk(pkmn2):\n", + " return pkmn1\n", + " elif project.get_sp_atk(pkmn1) < project.get_sp_atk(pkmn2):\n", + " return pkmn2\n", + " else:\n", + " return 'Draw'" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ed70ff9c", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.433803Z", + "iopub.status.busy": "2023-09-27T00:13:03.432803Z", + "iopub.status.idle": "2023-09-27T00:13:03.440053Z", + "shell.execute_reply": "2023-09-27T00:13:03.440053Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_sp_atk_squirtle_charmander = compare_sp_atk(\"Squirtle\", \"Charmander\")\n", + "\n", + "compare_sp_atk_squirtle_charmander" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3f38a7f0", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q30\")" + ] + }, + { + "cell_type": "markdown", + "id": "cd1c4301", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 31:** Fix the indentation errors in the `compare_atk` function below.\n", + "\n", + "Unlike the previous function definition, this one has a **semantic** error, i.e., the code executes without any syntax errors, but the logic behind the code is incorrect. Fix the indentation, so that the code behaves as it is supposed to.\n", + "\n", + "**Hint:** If you are having trouble identifying the error, you should try tracing through the code using the test examples. For instance, you could insert a new cell and use the `project.print_stats` function to display the stats of `Aron` and `Gible`, then go through the function line by line to confirm that it behaves as it ought to." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3e66b278", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.456024Z", + "iopub.status.busy": "2023-09-27T00:13:03.456024Z", + "iopub.status.idle": "2023-09-27T00:13:03.465336Z", + "shell.execute_reply": "2023-09-27T00:13:03.464323Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# fix any indentation errors you find in the code below\n", + "\n", + "def compare_atk(pkmn1, pkmn2):\n", + " '''compare_atk(pkmn1, pkmn2) returns the name of the Pokemon\n", + " with the higher attack stat.\n", + " If both Pokemon have the same attack stat, the function returns\n", + " the string \"Draw\"'''\n", + " if project.get_attack(pkmn1) > project.get_attack(pkmn2):\n", + " return pkmn1\n", + " elif project.get_attack(pkmn1) < project.get_attack(pkmn2):\n", + " return pkmn2\n", + " if project.get_attack(pkmn1) == project.get_attack(pkmn2):\n", + " return 'Draw'" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "60de5b95", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.469337Z", + "iopub.status.busy": "2023-09-27T00:13:03.469337Z", + "iopub.status.idle": "2023-09-27T00:13:03.478318Z", + "shell.execute_reply": "2023-09-27T00:13:03.477306Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_atk_aron_gible = compare_atk(\"Aron\", \"Gible\")\n", + "\n", + "compare_atk_aron_gible" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c8429393", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q31\")" + ] + }, + { + "cell_type": "markdown", + "id": "b1258413", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 32:** Fix the indentation errors in the `compare_defense_total` function below.\n", + "\n", + "This function definition has a **semantic** error, i.e., the code executes without any syntax errors, but the logic behind the code is incorrect. Fix the indentation, so that the code behaves as it is supposed to.\n", + "\n", + "**Hint:** If you are having trouble identifying the error, you should try tracing through the code using the test examples. For instance, you could insert a new cell and use the `project.print_stats` function to display the stats of `Thundurus` and `Tornadus`, then go through the function line by line to confirm that it behaves as it ought to." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e1a3782a", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.492745Z", + "iopub.status.busy": "2023-09-27T00:13:03.492235Z", + "iopub.status.idle": "2023-09-27T00:13:03.498287Z", + "shell.execute_reply": "2023-09-27T00:13:03.498287Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# fix any indentation errors you find in the code below\n", + "\n", + "def get_defense_total(pkmn):\n", + " return project.get_defense(pkmn) + project.get_sp_def(pkmn)\n", + "\n", + "def compare_defense_total(pkmn1, pkmn2):\n", + " '''compare_defense_total(pkmn1, pkmn2) returns the name of the Pokemon\n", + " with the higher defense + sp def stat.\n", + " If both Pokemon have the same defense + sp def, the function returns\n", + " the string \"Draw\"'''\n", + " if get_defense_total(pkmn1) > get_defense_total(pkmn2):\n", + " return pkmn1\n", + " elif get_defense_total(pkmn1) <= get_defense_total(pkmn2):\n", + " if get_defense_total(pkmn1) < get_defense_total(pkmn2):\n", + " return pkmn2\n", + " else:\n", + " return 'Draw'" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "35ef6ce1", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.503299Z", + "iopub.status.busy": "2023-09-27T00:13:03.503299Z", + "iopub.status.idle": "2023-09-27T00:13:03.509085Z", + "shell.execute_reply": "2023-09-27T00:13:03.509085Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_defense_total_thundurus_tornadus = compare_defense_total(\"Thundurus\", \"Tornadus\")\n", + "\n", + "compare_defense_total_thundurus_tornadus" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7bbfe444", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q32\")" + ] + }, + { + "cell_type": "markdown", + "id": "c98101b7", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 33:** Fix the indentation errors in the `compare_attacks` function below.\n", + "\n", + "This function definition has a **semantic** error, i.e., the code executes without any syntax errors, but the logic behind the code is incorrect. Fix the indentation, so that the code behaves as it is supposed to.\n", + "\n", + "**Hint:** If you are having trouble identifying the error, you should try tracing through the code using the test examples. For instance, you could insert a new cell and use the `project.print_stats` function to display the stats of `Hoppip` and `Skiploom`, then go through the function line by line to confirm that it behaves as it ought to." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a8de61da", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.523512Z", + "iopub.status.busy": "2023-09-27T00:13:03.523512Z", + "iopub.status.idle": "2023-09-27T00:13:03.531650Z", + "shell.execute_reply": "2023-09-27T00:13:03.530638Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# fix any indentation errors you find in the code below\n", + "\n", + "def compare_attacks(pkmn1, pkmn2):\n", + " '''compare_attacks(pkmn1, pkmn2) returns the name of the Pokemon\n", + " with both higher attack and higher sp atk\n", + " If neither Pokemon has both a higher attack and a higher sp atk, \n", + " the function returns the string \"Draw\"'''\n", + " if project.get_attack(pkmn1) > project.get_attack(pkmn2):\n", + " if project.get_sp_atk(pkmn1) > project.get_sp_atk(pkmn2):\n", + " return pkmn1\n", + " elif project.get_sp_atk(pkmn1) <= project.get_sp_atk(pkmn2):\n", + " return \"Draw\"\n", + " elif project.get_attack(pkmn1) < project.get_attack(pkmn2):\n", + " if project.get_sp_atk(pkmn1) < project.get_sp_atk(pkmn2):\n", + " return pkmn2\n", + " elif project.get_sp_atk(pkmn1) >= project.get_sp_atk(pkmn2):\n", + " return \"Draw\"\n", + " else:\n", + " return \"Draw\"" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bee45f46", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.535650Z", + "iopub.status.busy": "2023-09-27T00:13:03.535650Z", + "iopub.status.idle": "2023-09-27T00:13:03.541226Z", + "shell.execute_reply": "2023-09-27T00:13:03.541226Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_attacks_hoppip_skiploom = compare_attacks(\"Hoppip\", \"Skiploom\")\n", + "\n", + "compare_attacks_hoppip_skiploom" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "aa008c7f", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q33\")" + ] + }, + { + "cell_type": "markdown", + "id": "c55e07de", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 34:** Fix the indentation errors in the `compare_speed_region` function below.\n", + "\n", + "This function definition has a **semantic** error, i.e., the code executes without any syntax errors, but the logic behind the code is incorrect. Fix the indentation, so that the code behaves as it is supposed to.\n", + "\n", + "**Hint:** If you are having trouble identifying the error, you should try tracing through the code using the test examples. For instance, you could insert a new cell and use the `project.print_stats` function to display the stats of `Turtwig`, `Chimchar`, `Lunala`, and `Solgaleo`, then go through the function line by line to confirm that it behaves as it ought to." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cb23a7bc", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.557684Z", + "iopub.status.busy": "2023-09-27T00:13:03.557684Z", + "iopub.status.idle": "2023-09-27T00:13:03.563891Z", + "shell.execute_reply": "2023-09-27T00:13:03.563891Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# fix any indentation errors you find in the code below\n", + "\n", + "def compare_speed_region(pkmn1, pkmn2):\n", + " '''If the Pokemon are from the same region,\n", + " compare_speed_region(pkmn1, pkmn2) returns the name of the Pokemon\n", + " with the higher speed stat and the string \"Draw\" if the Pokemon\n", + " have the same speed stat.\n", + " If the two Pokemon are from different regions, the function returns\n", + " the string \"Cannot race\"'''\n", + " if project.get_region(pkmn1) != project.get_region(pkmn2):\n", + " return 'Cannot race'\n", + " elif project.get_region(pkmn1) == project.get_region(pkmn2):\n", + " if project.get_speed(pkmn1) >= project.get_speed(pkmn2):\n", + " if project.get_speed(pkmn1) > project.get_speed(pkmn2):\n", + " return pkmn1\n", + " else:\n", + " return \"Draw\"\n", + " else:\n", + " return pkmn2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9130613f", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.569510Z", + "iopub.status.busy": "2023-09-27T00:13:03.568903Z", + "iopub.status.idle": "2023-09-27T00:13:03.576158Z", + "shell.execute_reply": "2023-09-27T00:13:03.575144Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_speed_region_turtwig_chimchar = compare_speed_region(\"Turtwig\", \"Chimchar\")\n", + "\n", + "compare_speed_region_turtwig_chimchar" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e90c7fa2", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q34\")" + ] + }, + { + "cell_type": "markdown", + "id": "99255fce", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 35:** What is the output of `compare_speed_region(\"Lunala\", \"Solgaleo\")`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3994774a", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:13:03.591538Z", + "iopub.status.busy": "2023-09-27T00:13:03.590539Z", + "iopub.status.idle": "2023-09-27T00:13:03.596902Z", + "shell.execute_reply": "2023-09-27T00:13:03.596902Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# execute this cell without changing anything\n", + "compare_speed_region_lunala_solgaleo = compare_speed_region(\"Lunala\", \"Solgaleo\")\n", + "\n", + "compare_speed_region_lunala_solgaleo" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "228092a2", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q35\")" + ] + }, + { + "cell_type": "markdown", + "id": "7c44e2c9-b4f9-4158-b019-87447ccefeed", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Great work! You are now ready to start [P4](https://git.doit.wisc.edu/cdis/cs/courses/cs220/cs220-f23-projects/-/tree/main/p4) and become a master Pokémon trainer." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.4" + }, + "otter": { + "OK_FORMAT": true, + "tests": { + "q1": { + "name": "q1", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q1', quaxly_region)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q10": { + "name": "q10", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q10', water_rock_effectiveness)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q11": { + "name": "q11", + "points": 3, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q11', is_from_kanto_msg)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q12": { + "name": "q12", + "points": 3, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q12', compare_hp_snorlax_heracross)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q13": { + "name": "q13", + "points": 2, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q13', compare_speed_bulbasaur_charmander)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q14": { + "name": "q14", + "points": 2, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q14', compare_speed_beedrill_pidgey)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q15": { + "name": "q15", + "points": 2, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q15', compare_speed_fennekin_sylveon)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q16": { + "name": "q16", + "points": 2, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q16', compare_stat_total_arcanine_carnivine)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q17": { + "name": "q17", + "points": 2, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q17', compare_stat_total_inteleon_cinderace)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q18": { + "name": "q18", + "points": 2, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q18', compare_stat_total_gyarados_lugia)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q19": { + "name": "q19", + "points": 3, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q19', get_num_types_kubfu)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q2": { + "name": "q2", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q2', scorbunny_type1)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q20": { + "name": "q20", + "points": 3, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q20', get_num_types_dragapult)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q21": { + "name": "q21", + "points": 5, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q21', same_types_dragonite_noivern)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q22": { + "name": "q22", + "points": 5, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q22', same_types_refactored_dewgong_spheal)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q23": { + "name": "q23", + "points": 3, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q23', same_region_dialga_palkia)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q24": { + "name": "q24", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q24', same_types_and_region_bulbasaur_ivysaur)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q25": { + "name": "q25", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q25', same_types_and_region_zangoose_rattata)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q26": { + "name": "q26", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q26', same_types_and_region_espeon_umbreon)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q27": { + "name": "q27", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q27', same_types_and_region_gible_golbat)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q28": { + "name": "q28", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q28', same_types_and_region_rhydon_golem)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q29": { + "name": "q29", + "points": 5, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q29', stronger_type_fire_grass)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q3": { + "name": "q3", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q3', koraidon_type2)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q30": { + "name": "q30", + "points": 5, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q30', compare_sp_atk_squirtle_charmander)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q31": { + "name": "q31", + "points": 5, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q31', compare_atk_aron_gible)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q32": { + "name": "q32", + "points": 5, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q32', compare_defense_total_thundurus_tornadus)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q33": { + "name": "q33", + "points": 5, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q33', compare_attacks_hoppip_skiploom)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q34": { + "name": "q34", + "points": 3, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q34', compare_speed_region_turtwig_chimchar)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q35": { + "name": "q35", + "points": 2, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q35', compare_speed_region_lunala_solgaleo)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q4": { + "name": "q4", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q4', mewtwo_hp)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q5": { + "name": "q5", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q5', rayquaza_attack)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q6": { + "name": "q6", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q6', registeel_defense)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q7": { + "name": "q7", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q7', mudkip_sp_atk)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q8": { + "name": "q8", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q8', kyogre_sp_def)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q9": { + "name": "q9", + "points": 1, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q9', slowpoke_speed)\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + } + } + }, + "vscode": { + "interpreter": { + "hash": "f08154012ddadd8e950e6e9e035c7a7b32c136e7647e9b7c77e02eb723a8bedb" + } + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/lab-p4/pokemon_stats.csv b/lab-p4/pokemon_stats.csv new file mode 100644 index 0000000000000000000000000000000000000000..68976ed15907eb09951350c570beb280f4f75901 --- /dev/null +++ b/lab-p4/pokemon_stats.csv @@ -0,0 +1,982 @@ +,Name,Attack,Defense,HP,Region,Sp. Atk,Sp. Def,Speed,Type 1,Type 2 +0,Bulbasaur,49,49,45,Kanto,65,65,45,Grass,Poison +1,Ivysaur,62,63,60,Kanto,80,80,60,Grass,Poison +2,Venusaur,82,83,80,Kanto,100,100,80,Grass,Poison +3,Charmander,52,43,39,Kanto,60,50,65,Fire,DNE +4,Charmeleon,64,58,58,Kanto,80,65,80,Fire,DNE +5,Charizard,84,78,78,Kanto,109,85,100,Fire,Flying +6,Squirtle,48,65,44,Kanto,50,64,43,Water,DNE +7,Wartortle,63,80,59,Kanto,65,80,58,Water,DNE +8,Blastoise,83,100,79,Kanto,85,105,78,Water,DNE +9,Caterpie,30,35,45,Kanto,20,20,45,Bug,DNE +10,Metapod,20,55,50,Kanto,25,25,30,Bug,DNE +11,Butterfree,45,50,60,Kanto,90,80,70,Bug,Flying +12,Weedle,35,30,40,Kanto,20,20,50,Bug,Poison +13,Kakuna,25,50,45,Kanto,25,25,35,Bug,Poison +14,Beedrill,90,40,65,Kanto,45,80,75,Bug,Poison +15,Pidgey,45,40,40,Kanto,35,35,56,Normal,Flying +16,Pidgeotto,60,55,63,Kanto,50,50,71,Normal,Flying +17,Pidgeot,80,75,83,Kanto,70,70,101,Normal,Flying +18,Rattata,56,35,30,Kanto,25,35,72,Normal,DNE +19,Raticate,81,60,55,Kanto,50,70,97,Normal,DNE +20,Spearow,60,30,40,Kanto,31,31,70,Normal,Flying +21,Fearow,90,65,65,Kanto,61,61,100,Normal,Flying +22,Ekans,60,44,35,Kanto,40,54,55,Poison,DNE +23,Arbok,95,69,60,Kanto,65,79,80,Poison,DNE +24,Pikachu,55,40,35,Kanto,50,50,90,Electric,DNE +25,Raichu,90,55,60,Kanto,90,80,110,Electric,DNE +26,Sandshrew,75,85,50,Kanto,20,30,40,Ground,DNE +27,Sandslash,100,110,75,Kanto,45,55,65,Ground,DNE +28,Nidorina,62,67,70,Kanto,55,55,56,Poison,DNE +29,Nidoqueen,92,87,90,Kanto,75,85,76,Poison,Ground +30,Nidorino,72,57,61,Kanto,55,55,65,Poison,DNE +31,Nidoking,102,77,81,Kanto,85,75,85,Poison,Ground +32,Clefairy,45,48,70,Kanto,60,65,35,Fairy,DNE +33,Clefable,70,73,95,Kanto,95,90,60,Fairy,DNE +34,Vulpix,41,40,38,Kanto,50,65,65,Fire,DNE +35,Ninetales,76,75,73,Kanto,81,100,100,Fire,DNE +36,Jigglypuff,45,20,115,Kanto,45,25,20,Normal,Fairy +37,Wigglytuff,70,45,140,Kanto,85,50,45,Normal,Fairy +38,Zubat,45,35,40,Kanto,30,40,55,Poison,Flying +39,Golbat,80,70,75,Kanto,65,75,90,Poison,Flying +40,Oddish,50,55,45,Kanto,75,65,30,Grass,Poison +41,Gloom,65,70,60,Kanto,85,75,40,Grass,Poison +42,Vileplume,80,85,75,Kanto,110,90,50,Grass,Poison +43,Paras,70,55,35,Kanto,45,55,25,Bug,Grass +44,Parasect,95,80,60,Kanto,60,80,30,Bug,Grass +45,Venonat,55,50,60,Kanto,40,55,45,Bug,Poison +46,Venomoth,65,60,70,Kanto,90,75,90,Bug,Poison +47,Diglett,55,25,10,Kanto,35,45,95,Ground,DNE +48,Dugtrio,100,50,35,Kanto,50,70,120,Ground,DNE +49,Meowth,45,35,40,Kanto,40,40,90,Normal,DNE +50,Persian,70,60,65,Kanto,65,65,115,Normal,DNE +51,Psyduck,52,48,50,Kanto,65,50,55,Water,DNE +52,Golduck,82,78,80,Kanto,95,80,85,Water,DNE +53,Mankey,80,35,40,Kanto,35,45,70,Fighting,DNE +54,Primeape,105,60,65,Kanto,60,70,95,Fighting,DNE +55,Growlithe,70,45,55,Kanto,70,50,60,Fire,DNE +56,Arcanine,110,80,90,Kanto,100,80,95,Fire,DNE +57,Poliwag,50,40,40,Kanto,40,40,90,Water,DNE +58,Poliwhirl,65,65,65,Kanto,50,50,90,Water,DNE +59,Poliwrath,95,95,90,Kanto,70,90,70,Water,Fighting +60,Abra,20,15,25,Kanto,105,55,90,Psychic,DNE +61,Kadabra,35,30,40,Kanto,120,70,105,Psychic,DNE +62,Alakazam,50,45,55,Kanto,135,95,120,Psychic,DNE +63,Machop,80,50,70,Kanto,35,35,35,Fighting,DNE +64,Machoke,100,70,80,Kanto,50,60,45,Fighting,DNE +65,Machamp,130,80,90,Kanto,65,85,55,Fighting,DNE +66,Bellsprout,75,35,50,Kanto,70,30,40,Grass,Poison +67,Weepinbell,90,50,65,Kanto,85,45,55,Grass,Poison +68,Victreebel,105,65,80,Kanto,100,70,70,Grass,Poison +69,Tentacool,40,35,40,Kanto,50,100,70,Water,Poison +70,Tentacruel,70,65,80,Kanto,80,120,100,Water,Poison +71,Geodude,80,100,40,Kanto,30,30,20,Rock,Ground +72,Graveler,95,115,55,Kanto,45,45,35,Rock,Ground +73,Golem,120,130,80,Kanto,55,65,45,Rock,Ground +74,Ponyta,85,55,50,Kanto,65,65,90,Fire,DNE +75,Rapidash,100,70,65,Kanto,80,80,105,Fire,DNE +76,Slowpoke,65,65,90,Kanto,40,40,15,Water,Psychic +77,Slowbro,75,110,95,Kanto,100,80,30,Water,Psychic +78,Magnemite,35,70,25,Kanto,95,55,45,Electric,Steel +79,Magneton,60,95,50,Kanto,120,70,70,Electric,Steel +80,Doduo,85,45,35,Kanto,35,35,75,Normal,Flying +81,Dodrio,110,70,60,Kanto,60,60,110,Normal,Flying +82,Seel,45,55,65,Kanto,45,70,45,Water,DNE +83,Dewgong,70,80,90,Kanto,70,95,70,Water,Ice +84,Grimer,80,50,80,Kanto,40,50,25,Poison,DNE +85,Muk,105,75,105,Kanto,65,100,50,Poison,DNE +86,Shellder,65,100,30,Kanto,45,25,40,Water,DNE +87,Cloyster,95,180,50,Kanto,85,45,70,Water,Ice +88,Gastly,35,30,30,Kanto,100,35,80,Ghost,Poison +89,Haunter,50,45,45,Kanto,115,55,95,Ghost,Poison +90,Gengar,65,60,60,Kanto,130,75,110,Ghost,Poison +91,Onix,45,160,35,Kanto,30,45,70,Rock,Ground +92,Drowzee,48,45,60,Kanto,43,90,42,Psychic,DNE +93,Hypno,73,70,85,Kanto,73,115,67,Psychic,DNE +94,Krabby,105,90,30,Kanto,25,25,50,Water,DNE +95,Kingler,130,115,55,Kanto,50,50,75,Water,DNE +96,Voltorb,30,50,40,Kanto,55,55,100,Electric,DNE +97,Electrode,50,70,60,Kanto,80,80,150,Electric,DNE +98,Exeggcute,40,80,60,Kanto,60,45,40,Grass,Psychic +99,Exeggutor,95,85,95,Kanto,125,75,55,Grass,Psychic +100,Cubone,50,95,50,Kanto,40,50,35,Ground,DNE +101,Marowak,80,110,60,Kanto,50,80,45,Ground,DNE +102,Hitmonlee,120,53,50,Kanto,35,110,87,Fighting,DNE +103,Hitmonchan,105,79,50,Kanto,35,110,76,Fighting,DNE +104,Lickitung,55,75,90,Kanto,60,75,30,Normal,DNE +105,Koffing,65,95,40,Kanto,60,45,35,Poison,DNE +106,Weezing,90,120,65,Kanto,85,70,60,Poison,DNE +107,Rhyhorn,85,95,80,Kanto,30,30,25,Ground,Rock +108,Rhydon,130,120,105,Kanto,45,45,40,Ground,Rock +109,Chansey,5,5,250,Kanto,35,105,50,Normal,DNE +110,Tangela,55,115,65,Kanto,100,40,60,Grass,DNE +111,Kangaskhan,95,80,105,Kanto,40,80,90,Normal,DNE +112,Horsea,40,70,30,Kanto,70,25,60,Water,DNE +113,Seadra,65,95,55,Kanto,95,45,85,Water,DNE +114,Goldeen,67,60,45,Kanto,35,50,63,Water,DNE +115,Seaking,92,65,80,Kanto,65,80,68,Water,DNE +116,Staryu,45,55,30,Kanto,70,55,85,Water,DNE +117,Starmie,75,85,60,Kanto,100,85,115,Water,Psychic +118,Scyther,110,80,70,Kanto,55,80,105,Bug,Flying +119,Jynx,50,35,65,Kanto,115,95,95,Ice,Psychic +120,Electabuzz,83,57,65,Kanto,95,85,105,Electric,DNE +121,Magmar,95,57,65,Kanto,100,85,93,Fire,DNE +122,Pinsir,125,100,65,Kanto,55,70,85,Bug,DNE +123,Tauros,100,95,75,Kanto,40,70,110,Normal,DNE +124,Magikarp,10,55,20,Kanto,15,20,80,Water,DNE +125,Gyarados,125,79,95,Kanto,60,100,81,Water,Flying +126,Lapras,85,80,130,Kanto,85,95,60,Water,Ice +127,Ditto,48,48,48,Kanto,48,48,48,Normal,DNE +128,Eevee,55,50,55,Kanto,45,65,55,Normal,DNE +129,Vaporeon,65,60,130,Kanto,110,95,65,Water,DNE +130,Jolteon,65,60,65,Kanto,110,95,130,Electric,DNE +131,Flareon,130,60,65,Kanto,95,110,65,Fire,DNE +132,Porygon,60,70,65,Kanto,85,75,40,Normal,DNE +133,Omanyte,40,100,35,Kanto,90,55,35,Rock,Water +134,Omastar,60,125,70,Kanto,115,70,55,Rock,Water +135,Kabuto,80,90,30,Kanto,55,45,55,Rock,Water +136,Kabutops,115,105,60,Kanto,65,70,80,Rock,Water +137,Aerodactyl,105,65,80,Kanto,60,75,130,Rock,Flying +138,Snorlax,110,65,160,Kanto,65,110,30,Normal,DNE +139,Articuno,85,100,90,Kanto,95,125,85,Ice,Flying +140,Zapdos,90,85,90,Kanto,125,90,100,Electric,Flying +141,Moltres,100,90,90,Kanto,125,85,90,Fire,Flying +142,Dratini,64,45,41,Kanto,50,50,50,Dragon,DNE +143,Dragonair,84,65,61,Kanto,70,70,70,Dragon,DNE +144,Dragonite,134,95,91,Kanto,100,100,80,Dragon,Flying +145,Mewtwo,110,90,106,Kanto,154,90,130,Psychic,DNE +146,Mew,100,100,100,Kanto,100,100,100,Psychic,DNE +147,Chikorita,49,65,45,Johto,49,65,45,Grass,DNE +148,Bayleef,62,80,60,Johto,63,80,60,Grass,DNE +149,Meganium,82,100,80,Johto,83,100,80,Grass,DNE +150,Cyndaquil,52,43,39,Johto,60,50,65,Fire,DNE +151,Quilava,64,58,58,Johto,80,65,80,Fire,DNE +152,Typhlosion,84,78,78,Johto,109,85,100,Fire,DNE +153,Totodile,65,64,50,Johto,44,48,43,Water,DNE +154,Croconaw,80,80,65,Johto,59,63,58,Water,DNE +155,Feraligatr,105,100,85,Johto,79,83,78,Water,DNE +156,Sentret,46,34,35,Johto,35,45,20,Normal,DNE +157,Furret,76,64,85,Johto,45,55,90,Normal,DNE +158,Hoothoot,30,30,60,Johto,36,56,50,Normal,Flying +159,Noctowl,50,50,100,Johto,86,96,70,Normal,Flying +160,Ledyba,20,30,40,Johto,40,80,55,Bug,Flying +161,Ledian,35,50,55,Johto,55,110,85,Bug,Flying +162,Spinarak,60,40,40,Johto,40,40,30,Bug,Poison +163,Ariados,90,70,70,Johto,60,70,40,Bug,Poison +164,Crobat,90,80,85,Johto,70,80,130,Poison,Flying +165,Chinchou,38,38,75,Johto,56,56,67,Water,Electric +166,Lanturn,58,58,125,Johto,76,76,67,Water,Electric +167,Pichu,40,15,20,Johto,35,35,60,Electric,DNE +168,Cleffa,25,28,50,Johto,45,55,15,Fairy,DNE +169,Igglybuff,30,15,90,Johto,40,20,15,Normal,Fairy +170,Togepi,20,65,35,Johto,40,65,20,Fairy,DNE +171,Togetic,40,85,55,Johto,80,105,40,Fairy,Flying +172,Natu,50,45,40,Johto,70,45,70,Psychic,Flying +173,Xatu,75,70,65,Johto,95,70,95,Psychic,Flying +174,Mareep,40,40,55,Johto,65,45,35,Electric,DNE +175,Flaaffy,55,55,70,Johto,80,60,45,Electric,DNE +176,Ampharos,75,85,90,Johto,115,90,55,Electric,DNE +177,Bellossom,80,95,75,Johto,90,100,50,Grass,DNE +178,Marill,20,50,70,Johto,20,50,40,Water,Fairy +179,Azumarill,50,80,100,Johto,60,80,50,Water,Fairy +180,Sudowoodo,100,115,70,Johto,30,65,30,Rock,DNE +181,Politoed,75,75,90,Johto,90,100,70,Water,DNE +182,Hoppip,35,40,35,Johto,35,55,50,Grass,Flying +183,Skiploom,45,50,55,Johto,45,65,80,Grass,Flying +184,Jumpluff,55,70,75,Johto,55,95,110,Grass,Flying +185,Aipom,70,55,55,Johto,40,55,85,Normal,DNE +186,Sunkern,30,30,30,Johto,30,30,30,Grass,DNE +187,Sunflora,75,55,75,Johto,105,85,30,Grass,DNE +188,Yanma,65,45,65,Johto,75,45,95,Bug,Flying +189,Wooper,45,45,55,Johto,25,25,15,Water,Ground +190,Quagsire,85,85,95,Johto,65,65,35,Water,Ground +191,Espeon,65,60,65,Johto,130,95,110,Psychic,DNE +192,Umbreon,65,110,95,Johto,60,130,65,Dark,DNE +193,Murkrow,85,42,60,Johto,85,42,91,Dark,Flying +194,Slowking,75,80,95,Johto,100,110,30,Water,Psychic +195,Misdreavus,60,60,60,Johto,85,85,85,Ghost,DNE +196,Unown,72,48,48,Johto,72,48,48,Psychic,DNE +197,Wobbuffet,33,58,190,Johto,33,58,33,Psychic,DNE +198,Girafarig,80,65,70,Johto,90,65,85,Normal,Psychic +199,Pineco,65,90,50,Johto,35,35,15,Bug,DNE +200,Forretress,90,140,75,Johto,60,60,40,Bug,Steel +201,Dunsparce,70,70,100,Johto,65,65,45,Normal,DNE +202,Gligar,75,105,65,Johto,35,65,85,Ground,Flying +203,Steelix,85,200,75,Johto,55,65,30,Steel,Ground +204,Snubbull,80,50,60,Johto,40,40,30,Fairy,DNE +205,Granbull,120,75,90,Johto,60,60,45,Fairy,DNE +206,Qwilfish,95,85,65,Johto,55,55,85,Water,Poison +207,Scizor,130,100,70,Johto,55,80,65,Bug,Steel +208,Shuckle,10,230,20,Johto,10,230,5,Bug,Rock +209,Heracross,125,75,80,Johto,40,95,85,Bug,Fighting +210,Sneasel,95,55,55,Johto,35,75,115,Dark,Ice +211,Teddiursa,80,50,60,Johto,50,50,40,Normal,DNE +212,Ursaring,130,75,90,Johto,75,75,55,Normal,DNE +213,Slugma,40,40,40,Johto,70,40,20,Fire,DNE +214,Magcargo,50,120,60,Johto,90,80,30,Fire,Rock +215,Swinub,50,40,50,Johto,30,30,50,Ice,Ground +216,Piloswine,100,80,100,Johto,60,60,50,Ice,Ground +217,Corsola,55,95,65,Johto,65,95,35,Water,Rock +218,Remoraid,65,35,35,Johto,65,35,65,Water,DNE +219,Octillery,105,75,75,Johto,105,75,45,Water,DNE +220,Delibird,55,45,45,Johto,65,45,75,Ice,Flying +221,Mantine,40,70,85,Johto,80,140,70,Water,Flying +222,Skarmory,80,140,65,Johto,40,70,70,Steel,Flying +223,Houndour,60,30,45,Johto,80,50,65,Dark,Fire +224,Houndoom,90,50,75,Johto,110,80,95,Dark,Fire +225,Kingdra,95,95,75,Johto,95,95,85,Water,Dragon +226,Phanpy,60,60,90,Johto,40,40,40,Ground,DNE +227,Donphan,120,120,90,Johto,60,60,50,Ground,DNE +228,Porygon2,80,90,85,Johto,105,95,60,Normal,DNE +229,Stantler,95,62,73,Johto,85,65,85,Normal,DNE +230,Smeargle,20,35,55,Johto,20,45,75,Normal,DNE +231,Tyrogue,35,35,35,Johto,35,35,35,Fighting,DNE +232,Hitmontop,95,95,50,Johto,35,110,70,Fighting,DNE +233,Smoochum,30,15,45,Johto,85,65,65,Ice,Psychic +234,Elekid,63,37,45,Johto,65,55,95,Electric,DNE +235,Magby,75,37,45,Johto,70,55,83,Fire,DNE +236,Miltank,80,105,95,Johto,40,70,100,Normal,DNE +237,Blissey,10,10,255,Johto,75,135,55,Normal,DNE +238,Raikou,85,75,90,Johto,115,100,115,Electric,DNE +239,Entei,115,85,115,Johto,90,75,100,Fire,DNE +240,Suicune,75,115,100,Johto,90,115,85,Water,DNE +241,Larvitar,64,50,50,Johto,45,50,41,Rock,Ground +242,Pupitar,84,70,70,Johto,65,70,51,Rock,Ground +243,Tyranitar,134,110,100,Johto,95,100,61,Rock,Dark +244,Lugia,90,130,106,Johto,90,154,110,Psychic,Flying +245,Ho-oh,130,90,106,Johto,110,154,90,Fire,Flying +246,Celebi,100,100,100,Johto,100,100,100,Psychic,Grass +247,Treecko,45,35,40,Hoenn,65,55,70,Grass,DNE +248,Grovyle,65,45,50,Hoenn,85,65,95,Grass,DNE +249,Sceptile,85,65,70,Hoenn,105,85,120,Grass,DNE +250,Torchic,60,40,45,Hoenn,70,50,45,Fire,DNE +251,Combusken,85,60,60,Hoenn,85,60,55,Fire,Fighting +252,Blaziken,120,70,80,Hoenn,110,70,80,Fire,Fighting +253,Mudkip,70,50,50,Hoenn,50,50,40,Water,DNE +254,Marshtomp,85,70,70,Hoenn,60,70,50,Water,Ground +255,Swampert,110,90,100,Hoenn,85,90,60,Water,Ground +256,Poochyena,55,35,35,Hoenn,30,30,35,Dark,DNE +257,Mightyena,90,70,70,Hoenn,60,60,70,Dark,DNE +258,Zigzagoon,30,41,38,Hoenn,30,41,60,Normal,DNE +259,Linoone,70,61,78,Hoenn,50,61,100,Normal,DNE +260,Wurmple,45,35,45,Hoenn,20,30,20,Bug,DNE +261,Silcoon,35,55,50,Hoenn,25,25,15,Bug,DNE +262,Beautifly,70,50,60,Hoenn,100,50,65,Bug,Flying +263,Cascoon,35,55,50,Hoenn,25,25,15,Bug,DNE +264,Dustox,50,70,60,Hoenn,50,90,65,Bug,Poison +265,Lotad,30,30,40,Hoenn,40,50,30,Water,Grass +266,Lombre,50,50,60,Hoenn,60,70,50,Water,Grass +267,Ludicolo,70,70,80,Hoenn,90,100,70,Water,Grass +268,Seedot,40,50,40,Hoenn,30,30,30,Grass,DNE +269,Nuzleaf,70,40,70,Hoenn,60,40,60,Grass,Dark +270,Shiftry,100,60,90,Hoenn,90,60,80,Grass,Dark +271,Taillow,55,30,40,Hoenn,30,30,85,Normal,Flying +272,Swellow,85,60,60,Hoenn,75,50,125,Normal,Flying +273,Wingull,30,30,40,Hoenn,55,30,85,Water,Flying +274,Pelipper,50,100,60,Hoenn,95,70,65,Water,Flying +275,Ralts,25,25,28,Hoenn,45,35,40,Psychic,Fairy +276,Kirlia,35,35,38,Hoenn,65,55,50,Psychic,Fairy +277,Gardevoir,65,65,68,Hoenn,125,115,80,Psychic,Fairy +278,Surskit,30,32,40,Hoenn,50,52,65,Bug,Water +279,Masquerain,60,62,70,Hoenn,100,82,80,Bug,Flying +280,Shroomish,40,60,60,Hoenn,40,60,35,Grass,DNE +281,Breloom,130,80,60,Hoenn,60,60,70,Grass,Fighting +282,Slakoth,60,60,60,Hoenn,35,35,30,Normal,DNE +283,Vigoroth,80,80,80,Hoenn,55,55,90,Normal,DNE +284,Slaking,160,100,150,Hoenn,95,65,100,Normal,DNE +285,Nincada,45,90,31,Hoenn,30,30,40,Bug,Ground +286,Ninjask,90,45,61,Hoenn,50,50,160,Bug,Flying +287,Shedinja,90,45,1,Hoenn,30,30,40,Bug,Ghost +288,Whismur,51,23,64,Hoenn,51,23,28,Normal,DNE +289,Loudred,71,43,84,Hoenn,71,43,48,Normal,DNE +290,Exploud,91,63,104,Hoenn,91,73,68,Normal,DNE +291,Makuhita,60,30,72,Hoenn,20,30,25,Fighting,DNE +292,Hariyama,120,60,144,Hoenn,40,60,50,Fighting,DNE +293,Azurill,20,40,50,Hoenn,20,40,20,Normal,Fairy +294,Nosepass,45,135,30,Hoenn,45,90,30,Rock,DNE +295,Skitty,45,45,50,Hoenn,35,35,50,Normal,DNE +296,Delcatty,65,65,70,Hoenn,55,55,90,Normal,DNE +297,Sableye,75,75,50,Hoenn,65,65,50,Dark,Ghost +298,Mawile,85,85,50,Hoenn,55,55,50,Steel,Fairy +299,Aron,70,100,50,Hoenn,40,40,30,Steel,Rock +300,Lairon,90,140,60,Hoenn,50,50,40,Steel,Rock +301,Aggron,110,180,70,Hoenn,60,60,50,Steel,Rock +302,Meditite,40,55,30,Hoenn,40,55,60,Fighting,Psychic +303,Medicham,60,75,60,Hoenn,60,75,80,Fighting,Psychic +304,Electrike,45,40,40,Hoenn,65,40,65,Electric,DNE +305,Manectric,75,60,70,Hoenn,105,60,105,Electric,DNE +306,Plusle,50,40,60,Hoenn,85,75,95,Electric,DNE +307,Minun,40,50,60,Hoenn,75,85,95,Electric,DNE +308,Volbeat,73,75,65,Hoenn,47,85,85,Bug,DNE +309,Illumise,47,75,65,Hoenn,73,85,85,Bug,DNE +310,Roselia,60,45,50,Hoenn,100,80,65,Grass,Poison +311,Gulpin,43,53,70,Hoenn,43,53,40,Poison,DNE +312,Swalot,73,83,100,Hoenn,73,83,55,Poison,DNE +313,Carvanha,90,20,45,Hoenn,65,20,65,Water,Dark +314,Sharpedo,120,40,70,Hoenn,95,40,95,Water,Dark +315,Wailmer,70,35,130,Hoenn,70,35,60,Water,DNE +316,Wailord,90,45,170,Hoenn,90,45,60,Water,DNE +317,Numel,60,40,60,Hoenn,65,45,35,Fire,Ground +318,Camerupt,100,70,70,Hoenn,105,75,40,Fire,Ground +319,Torkoal,85,140,70,Hoenn,85,70,20,Fire,DNE +320,Spoink,25,35,60,Hoenn,70,80,60,Psychic,DNE +321,Grumpig,45,65,80,Hoenn,90,110,80,Psychic,DNE +322,Spinda,60,60,60,Hoenn,60,60,60,Normal,DNE +323,Trapinch,100,45,45,Hoenn,45,45,10,Ground,DNE +324,Vibrava,70,50,50,Hoenn,50,50,70,Ground,Dragon +325,Flygon,100,80,80,Hoenn,80,80,100,Ground,Dragon +326,Cacnea,85,40,50,Hoenn,85,40,35,Grass,DNE +327,Cacturne,115,60,70,Hoenn,115,60,55,Grass,Dark +328,Swablu,40,60,45,Hoenn,40,75,50,Normal,Flying +329,Altaria,70,90,75,Hoenn,70,105,80,Dragon,Flying +330,Zangoose,115,60,73,Hoenn,60,60,90,Normal,DNE +331,Seviper,100,60,73,Hoenn,100,60,65,Poison,DNE +332,Lunatone,55,65,90,Hoenn,95,85,70,Rock,Psychic +333,Solrock,95,85,90,Hoenn,55,65,70,Rock,Psychic +334,Barboach,48,43,50,Hoenn,46,41,60,Water,Ground +335,Whiscash,78,73,110,Hoenn,76,71,60,Water,Ground +336,Corphish,80,65,43,Hoenn,50,35,35,Water,DNE +337,Crawdaunt,120,85,63,Hoenn,90,55,55,Water,Dark +338,Baltoy,40,55,40,Hoenn,40,70,55,Ground,Psychic +339,Claydol,70,105,60,Hoenn,70,120,75,Ground,Psychic +340,Lileep,41,77,66,Hoenn,61,87,23,Rock,Grass +341,Cradily,81,97,86,Hoenn,81,107,43,Rock,Grass +342,Anorith,95,50,45,Hoenn,40,50,75,Rock,Bug +343,Armaldo,125,100,75,Hoenn,70,80,45,Rock,Bug +344,Feebas,15,20,20,Hoenn,10,55,80,Water,DNE +345,Milotic,60,79,95,Hoenn,100,125,81,Water,DNE +346,Castform,70,70,70,Hoenn,70,70,70,Normal,DNE +347,Kecleon,90,70,60,Hoenn,60,120,40,Normal,DNE +348,Shuppet,75,35,44,Hoenn,63,33,45,Ghost,DNE +349,Banette,115,65,64,Hoenn,83,63,65,Ghost,DNE +350,Duskull,40,90,20,Hoenn,30,90,25,Ghost,DNE +351,Dusclops,70,130,40,Hoenn,60,130,25,Ghost,DNE +352,Tropius,68,83,99,Hoenn,72,87,51,Grass,Flying +353,Chimecho,50,80,75,Hoenn,95,90,65,Psychic,DNE +354,Absol,130,60,65,Hoenn,75,60,75,Dark,DNE +355,Wynaut,23,48,95,Hoenn,23,48,23,Psychic,DNE +356,Snorunt,50,50,50,Hoenn,50,50,50,Ice,DNE +357,Glalie,80,80,80,Hoenn,80,80,80,Ice,DNE +358,Spheal,40,50,70,Hoenn,55,50,25,Ice,Water +359,Sealeo,60,70,90,Hoenn,75,70,45,Ice,Water +360,Walrein,80,90,110,Hoenn,95,90,65,Ice,Water +361,Clamperl,64,85,35,Hoenn,74,55,32,Water,DNE +362,Huntail,104,105,55,Hoenn,94,75,52,Water,DNE +363,Gorebyss,84,105,55,Hoenn,114,75,52,Water,DNE +364,Relicanth,90,130,100,Hoenn,45,65,55,Water,Rock +365,Luvdisc,30,55,43,Hoenn,40,65,97,Water,DNE +366,Bagon,75,60,45,Hoenn,40,30,50,Dragon,DNE +367,Shelgon,95,100,65,Hoenn,60,50,50,Dragon,DNE +368,Salamence,135,80,95,Hoenn,110,80,100,Dragon,Flying +369,Beldum,55,80,40,Hoenn,35,60,30,Steel,Psychic +370,Metang,75,100,60,Hoenn,55,80,50,Steel,Psychic +371,Metagross,135,130,80,Hoenn,95,90,70,Steel,Psychic +372,Regirock,100,200,80,Hoenn,50,100,50,Rock,DNE +373,Regice,50,100,80,Hoenn,100,200,50,Ice,DNE +374,Registeel,75,150,80,Hoenn,75,150,50,Steel,DNE +375,Latias,80,90,80,Hoenn,110,130,110,Dragon,Psychic +376,Latios,90,80,80,Hoenn,130,110,110,Dragon,Psychic +377,Kyogre,100,90,100,Hoenn,150,140,90,Water,DNE +378,Groudon,150,140,100,Hoenn,100,90,90,Ground,DNE +379,Rayquaza,150,90,105,Hoenn,150,90,95,Dragon,Flying +380,Jirachi,100,100,100,Hoenn,100,100,100,Steel,Psychic +381,Deoxys,150,50,50,Hoenn,150,50,150,Psychic,DNE +382,Turtwig,68,64,55,Sinnoh,45,55,31,Grass,DNE +383,Grotle,89,85,75,Sinnoh,55,65,36,Grass,DNE +384,Torterra,109,105,95,Sinnoh,75,85,56,Grass,Ground +385,Chimchar,58,44,44,Sinnoh,58,44,61,Fire,DNE +386,Monferno,78,52,64,Sinnoh,78,52,81,Fire,Fighting +387,Infernape,104,71,76,Sinnoh,104,71,108,Fire,Fighting +388,Piplup,51,53,53,Sinnoh,61,56,40,Water,DNE +389,Prinplup,66,68,64,Sinnoh,81,76,50,Water,DNE +390,Empoleon,86,88,84,Sinnoh,111,101,60,Water,Steel +391,Starly,55,30,40,Sinnoh,30,30,60,Normal,Flying +392,Staravia,75,50,55,Sinnoh,40,40,80,Normal,Flying +393,Staraptor,120,70,85,Sinnoh,50,60,100,Normal,Flying +394,Bidoof,45,40,59,Sinnoh,35,40,31,Normal,DNE +395,Bibarel,85,60,79,Sinnoh,55,60,71,Normal,Water +396,Kricketot,25,41,37,Sinnoh,25,41,25,Bug,DNE +397,Kricketune,85,51,77,Sinnoh,55,51,65,Bug,DNE +398,Shinx,65,34,45,Sinnoh,40,34,45,Electric,DNE +399,Luxio,85,49,60,Sinnoh,60,49,60,Electric,DNE +400,Luxray,120,79,80,Sinnoh,95,79,70,Electric,DNE +401,Budew,30,35,40,Sinnoh,50,70,55,Grass,Poison +402,Roserade,70,65,60,Sinnoh,125,105,90,Grass,Poison +403,Cranidos,125,40,67,Sinnoh,30,30,58,Rock,DNE +404,Rampardos,165,60,97,Sinnoh,65,50,58,Rock,DNE +405,Shieldon,42,118,30,Sinnoh,42,88,30,Rock,Steel +406,Bastiodon,52,168,60,Sinnoh,47,138,30,Rock,Steel +407,Burmy,29,45,40,Sinnoh,29,45,36,Bug,DNE +408,Wormadam,59,85,60,Sinnoh,79,105,36,Bug,Grass +409,Mothim,94,50,70,Sinnoh,94,50,66,Bug,Flying +410,Combee,30,42,30,Sinnoh,30,42,70,Bug,Flying +411,Vespiquen,80,102,70,Sinnoh,80,102,40,Bug,Flying +412,Pachirisu,45,70,60,Sinnoh,45,90,95,Electric,DNE +413,Buizel,65,35,55,Sinnoh,60,30,85,Water,DNE +414,Floatzel,105,55,85,Sinnoh,85,50,115,Water,DNE +415,Cherubi,35,45,45,Sinnoh,62,53,35,Grass,DNE +416,Cherrim,60,70,70,Sinnoh,87,78,85,Grass,DNE +417,Shellos,48,48,76,Sinnoh,57,62,34,Water,DNE +418,Gastrodon,83,68,111,Sinnoh,92,82,39,Water,Ground +419,Ambipom,100,66,75,Sinnoh,60,66,115,Normal,DNE +420,Drifloon,50,34,90,Sinnoh,60,44,70,Ghost,Flying +421,Drifblim,80,44,150,Sinnoh,90,54,80,Ghost,Flying +422,Buneary,66,44,55,Sinnoh,44,56,85,Normal,DNE +423,Lopunny,76,84,65,Sinnoh,54,96,105,Normal,DNE +424,Mismagius,60,60,60,Sinnoh,105,105,105,Ghost,DNE +425,Honchkrow,125,52,100,Sinnoh,105,52,71,Dark,Flying +426,Glameow,55,42,49,Sinnoh,42,37,85,Normal,DNE +427,Purugly,82,64,71,Sinnoh,64,59,112,Normal,DNE +428,Chingling,30,50,45,Sinnoh,65,50,45,Psychic,DNE +429,Stunky,63,47,63,Sinnoh,41,41,74,Poison,Dark +430,Skuntank,93,67,103,Sinnoh,71,61,84,Poison,Dark +431,Bronzor,24,86,57,Sinnoh,24,86,23,Steel,Psychic +432,Bronzong,89,116,67,Sinnoh,79,116,33,Steel,Psychic +433,Bonsly,80,95,50,Sinnoh,10,45,10,Rock,DNE +434,Happiny,5,5,100,Sinnoh,15,65,30,Normal,DNE +435,Chatot,65,45,76,Sinnoh,92,42,91,Normal,Flying +436,Spiritomb,92,108,50,Sinnoh,92,108,35,Ghost,Dark +437,Gible,70,45,58,Sinnoh,40,45,42,Dragon,Ground +438,Gabite,90,65,68,Sinnoh,50,55,82,Dragon,Ground +439,Garchomp,130,95,108,Sinnoh,80,85,102,Dragon,Ground +440,Munchlax,85,40,135,Sinnoh,40,85,5,Normal,DNE +441,Riolu,70,40,40,Sinnoh,35,40,60,Fighting,DNE +442,Lucario,110,70,70,Sinnoh,115,70,90,Fighting,Steel +443,Hippopotas,72,78,68,Sinnoh,38,42,32,Ground,DNE +444,Hippowdon,112,118,108,Sinnoh,68,72,47,Ground,DNE +445,Skorupi,50,90,40,Sinnoh,30,55,65,Poison,Bug +446,Drapion,90,110,70,Sinnoh,60,75,95,Poison,Dark +447,Croagunk,61,40,48,Sinnoh,61,40,50,Poison,Fighting +448,Toxicroak,106,65,83,Sinnoh,86,65,85,Poison,Fighting +449,Carnivine,100,72,74,Sinnoh,90,72,46,Grass,DNE +450,Finneon,49,56,49,Sinnoh,49,61,66,Water,DNE +451,Lumineon,69,76,69,Sinnoh,69,86,91,Water,DNE +452,Mantyke,20,50,45,Sinnoh,60,120,50,Water,Flying +453,Snover,62,50,60,Sinnoh,62,60,40,Grass,Ice +454,Abomasnow,92,75,90,Sinnoh,92,85,60,Grass,Ice +455,Weavile,120,65,70,Sinnoh,45,85,125,Dark,Ice +456,Magnezone,70,115,70,Sinnoh,130,90,60,Electric,Steel +457,Lickilicky,85,95,110,Sinnoh,80,95,50,Normal,DNE +458,Rhyperior,140,130,115,Sinnoh,55,55,40,Ground,Rock +459,Tangrowth,100,125,100,Sinnoh,110,50,50,Grass,DNE +460,Electivire,123,67,75,Sinnoh,95,85,95,Electric,DNE +461,Magmortar,95,67,75,Sinnoh,125,95,83,Fire,DNE +462,Togekiss,50,95,85,Sinnoh,120,115,80,Fairy,Flying +463,Yanmega,76,86,86,Sinnoh,116,56,95,Bug,Flying +464,Leafeon,110,130,65,Sinnoh,60,65,95,Grass,DNE +465,Glaceon,60,110,65,Sinnoh,130,95,65,Ice,DNE +466,Gliscor,95,125,75,Sinnoh,45,75,95,Ground,Flying +467,Mamoswine,130,80,110,Sinnoh,70,60,80,Ice,Ground +468,Porygon-Z,80,70,85,Sinnoh,135,75,90,Normal,DNE +469,Gallade,125,65,68,Sinnoh,65,115,80,Psychic,Fighting +470,Probopass,55,145,60,Sinnoh,75,150,40,Rock,Steel +471,Dusknoir,100,135,45,Sinnoh,65,135,45,Ghost,DNE +472,Froslass,80,70,70,Sinnoh,80,70,110,Ice,Ghost +473,Rotom,50,77,50,Sinnoh,95,77,91,Electric,Ghost +474,Uxie,75,130,75,Sinnoh,75,130,95,Psychic,DNE +475,Mesprit,105,105,80,Sinnoh,105,105,80,Psychic,DNE +476,Azelf,125,70,75,Sinnoh,125,70,115,Psychic,DNE +477,Dialga,120,120,100,Sinnoh,150,100,90,Steel,Dragon +478,Palkia,120,100,90,Sinnoh,150,120,100,Water,Dragon +479,Heatran,90,106,91,Sinnoh,130,106,77,Fire,Steel +480,Regigigas,160,110,110,Sinnoh,80,110,100,Normal,DNE +481,Giratina,100,120,150,Sinnoh,100,120,90,Ghost,Dragon +482,Cresselia,70,110,120,Sinnoh,75,120,85,Psychic,DNE +483,Phione,80,80,80,Sinnoh,80,80,80,Water,DNE +484,Manaphy,100,100,100,Sinnoh,100,100,100,Water,DNE +485,Darkrai,90,90,70,Sinnoh,135,90,125,Dark,DNE +486,Shaymin,100,100,100,Sinnoh,100,100,100,Grass,DNE +487,Arceus,120,120,120,Sinnoh,120,120,120,Normal,DNE +488,Victini,100,100,100,Unova,100,100,100,Psychic,Fire +489,Snivy,45,55,45,Unova,45,55,63,Grass,DNE +490,Servine,60,75,60,Unova,60,75,83,Grass,DNE +491,Serperior,75,95,75,Unova,75,95,113,Grass,DNE +492,Tepig,63,45,65,Unova,45,45,45,Fire,DNE +493,Pignite,93,55,90,Unova,70,55,55,Fire,Fighting +494,Emboar,123,65,110,Unova,100,65,65,Fire,Fighting +495,Oshawott,55,45,55,Unova,63,45,45,Water,DNE +496,Dewott,75,60,75,Unova,83,60,60,Water,DNE +497,Samurott,100,85,95,Unova,108,70,70,Water,DNE +498,Patrat,55,39,45,Unova,35,39,42,Normal,DNE +499,Watchog,85,69,60,Unova,60,69,77,Normal,DNE +500,Lillipup,60,45,45,Unova,25,45,55,Normal,DNE +501,Herdier,80,65,65,Unova,35,65,60,Normal,DNE +502,Stoutland,110,90,85,Unova,45,90,80,Normal,DNE +503,Purrloin,50,37,41,Unova,50,37,66,Dark,DNE +504,Liepard,88,50,64,Unova,88,50,106,Dark,DNE +505,Pansage,53,48,50,Unova,53,48,64,Grass,DNE +506,Simisage,98,63,75,Unova,98,63,101,Grass,DNE +507,Pansear,53,48,50,Unova,53,48,64,Fire,DNE +508,Simisear,98,63,75,Unova,98,63,101,Fire,DNE +509,Panpour,53,48,50,Unova,53,48,64,Water,DNE +510,Simipour,98,63,75,Unova,98,63,101,Water,DNE +511,Munna,25,45,76,Unova,67,55,24,Psychic,DNE +512,Musharna,55,85,116,Unova,107,95,29,Psychic,DNE +513,Pidove,55,50,50,Unova,36,30,43,Normal,Flying +514,Tranquill,77,62,62,Unova,50,42,65,Normal,Flying +515,Unfezant,115,80,80,Unova,65,55,93,Normal,Flying +516,Blitzle,60,32,45,Unova,50,32,76,Electric,DNE +517,Zebstrika,100,63,75,Unova,80,63,116,Electric,DNE +518,Roggenrola,75,85,55,Unova,25,25,15,Rock,DNE +519,Boldore,105,105,70,Unova,50,40,20,Rock,DNE +520,Gigalith,135,130,85,Unova,60,80,25,Rock,DNE +521,Woobat,45,43,65,Unova,55,43,72,Psychic,Flying +522,Swoobat,57,55,67,Unova,77,55,114,Psychic,Flying +523,Drilbur,85,40,60,Unova,30,45,68,Ground,DNE +524,Excadrill,135,60,110,Unova,50,65,88,Ground,Steel +525,Audino,60,86,103,Unova,60,86,50,Normal,DNE +526,Timburr,80,55,75,Unova,25,35,35,Fighting,DNE +527,Gurdurr,105,85,85,Unova,40,50,40,Fighting,DNE +528,Conkeldurr,140,95,105,Unova,55,65,45,Fighting,DNE +529,Tympole,50,40,50,Unova,50,40,64,Water,DNE +530,Palpitoad,65,55,75,Unova,65,55,69,Water,Ground +531,Seismitoad,95,75,105,Unova,85,75,74,Water,Ground +532,Throh,100,85,120,Unova,30,85,45,Fighting,DNE +533,Sawk,125,75,75,Unova,30,75,85,Fighting,DNE +534,Sewaddle,53,70,45,Unova,40,60,42,Bug,Grass +535,Swadloon,63,90,55,Unova,50,80,42,Bug,Grass +536,Leavanny,103,80,75,Unova,70,80,92,Bug,Grass +537,Venipede,45,59,30,Unova,30,39,57,Bug,Poison +538,Whirlipede,55,99,40,Unova,40,79,47,Bug,Poison +539,Scolipede,100,89,60,Unova,55,69,112,Bug,Poison +540,Cottonee,27,60,40,Unova,37,50,66,Grass,Fairy +541,Whimsicott,67,85,60,Unova,77,75,116,Grass,Fairy +542,Petilil,35,50,45,Unova,70,50,30,Grass,DNE +543,Lilligant,60,75,70,Unova,110,75,90,Grass,DNE +544,Basculin,92,65,70,Unova,80,55,98,Water,DNE +545,Sandile,72,35,50,Unova,35,35,65,Ground,Dark +546,Krokorok,82,45,60,Unova,45,45,74,Ground,Dark +547,Krookodile,117,80,95,Unova,65,70,92,Ground,Dark +548,Darumaka,90,45,70,Unova,15,45,50,Fire,DNE +549,Darmanitan,140,55,105,Unova,30,55,95,Fire,DNE +550,Maractus,86,67,75,Unova,106,67,60,Grass,DNE +551,Dwebble,65,85,50,Unova,35,35,55,Bug,Rock +552,Crustle,105,125,70,Unova,65,75,45,Bug,Rock +553,Scraggy,75,70,50,Unova,35,70,48,Dark,Fighting +554,Scrafty,90,115,65,Unova,45,115,58,Dark,Fighting +555,Sigilyph,58,80,72,Unova,103,80,97,Psychic,Flying +556,Yamask,30,85,38,Unova,55,65,30,Ghost,DNE +557,Cofagrigus,50,145,58,Unova,95,105,30,Ghost,DNE +558,Tirtouga,78,103,54,Unova,53,45,22,Water,Rock +559,Carracosta,108,133,74,Unova,83,65,32,Water,Rock +560,Archen,112,45,55,Unova,74,45,70,Rock,Flying +561,Archeops,140,65,75,Unova,112,65,110,Rock,Flying +562,Trubbish,50,62,50,Unova,40,62,65,Poison,DNE +563,Garbodor,95,82,80,Unova,60,82,75,Poison,DNE +564,Zorua,65,40,40,Unova,80,40,65,Dark,DNE +565,Zoroark,105,60,60,Unova,120,60,105,Dark,DNE +566,Minccino,50,40,55,Unova,40,40,75,Normal,DNE +567,Cinccino,95,60,75,Unova,65,60,115,Normal,DNE +568,Gothita,30,50,45,Unova,55,65,45,Psychic,DNE +569,Gothorita,45,70,60,Unova,75,85,55,Psychic,DNE +570,Gothitelle,55,95,70,Unova,95,110,65,Psychic,DNE +571,Solosis,30,40,45,Unova,105,50,20,Psychic,DNE +572,Duosion,40,50,65,Unova,125,60,30,Psychic,DNE +573,Reuniclus,65,75,110,Unova,125,85,30,Psychic,DNE +574,Ducklett,44,50,62,Unova,44,50,55,Water,Flying +575,Swanna,87,63,75,Unova,87,63,98,Water,Flying +576,Vanillite,50,50,36,Unova,65,60,44,Ice,DNE +577,Vanillish,65,65,51,Unova,80,75,59,Ice,DNE +578,Vanilluxe,95,85,71,Unova,110,95,79,Ice,DNE +579,Deerling,60,50,60,Unova,40,50,75,Normal,Grass +580,Sawsbuck,100,70,80,Unova,60,70,95,Normal,Grass +581,Emolga,75,60,55,Unova,75,60,103,Electric,Flying +582,Karrablast,75,45,50,Unova,40,45,60,Bug,DNE +583,Escavalier,135,105,70,Unova,60,105,20,Bug,Steel +584,Foongus,55,45,69,Unova,55,55,15,Grass,Poison +585,Amoonguss,85,70,114,Unova,85,80,30,Grass,Poison +586,Frillish,40,50,55,Unova,65,85,40,Water,Ghost +587,Jellicent,60,70,100,Unova,85,105,60,Water,Ghost +588,Alomomola,75,80,165,Unova,40,45,65,Water,DNE +589,Joltik,47,50,50,Unova,57,50,65,Bug,Electric +590,Galvantula,77,60,70,Unova,97,60,108,Bug,Electric +591,Ferroseed,50,91,44,Unova,24,86,10,Grass,Steel +592,Ferrothorn,94,131,74,Unova,54,116,20,Grass,Steel +593,Klink,55,70,40,Unova,45,60,30,Steel,DNE +594,Klang,80,95,60,Unova,70,85,50,Steel,DNE +595,Klinklang,100,115,60,Unova,70,85,90,Steel,DNE +596,Tynamo,55,40,35,Unova,45,40,60,Electric,DNE +597,Eelektrik,85,70,65,Unova,75,70,40,Electric,DNE +598,Eelektross,115,80,85,Unova,105,80,50,Electric,DNE +599,Elgyem,55,55,55,Unova,85,55,30,Psychic,DNE +600,Beheeyem,75,75,75,Unova,125,95,40,Psychic,DNE +601,Litwick,30,55,50,Unova,65,55,20,Ghost,Fire +602,Lampent,40,60,60,Unova,95,60,55,Ghost,Fire +603,Chandelure,55,90,60,Unova,145,90,80,Ghost,Fire +604,Axew,87,60,46,Unova,30,40,57,Dragon,DNE +605,Fraxure,117,70,66,Unova,40,50,67,Dragon,DNE +606,Haxorus,147,90,76,Unova,60,70,97,Dragon,DNE +607,Cubchoo,70,40,55,Unova,60,40,40,Ice,DNE +608,Beartic,130,80,95,Unova,70,80,50,Ice,DNE +609,Cryogonal,50,50,80,Unova,95,135,105,Ice,DNE +610,Shelmet,40,85,50,Unova,40,65,25,Bug,DNE +611,Accelgor,70,40,80,Unova,100,60,145,Bug,DNE +612,Stunfisk,66,84,109,Unova,81,99,32,Ground,Electric +613,Mienfoo,85,50,45,Unova,55,50,65,Fighting,DNE +614,Mienshao,125,60,65,Unova,95,60,105,Fighting,DNE +615,Druddigon,120,90,77,Unova,60,90,48,Dragon,DNE +616,Golett,74,50,59,Unova,35,50,35,Ground,Ghost +617,Golurk,124,80,89,Unova,55,80,55,Ground,Ghost +618,Pawniard,85,70,45,Unova,40,40,60,Dark,Steel +619,Bisharp,125,100,65,Unova,60,70,70,Dark,Steel +620,Bouffalant,110,95,95,Unova,40,95,55,Normal,DNE +621,Rufflet,83,50,70,Unova,37,50,60,Normal,Flying +622,Braviary,123,75,100,Unova,57,75,80,Normal,Flying +623,Vullaby,55,75,70,Unova,45,65,60,Dark,Flying +624,Mandibuzz,65,105,110,Unova,55,95,80,Dark,Flying +625,Heatmor,97,66,85,Unova,105,66,65,Fire,DNE +626,Durant,109,112,58,Unova,48,48,109,Bug,Steel +627,Deino,65,50,52,Unova,45,50,38,Dark,Dragon +628,Zweilous,85,70,72,Unova,65,70,58,Dark,Dragon +629,Hydreigon,105,90,92,Unova,125,90,98,Dark,Dragon +630,Larvesta,85,55,55,Unova,50,55,60,Bug,Fire +631,Volcarona,60,65,85,Unova,135,105,100,Bug,Fire +632,Cobalion,90,129,91,Unova,90,72,108,Steel,Fighting +633,Terrakion,129,90,91,Unova,72,90,108,Rock,Fighting +634,Virizion,90,72,91,Unova,90,129,108,Grass,Fighting +635,Tornadus,115,70,79,Unova,125,80,111,Flying,DNE +636,Thundurus,115,70,79,Unova,125,80,111,Electric,Flying +637,Reshiram,120,100,100,Unova,150,120,90,Dragon,Fire +638,Zekrom,150,120,100,Unova,120,100,90,Dragon,Electric +639,Landorus,125,90,89,Unova,115,80,101,Ground,Flying +640,Kyurem,130,90,125,Unova,130,90,95,Dragon,Ice +641,Keldeo,72,90,91,Unova,129,90,108,Water,Fighting +642,Meloetta,77,77,100,Unova,128,128,90,Normal,Psychic +643,Genesect,120,95,71,Unova,120,95,99,Bug,Steel +644,Chespin,61,65,56,Kalos,48,45,38,Grass,DNE +645,Quilladin,78,95,61,Kalos,56,58,57,Grass,DNE +646,Chesnaught,107,122,88,Kalos,74,75,64,Grass,Fighting +647,Fennekin,45,40,40,Kalos,62,60,60,Fire,DNE +648,Braixen,59,58,59,Kalos,90,70,73,Fire,DNE +649,Delphox,69,72,75,Kalos,114,100,104,Fire,Psychic +650,Froakie,56,40,41,Kalos,62,44,71,Water,DNE +651,Frogadier,63,52,54,Kalos,83,56,97,Water,DNE +652,Greninja,95,67,72,Kalos,103,71,122,Water,Dark +653,Bunnelby,36,38,38,Kalos,32,36,57,Normal,DNE +654,Diggersby,56,77,85,Kalos,50,77,78,Normal,Ground +655,Fletchling,50,43,45,Kalos,40,38,62,Normal,Flying +656,Fletchinder,73,55,62,Kalos,56,52,84,Fire,Flying +657,Talonflame,81,71,78,Kalos,74,69,126,Fire,Flying +658,Scatterbug,35,40,38,Kalos,27,25,35,Bug,DNE +659,Spewpa,22,60,45,Kalos,27,30,29,Bug,DNE +660,Vivillon,52,50,80,Kalos,90,50,89,Bug,Flying +661,Litleo,50,58,62,Kalos,73,54,72,Fire,Normal +662,Pyroar,68,72,86,Kalos,109,66,106,Fire,Normal +663,Floette,45,47,54,Kalos,75,98,52,Fairy,DNE +664,Florges,65,68,78,Kalos,112,154,75,Fairy,DNE +665,Skiddo,65,48,66,Kalos,62,57,52,Grass,DNE +666,Gogoat,100,62,123,Kalos,97,81,68,Grass,DNE +667,Pancham,82,62,67,Kalos,46,48,43,Fighting,DNE +668,Pangoro,124,78,95,Kalos,69,71,58,Fighting,Dark +669,Furfrou,80,60,75,Kalos,65,90,102,Normal,DNE +670,Espurr,48,54,62,Kalos,63,60,68,Psychic,DNE +671,Meowstic,48,76,74,Kalos,83,81,104,Psychic,DNE +672,Honedge,80,100,45,Kalos,35,37,28,Steel,Ghost +673,Doublade,110,150,59,Kalos,45,49,35,Steel,Ghost +674,Aegislash,50,140,60,Kalos,50,140,60,Steel,Ghost +675,Spritzee,52,60,78,Kalos,63,65,23,Fairy,DNE +676,Aromatisse,72,72,101,Kalos,99,89,29,Fairy,DNE +677,Swirlix,48,66,62,Kalos,59,57,49,Fairy,DNE +678,Slurpuff,80,86,82,Kalos,85,75,72,Fairy,DNE +679,Inkay,54,53,53,Kalos,37,46,45,Dark,Psychic +680,Malamar,92,88,86,Kalos,68,75,73,Dark,Psychic +681,Binacle,52,67,42,Kalos,39,56,50,Rock,Water +682,Barbaracle,105,115,72,Kalos,54,86,68,Rock,Water +683,Skrelp,60,60,50,Kalos,60,60,30,Poison,Water +684,Dragalge,75,90,65,Kalos,97,123,44,Poison,Dragon +685,Clauncher,53,62,50,Kalos,58,63,44,Water,DNE +686,Clawitzer,73,88,71,Kalos,120,89,59,Water,DNE +687,Helioptile,38,33,44,Kalos,61,43,70,Electric,Normal +688,Heliolisk,55,52,62,Kalos,109,94,109,Electric,Normal +689,Tyrunt,89,77,58,Kalos,45,45,48,Rock,Dragon +690,Tyrantrum,121,119,82,Kalos,69,59,71,Rock,Dragon +691,Amaura,59,50,77,Kalos,67,63,46,Rock,Ice +692,Aurorus,77,72,123,Kalos,99,92,58,Rock,Ice +693,Sylveon,65,65,95,Kalos,110,130,60,Fairy,DNE +694,Hawlucha,92,75,78,Kalos,74,63,118,Fighting,Flying +695,Dedenne,58,57,67,Kalos,81,67,101,Electric,Fairy +696,Carbink,50,150,50,Kalos,50,150,50,Rock,Fairy +697,Goomy,50,35,45,Kalos,55,75,40,Dragon,DNE +698,Sliggoo,75,53,68,Kalos,83,113,60,Dragon,DNE +699,Goodra,100,70,90,Kalos,110,150,80,Dragon,DNE +700,Klefki,80,91,57,Kalos,80,87,75,Steel,Fairy +701,Phantump,70,48,43,Kalos,50,60,38,Ghost,Grass +702,Trevenant,110,76,85,Kalos,65,82,56,Ghost,Grass +703,Pumpkaboo,66,70,49,Kalos,44,55,51,Ghost,Grass +704,Gourgeist,90,122,65,Kalos,58,75,84,Ghost,Grass +705,Bergmite,69,85,55,Kalos,32,35,28,Ice,DNE +706,Avalugg,117,184,95,Kalos,44,46,28,Ice,DNE +707,Noibat,30,35,40,Kalos,45,40,55,Flying,Dragon +708,Noivern,70,80,85,Kalos,97,80,123,Flying,Dragon +709,Xerneas,131,95,126,Kalos,131,98,99,Fairy,DNE +710,Yveltal,131,95,126,Kalos,131,98,99,Dark,Flying +711,Zygarde,100,121,108,Kalos,81,95,95,Dragon,Ground +712,Diancie,100,150,50,Kalos,100,150,50,Rock,Fairy +713,Hoopa,110,60,80,Kalos,150,130,70,Psychic,Ghost +714,Volcanion,110,120,80,Kalos,130,90,70,Fire,Water +715,Rowlet,55,55,68,Alola,50,50,42,Grass,Flying +716,Dartrix,75,75,78,Alola,70,70,52,Grass,Flying +717,Decidueye,107,75,78,Alola,100,100,70,Grass,Ghost +718,Litten,65,40,45,Alola,60,40,70,Fire,DNE +719,Torracat,85,50,65,Alola,80,50,90,Fire,DNE +720,Incineroar,115,90,95,Alola,80,90,60,Fire,Dark +721,Popplio,54,54,50,Alola,66,56,40,Water,DNE +722,Brionne,69,69,60,Alola,91,81,50,Water,DNE +723,Primarina,74,74,80,Alola,126,116,60,Water,Fairy +724,Pikipek,75,30,35,Alola,30,30,65,Normal,Flying +725,Trumbeak,85,50,55,Alola,40,50,75,Normal,Flying +726,Toucannon,120,75,80,Alola,75,75,60,Normal,Flying +727,Yungoos,70,30,48,Alola,30,30,45,Normal,DNE +728,Gumshoos,110,60,88,Alola,55,60,45,Normal,DNE +729,Grubbin,62,45,47,Alola,55,45,46,Bug,DNE +730,Charjabug,82,95,57,Alola,55,75,36,Bug,Electric +731,Vikavolt,70,90,77,Alola,145,75,43,Bug,Electric +732,Crabrawler,82,57,47,Alola,42,47,63,Fighting,DNE +733,Crabominable,132,77,97,Alola,62,67,43,Fighting,Ice +734,Oricorio,70,70,75,Alola,98,70,93,Fire,Flying +735,Cutiefly,45,40,40,Alola,55,40,84,Bug,Fairy +736,Ribombee,55,60,60,Alola,95,70,124,Bug,Fairy +737,Rockruff,65,40,45,Alola,30,40,60,Rock,DNE +738,Lycanroc,115,65,75,Alola,55,65,112,Rock,DNE +739,Wishiwashi,20,20,45,Alola,25,25,40,Water,DNE +740,Mareanie,53,62,50,Alola,43,52,45,Poison,Water +741,Toxapex,63,152,50,Alola,53,142,35,Poison,Water +742,Mudbray,100,70,70,Alola,45,55,45,Ground,DNE +743,Mudsdale,125,100,100,Alola,55,85,35,Ground,DNE +744,Dewpider,40,52,38,Alola,40,72,27,Water,Bug +745,Araquanid,70,92,68,Alola,50,132,42,Water,Bug +746,Fomantis,55,35,40,Alola,50,35,35,Grass,DNE +747,Lurantis,105,90,70,Alola,80,90,45,Grass,DNE +748,Morelull,35,55,40,Alola,65,75,15,Grass,Fairy +749,Shiinotic,45,80,60,Alola,90,100,30,Grass,Fairy +750,Salandit,44,40,48,Alola,71,40,77,Poison,Fire +751,Salazzle,64,60,68,Alola,111,60,117,Poison,Fire +752,Stufful,75,50,70,Alola,45,50,50,Normal,Fighting +753,Bewear,125,80,120,Alola,55,60,60,Normal,Fighting +754,Bounsweet,30,38,42,Alola,30,38,32,Grass,DNE +755,Steenee,40,48,52,Alola,40,48,62,Grass,DNE +756,Tsareena,120,98,72,Alola,50,98,72,Grass,DNE +757,Comfey,52,90,51,Alola,82,110,100,Fairy,DNE +758,Oranguru,60,80,90,Alola,90,110,60,Normal,Psychic +759,Passimian,120,90,100,Alola,40,60,80,Fighting,DNE +760,Wimpod,35,40,25,Alola,20,30,80,Bug,Water +761,Golisopod,125,140,75,Alola,60,90,40,Bug,Water +762,Sandygast,55,80,55,Alola,70,45,15,Ghost,Ground +763,Palossand,75,110,85,Alola,100,75,35,Ghost,Ground +764,Pyukumuku,60,130,55,Alola,30,130,5,Water,DNE +765,Silvally,95,95,95,Alola,95,95,95,Normal,DNE +766,Minior,60,100,60,Alola,60,100,60,Rock,Flying +767,Komala,115,65,65,Alola,75,95,65,Normal,DNE +768,Turtonator,78,135,60,Alola,91,85,36,Fire,Dragon +769,Togedemaru,98,63,65,Alola,40,73,96,Electric,Steel +770,Mimikyu,90,80,55,Alola,50,105,96,Ghost,Fairy +771,Bruxish,105,70,68,Alola,70,70,92,Water,Psychic +772,Drampa,60,85,78,Alola,135,91,36,Normal,Dragon +773,Dhelmise,131,100,70,Alola,86,90,40,Ghost,Grass +774,Jangmo-o,55,65,45,Alola,45,45,45,Dragon,DNE +775,Hakamo-o,75,90,55,Alola,65,70,65,Dragon,Fighting +776,Kommo-o,110,125,75,Alola,100,105,85,Dragon,Fighting +777,Cosmog,29,31,43,Alola,29,31,37,Psychic,DNE +778,Cosmoem,29,131,43,Alola,29,131,37,Psychic,DNE +779,Solgaleo,137,107,137,Alola,113,89,97,Psychic,Steel +780,Lunala,113,89,137,Alola,137,107,97,Psychic,Ghost +781,Nihilego,53,47,109,Alola,127,131,103,Rock,Poison +782,Buzzwole,139,139,107,Alola,53,53,79,Bug,Fighting +783,Pheromosa,137,37,71,Alola,137,37,151,Bug,Fighting +784,Xurkitree,89,71,83,Alola,173,71,83,Electric,DNE +785,Celesteela,101,103,97,Alola,107,101,61,Steel,Flying +786,Kartana,181,131,59,Alola,59,31,109,Grass,Steel +787,Guzzlord,101,53,223,Alola,97,53,43,Dark,Dragon +788,Necrozma,107,101,97,Alola,127,89,79,Psychic,DNE +789,Magearna,95,115,80,Alola,130,115,65,Steel,Fairy +790,Marshadow,125,80,90,Alola,90,90,125,Fighting,Ghost +791,Poipole,73,67,67,Alola,73,67,73,Poison,DNE +792,Naganadel,73,73,73,Alola,127,73,121,Poison,Dragon +793,Stakataka,131,211,61,Alola,53,101,13,Rock,Steel +794,Blacephalon,127,53,53,Alola,151,79,107,Fire,Ghost +795,Zeraora,112,75,88,Alola,102,80,143,Electric,DNE +796,Meltan,65,65,46,Alola,55,35,34,Steel,DNE +797,Melmetal,143,143,135,Alola,80,65,34,Steel,DNE +798,Grookey,65,50,50,Galar,40,40,65,Grass,DNE +799,Thwackey,85,70,70,Galar,55,60,80,Grass,DNE +800,Rillaboom,125,90,100,Galar,60,70,85,Grass,DNE +801,Scorbunny,71,40,50,Galar,40,40,69,Fire,DNE +802,Raboot,86,60,65,Galar,55,60,94,Fire,DNE +803,Cinderace,116,75,80,Galar,65,75,119,Fire,DNE +804,Sobble,40,40,50,Galar,70,40,70,Water,DNE +805,Drizzile,60,55,65,Galar,95,55,90,Water,DNE +806,Inteleon,85,65,70,Galar,125,65,120,Water,DNE +807,Skwovet,55,55,70,Galar,35,35,25,Normal,DNE +808,Greedent,95,95,120,Galar,55,75,20,Normal,DNE +809,Rookidee,47,35,38,Galar,33,35,57,Flying,DNE +810,Corvisquire,67,55,68,Galar,43,55,77,Flying,DNE +811,Corviknight,87,105,98,Galar,53,85,67,Flying,Steel +812,Blipbug,20,20,25,Galar,25,45,45,Bug,DNE +813,Dottler,35,80,50,Galar,50,90,30,Bug,Psychic +814,Orbeetle,45,110,60,Galar,80,120,90,Bug,Psychic +815,Nickit,28,28,40,Galar,47,52,50,Dark,DNE +816,Thievul,58,58,70,Galar,87,92,90,Dark,DNE +817,Gossifleur,40,60,40,Galar,40,60,10,Grass,DNE +818,Eldegoss,50,90,60,Galar,80,120,60,Grass,DNE +819,Wooloo,40,55,42,Galar,40,45,48,Normal,DNE +820,Dubwool,80,100,72,Galar,60,90,88,Normal,DNE +821,Chewtle,64,50,50,Galar,38,38,44,Water,DNE +822,Drednaw,115,90,90,Galar,48,68,74,Water,Rock +823,Yamper,45,50,59,Galar,40,50,26,Electric,DNE +824,Boltund,90,60,69,Galar,90,60,121,Electric,DNE +825,Rolycoly,40,50,30,Galar,40,50,30,Rock,DNE +826,Carkol,60,90,80,Galar,60,70,50,Rock,Fire +827,Coalossal,80,120,110,Galar,80,90,30,Rock,Fire +828,Applin,40,80,40,Galar,40,40,20,Grass,Dragon +829,Flapple,110,80,70,Galar,95,60,70,Grass,Dragon +830,Appletun,85,80,110,Galar,100,80,30,Grass,Dragon +831,Silicobra,57,75,52,Galar,35,50,46,Ground,DNE +832,Sandaconda,107,125,72,Galar,65,70,71,Ground,DNE +833,Cramorant,85,55,70,Galar,85,95,85,Flying,Water +834,Arrokuda,63,40,41,Galar,40,30,66,Water,DNE +835,Barraskewda,123,60,61,Galar,60,50,136,Water,DNE +836,Toxel,38,35,40,Galar,54,35,40,Electric,Poison +837,Toxtricity,98,70,75,Galar,114,70,75,Electric,Poison +838,Sizzlipede,65,45,50,Galar,50,50,45,Fire,Bug +839,Centiskorch,115,65,100,Galar,90,90,65,Fire,Bug +840,Clobbopus,68,60,50,Galar,50,50,32,Fighting,DNE +841,Grapploct,118,90,80,Galar,70,80,42,Fighting,DNE +842,Sinistea,45,45,40,Galar,74,54,50,Ghost,DNE +843,Polteageist,65,65,60,Galar,134,114,70,Ghost,DNE +844,Hatenna,30,45,42,Galar,56,53,39,Psychic,DNE +845,Hattrem,40,65,57,Galar,86,73,49,Psychic,DNE +846,Hatterene,90,95,57,Galar,136,103,29,Psychic,Fairy +847,Impidimp,45,30,45,Galar,55,40,50,Dark,Fairy +848,Morgrem,60,45,65,Galar,75,55,70,Dark,Fairy +849,Grimmsnarl,120,65,95,Galar,95,75,60,Dark,Fairy +850,Obstagoon,90,101,93,Galar,60,81,95,Dark,Normal +851,Perrserker,110,100,70,Galar,50,60,50,Steel,DNE +852,Cursola,95,50,60,Galar,145,130,30,Ghost,DNE +853,Runerigus,95,145,58,Galar,50,105,30,Ground,Ghost +854,Milcery,40,40,45,Galar,50,61,34,Fairy,DNE +855,Alcremie,60,75,65,Galar,110,121,64,Fairy,DNE +856,Falinks,100,100,65,Galar,70,60,75,Fighting,DNE +857,Pincurchin,101,95,48,Galar,91,85,15,Electric,DNE +858,Snom,25,35,30,Galar,45,30,20,Ice,Bug +859,Frosmoth,65,60,70,Galar,125,90,65,Ice,Bug +860,Stonjourner,125,135,100,Galar,20,20,70,Rock,DNE +861,Eiscue,80,110,75,Galar,65,90,50,Ice,DNE +862,Indeedee,65,55,60,Galar,105,95,95,Psychic,Normal +863,Morpeko,95,58,58,Galar,70,58,97,Electric,Dark +864,Cufant,80,49,72,Galar,40,49,40,Steel,DNE +865,Copperajah,130,69,122,Galar,80,69,30,Steel,DNE +866,Dracozolt,100,90,90,Galar,80,70,75,Electric,Dragon +867,Arctozolt,100,90,90,Galar,90,80,55,Electric,Ice +868,Dracovish,90,100,90,Galar,70,80,75,Water,Dragon +869,Arctovish,90,100,90,Galar,80,90,55,Water,Ice +870,Duraludon,95,115,70,Galar,120,50,85,Steel,Dragon +871,Dreepy,60,30,28,Galar,40,30,82,Dragon,Ghost +872,Drakloak,80,50,68,Galar,60,50,102,Dragon,Ghost +873,Dragapult,120,75,88,Galar,100,75,142,Dragon,Ghost +874,Zacian,120,115,92,Galar,80,115,138,Fairy,DNE +875,Zamazenta,120,115,92,Galar,80,115,138,Fighting,DNE +876,Eternatus,85,95,140,Galar,145,95,130,Poison,Dragon +877,Kubfu,90,60,60,Galar,53,50,72,Fighting,DNE +878,Urshifu,130,100,100,Galar,63,60,97,Fighting,Dark +879,Zarude,120,105,105,Galar,70,95,105,Dark,Grass +880,Regieleki,100,50,80,Galar,100,50,200,Electric,DNE +881,Regidrago,100,50,200,Galar,100,50,80,Dragon,DNE +882,Glastrier,145,130,100,Galar,65,110,30,Ice,DNE +883,Spectrier,65,60,100,Galar,145,80,130,Ghost,DNE +884,Calyrex,80,80,100,Galar,80,80,80,Psychic,Grass +885,Wyrdeer,105,72,103,Galar,105,75,65,Normal,Psychic +886,Kleavor,130,95,70,Galar,45,75,85,Bug,Rock +887,Ursaluna,140,105,130,Galar,45,80,50,Ground,Normal +888,Basculegion,112,65,120,Galar,80,75,78,Water,Ghost +889,Sneasler,130,60,80,Galar,40,80,120,Poison,Fighting +890,Overqwil,115,95,85,Galar,65,65,85,Dark,Poison +891,Enamorus,115,70,74,Galar,135,80,106,Fairy,Flying +892,Sprigatito,61,54,40,Paldea,45,45,65,Grass,DNE +893,Floragato,80,63,61,Paldea,60,63,83,Grass,DNE +894,Meowscarada,110,70,76,Paldea,81,70,123,Grass,Dark +895,Fuecoco,45,59,67,Paldea,63,40,36,Fire,DNE +896,Crocalor,55,78,81,Paldea,90,58,49,Fire,DNE +897,Skeledirge,75,100,104,Paldea,110,75,66,Fire,Ghost +898,Quaxly,65,45,55,Paldea,50,45,50,Water,DNE +899,Quaxwell,85,65,70,Paldea,65,60,65,Water,DNE +900,Quaquaval,120,80,85,Paldea,85,75,85,Water,Fighting +901,Lechonk,45,40,54,Paldea,35,45,35,Normal,DNE +902,Oinkologne,100,75,110,Paldea,59,80,65,Normal,DNE +903,Tarountula,41,45,35,Paldea,29,40,20,Bug,DNE +904,Spidops,79,92,60,Paldea,52,86,35,Bug,DNE +905,Nymble,46,40,33,Paldea,21,25,45,Bug,DNE +906,Lokix,102,78,71,Paldea,52,55,92,Bug,Dark +907,Pawmi,50,20,45,Paldea,40,25,60,Electric,DNE +908,Pawmo,75,40,60,Paldea,50,40,85,Electric,Fighting +909,Pawmot,115,70,70,Paldea,70,60,105,Electric,Fighting +910,Tandemaus,50,45,50,Paldea,40,45,75,Normal,DNE +911,Maushold,75,70,74,Paldea,65,75,111,Normal,DNE +912,Fidough,55,70,37,Paldea,30,55,65,Fairy,DNE +913,Dachsbun,80,115,57,Paldea,50,80,95,Fairy,DNE +914,Smoliv,35,45,41,Paldea,58,51,30,Grass,Normal +915,Dolliv,53,60,52,Paldea,78,78,33,Grass,Normal +916,Arboliva,69,90,78,Paldea,125,109,39,Grass,Normal +917,Squawkabilly,96,51,82,Paldea,45,51,92,Normal,Flying +918,Nacli,55,75,55,Paldea,35,35,25,Rock,DNE +919,Naclstack,60,100,60,Paldea,35,65,35,Rock,DNE +920,Garganacl,100,130,100,Paldea,45,90,35,Rock,DNE +921,Charcadet,50,40,40,Paldea,50,40,35,Fire,DNE +922,Armarouge,60,100,85,Paldea,125,80,75,Fire,Psychic +923,Ceruledge,125,80,75,Paldea,60,100,85,Fire,Ghost +924,Tadbulb,31,41,61,Paldea,59,35,45,Electric,DNE +925,Bellibolt,64,91,109,Paldea,103,83,45,Electric,DNE +926,Wattrel,40,35,40,Paldea,55,40,70,Electric,Flying +927,Kilowattrel,70,60,70,Paldea,105,60,125,Electric,Flying +928,Maschiff,78,60,60,Paldea,40,51,51,Dark,DNE +929,Mabosstiff,120,90,80,Paldea,60,70,85,Dark,DNE +930,Shroodle,65,35,40,Paldea,40,35,75,Poison,Normal +931,Grafaiai,95,65,63,Paldea,80,72,110,Poison,Normal +932,Bramblin,65,30,40,Paldea,45,35,60,Grass,Ghost +933,Brambleghast,115,70,55,Paldea,80,70,90,Grass,Ghost +934,Toedscool,40,35,40,Paldea,50,100,70,Ground,Grass +935,Toedscruel,70,65,80,Paldea,80,120,100,Ground,Grass +936,Klawf,100,115,70,Paldea,35,55,75,Rock,DNE +937,Capsakid,62,40,50,Paldea,62,40,50,Grass,DNE +938,Scovillain,108,65,65,Paldea,108,65,75,Grass,Fire +939,Rellor,50,60,41,Paldea,31,58,30,Bug,DNE +940,Rabsca,50,85,75,Paldea,115,100,45,Bug,Psychic +941,Flittle,35,30,30,Paldea,55,30,75,Psychic,DNE +942,Espathra,60,60,95,Paldea,101,60,105,Psychic,DNE +943,Tinkatink,45,45,50,Paldea,35,64,58,Fairy,Steel +944,Tinkatuff,55,55,65,Paldea,45,82,78,Fairy,Steel +945,Tinkaton,75,77,85,Paldea,70,105,94,Fairy,Steel +946,Wiglett,55,25,10,Paldea,35,25,95,Water,DNE +947,Wugtrio,100,50,35,Paldea,50,70,120,Water,DNE +948,Bombirdier,103,85,70,Paldea,60,85,82,Flying,Dark +949,Finizen,45,40,70,Paldea,45,40,75,Water,DNE +950,Palafin,70,72,100,Paldea,53,62,100,Water,DNE +951,Varoom,70,63,45,Paldea,30,45,47,Steel,Poison +952,Revavroom,119,90,80,Paldea,54,67,90,Steel,Poison +953,Cyclizar,95,65,70,Paldea,85,65,121,Dragon,Normal +954,Orthworm,85,145,70,Paldea,60,55,65,Steel,DNE +955,Glimmet,35,42,48,Paldea,105,60,60,Rock,Poison +956,Glimmora,55,90,83,Paldea,130,81,86,Rock,Poison +957,Greavard,61,60,50,Paldea,30,55,34,Ghost,DNE +958,Houndstone,101,100,72,Paldea,50,97,68,Ghost,DNE +959,Flamigo,115,74,82,Paldea,75,64,90,Flying,Fighting +960,Cetoddle,68,45,108,Paldea,30,40,43,Ice,DNE +961,Cetitan,113,65,170,Paldea,45,55,73,Ice,DNE +962,Veluza,102,73,90,Paldea,78,65,70,Water,Psychic +963,Dondozo,100,115,150,Paldea,65,65,35,Water,DNE +964,Tatsugiri,50,60,68,Paldea,120,95,82,Dragon,Water +965,Annihilape,115,80,110,Paldea,50,90,90,Fighting,Ghost +966,Clodsire,75,60,130,Paldea,45,100,20,Poison,Ground +967,Farigiraf,90,70,120,Paldea,110,70,60,Normal,Psychic +968,Dudunsparce,100,80,125,Paldea,85,75,55,Normal,DNE +969,Kingambit,135,120,100,Paldea,60,85,50,Dark,Steel +970,Frigibax,75,45,65,Paldea,35,45,55,Dragon,Ice +971,Arctibax,95,66,90,Paldea,45,65,62,Dragon,Ice +972,Baxcalibur,145,92,115,Paldea,75,86,87,Dragon,Ice +973,Gimmighoul,30,70,45,Paldea,75,70,10,Ghost,DNE +974,Gholdengo,60,95,87,Paldea,133,91,84,Steel,Ghost +975,Wo-Chien,85,100,85,Paldea,95,135,70,Dark,Grass +976,Chien-Pao,120,80,80,Paldea,90,65,135,Dark,Ice +977,Ting-Lu,110,125,155,Paldea,55,80,45,Dark,Ground +978,Chi-Yu,80,80,55,Paldea,135,120,100,Dark,Fire +979,Koraidon,135,115,100,Paldea,85,100,135,Fighting,Dragon +980,Miraidon,85,100,100,Paldea,135,115,135,Electric,Dragon diff --git a/lab-p4/project.py b/lab-p4/project.py new file mode 100644 index 0000000000000000000000000000000000000000..99e46bf111d00509d6e413afc03e5e8c5b53f3d5 --- /dev/null +++ b/lab-p4/project.py @@ -0,0 +1,120 @@ +__pokemon__= {} +__effectiveness__ = {} + +def __init__(): + """This function loads the data from `pokemon_stats.csv` and `type_effectiveness_stats.csv`. This function runs automatically, when the module is imported""" + import csv + f = open('pokemon_stats.csv', encoding='utf-8') + raw_pkmn_data = list(csv.reader(f)) + f.close() + pkmn_header = raw_pkmn_data[0] + pkmn_header.pop(0) + raw_pkmn_data = raw_pkmn_data[1:] + for pkmn_data in raw_pkmn_data: + pkmn_data.pop(0) + pkmn = {} + for i in range(len(pkmn_header)): + pkmn[pkmn_header[i]] = pkmn_data[i] + for stat in pkmn: + if stat in ['HP', 'Attack', 'Defense', 'Sp. Atk', 'Sp. Def', 'Speed']: + pkmn[stat] = int(pkmn[stat]) + __pokemon__[pkmn["Name"]] = pkmn + + f = open('type_effectiveness_stats.csv', encoding='utf-8') + raw_type_data = list(csv.reader(f)) + f.close() + type_header = raw_type_data[0] + raw_type_data = raw_type_data[1:] + for type1 in type_header[1:]: + __effectiveness__[type1] = {} + for row in raw_type_data: + type2 = row[0] + for i in range(1, len(row)): + type1 = type_header[i] + __effectiveness__[type1][type2] = float(row[i]) + +def print_stats(pkmn): + """print_stats(pkmn) prints all the statistics of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + for stat in __pokemon__[pkmn]: + if not (stat == 'Type 2' and __pokemon__[pkmn][stat] == "DNE"): + print(stat, ": ", __pokemon__[pkmn][stat]) + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_region(pkmn): + """get_region(pkmn) returns the region of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + return __pokemon__[pkmn]['Region'] + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_type1(pkmn): + """get_type1(pkmn) returns Type 1 of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + return __pokemon__[pkmn]['Type 1'] + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_type2(pkmn): + """get_type2(pkmn) returns Type 2 of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + return __pokemon__[pkmn]['Type 2'] + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_hp(pkmn): + """get_hp(pkmn) returns the HP of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + return __pokemon__[pkmn]['HP'] + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_attack(pkmn): + """get_attack(pkmn) returns the Attack of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + return __pokemon__[pkmn]['Attack'] + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_defense(pkmn): + """get_defense(pkmn) returns the Defense of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + return __pokemon__[pkmn]['Defense'] + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_sp_atk(pkmn): + """get_sp_atk(pkmn) returns the Special Attack of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + return __pokemon__[pkmn]['Sp. Atk'] + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_sp_def(pkmn): + """get_sp_def(pkmn) returns the Special Defense of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + return __pokemon__[pkmn]['Sp. Def'] + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_speed(pkmn): + """get_speed(pkmn) returns the Speed of the Pokémon with the name `pkmn`""" + if pkmn in __pokemon__: + return __pokemon__[pkmn]['Speed'] + else: + raise Exception("Pokémon '" + pkmn + "' not found in the file") + +def get_type_effectiveness(attacker_type, defender_type): + """get_type_effectiveness(attacker_type, defender_type) returns the effectiveness of `attacker_type` attacks against `defender_type` Pokémon""" + if attacker_type in __effectiveness__ and defender_type in __effectiveness__[attacker_type]: + return __effectiveness__[attacker_type][defender_type] + elif attacker_type not in __effectiveness__: + if defender_type not in __effectiveness__: + raise Exception("Type '" + attacker_type + "' and Type '" + defender_type + "' not found in the file") + else: + raise Exception("Type '" + attacker_type + "' not found in the file") + else: + raise Exception("Type '" + defender_type + "' not found in the file") + +__init__() diff --git a/lab-p4/public_tests.py b/lab-p4/public_tests.py new file mode 100644 index 0000000000000000000000000000000000000000..78e536ce9111f857ac7355ed969a640ff9941cc4 --- /dev/null +++ b/lab-p4/public_tests.py @@ -0,0 +1,838 @@ +#!/usr/bin/python +# + +import os, json, math, copy +from collections import namedtuple +from bs4 import BeautifulSoup + +HIDDEN_FILE = os.path.join("hidden", "hidden_tests.py") +if os.path.exists(HIDDEN_FILE): + import hidden.hidden_tests as hidn +# - + +MAX_FILE_SIZE = 750 # units - KB +REL_TOL = 6e-04 # relative tolerance for floats +ABS_TOL = 15e-03 # absolute tolerance for floats +TOTAL_SCORE = 100 # total score for the project + +DF_FILE = 'expected_dfs.html' +PLOT_FILE = 'expected_plots.json' + +PASS = "All test cases passed!" + +TEXT_FORMAT = "TEXT_FORMAT" # question type when expected answer is a type, str, int, float, or bool +TEXT_FORMAT_UNORDERED_LIST = "TEXT_FORMAT_UNORDERED_LIST" # question type when the expected answer is a list or a set where the order does *not* matter +TEXT_FORMAT_ORDERED_LIST = "TEXT_FORMAT_ORDERED_LIST" # question type when the expected answer is a list or tuple where the order does matter +TEXT_FORMAT_DICT = "TEXT_FORMAT_DICT" # question type when the expected answer is a dictionary +TEXT_FORMAT_SPECIAL_ORDERED_LIST = "TEXT_FORMAT_SPECIAL_ORDERED_LIST" # question type when the expected answer is a list where order does matter, but with possible ties. Elements are ordered according to values in special_ordered_json (with ties allowed) +TEXT_FORMAT_NAMEDTUPLE = "TEXT_FORMAT_NAMEDTUPLE" # question type when expected answer is a namedtuple +PNG_FORMAT_SCATTER = "PNG_FORMAT_SCATTER" # question type when the expected answer is a scatter plot +HTML_FORMAT = "HTML_FORMAT" # question type when the expected answer is a DataFrame +FILE_JSON_FORMAT = "FILE_JSON_FORMAT" # question type when the expected answer is a JSON file +SLASHES = " SLASHES" # question SUFFIX when expected answer contains paths with slashes + +def get_expected_format(): + """get_expected_format() returns a dict mapping each question to the format + of the expected answer.""" + expected_format = {'q1': 'TEXT_FORMAT', + 'q2': 'TEXT_FORMAT', + 'q3': 'TEXT_FORMAT', + 'q4': 'TEXT_FORMAT', + 'q5': 'TEXT_FORMAT', + 'q6': 'TEXT_FORMAT', + 'q7': 'TEXT_FORMAT', + 'q8': 'TEXT_FORMAT', + 'q9': 'TEXT_FORMAT', + 'q10': 'TEXT_FORMAT', + 'q11': 'TEXT_FORMAT', + 'q12': 'TEXT_FORMAT', + 'q13': 'TEXT_FORMAT', + 'q14': 'TEXT_FORMAT', + 'q15': 'TEXT_FORMAT', + 'q16': 'TEXT_FORMAT', + 'q17': 'TEXT_FORMAT', + 'q18': 'TEXT_FORMAT', + 'q19': 'TEXT_FORMAT', + 'q20': 'TEXT_FORMAT', + 'q21': 'TEXT_FORMAT', + 'q22': 'TEXT_FORMAT', + 'q23': 'TEXT_FORMAT', + 'q24': 'TEXT_FORMAT', + 'q25': 'TEXT_FORMAT', + 'q26': 'TEXT_FORMAT', + 'q27': 'TEXT_FORMAT', + 'q28': 'TEXT_FORMAT', + 'q29': 'TEXT_FORMAT', + 'q30': 'TEXT_FORMAT', + 'q31': 'TEXT_FORMAT', + 'q32': 'TEXT_FORMAT', + 'q33': 'TEXT_FORMAT', + 'q34': 'TEXT_FORMAT', + 'q35': 'TEXT_FORMAT'} + return expected_format + + +def get_expected_json(): + """get_expected_json() returns a dict mapping each question to the expected + answer (if the format permits it).""" + expected_json = {'q1': 'Paldea', + 'q2': 'Fire', + 'q3': 'Dragon', + 'q4': 106, + 'q5': 150, + 'q6': 150, + 'q7': 50, + 'q8': 140, + 'q9': 15, + 'q10': 2.0, + 'q11': 'Pikachu is from the Kanto region', + 'q12': 'Snorlax', + 'q13': 'Charmander', + 'q14': 'Beedrill', + 'q15': 'Draw', + 'q16': 'Arcanine', + 'q17': 'Draw', + 'q18': 'Lugia', + 'q19': 1, + 'q20': 2, + 'q21': True, + 'q22': True, + 'q23': True, + 'q24': True, + 'q25': False, + 'q26': False, + 'q27': False, + 'q28': True, + 'q29': 'Fire is stronger than Grass', + 'q30': 'Charmander', + 'q31': 'Draw', + 'q32': 'Draw', + 'q33': 'Skiploom', + 'q34': 'Chimchar', + 'q35': 'Draw'} + return expected_json + + +def get_special_json(): + """get_special_json() returns a dict mapping each question to the expected + answer stored in a special format as a list of tuples. Each tuple contains + the element expected in the list, and its corresponding value. Any two + elements with the same value can appear in any order in the actual list, + but if two elements have different values, then they must appear in the + same order as in the expected list of tuples.""" + special_json = {} + return special_json + + +def compare(expected, actual, q_format=TEXT_FORMAT): + """compare(expected, actual) is used to compare when the format of + the expected answer is known for certain.""" + try: + if q_format == TEXT_FORMAT: + return simple_compare(expected, actual) + elif q_format == TEXT_FORMAT_UNORDERED_LIST: + return list_compare_unordered(expected, actual) + elif q_format == TEXT_FORMAT_ORDERED_LIST: + return list_compare_ordered(expected, actual) + elif q_format == TEXT_FORMAT_DICT: + return dict_compare(expected, actual) + elif q_format == TEXT_FORMAT_SPECIAL_ORDERED_LIST: + return list_compare_special(expected, actual) + elif q_format == TEXT_FORMAT_NAMEDTUPLE: + return namedtuple_compare(expected, actual) + elif q_format == PNG_FORMAT_SCATTER: + return compare_flip_dicts(expected, actual) + elif q_format == HTML_FORMAT: + return compare_cell_html(expected, actual) + elif q_format == FILE_JSON_FORMAT: + return compare_json(expected, actual) + else: + if expected != actual: + return "expected %s but found %s " % (repr(expected), repr(actual)) + except: + if expected != actual: + return "expected %s" % (repr(expected)) + return PASS + + +def print_message(expected, actual, complete_msg=True): + """print_message(expected, actual) displays a simple error message.""" + msg = "expected %s" % (repr(expected)) + if complete_msg: + msg = msg + " but found %s" % (repr(actual)) + return msg + + +def simple_compare(expected, actual, complete_msg=True): + """simple_compare(expected, actual) is used to compare when the expected answer + is a type/Nones/str/int/float/bool. When the expected answer is a float, + the actual answer is allowed to be within the tolerance limit. Otherwise, + the values must match exactly, or a very simple error message is displayed.""" + msg = PASS + if 'numpy' in repr(type((actual))): + actual = actual.item() + if isinstance(expected, type): + if expected != actual: + if isinstance(actual, type): + msg = "expected %s but found %s" % (expected.__name__, actual.__name__) + else: + msg = "expected %s but found %s" % (expected.__name__, repr(actual)) + elif not isinstance(actual, type(expected)) and not (isinstance(expected, (float, int)) and isinstance(actual, (float, int))): + msg = "expected to find type %s but found type %s" % (type(expected).__name__, type(actual).__name__) + elif isinstance(expected, float): + if not math.isclose(actual, expected, rel_tol=REL_TOL, abs_tol=ABS_TOL): + msg = print_message(expected, actual, complete_msg) + elif isinstance(expected, (list, tuple)) or is_namedtuple(expected): + new_msg = print_message(expected, actual, complete_msg) + if len(expected) != len(actual): + return new_msg + for i in range(len(expected)): + val = simple_compare(expected[i], actual[i]) + if val != PASS: + return new_msg + elif isinstance(expected, dict): + new_msg = print_message(expected, actual, complete_msg) + if len(expected) != len(actual): + return new_msg + val = simple_compare(list(expected.keys()), list(actual.keys())) + if val != PASS: + return new_msg + for key in expected: + val = simple_compare(expected[key], actual[key]) + if val != PASS: + return new_msg + else: + if expected != actual: + msg = print_message(expected, actual, complete_msg) + return msg + + +def intelligent_compare(expected, actual, obj=None): + """intelligent_compare(expected, actual) is used to compare when the + data type of the expected answer is not known for certain, and default + assumptions need to be made.""" + if obj == None: + obj = type(expected).__name__ + if is_namedtuple(expected): + msg = namedtuple_compare(expected, actual) + elif isinstance(expected, (list, tuple)): + msg = list_compare_ordered(expected, actual, obj) + elif isinstance(expected, set): + msg = list_compare_unordered(expected, actual, obj) + elif isinstance(expected, (dict)): + msg = dict_compare(expected, actual) + else: + msg = simple_compare(expected, actual) + msg = msg.replace("CompDict", "dict").replace("CompSet", "set").replace("NewNone", "None") + return msg + + +def is_namedtuple(obj, init_check=True): + """is_namedtuple(obj) returns True if `obj` is a namedtuple object + defined in the test file.""" + bases = type(obj).__bases__ + if len(bases) != 1 or bases[0] != tuple: + return False + fields = getattr(type(obj), '_fields', None) + if not isinstance(fields, tuple): + return False + if init_check and not type(obj).__name__ in [nt.__name__ for nt in _expected_namedtuples]: + return False + return True + + +def list_compare_ordered(expected, actual, obj=None): + """list_compare_ordered(expected, actual) is used to compare when the + expected answer is a list/tuple, where the order of the elements matters.""" + msg = PASS + if not isinstance(actual, type(expected)): + msg = "expected to find type %s but found type %s" % (type(expected).__name__, type(actual).__name__) + return msg + if obj == None: + obj = type(expected).__name__ + for i in range(len(expected)): + if i >= len(actual): + msg = "at index %d of the %s, expected missing %s" % (i, obj, repr(expected[i])) + break + val = intelligent_compare(expected[i], actual[i], "sub" + obj) + if val != PASS: + msg = "at index %d of the %s, " % (i, obj) + val + break + if len(actual) > len(expected) and msg == PASS: + msg = "at index %d of the %s, found unexpected %s" % (len(expected), obj, repr(actual[len(expected)])) + if len(expected) != len(actual): + msg = msg + " (found %d entries in %s, but expected %d)" % (len(actual), obj, len(expected)) + + if len(expected) > 0: + try: + if msg != PASS and list_compare_unordered(expected, actual, obj) == PASS: + msg = msg + " (%s may not be ordered as required)" % (obj) + except: + pass + return msg + + +def list_compare_helper(larger, smaller): + """list_compare_helper(larger, smaller) is a helper function which takes in + two lists of possibly unequal sizes and finds the item that is not present + in the smaller list, if there is such an element.""" + msg = PASS + j = 0 + for i in range(len(larger)): + if i == len(smaller): + msg = "expected %s" % (repr(larger[i])) + break + found = False + while not found: + if j == len(smaller): + val = simple_compare(larger[i], smaller[j - 1], complete_msg=False) + break + val = simple_compare(larger[i], smaller[j], complete_msg=False) + j += 1 + if val == PASS: + found = True + break + if not found: + msg = val + break + return msg + +class NewNone(): + """alternate class in place of None, which allows for comparison with + all other data types.""" + def __str__(self): + return 'None' + def __repr__(self): + return 'None' + def __lt__(self, other): + return True + def __le__(self, other): + return True + def __gt__(self, other): + return False + def __ge__(self, other): + return other == None + def __eq__(self, other): + return other == None + def __ne__(self, other): + return other != None + +class CompDict(dict): + """subclass of dict, which allows for comparison with other dicts.""" + def __init__(self, vals): + super(self.__class__, self).__init__(vals) + if type(vals) == CompDict: + self.val = vals.val + elif isinstance(vals, dict): + self.val = self.get_equiv(vals) + else: + raise TypeError("'%s' object cannot be type casted to CompDict class" % type(vals).__name__) + + def get_equiv(self, vals): + val = [] + for key in sorted(list(vals.keys())): + val.append((key, vals[key])) + return val + + def __str__(self): + return str(dict(self.val)) + def __repr__(self): + return repr(dict(self.val)) + def __lt__(self, other): + return self.val < CompDict(other).val + def __le__(self, other): + return self.val <= CompDict(other).val + def __gt__(self, other): + return self.val > CompDict(other).val + def __ge__(self, other): + return self.val >= CompDict(other).val + def __eq__(self, other): + return self.val == CompDict(other).val + def __ne__(self, other): + return self.val != CompDict(other).val + +class CompSet(set): + """subclass of set, which allows for comparison with other sets.""" + def __init__(self, vals): + super(self.__class__, self).__init__(vals) + if type(vals) == CompSet: + self.val = vals.val + elif isinstance(vals, set): + self.val = self.get_equiv(vals) + else: + raise TypeError("'%s' object cannot be type casted to CompSet class" % type(vals).__name__) + + def get_equiv(self, vals): + return sorted(list(vals)) + + def __str__(self): + return str(set(self.val)) + def __repr__(self): + return repr(set(self.val)) + def __getitem__(self, index): + return self.val[index] + def __lt__(self, other): + return self.val < CompSet(other).val + def __le__(self, other): + return self.val <= CompSet(other).val + def __gt__(self, other): + return self.val > CompSet(other).val + def __ge__(self, other): + return self.val >= CompSet(other).val + def __eq__(self, other): + return self.val == CompSet(other).val + def __ne__(self, other): + return self.val != CompSet(other).val + +def make_sortable(item): + """make_sortable(item) replaces all Nones in `item` with an alternate + class that allows for comparison with str/int/float/bool/list/set/tuple/dict. + It also replaces all dicts (and sets) with a subclass that allows for + comparison with other dicts (and sets).""" + if item == None: + return NewNone() + elif isinstance(item, (type, str, int, float, bool)): + return item + elif isinstance(item, (list, set, tuple)): + new_item = [] + for subitem in item: + new_item.append(make_sortable(subitem)) + if is_namedtuple(item): + return type(item)(*new_item) + elif isinstance(item, set): + return CompSet(new_item) + else: + return type(item)(new_item) + elif isinstance(item, dict): + new_item = {} + for key in item: + new_item[key] = make_sortable(item[key]) + return CompDict(new_item) + return item + +def list_compare_unordered(expected, actual, obj=None): + """list_compare_unordered(expected, actual) is used to compare when the + expected answer is a list/set where the order of the elements does not matter.""" + msg = PASS + if not isinstance(actual, type(expected)): + msg = "expected to find type %s but found type %s" % (type(expected).__name__, type(actual).__name__) + return msg + if obj == None: + obj = type(expected).__name__ + + try: + sort_expected = sorted(make_sortable(expected)) + sort_actual = sorted(make_sortable(actual)) + except: + return "unexpected datatype found in %s; expected entries of type %s" % (obj, obj, type(expected[0]).__name__) + + if len(actual) == 0 and len(expected) > 0: + msg = "in the %s, missing" % (obj) + sort_expected[0] + elif len(actual) > 0 and len(expected) > 0: + val = intelligent_compare(sort_expected[0], sort_actual[0]) + if val.startswith("expected to find type"): + msg = "in the %s, " % (obj) + simple_compare(sort_expected[0], sort_actual[0]) + else: + if len(expected) > len(actual): + msg = "in the %s, missing " % (obj) + list_compare_helper(sort_expected, sort_actual) + elif len(expected) < len(actual): + msg = "in the %s, found un" % (obj) + list_compare_helper(sort_actual, sort_expected) + if len(expected) != len(actual): + msg = msg + " (found %d entries in %s, but expected %d)" % (len(actual), obj, len(expected)) + return msg + else: + val = list_compare_helper(sort_expected, sort_actual) + if val != PASS: + msg = "in the %s, missing " % (obj) + val + ", but found un" + list_compare_helper(sort_actual, + sort_expected) + return msg + + +def namedtuple_compare(expected, actual): + """namedtuple_compare(expected, actual) is used to compare when the + expected answer is a namedtuple defined in the test file.""" + msg = PASS + if is_namedtuple(actual, False): + msg = "expected namedtuple but found %s" % (type(actual).__name__) + return msg + if type(expected).__name__ != type(actual).__name__: + return "expected namedtuple %s but found namedtuple %s" % (type(expected).__name__, type(actual).__name__) + expected_fields = expected._fields + actual_fields = actual._fields + msg = list_compare_ordered(list(expected_fields), list(actual_fields), "namedtuple attributes") + if msg != PASS: + return msg + for field in expected_fields: + val = intelligent_compare(getattr(expected, field), getattr(actual, field)) + if val != PASS: + msg = "at attribute %s of namedtuple %s, " % (field, type(expected).__name__) + val + return msg + return msg + + +def clean_slashes(item): + """clean_slashes()""" + if isinstance(item, str): + return item.replace("\\", "/").replace("/", os.path.sep) + elif item == None or isinstance(item, (type, int, float, bool)): + return item + elif isinstance(item, (list, tuple, set)) or is_namedtuple(item): + new_item = [] + for subitem in item: + new_item.append(clean_slashes(subitem)) + if is_namedtuple(item): + return type(item)(*new_item) + else: + return type(item)(new_item) + elif isinstance(item, dict): + new_item = {} + for key in item: + new_item[clean_slashes(key)] = clean_slashes(item[key]) + return item + + +def list_compare_special_initialize(special_expected): + """list_compare_special_initialize(special_expected) takes in the special + ordering stored as a sorted list of items, and returns a list of lists + where the ordering among the inner lists does not matter.""" + latest_val = None + clean_special = [] + for row in special_expected: + if latest_val == None or row[1] != latest_val: + clean_special.append([]) + latest_val = row[1] + clean_special[-1].append(row[0]) + return clean_special + + +def list_compare_special(special_expected, actual): + """list_compare_special(special_expected, actual) is used to compare when the + expected answer is a list with special ordering defined in `special_expected`.""" + msg = PASS + expected_list = [] + special_order = list_compare_special_initialize(special_expected) + for expected_item in special_order: + expected_list.extend(expected_item) + val = list_compare_unordered(expected_list, actual) + if val != PASS: + return val + i = 0 + for expected_item in special_order: + j = len(expected_item) + actual_item = actual[i: i + j] + val = list_compare_unordered(expected_item, actual_item) + if val != PASS: + if j == 1: + msg = "at index %d " % (i) + val + else: + msg = "between indices %d and %d " % (i, i + j - 1) + val + msg = msg + " (list may not be ordered as required)" + break + i += j + return msg + + +def dict_compare(expected, actual, obj=None): + """dict_compare(expected, actual) is used to compare when the expected answer + is a dict.""" + msg = PASS + if not isinstance(actual, type(expected)): + msg = "expected to find type %s but found type %s" % (type(expected).__name__, type(actual).__name__) + return msg + if obj == None: + obj = type(expected).__name__ + + expected_keys = list(expected.keys()) + actual_keys = list(actual.keys()) + val = list_compare_unordered(expected_keys, actual_keys, obj) + + if val != PASS: + msg = "bad keys in %s: " % (obj) + val + if msg == PASS: + for key in expected: + new_obj = None + if isinstance(expected[key], (list, tuple, set)): + new_obj = 'value' + elif isinstance(expected[key], dict): + new_obj = 'sub' + obj + val = intelligent_compare(expected[key], actual[key], new_obj) + if val != PASS: + msg = "incorrect value for key %s in %s: " % (repr(key), obj) + val + return msg + + +def is_flippable(item): + """is_flippable(item) determines if the given dict of lists has lists of the + same length and is therefore flippable.""" + item_lens = set(([str(len(item[key])) for key in item])) + if len(item_lens) == 1: + return PASS + else: + return "found lists of lengths %s" % (", ".join(list(item_lens))) + +def flip_dict_of_lists(item): + """flip_dict_of_lists(item) flips a dict of lists into a list of dicts if the + lists are of same length.""" + new_item = [] + length = len(list(item.values())[0]) + for i in range(length): + new_dict = {} + for key in item: + new_dict[key] = item[key][i] + new_item.append(new_dict) + return new_item + +def compare_flip_dicts(expected, actual, obj="lists"): + """compare_flip_dicts(expected, actual) flips a dict of lists (or dicts) into + a list of dicts (or dict of dicts) and then compares the list ignoring order.""" + msg = PASS + example_item = list(expected.values())[0] + if isinstance(example_item, (list, tuple)): + val = is_flippable(actual) + if val != PASS: + msg = "expected to find lists of length %d, but " % (len(example_item)) + val + return msg + msg = list_compare_unordered(flip_dict_of_lists(expected), flip_dict_of_lists(actual), "lists") + elif isinstance(example_item, dict): + expected_keys = list(example_item.keys()) + for key in actual: + val = list_compare_unordered(expected_keys, list(actual[key].keys()), "dictionary %s" % key) + if val != PASS: + return val + for cat_key in expected_keys: + expected_category = {} + actual_category = {} + for key in expected: + expected_category[key] = expected[key][cat_key] + actual_category[key] = actual[key][cat_key] + val = list_compare_unordered(flip_dict_of_lists(expected), flip_dict_of_lists(actual), "category " + repr(cat_key)) + if val != PASS: + return val + return msg + + +def get_expected_tables(): + """get_expected_tables() reads the html file with the expected DataFrames + and returns a dict mapping each question to a html table.""" + if not os.path.exists(DF_FILE): + return None + + expected_tables = {} + f = open(DF_FILE, encoding='utf-8') + soup = BeautifulSoup(f.read(), 'html.parser') + f.close() + + tables = soup.find_all('table') + for table in tables: + expected_tables[table.get("data-question")] = table + + return expected_tables + +def parse_df_html_table(table): + """parse_df_html_table(table) takes in a table as a html string and returns + a dict mapping each row and column index to the value at that position.""" + rows = [] + for tr in table.find_all('tr'): + rows.append([]) + for cell in tr.find_all(['td', 'th']): + rows[-1].append(cell.get_text().strip("\n ")) + + cells = {} + for r in range(1, len(rows)): + for c in range(1, len(rows[0])): + rname = rows[r][0] + cname = rows[0][c] + cells[(rname,cname)] = rows[r][c] + return cells + + +def get_expected_namedtuples(): + """get_expected_namedtuples() defines the required namedtuple objects + globally. It also returns a tuple of the classes.""" + expected_namedtuples = [] + + return tuple(expected_namedtuples) + +_expected_namedtuples = get_expected_namedtuples() + + +def compare_cell_html(expected, actual): + """compare_cell_html(expected, actual) is used to compare when the + expected answer is a DataFrame stored in the `expected_dfs` html file.""" + expected_cells = parse_df_html_table(expected) + try: + actual_cells = parse_df_html_table(BeautifulSoup(actual, 'html.parser').find('table')) + except Exception as e: + return "expected to find type DataFrame but found type %s instead" % type(actual).__name__ + + expected_cols = list(set(["column %s" % (loc[1]) for loc in expected_cells])) + actual_cols = list(set(["column %s" % (loc[1]) for loc in actual_cells])) + msg = list_compare_unordered(expected_cols, actual_cols, "DataFrame") + if msg != PASS: + return msg + + expected_rows = list(set(["row index %s" % (loc[0]) for loc in expected_cells])) + actual_rows = list(set(["row index %s" % (loc[0]) for loc in actual_cells])) + msg = list_compare_unordered(expected_rows, actual_rows, "DataFrame") + if msg != PASS: + return msg + + for location, expected in expected_cells.items(): + location_name = "column {} at index {}".format(location[1], location[0]) + actual = actual_cells.get(location, None) + if actual == None: + return "in %s, expected to find %s" % (location_name, repr(expected)) + try: + actual_ans = float(actual) + expected_ans = float(expected) + if math.isnan(actual_ans) and math.isnan(expected_ans): + continue + except Exception as e: + actual_ans, expected_ans = actual, expected + msg = simple_compare(expected_ans, actual_ans) + if msg != PASS: + return "in %s, " % location_name + msg + return PASS + + +def get_expected_plots(): + """get_expected_plots() reads the json file with the expected plot data + and returns a dict mapping each question to a dictionary with the plots data.""" + if not os.path.exists(PLOT_FILE): + return None + + f = open(PLOT_FILE, encoding='utf-8') + expected_plots = json.load(f) + f.close() + return expected_plots + + +def compare_file_json(expected, actual): + """compare_file_json(expected, actual) is used to compare when the + expected answer is a JSON file.""" + msg = PASS + if not os.path.isfile(expected): + return "file %s not found; make sure it is downloaded and stored in the correct directory" % (expected) + elif not os.path.isfile(actual): + return "file %s not found; make sure that you have created the file with the correct name" % (actual) + try: + e = open(expected, encoding='utf-8') + expected_data = json.load(e) + e.close() + except json.JSONDecodeError: + return "file %s is broken and cannot be parsed; please delete and redownload the file correctly" % (expected) + try: + a = open(actual, encoding='utf-8') + actual_data = json.load(a) + a.close() + except json.JSONDecodeError: + return "file %s is broken and cannot be parsed" % (actual) + if type(expected_data) == list: + msg = list_compare_ordered(expected_data, actual_data, 'file ' + actual) + elif type(expected_data) == dict: + msg = dict_compare(expected_data, actual_data) + return msg + + +_expected_json = get_expected_json() +_special_json = get_special_json() +_expected_plots = get_expected_plots() +_expected_tables = get_expected_tables() +_expected_format = get_expected_format() + +def check(qnum, actual): + """check(qnum, actual) is used to check if the answer in the notebook is + the correct answer, and provide useful feedback if the answer is incorrect.""" + msg = PASS + error_msg = "<b style='color: red;'>ERROR:</b> " + q_format = _expected_format[qnum] + + if q_format == TEXT_FORMAT_SPECIAL_ORDERED_LIST: + expected = _special_json[qnum] + elif q_format == PNG_FORMAT_SCATTER: + if _expected_plots == None: + msg = error_msg + "file %s not parsed; make sure it is downloaded and stored in the correct directory" % (PLOT_FILE) + else: + expected = _expected_plots[qnum] + elif q_format == HTML_FORMAT: + if _expected_tables == None: + msg = error_msg + "file %s not parsed; make sure it is downloaded and stored in the correct directory" % (DF_FILE) + else: + expected = _expected_tables[qnum] + else: + expected = _expected_json[qnum] + + if SLASHES in q_format: + q_format = q_format.replace(SLASHES, "") + expected = clean_slashes(expected) + actual = clean_slashes(actual) + + if msg != PASS: + print(msg) + else: + msg = compare(expected, actual, q_format) + if msg != PASS: + msg = error_msg + msg + print(msg) + + +def check_file_size(path): + """check_file_size(path) throws an error if the file is too big to display + on Gradescope.""" + size = os.path.getsize(path) + assert size < MAX_FILE_SIZE * 10**3, "Your file is too big to be displayed by Gradescope; please delete unnecessary output cells so your file size is < %s KB" % MAX_FILE_SIZE + + +def reset_hidden_tests(): + """reset_hidden_tests() resets all hidden tests on the Gradescope autograder where the hidden test file exists""" + if not os.path.exists(HIDDEN_FILE): + return + hidn.reset_hidden_tests() + +def rubric_check(rubric_point, ignore_past_errors=True): + """rubric_check(rubric_point) uses the hidden test file on the Gradescope autograder to grade the `rubric_point`""" + if not os.path.exists(HIDDEN_FILE): + print(PASS) + return + error_msg_1 = "ERROR: " + error_msg_2 = "TEST DETAILS: " + try: + msg = hidn.rubric_check(rubric_point, ignore_past_errors) + except: + msg = "hidden tests crashed before execution" + if msg != PASS: + hidn.make_deductions(rubric_point) + if msg == "public tests failed": + comment = "The public tests have failed, so you will not receive any points for this question." + comment += "\nPlease confirm that the public tests pass locally before submitting." + elif msg == "answer is hardcoded": + comment = "In the datasets for testing hardcoding, all numbers are replaced with random values." + comment += "\nIf the answer is the same as in the original dataset for all these datasets" + comment += "\ndespite this, that implies that the answer in the notebook is hardcoded." + comment += "\nYou will not receive any points for this question." + else: + comment = hidn.get_comment(rubric_point) + msg = error_msg_1 + msg + if comment != "": + msg = msg + "\n" + error_msg_2 + comment + print(msg) + +def get_summary(): + """get_summary() returns the summary of the notebook using the hidden test file on the Gradescope autograder""" + if not os.path.exists(HIDDEN_FILE): + print("Total Score: %d/%d" % (TOTAL_SCORE, TOTAL_SCORE)) + return + score = min(TOTAL_SCORE, hidn.get_score(TOTAL_SCORE)) + display_msg = "Total Score: %d/%d" % (score, TOTAL_SCORE) + if score != TOTAL_SCORE: + display_msg += "\n" + hidn.get_deduction_string() + print(display_msg) + +def get_score_digit(digit): + """get_score_digit(digit) returns the `digit` of the score using the hidden test file on the Gradescope autograder""" + if not os.path.exists(HIDDEN_FILE): + score = TOTAL_SCORE + else: + score = hidn.get_score(TOTAL_SCORE) + digits = bin(score)[2:] + digits = "0"*(7 - len(digits)) + digits + return int(digits[6 - digit]) diff --git a/lab-p4/type_effectiveness_stats.csv b/lab-p4/type_effectiveness_stats.csv new file mode 100644 index 0000000000000000000000000000000000000000..88ef8fa3517506241ce3682310d6c13ab825fa7e --- /dev/null +++ b/lab-p4/type_effectiveness_stats.csv @@ -0,0 +1,19 @@ +,Normal,Fire,Water,Electric,Grass,Ice,Fighting,Poison,Ground,Flying,Psychic,Bug,Rock,Ghost,Dragon,Dark,Steel,Fairy +Normal,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,0.0,1.0,1.0,1.0,1.0 +Fire,1.0,0.5,2.0,1.0,0.5,0.5,1.0,1.0,2.0,1.0,1.0,0.5,2.0,1.0,1.0,1.0,0.5,0.5 +Water,1.0,0.5,0.5,2.0,2.0,0.5,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,0.5,1.0 +Electric,1.0,1.0,1.0,0.5,1.0,1.0,1.0,1.0,2.0,0.5,1.0,1.0,1.0,1.0,1.0,1.0,0.5,1.0 +Grass,1.0,2.0,0.5,0.5,0.5,2.0,1.0,2.0,0.5,2.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0 +Ice,1.0,2.0,1.0,1.0,1.0,0.5,2.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,1.0 +Fighting,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,2.0,0.5,0.5,1.0,1.0,0.5,1.0,2.0 +Poison,1.0,1.0,1.0,1.0,0.5,1.0,0.5,0.5,2.0,1.0,2.0,0.5,1.0,1.0,1.0,1.0,1.0,0.5 +Ground,1.0,1.0,2.0,0.0,2.0,2.0,1.0,0.5,1.0,1.0,1.0,1.0,0.5,1.0,1.0,1.0,1.0,1.0 +Flying,1.0,1.0,1.0,2.0,0.5,2.0,0.5,1.0,0.0,1.0,1.0,0.5,2.0,1.0,1.0,1.0,1.0,1.0 +Psychic,1.0,1.0,1.0,1.0,1.0,1.0,0.5,1.0,1.0,1.0,0.5,2.0,1.0,2.0,1.0,2.0,1.0,1.0 +Bug,1.0,2.0,1.0,1.0,0.5,1.0,0.5,1.0,0.5,2.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0 +Rock,0.5,0.5,2.0,1.0,2.0,1.0,2.0,0.5,2.0,0.5,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0 +Ghost,0.0,1.0,1.0,1.0,1.0,1.0,0.0,0.5,1.0,1.0,1.0,0.5,1.0,2.0,1.0,2.0,1.0,1.0 +Dragon,1.0,0.5,0.5,0.5,0.5,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0 +Dark,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,0.0,2.0,1.0,0.5,1.0,0.5,1.0,2.0 +Steel,0.5,2.0,1.0,1.0,0.5,0.5,2.0,0.0,2.0,0.5,0.5,0.5,0.5,1.0,0.5,1.0,0.5,0.5 +Fairy,1.0,1.0,1.0,1.0,1.0,1.0,0.5,2.0,1.0,1.0,1.0,0.5,1.0,1.0,0.0,0.5,2.0,1.0 diff --git a/p4/README.md b/p4/README.md new file mode 100644 index 0000000000000000000000000000000000000000..503f16de77d5f212484a8891414b78fdcdaa572a --- /dev/null +++ b/p4/README.md @@ -0,0 +1,47 @@ +# Project 4 (P4): Pokémon Battle Simulation + +## Clarifications/Corrections: + +* None yet. + +**Find any issues?** Report to us: + +- John Balis <balis@wisc.edu> +- Tunan Wang <tunan.wang@wisc.edu> + +## Note on Academic Misconduct: +You are **allowed** to work with a partner on your projects. While it is not required that you work with a partner, it is **recommended** that you find a project partner as soon as possible as the projects will get progressively harder. Be careful **not** to work with more than one partner. If you worked with a partner on Lab-P4, you are **not** allowed to finish your project with a different partner. You may either continue to work with the same partner, or work on P4 alone. Now may be a good time to review our [course policies](https://cs220.cs.wisc.edu/f23/syllabus.html). + +## Instructions: + +In this project, we will focus on conditional statements. To start, create a `p4` directory, and download `p4.ipynb`, `project.py`, `public_tests.py`, `pokemon_stats.csv`, and `type_effectiveness_stats.csv`. + +**Note:** Please go through [Lab-P4](https://git.doit.wisc.edu/cdis/cs/courses/cs220/cs220-f23-projects/-/tree/main/lab-p4) before you start the project. The lab contains some very important information that will be necessary for you to finish the project. + +You will work on `p4.ipynb` and hand it in. You should follow the provided directions for each question. Questions have **specific** directions on what **to do** and what **not to do**. + +After you've downloaded the file to your `p4` directory, open a terminal window and use `cd` to navigate to that directory. To make sure you're in the correct directory in the terminal, type `pwd`. To make sure you've downloaded the notebook file, type `ls` to ensure that `p4.ipynb`, `project.py`, `public_tests.py`, `pokemon_stats.csv`, and `type_effectiveness_stats.csv` are listed. Then run the command `jupyter notebook` to start Jupyter, and get started on the project! + +**IMPORTANT**: You should **NOT** terminate/close the session where you run the above command. If you need to use any other Terminal/PowerShell commands, open a new window instead. Keep constantly saving your notebook file, by either clicking the "Save and Checkpoint" button (floppy disk) or using the appropriate keyboard shortcut. + +------------------------------ + +## IMPORTANT Submission instructions: +- Review the [Grading Rubric](https://git.doit.wisc.edu/cdis/cs/courses/cs220/cs220-f23-projects/-/tree/main/p4/rubric.md), to ensure that you don't lose points during code review. +- Login to [Gradescope](https://www.gradescope.com/) and upload the zip file into the P4 assignment. +- If you completed the project with a **partner**, make sure to **add their name** by clicking "Add Group Member" +in Gradescope when uploading the P4 zip file. + + <img src="images/add_group_member.png" width="400"> + + **Warning:** You will have to add your partner on Gradescope even if you have filled out this information in your `p4.ipynb` notebook. + +- It is **your responsibility** to make sure that your project clears auto-grader tests on the Gradescope test system. Otter test results should be available within forty minutes after your submission (usually within ten minutes). **Ignore** the `-/100.00` that is displayed to the right. You should be able to see both PASS / FAIL results for the 20 test cases, which is accessible via Gradescope Dashboard (as in the image below): + + <img src="images/gradescope.png" width="400"> + +- You can view your **final score** at the **end of the page**. If you pass all tests, then you will receive **full points** for the project. Otherwise, you can see your final score in the **summary** section of the test results (as in the image below): + + <img src="images/summary.png" width="400"> + + If you want more details on why you lost points on a particular test, you can scroll up to find more details about the test. diff --git a/p4/gen_csv.ipynb b/p4/gen_csv.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..ee2e4fe428c6b2364e15358216ed2fbc247cca18 --- /dev/null +++ b/p4/gen_csv.ipynb @@ -0,0 +1,364 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import requests\n", + "from bs4 import BeautifulSoup as bs\n", + "import pandas as pd" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "dex_url = \"https://pokemondb.net/pokedex/all\"\n", + "re = requests.get(dex_url)\n", + "re.raise_for_status()\n", + "raw_dex_data = bs(re.text, 'html.parser')\n", + "\n", + "pokemon = []\n", + "pokemon_order = {}\n", + "tables = raw_dex_data.find_all('a', attrs={'class':'ent-name'})\n", + "count = 0\n", + "for link in tables:\n", + " if link.text not in pokemon:\n", + " pokemon.append(link.text)\n", + " pokemon_order[link.text] = count\n", + " count+=1" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'https://pokemondb.net/pokedex/Pikachu'" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pokemon_url = {}\n", + "for pkmn in pokemon:\n", + " pokemon_url[pkmn] = ('https://pokemondb.net/pokedex/' + pkmn)\n", + "\n", + "pokemon_url['Pikachu']" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "981" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# this cell takes a very long time, it scrapes every pokedex entry\n", + "raw_pokemon_data = {}\n", + "for pkmn in pokemon_url:\n", + " try:\n", + " re = requests.get(pokemon_url[pkmn])\n", + " re.raise_for_status()\n", + " raw_pokemon_data[pkmn] = (bs(re.text, 'html.parser'))\n", + " except:\n", + " pass\n", + " \n", + "len(raw_pokemon_data)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<table class=\"vitals-table\">\n", + "<tbody>\n", + "<tr>\n", + "<th>HP</th>\n", + "<td class=\"cell-num\">35</td>\n", + "<td class=\"cell-barchart\">\n", + "<div class=\"barchart-bar barchart-rank-2\" style=\"width:19.44%;\"></div>\n", + "</td>\n", + "<td class=\"cell-num\">180</td>\n", + "<td class=\"cell-num\">274</td>\n", + "</tr>\n", + "<tr>\n", + "<th>Attack</th>\n", + "<td class=\"cell-num\">55</td>\n", + "<td class=\"cell-barchart\">\n", + "<div class=\"barchart-bar barchart-rank-2\" style=\"width:30.56%;\"></div>\n", + "</td>\n", + "<td class=\"cell-num\">103</td>\n", + "<td class=\"cell-num\">229</td>\n", + "</tr>\n", + "<tr>\n", + "<th>Defense</th>\n", + "<td class=\"cell-num\">40</td>\n", + "<td class=\"cell-barchart\">\n", + "<div class=\"barchart-bar barchart-rank-2\" style=\"width:22.22%;\"></div>\n", + "</td>\n", + "<td class=\"cell-num\">76</td>\n", + "<td class=\"cell-num\">196</td>\n", + "</tr>\n", + "<tr>\n", + "<th>Sp. Atk</th>\n", + "<td class=\"cell-num\">50</td>\n", + "<td class=\"cell-barchart\">\n", + "<div class=\"barchart-bar barchart-rank-2\" style=\"width:27.78%;\"></div>\n", + "</td>\n", + "<td class=\"cell-num\">94</td>\n", + "<td class=\"cell-num\">218</td>\n", + "</tr>\n", + "<tr>\n", + "<th>Sp. Def</th>\n", + "<td class=\"cell-num\">50</td>\n", + "<td class=\"cell-barchart\">\n", + "<div class=\"barchart-bar barchart-rank-2\" style=\"width:27.78%;\"></div>\n", + "</td>\n", + "<td class=\"cell-num\">94</td>\n", + "<td class=\"cell-num\">218</td>\n", + "</tr>\n", + "<tr>\n", + "<th>Speed</th>\n", + "<td class=\"cell-num\">90</td>\n", + "<td class=\"cell-barchart\">\n", + "<div class=\"barchart-bar barchart-rank-4\" style=\"width:50.00%;\"></div>\n", + "</td>\n", + "<td class=\"cell-num\">166</td>\n", + "<td class=\"cell-num\">306</td>\n", + "</tr>\n", + "</tbody>\n", + "<tfoot>\n", + "<tr>\n", + "<th>Total</th>\n", + "<td class=\"cell-num cell-total\">320</td>\n", + "<th class=\"cell-barchart\"></th>\n", + "<th>Min</th>\n", + "<th>Max</th>\n", + "</tr>\n", + "</tfoot>\n", + "</table>" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "raw_pokemon_stats = {}\n", + "headers = ['HP', 'Attack', 'Defense', 'Sp. Atk', 'Sp. Def', 'Speed']\n", + "for pkmn in raw_pokemon_data:\n", + " raw_pokemon_tables = raw_pokemon_data[pkmn].find_all('table')\n", + " for table in raw_pokemon_tables:\n", + " correct_table = True\n", + " table_headers = [header.get_text() for header in table.find_all('th')]\n", + " for header in headers:\n", + " if header not in table_headers:\n", + " correct_table = False\n", + " if correct_table and pkmn not in raw_pokemon_stats:\n", + " raw_pokemon_stats[pkmn] = table\n", + " \n", + "raw_pokemon_stats['Pikachu']" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[{'Name': 'Bulbasaur',\n", + " 'Region': 'Kanto',\n", + " 'Type 1': 'Grass',\n", + " 'Type 2': 'Poison',\n", + " 'HP': '45',\n", + " 'Attack': '49',\n", + " 'Defense': '49',\n", + " 'Sp. Atk': '65',\n", + " 'Sp. Def': '65',\n", + " 'Speed': '45'},\n", + " {'Name': 'Ivysaur',\n", + " 'Region': 'Kanto',\n", + " 'Type 1': 'Grass',\n", + " 'Type 2': 'Poison',\n", + " 'HP': '60',\n", + " 'Attack': '62',\n", + " 'Defense': '63',\n", + " 'Sp. Atk': '80',\n", + " 'Sp. Def': '80',\n", + " 'Speed': '60'},\n", + " {'Name': 'Venusaur',\n", + " 'Region': 'Kanto',\n", + " 'Type 1': 'Grass',\n", + " 'Type 2': 'Poison',\n", + " 'HP': '80',\n", + " 'Attack': '82',\n", + " 'Defense': '83',\n", + " 'Sp. Atk': '100',\n", + " 'Sp. Def': '100',\n", + " 'Speed': '80'}]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "regions = {1: \"Kanto\", 2: \"Johto\", 3: \"Hoenn\", 4: \"Sinnoh\", 5: \"Unova\", 6: \"Kalos\", 7: \"Alola\", 8: \"Galar\", 9: \"Paldea\"}\n", + "\n", + "pokemon_stats = []\n", + "for pkmn in raw_pokemon_stats:\n", + " stats = {}\n", + " raw_stats = raw_pokemon_stats[pkmn].find_all('tr')\n", + " stats['Name'] = pkmn\n", + " generation_text = raw_pokemon_data[pkmn].find('p').text\n", + " generation_idx = generation_text.find('Generation')\n", + " generation = int(generation_text[generation_idx + len('Generation ')])\n", + " stats[\"Region\"] = regions[generation]\n", + " pkmn_types = raw_pokemon_data[pkmn].find('table').find_all('td')[1].find_all('a')\n", + " stats['Type 1'] = pkmn_types[0].text\n", + " if len(pkmn_types) > 1:\n", + " stats['Type 2'] = pkmn_types[1].text\n", + " else:\n", + " stats['Type 2'] = 'DNE'\n", + " for stat in raw_stats:\n", + " stat_name = stat.find('th').get_text()\n", + " stat_num = stat.find('td').get_text()\n", + " if stat_name in headers:\n", + " stats[stat_name] = stat_num\n", + " pokemon_stats.append(stats)\n", + "\n", + "pokemon_stats = sorted(pokemon_stats, key = lambda x: pokemon_order[x['Name']])\n", + "pokemon_stats[:3]" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "cols = [\"Name\",\"Attack\",\"Defense\",\"HP\",\"Region\",\"Sp. Atk\",\"Sp. Def\",\"Speed\",\"Type 1\",\"Type 2\"]\n", + "df = pd.DataFrame(pokemon_stats)\n", + "df = df[cols]\n", + "df.to_csv('pokemon_stats.csv')" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'Normal': 1.0,\n", + " 'Fire': 0.5,\n", + " 'Water': 0.5,\n", + " 'Electric': 1.0,\n", + " 'Grass': 2.0,\n", + " 'Ice': 2.0,\n", + " 'Fighting': 1.0,\n", + " 'Poison': 1.0,\n", + " 'Ground': 1.0,\n", + " 'Flying': 1.0,\n", + " 'Psychic': 1.0,\n", + " 'Bug': 2.0,\n", + " 'Rock': 0.5,\n", + " 'Ghost': 1.0,\n", + " 'Dragon': 0.5,\n", + " 'Dark': 1.0,\n", + " 'Steel': 2.0,\n", + " 'Fairy': 1.0}" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type_url = \"https://pokemondb.net/type\"\n", + "re = requests.get(type_url)\n", + "re.raise_for_status()\n", + "raw_type_data = bs(re.text, 'html.parser')\n", + "\n", + "effectiveness = {}\n", + "raw_to_numbers = {'normal': 1.0, 'not': 0.5, 'super-effective': 2.0, 'no': 0.0}\n", + "table = raw_type_data.find('table')\n", + "rows = table.find_all('tr')[1:]\n", + "for row in rows:\n", + " cells = row.find_all('td')\n", + " for cell in cells:\n", + " data = cell.attrs['title']\n", + " types, val = data.split(' = ')\n", + " type1, type2 = types.split(\" → \")\n", + " val = val.split()[0]\n", + " if type1 not in effectiveness:\n", + " effectiveness[type1] = {}\n", + " effectiveness[type1][type2] = raw_to_numbers[val]\n", + " \n", + "effectiveness['Fire']" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "df = pd.DataFrame(effectiveness)\n", + "df.to_csv('type_effectiveness_stats.csv')" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/p4/images/README.md b/p4/images/README.md new file mode 100644 index 0000000000000000000000000000000000000000..e5f053433cd90b05d75aa56d4bcf717f56c5886f --- /dev/null +++ b/p4/images/README.md @@ -0,0 +1,3 @@ +# Images + +Images from p4 are stored here. diff --git a/p4/images/add_group_member.png b/p4/images/add_group_member.png new file mode 100644 index 0000000000000000000000000000000000000000..402e5962e3e54ce8349f60ccfe4ce2b60840dd3b Binary files /dev/null and b/p4/images/add_group_member.png differ diff --git a/p4/images/gradescope.png b/p4/images/gradescope.png new file mode 100644 index 0000000000000000000000000000000000000000..7441faae41d8eb98bfceeb78855b67896b1ff911 Binary files /dev/null and b/p4/images/gradescope.png differ diff --git a/p4/images/pokemon.jpg b/p4/images/pokemon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..93cf5578273e7fb07ec1b0c2e257cfcaf52a4f6e Binary files /dev/null and b/p4/images/pokemon.jpg differ diff --git a/p4/images/summary.png b/p4/images/summary.png new file mode 100644 index 0000000000000000000000000000000000000000..4a63e32ff1a29903584746aa4873373855558e7b Binary files /dev/null and b/p4/images/summary.png differ diff --git a/p4/p4.ipynb b/p4/p4.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..bc23a2484e4f83fde7c70b09b56c4b618497e458 --- /dev/null +++ b/p4/p4.ipynb @@ -0,0 +1,2848 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "74d4a84f", + "metadata": { + "cell_type": "code", + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "# import and initialize otter\n", + "import otter\n", + "grader = otter.Notebook(\"p4.ipynb\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ee1aaf1f", + "metadata": { + "editable": false, + "execution": { + "iopub.execute_input": "2023-09-27T00:11:01.277502Z", + "iopub.status.busy": "2023-09-27T00:11:01.277502Z", + "iopub.status.idle": "2023-09-27T00:11:05.024664Z", + "shell.execute_reply": "2023-09-27T00:11:05.023643Z" + } + }, + "outputs": [], + "source": [ + "import public_tests" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9bebe713", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:05.030659Z", + "iopub.status.busy": "2023-09-27T00:11:05.030659Z", + "iopub.status.idle": "2023-09-27T00:11:05.036518Z", + "shell.execute_reply": "2023-09-27T00:11:05.035498Z" + } + }, + "outputs": [], + "source": [ + "# PLEASE FILL IN THE DETAILS\n", + "# enter none if you don't have a project partner\n", + "# you will have to add your partner as a group member on Gradescope even after you fill this\n", + "\n", + "# project: p4\n", + "# submitter: NETID1\n", + "# partner: NETID2\n", + "# hours: ????" + ] + }, + { + "cell_type": "markdown", + "id": "c349e754", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Project 4: Pokemon Battle Simulation" + ] + }, + { + "cell_type": "markdown", + "id": "3b069cec", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Learning Objectives:\n", + "\n", + "In this project, you will demonstrate how to\n", + "\n", + "* Use conditional statements to implement decisions,\n", + "* Write functions using parameters, return values, and conditional logic,\n", + "* Use good coding practices as outlined in Lab-P4.\n", + "\n", + "**Please go through [Lab-P4](https://git.doit.wisc.edu/cdis/cs/courses/cs220/cs220-f23-projects/-/tree/main/lab-p4) before working on this project.** The lab introduces some useful techniques related to this project." + ] + }, + { + "cell_type": "markdown", + "id": "a0fd8e58", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Testing your code:\n", + "\n", + "Along with this notebook, you must have downloaded the file `public_tests.py`. If you are curious about how we test your code, you can explore this file, and specifically the function `get_expected_json`, to understand the expected answers to the questions." + ] + }, + { + "cell_type": "markdown", + "id": "f9924a20", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Project Description:\n", + "\n", + "For this project, you'll be using the data from `pokemon_stats.csv` and `type_effectiveness_stats.csv` to simulate Pokemon battles and to check the compatibility for friendships between different Pokemon. This data was gathered by the Python program `gen_csv.ipynb` from the website https://www.pokemondb.net/.\n", + "\n", + "* To start, download `project.py`, `public_tests.py`, `type_effectiveness_stats.csv`, and `pokemon_stats.csv`.\n", + "* You'll do all your work on this notebook, and turn it into Gradescope just as you did for the previous projects.\n", + "\n", + "We won't explain how to use the project module here (the code in the `project.py` file), or the dataset that you will be working with. The lab this week is designed to teach you how it works. So, before starting P4, take a look at Lab-P4." + ] + }, + { + "cell_type": "markdown", + "id": "abffd0ea", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Project Requirements:\n", + "\n", + "\n", + "You **may not** hardcode any answers in your code. Otherwise, the Gradescope autograder will **deduct** points.\n", + "\n", + "**Store** your final answer for each question in the **variable specified for each question**. This step is important because Otter grades your work by comparing the value of this variable against the correct answer.\n", + "\n", + "For some of the questions, we'll ask you to write (then use) a function to compute the answer. If you compute the answer **without** creating the function we ask you to write, the Gradescope autograder will **deduct** points, even if the way you did it produced the correct answer.\n", + "\n", + "Required Functions:\n", + "- `damage`\n", + "- `type_bonus`\n", + "- `get_num_types`\n", + "- `effective_damage`\n", + "- `num_hits`\n", + "- `battle`\n", + "- `friendship_score`\n", + "\n", + "In this project, you will have to write several functions and keep adding more details to them according to the instructions. When you are adding more things to your functions, you **must** follow the **Good Coding Style for Functions** described in [Lab-P4](https://git.doit.wisc.edu/cdis/cs/courses/cs220/cs220-f23-projects/-/tree/main/lab-p4). Therefore, you **must only** keep the latest version of your functions in your notebook file. You can do this by **replacing** your old function definition with the new one after you have confirmed that the new one works." + ] + }, + { + "cell_type": "markdown", + "id": "0d374f08", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Questions and Functions:\n", + "\n", + "Let us start by importing all the modules we will need for this project." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bc8773d8", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:05.042522Z", + "iopub.status.busy": "2023-09-27T00:11:05.041515Z", + "iopub.status.idle": "2023-09-27T00:11:06.311122Z", + "shell.execute_reply": "2023-09-27T00:11:06.310091Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# it is considered a good coding practice to place all import statements at the top of the notebook\n", + "\n", + "# please place all your import statements in this cell if you need to import \n", + "# any more modules for this project\n" + ] + }, + { + "cell_type": "markdown", + "id": "8b1c4fa0", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "In the first stage of this project, we will be simulating Pokemon battles. Before we proceed any further, let us take a look at the Pokemon we will be dealing with in this project (let us know what your favorite Pokemon is in a comment):" + ] + }, + { + "attachments": { + "pokemon.jpg": { + "image/jpeg": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAFA3PEY8MlBGQUZaVVBfeMiCeG5uePWvuZHI////////////////////////////////////////////////////2wBDAVBaWnhpeOuCguv/////////////////////////////////////////////////////////////////////////wAARCAvQFSMDASIAAhEBAxEB/8QAGQABAAMBAQAAAAAAAAAAAAAAAAIDAQQF/8QAQhABAAIBAgMEBwcCBwEAAQIHAAECEQMSMSFRQWEEE3EyIoGhsZHR8MFC4VJiM3IUIwXxNEOSU4KiYySygzVEJXP/xAAYAQEBAQEBAAAAAAAAAAAAAAAAAQIDBP/EACERAQEBAAMBAQEBAQEBAQAAAAABEQIxIRJBUWEDInEy/9oADAMBAAIRAxEAPwCQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ0pvzzxhLyf5fA0PzLgU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/wAvgeT/AC+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8AL4Hk/wAvguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/AC+B5P8AL4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/wAvgeT/AC+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8AL4Hk/wAvguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/AC+B5P8AL4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/wAvgeT/AC+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8AL4Hk/wAvguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/AC+B5P8AL4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/wAvgeT/AC+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8AL4Hk/wAvguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAUW08Tx+DfJ/l8Er8VgKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fBldPM8fgvV04gj5P8AL4Hk/wAvguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/AC+B5P8AL4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/wAvgeT/AC+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8AL4Hk/wAvguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/AC+B5P8AL4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/wAvgeT/AC+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8AL4Hk/wAvguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/AC+B5P8AL4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/wAvgeT/AC+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8AL4Hk/wAvguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/AC+B5P8AL4LgFPk/y+B5P8vguAU+T/L4Hk/y+C4BT5P8vgeT/L4LgFPk/wAvgeT/AC+C4BT5P8vgeT/L4LgFPk/y+B5P8vguAU+T/L4MtpYj1vgvRvwBXGlmM7vgeT/L4LKerCQKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCidP2sZ+DfJ/l8Ep9dYCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcApnRxHrfBldLd2/BdPCUdPtBDyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ/l8Dyf5fBcAp8n+XwPJ/l8FwCnyf5fA8n+XwXAKfJ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m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqy0xMcm7I70bViIBtbREcW7o6srWJjLdkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqb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dHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSV04pbo6o1mInmCwR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEhHdHU3R1BIR3R1N0dQSEd0dTdHUEkb8DdHVlpiY5A2nqwkhW0RHFu6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJCO6OpujqCQjujqbo6gkI7o6m6OoJC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R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gjMxvylujqhMe1hPZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4G6OpujqbI7zZHeBujqbo6myO82R3gbo6m6OpsjvNkd4E2jE80aTEZy2aREdrK1zkEt0dTdHU2R3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ZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gFUx7WE9kd6M+usBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAQmkRHaytc5TnhKOn2g3ZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70gEdkd5sjvSAR2R3myO9IBHZHebI70g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r86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQL8Vim2pEzwlLzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFiunE86vSUa6kRPCQXCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPO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r0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBYK/Or0k86vSQWCvzq9JPOr0kFgr86vSTzq9JBQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//Z" + } + }, + "cell_type": "markdown", + "id": "149bfbbf", + "metadata": {}, + "source": [ + "" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "71d4f188", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.316115Z", + "iopub.status.busy": "2023-09-27T00:11:06.316115Z", + "iopub.status.idle": "2023-09-27T00:11:06.322168Z", + "shell.execute_reply": "2023-09-27T00:11:06.321146Z" + } + }, + "outputs": [], + "source": [ + "# Who's your favorite Pokemon? (OPTIONAL)\n" + ] + }, + { + "cell_type": "markdown", + "id": "67ca239e", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Rules for Pokemon battles:\n", + "\n", + "Now, here are the *rules* governing Pokemon battles:\n", + "\n", + "1. A Pokemon battle takes place between **two** Pokemon.\n", + "2. The two Pokemon **take turns** attacking each other.\n", + "3. The Pokemon with the higher **Speed** stat attacks first.\n", + "4. On each turn, the attacking Pokemon can choose between two modes of attack - **Physical** or **Special**.\n", + "5. In addition to the attack mode, each Pokemon can choose the **type** of its attack.\n", + "6. Based on the move chosen by the attacking Pokemon, the defending Pokemon receives damage to its **HP**.\n", + "7. If a Pokemon's **HP** drops to (or below) 0, it **faints**.\n", + "8. A Pokemon **wins** the battle if its opponent faints first.\n", + "9. If both Pokemon faint at the **same time**, or if neither Pokemon is able to damage the other, the battle is a **draw**." + ] + }, + { + "cell_type": "markdown", + "id": "1d1bc188", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "Throughout this project, we will break this down into smaller parts and slowly build up to the `battle` function. Eventually the `battle` function will determine the outcome of a battle between any two Pokemon.\n", + "\n", + "The first thing we need to do is **calculate the damage** caused by one Pokemon's attack on another Pokemon. To accomplish this, we need to create the function `damage`." + ] + }, + { + "cell_type": "markdown", + "id": "71899f8d", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Function 1: `damage(attack, defender)`\n", + "\n", + "The `attacker` can choose between two attack modes - **Physical** or **Special**. The damage caused by the attacker's **Physical** move is `10 * Attack stat of Attacker / Defense stat of Defender`, and the damage caused by the attacker's **Special** move is `10 * Sp. Atk. stat of Attacker / Sp. Def. stat of Defender`.\n", + "\n", + "**If the attacker wants to win, it should always choose the move which will do more damage.** So, that is what we want our function `damage` to do. We want this function to find out which mode of attack the attacker would choose, and return the damage that the attacker would do to the defender.\n", + "\n", + "Use the following code snippet and fill in the details to complete the `damage` function." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c6451efa", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.328160Z", + "iopub.status.busy": "2023-09-27T00:11:06.328160Z", + "iopub.status.idle": "2023-09-27T00:11:06.336236Z", + "shell.execute_reply": "2023-09-27T00:11:06.335217Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "def damage(attacker, defender):\n", + " # TODO: replace the ... with your code\n", + " physical_damage = 10 * project.get_attack(attacker) / project.get_defense(defender)\n", + " special_damage = ...\n", + " if ...:\n", + " return physical_damage\n", + " else:\n", + " return ..." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f136b1ad", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"damage\")" + ] + }, + { + "cell_type": "markdown", + "id": "25764378", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "Now, let's find out if this function works. You **must** use the `damage` function to answer the next two questions." + ] + }, + { + "cell_type": "markdown", + "id": "2fc08f81", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 1:** How much damage does `Tinkaton` do to `Arcanine`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4751a35d", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.371661Z", + "iopub.status.busy": "2023-09-27T00:11:06.371661Z", + "iopub.status.idle": "2023-09-27T00:11:06.382278Z", + "shell.execute_reply": "2023-09-27T00:11:06.381267Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "damage_tinkaton_arcanine = ...\n", + "\n", + "damage_tinkaton_arcanine" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "06d943ea", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q1\")" + ] + }, + { + "cell_type": "markdown", + "id": "e6847d06", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 2:** How much damage does `Lucario` do to `Klawf`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5c9d59fe", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.419802Z", + "iopub.status.busy": "2023-09-27T00:11:06.418803Z", + "iopub.status.idle": "2023-09-27T00:11:06.427052Z", + "shell.execute_reply": "2023-09-27T00:11:06.426029Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "damage_lucario_klawf = ...\n", + "\n", + "damage_lucario_klawf" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9278e5f3", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q2\")" + ] + }, + { + "cell_type": "markdown", + "id": "9e2d4dd8", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "In addition to choosing the attack **mode** (i.e. **Physical** or **Special**), the attacker can also (sometimes) choose the **type** of attack. Before we figure out what type the attacker should choose, we first need to find out the *effect* of the attack on the defender. Each attack type offers a **type bonus** to the attack damage that we calculated with the `damage` function.\n", + "\n", + "If the attacker chooses an attack of type `attack_type` against a defender with only one type, `type1` (i.e. its `type2` is `DNE`), then the **type bonus** of this attack is `get_type_effectiveness(attack_type, type1)`. If the defender has two types `type1` and `type2`, then the **type bonus** of this attack is `get_type_effectiveness(attack_type, type1) * get_type_effectiveness(attack_type, type2)`.\n", + "\n", + "For example, let the `attack_type` be `Bug` and the defender be the Pokemon `Charmander`. `Charmander` has only one type, `Fire` (with its `type2` being `DNE`). In this case, we see that" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "636ae422", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.462688Z", + "iopub.status.busy": "2023-09-27T00:11:06.461688Z", + "iopub.status.idle": "2023-09-27T00:11:06.470271Z", + "shell.execute_reply": "2023-09-27T00:11:06.469251Z" + } + }, + "outputs": [], + "source": [ + "# the effectiveness of Bug against Fire is...\n", + "project.get_type_effectiveness(\"Bug\", \"Fire\")" + ] + }, + { + "cell_type": "markdown", + "id": "79a861f6", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "Therefore, the type bonus of a `Fire` type attack on `Charmander` is `0.5`. On the other hand, consider a `Fire` type attack on the Pokemon `Bulbasaur`. `Bulbasaur` has 2 types, `Grass` and `Poison`. In this case, we see that" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4eb4db58", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.474274Z", + "iopub.status.busy": "2023-09-27T00:11:06.474274Z", + "iopub.status.idle": "2023-09-27T00:11:06.481404Z", + "shell.execute_reply": "2023-09-27T00:11:06.480393Z" + } + }, + "outputs": [], + "source": [ + "# the effectiveness of Fire against Grass is...\n", + "project.get_type_effectiveness(\"Fire\", \"Grass\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "421f0084", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.485410Z", + "iopub.status.busy": "2023-09-27T00:11:06.485410Z", + "iopub.status.idle": "2023-09-27T00:11:06.490816Z", + "shell.execute_reply": "2023-09-27T00:11:06.490816Z" + } + }, + "outputs": [], + "source": [ + "# the effectiveness of Fire against Poison is...\n", + "project.get_type_effectiveness(\"Fire\", \"Poison\")" + ] + }, + { + "cell_type": "markdown", + "id": "4af94917", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "Therefore, the type bonus of a `Fire` type attack on `Bulbasaur` is the product of these two numbers `2.0 * 1.0 = 2.0`." + ] + }, + { + "cell_type": "markdown", + "id": "c6520dcb", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Function 2: `type_bonus(attack_type, defender)`\n", + "We are now ready to write the definition of the `type_bonus` function, which will calculate the type bonus of an `attack_type` against a `defender`. We have provided a code snippet for you to work with. You may rewrite the entire function from scratch if you want to." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3f3def7e", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.495837Z", + "iopub.status.busy": "2023-09-27T00:11:06.495837Z", + "iopub.status.idle": "2023-09-27T00:11:06.503647Z", + "shell.execute_reply": "2023-09-27T00:11:06.502633Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "def type_bonus(attack_type, defender):\n", + " # TODO: store the `type1` and `type2` of the `defender` in variables \n", + " # `defender_type1` and `defender_type2`\n", + " # TODO: replace the ... with your code\n", + "\n", + " if ...:\n", + " bonus = project.get_type_effectiveness(attack_type, defender_type1)\n", + " return bonus\n", + " else:\n", + " bonus = ...\n", + " return bonus" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c9c1e826", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"type_bonus\")" + ] + }, + { + "cell_type": "markdown", + "id": "3152599f", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "You **must** use the `type_bonus` function to answer the next two questions." + ] + }, + { + "cell_type": "markdown", + "id": "4828e0f3", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 3:** How effective is `Rock` type against `Talonflame`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "38fc1920", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.535941Z", + "iopub.status.busy": "2023-09-27T00:11:06.534961Z", + "iopub.status.idle": "2023-09-27T00:11:06.544038Z", + "shell.execute_reply": "2023-09-27T00:11:06.543025Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "bonus_rock_talonflame = ...\n", + "\n", + "bonus_rock_talonflame" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "65f45ad4", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q3\")" + ] + }, + { + "cell_type": "markdown", + "id": "6115deb6", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 4:** How effective is `Bug` type against `Ninetales`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "62acbd89", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.581184Z", + "iopub.status.busy": "2023-09-27T00:11:06.580188Z", + "iopub.status.idle": "2023-09-27T00:11:06.589519Z", + "shell.execute_reply": "2023-09-27T00:11:06.588497Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "bonus_bug_ninetales = ...\n", + "\n", + "bonus_bug_ninetales" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1bec17a7", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q4\")" + ] + }, + { + "cell_type": "markdown", + "id": "9be3ac68", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "When an `attacker` chooses an attack of type `attack_type` against a `defender`, the damage done is `type_bonus(attack_type, defender) * damage(attacker, defender)`.\n", + "\n", + "An attacker can choose between any of its types for its attack type. So, if an attacker has two types, it can choose **either** type 1 or type 2 as its attack type. However, if it has only one type (i.e. its `type2` is `DNE`), it has **no choice** but to choose type 1 as its attack type. For example, a Pokemon like `Stufful` which has two types (`Normal` and `Fighting`) can choose to make its attack either `Normal` type or `Fighting` type. On the other hand, a Pokemon like `Magikarp` which has only one type (`Water`) can only make its attack a `Water` type attack.\n", + "\n", + "While a Pokemon with only one type doesn't have a choice, **a Pokemon with two types can choose its attack between its two types**. If the attacker wants to win, it should always choose the type which will do more damage.\n", + "\n", + "Let us consider the case when an **attacker has only one type**. (i.e. `type2` is `DNE`). To illustrate this, we take `Magikarp` as the attacker and `Cinderace` as the defender. Let us first ensure that `Magikarp` has only 1 type." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "03750f3e", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.627234Z", + "iopub.status.busy": "2023-09-27T00:11:06.626231Z", + "iopub.status.idle": "2023-09-27T00:11:06.635165Z", + "shell.execute_reply": "2023-09-27T00:11:06.634152Z" + }, + "scrolled": true + }, + "outputs": [], + "source": [ + "# type1 of Magikarp is...\n", + "project.get_type1(\"Magikarp\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c0ebefb9", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.640173Z", + "iopub.status.busy": "2023-09-27T00:11:06.639168Z", + "iopub.status.idle": "2023-09-27T00:11:06.646793Z", + "shell.execute_reply": "2023-09-27T00:11:06.645773Z" + } + }, + "outputs": [], + "source": [ + "# and type2 of Magikarp is...\n", + "project.get_type2(\"Magikarp\")" + ] + }, + { + "cell_type": "markdown", + "id": "8f05eb31", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "In this case, we simply take the `type_bonus` of the first type against `Cinderace` (the defender)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a049f8db", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.651792Z", + "iopub.status.busy": "2023-09-27T00:11:06.650788Z", + "iopub.status.idle": "2023-09-27T00:11:06.658701Z", + "shell.execute_reply": "2023-09-27T00:11:06.657683Z" + } + }, + "outputs": [], + "source": [ + "# so the bonus that Magikarp gets against Cinderace is...\n", + "bonus = type_bonus(project.get_type1(\"Magikarp\"), \"Cinderace\")\n", + "\n", + "bonus" + ] + }, + { + "cell_type": "markdown", + "id": "68ea629e", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "If your `type_bonus` function works correctly, `bonus` should have the value `2.0`. To calculate the **effective damage** that Magikarp does to Cinderace, we just have to compute `damage(\"Magikarp\", \"Cinderace\") * 2.0`" + ] + }, + { + "cell_type": "markdown", + "id": "ceb49c11", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "We will now consider the case where an **attacker has two types**.\n", + "\n", + "To illustrate this, we take `Stufful` as the `attacker` and `Lucario` as the `defender`. The type bonus of the two types of `Stufful` against `Cinderace` are as follows:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b1f710c7", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.662697Z", + "iopub.status.busy": "2023-09-27T00:11:06.662697Z", + "iopub.status.idle": "2023-09-27T00:11:06.671510Z", + "shell.execute_reply": "2023-09-27T00:11:06.669491Z" + }, + "scrolled": false + }, + "outputs": [], + "source": [ + "# the type bonus of type1 (Normal) of Stufful against Lucario is...\n", + "bonus_type1 = type_bonus(project.get_type1(\"Stufful\"), \"Lucario\")\n", + "\n", + "bonus_type1" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bf97a5f8", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.676508Z", + "iopub.status.busy": "2023-09-27T00:11:06.675507Z", + "iopub.status.idle": "2023-09-27T00:11:06.685102Z", + "shell.execute_reply": "2023-09-27T00:11:06.682087Z" + } + }, + "outputs": [], + "source": [ + "# and the type bonus of type2 (Fighting) of Stufful against Lucario is...\n", + "bonus_type2 = type_bonus(project.get_type2(\"Stufful\"), \"Lucario\")\n", + "\n", + "bonus_type2" + ] + }, + { + "cell_type": "markdown", + "id": "0fade936", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "If your `type_bonus` function works correctly, then `bonus_type1` should have the value `0.5`, and `bonus_type2` should have the value `2.0`. Clearly, `Stufful`'s second type (`Fighting`) causes more damage to `Lucario` than its first type (`Normal`). So, **`Stufful` would choose its `Fighting` type attack instead of its `Normal` type attack against `Lucario`**.\n", + "\n", + "Therefore, the **effective** `bonus` is `max(0.5, 2.0) = 2.0`. So, the **effective damage** that `Stufful` does to `Lucario` is `damage(\"Stufful\", \"Lucario\") * 2.0`." + ] + }, + { + "cell_type": "markdown", + "id": "ab48166f", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Function 3: `effective_damage(attacker, defender)`\n", + "\n", + "We now write a function `effective_damage` to compute the actual damage that an `attacker` would do to the `defender`, taking into account, both the **attack mode** and **attack type**.\n", + "\n", + "The `effective_damage` function definition **must** invoke the `get_num_types` function you wrote during lab. Create a new cell in your Jupyter notebook above the definition of `effective_damage` and copy/paste the definition of `get_num_types` there. The Gradescope autograder will **deduct** points if you do not invoke `get_num_types`.\n", + "\n", + "Start with the code snippet provided below." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5626c299", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.689101Z", + "iopub.status.busy": "2023-09-27T00:11:06.689101Z", + "iopub.status.idle": "2023-09-27T00:11:06.695751Z", + "shell.execute_reply": "2023-09-27T00:11:06.695751Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "def effective_damage(attacker, defender):\n", + " pass # TODO: replace with your code\n", + " #TODO: check if the attacker has two types; you must invoke the relevant \n", + " # function you defined in Lab-P4\n", + " #TODO: compute the bonus of the attacker's type(s) against the defender\n", + " #TODO: find the attack_type with the higher bonus\n", + " #TODO: compute the damage caused by attack, considering the higher bonus, and return it\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1f2a61c6", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"effective_damage\")" + ] + }, + { + "cell_type": "markdown", + "id": "8ff54407", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "You **must** use the `effective_damage` function to answer the next three questions." + ] + }, + { + "cell_type": "markdown", + "id": "149e571c", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 5:** How much **effective** damage does `Froakie` do to `Snivy`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bf3f077a", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.744937Z", + "iopub.status.busy": "2023-09-27T00:11:06.743933Z", + "iopub.status.idle": "2023-09-27T00:11:06.752101Z", + "shell.execute_reply": "2023-09-27T00:11:06.751078Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "eff_damage_froakie_snivy = ...\n", + "\n", + "eff_damage_froakie_snivy" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d45f2e7c", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q5\")" + ] + }, + { + "cell_type": "markdown", + "id": "50a835d8", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 6:** How much **effective** damage does `Gengar` do to `Lapras`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2dfd9c6a", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.786651Z", + "iopub.status.busy": "2023-09-27T00:11:06.786651Z", + "iopub.status.idle": "2023-09-27T00:11:06.792687Z", + "shell.execute_reply": "2023-09-27T00:11:06.792687Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "eff_damage_gengar_lapras = ...\n", + "\n", + "eff_damage_gengar_lapras" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ba1140cb", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q6\")" + ] + }, + { + "cell_type": "markdown", + "id": "1cfb229d", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 7:** How much **effective** damage does `Tyranitar` do to `Charizard`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "531cf48f", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.826935Z", + "iopub.status.busy": "2023-09-27T00:11:06.826935Z", + "iopub.status.idle": "2023-09-27T00:11:06.834491Z", + "shell.execute_reply": "2023-09-27T00:11:06.833474Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "eff_damage_tyranitar_charizard = ...\n", + "\n", + "eff_damage_tyranitar_charizard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "216bdafb", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q7\")" + ] + }, + { + "cell_type": "markdown", + "id": "3e7ed316", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "### Function 4: `num_hits(attacker, defender)`\n", + "\n", + "Now that we have a way of calculating the damage done by the Pokemon during battle, we have to calculate **how many hits** each Pokemon can take before fainting.\n", + "\n", + "The number of hits a Pokemon can take is calculated by taking its **HP** and dividing it by the attacking Pokemon's **effective damage**.\n", + "\n", + "If the defending pokemon has `30 HP` and the attacking pokemon does `20` effective damage each turn, it will take `2` turns before the defender faints instead of `30 / 20 = 1.5`. You might want to use the method `math.ceil` here. First import the module `math` (remember to add the `import math` call at the **top of your notebook** in the cell where you have been asked to place all `import` statements) and then look up the documentation of `math.ceil` to see how you could use it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "73686603", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.868535Z", + "iopub.status.busy": "2023-09-27T00:11:06.867533Z", + "iopub.status.idle": "2023-09-27T00:11:06.874238Z", + "shell.execute_reply": "2023-09-27T00:11:06.873229Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "def num_hits(attacker, defender):\n", + " pass # TODO: replace with your code" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bc770a1f", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"num_hits\")" + ] + }, + { + "cell_type": "markdown", + "id": "6b9688d4", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "You **must** use `num_hits` to answer the next three questions." + ] + }, + { + "cell_type": "markdown", + "id": "2d8b63b1", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 8:** How many hits can the *defending* Pokemon `Snorlax` take from `Golem`(*attacker*)?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5f165638", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.899347Z", + "iopub.status.busy": "2023-09-27T00:11:06.899347Z", + "iopub.status.idle": "2023-09-27T00:11:06.906430Z", + "shell.execute_reply": "2023-09-27T00:11:06.905414Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "hits_snorlax_golem = ...\n", + "\n", + "hits_snorlax_golem" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fbb6b0f7", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q8\")" + ] + }, + { + "cell_type": "markdown", + "id": "ce1d7d60", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 9:** How many hits can the *defending* Pokemon `Sceptile` take from `Meowscarada`(*attacker*)?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c10b44dd", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.945529Z", + "iopub.status.busy": "2023-09-27T00:11:06.944525Z", + "iopub.status.idle": "2023-09-27T00:11:06.953393Z", + "shell.execute_reply": "2023-09-27T00:11:06.952375Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "hits_sceptile_meowscarada = ...\n", + "\n", + "hits_sceptile_meowscarada" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "82527de1", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q9\")" + ] + }, + { + "cell_type": "markdown", + "id": "02bdc3a4", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "Your `num_hits` function appears to be working well so far. However, there is still a problem with this function." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b781b097", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.987882Z", + "iopub.status.busy": "2023-09-27T00:11:06.987882Z", + "iopub.status.idle": "2023-09-27T00:11:06.994877Z", + "shell.execute_reply": "2023-09-27T00:11:06.993867Z" + } + }, + "outputs": [], + "source": [ + "# the effective damage of Trubbish against Copperajah is...\n", + "effective_damage(\"Trubbish\", \"Copperajah\")" + ] + }, + { + "cell_type": "markdown", + "id": "c3193e2a", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "If your `effective_damage` function works correctly, you would see that the **effective damage** that `Trubbish` can do to `Copperajah` is `0.0`. Since `Trubbish` can do **no damage** to `Copperajah`, `Copperajah` can take **infinitely many** hits from `Trubbish`.\n", + "\n", + "We need to update the `num_hits` function so that it can deal with cases like this. Go back and **modify** the `num_hits` function, so that when the `attacker` does an **effective damage** of `0.0` against the `defender`, then the function returns the **string** `'infinitely many'`. **Otherwise**, the function should compute and return the number of hits required by the `attacker` to make the `defender` faint (as it currently does).\n", + "\n", + "**Warning:** Do **not** redefine `num_hits`. You may make a *copy* of the function as it is when you start working on updating its definition, but the notebook you turn in should only have *one* definition of `num_hits`. So, you should **delete** any older versions of the function after your new code demonstrably works." + ] + }, + { + "cell_type": "markdown", + "id": "4f8d96c7", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 10:** How many hits can the *defending* Pokemon `Copperajah` take from `Trubbish`(*attacker*)?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "01a587fa", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:06.999881Z", + "iopub.status.busy": "2023-09-27T00:11:06.999881Z", + "iopub.status.idle": "2023-09-27T00:11:07.005659Z", + "shell.execute_reply": "2023-09-27T00:11:07.005659Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "hits_copperajah_trubbish = ...\n", + "\n", + "hits_copperajah_trubbish" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bac317a0", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q10\")" + ] + }, + { + "cell_type": "markdown", + "id": "a01641ca", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Function 5: `battle(pkmn1, pkmn2)`\n", + "\n", + "With the functions we have created so far, we can now finally start creating our **battle simulator**.\n", + "\n", + "This function should take in two Pokemon `pkmn1`, and `pkmn2` as its parameters, and it should output the name of the Pokemon which wins the battle.\n", + "\n", + "However, it might still be a little overwhelming to code all the rules in one go. So, let us break it up into several steps, and implement the function over the next several questions. For now, let us also **ignore** the cases where one Pokemon can take infinite hits from another Pokemon. Let us just consider pairs of Pokemon that can both do **non-zero** effective damage to each other." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3d24e1bc", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.045383Z", + "iopub.status.busy": "2023-09-27T00:11:07.045383Z", + "iopub.status.idle": "2023-09-27T00:11:07.055007Z", + "shell.execute_reply": "2023-09-27T00:11:07.053987Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "def battle(pkmn1, pkmn2):\n", + " pass # TODO: replace with your code\n", + " # TODO: let us ignore the rules that have to do with Speed \n", + " # and Pokemon being unable to damage each other for now\n", + " # TODO: implement code to check whether pkmn1 or pkmn2 can take more \n", + " # hits from the other before fainting\n", + " # TODO: you may **assume** that both Pokemon can cause non zero damage\n", + " # to each other for now (i.e., `num_hits` returns an integer)\n", + " # TODO: the Pokemon which can take more hits before fainting should be the winner\n", + " # TODO: if the two Pokemon can take the same number of hits from \n", + " # the other, your output should be 'Draw'" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "44822bb1", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"battle\")" + ] + }, + { + "cell_type": "markdown", + "id": "0bcd60d6", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 11**: What is the output of `battle('Infernape', 'Typhlosion')`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "04b23438", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.094684Z", + "iopub.status.busy": "2023-09-27T00:11:07.093685Z", + "iopub.status.idle": "2023-09-27T00:11:07.101539Z", + "shell.execute_reply": "2023-09-27T00:11:07.100525Z" + }, + "scrolled": true, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "battle_infernape_typhlosion = ...\n", + "\n", + "battle_infernape_typhlosion" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cda9c373", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q11\")" + ] + }, + { + "cell_type": "markdown", + "id": "e24287f9", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 12**: What is the output of `battle('Espeon', 'Sylveon')`??" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fb80980e", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.139768Z", + "iopub.status.busy": "2023-09-27T00:11:07.139768Z", + "iopub.status.idle": "2023-09-27T00:11:07.145647Z", + "shell.execute_reply": "2023-09-27T00:11:07.145647Z" + }, + "scrolled": true, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "battle_espeon_sylveon = ...\n", + "\n", + "battle_espeon_sylveon" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3a277a1b", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q12\")" + ] + }, + { + "cell_type": "markdown", + "id": "73421379", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "The function `battle` seems to be working well so far, but it does not quite follow all the rules that we laid out at the beginning. The function currently returns `\"Draw\"` if both Pokemon can take the **same number of hits** from each other. However, when we look at the rules from above, we notice that the Pokemon with **higher speed attacks first**. This means that even if both Pokemon go down in the same number of hits, the Pokemon with the higher **Speed** stat will attack first, and will therefore land its last hit before the other Pokemon can hit back.\n", + "\n", + "In other words, if both Pokemon faint within the same number of moves, the Pokemon with the higher **speed** stat should win the battle. Go back and modify `battle` so that if both Pokemon faint in the same number of moves, the Pokemon with the higher **speed** wins. If they both have the same **Speed**, then the battle should be a `'Draw'`.\n", + "\n", + "**Warning:** Do **not** redefine `battle`. You may make a *copy* of the function as it is when you start working on updating its definition, but the notebook you turn in should only have *one* definition of `battle`. So, you should **delete** any older versions of the function after your new code demonstrably works." + ] + }, + { + "cell_type": "markdown", + "id": "6f65a9cd", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 13**: What is the output of `battle('Terrakion', 'Volcanion')`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "747424d2", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.181392Z", + "iopub.status.busy": "2023-09-27T00:11:07.180388Z", + "iopub.status.idle": "2023-09-27T00:11:07.189727Z", + "shell.execute_reply": "2023-09-27T00:11:07.188710Z" + }, + "scrolled": true, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "battle_terrakion_volcanion = ...\n", + "\n", + "battle_terrakion_volcanion" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "808a7463", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q13\")" + ] + }, + { + "cell_type": "markdown", + "id": "d11e07c2", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 14**: What is the output of `battle('Miraidon', 'Koraidon')`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "07fdb7c5", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.224526Z", + "iopub.status.busy": "2023-09-27T00:11:07.224526Z", + "iopub.status.idle": "2023-09-27T00:11:07.231410Z", + "shell.execute_reply": "2023-09-27T00:11:07.230395Z" + }, + "scrolled": true, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "battle_miraidon_koraidon = ...\n", + "\n", + "battle_miraidon_koraidon" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1cd5ac55", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q14\")" + ] + }, + { + "cell_type": "markdown", + "id": "c21bee8e", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "We are almost there now! There is one last feature still left to implement however. So far, we have been working under the assumption that both `pkmn1` and `pkmn2` can cause **non-zero** effective damage to each other. We will now deal with this case as well.\n", + "\n", + "Modify `battle` so that if one Pokemon can take **infintely many** hits from the other, then the Pokemon automatically wins. If **both** Pokemon can take **infinitely many** hits from **each other**, then the battle should be a `'Draw'`.\n", + "\n", + "**Hint:** Even though this is the *last* rule to implement, it is the *first* thing that the battle function should check. Also, here's another reminder to *not* redefine `battle`." + ] + }, + { + "cell_type": "markdown", + "id": "45d4e555", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 15**: What is the output of `battle('Meowth', 'Greavard')`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "35d2c47d", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.262406Z", + "iopub.status.busy": "2023-09-27T00:11:07.262406Z", + "iopub.status.idle": "2023-09-27T00:11:07.269233Z", + "shell.execute_reply": "2023-09-27T00:11:07.268200Z" + }, + "scrolled": true, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "battle_meowth_greavard = ...\n", + "\n", + "battle_meowth_greavard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "837d62f6", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q15\")" + ] + }, + { + "cell_type": "markdown", + "id": "0c99ec77", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 16**: What is the output of `battle('Stufful', 'Dragapult')`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d7633d1d", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.306383Z", + "iopub.status.busy": "2023-09-27T00:11:07.305382Z", + "iopub.status.idle": "2023-09-27T00:11:07.312924Z", + "shell.execute_reply": "2023-09-27T00:11:07.311907Z" + }, + "scrolled": true, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "battle_stufful_dragapult = ...\n", + "\n", + "battle_stufful_dragapult" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2fcc5e1f", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q16\")" + ] + }, + { + "cell_type": "markdown", + "id": "0a730a2b", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Function 6: `friendship_score(pkmn1, pkmn2)`\n", + "\n", + "Pokemon aren't always violent. They are at most times quite friendly. However, some Pokemon are more friendly with some than they are with others. Trainers need to know which Pokemon get along well and which do not, to avoid unnecessary conflict between their Pokemon. Thankfully for trainers, there is an almost scientific way to determine how well two different Pokemon can get along with each other.\n", + "\n", + "Given two Pokemon `pkmn1` and `pkmn2`, we can compute the **friendship score** between them. A high friendship score (5) means the two Pokemon will get along really well, while a low friendship score (0) means they need to be kept far apart.\n", + "\n", + "We can check whether a pair of Pokemon has a high friendship score based on the below rules:\n", + "\n", + "1. Pokemon from the **same region** gain a friendship point.\n", + "\n", + "2. Pokemon gain a friendship point if their **difference** in **stat total** is **at most** 20 points. The **stat total** of a Pokemon is the sum of its Attack, Defense, HP, Sp. Atk., Sp. Def., and Speed stats. \n", + " \n", + "3. Pokemon gain a friendship point if they have the **same `type1`**.\n", + " \n", + "4. Pokemon gain a friendship point if they have the **same `type2`**, provided that this common `type2` is **not** `DNE`. This means that if the two Pokemon both have `DNE` as their common `type2`, then they will **not** receive any extra friendship points for it. \n", + " \n", + "5. If a Pokemon's `type1` is the same as another Pokemon's `type2` (or vice versa), they do **not** gain any friendship points for it. They only gain points if the **corresponding** types are the same (and not `DNE`).\n", + " \n", + "6. Additionally, if the two Pokemon share **both** types in common (and their `type2` is **not** `DNE`), they get **another** point for synergy. For example, if two Pokemon have two types each, and both their corresponding types are the same, they will get a total of `3` points (2 for the common types and 1 for synergy).\n", + "\n", + "\n", + "Define the function `friendship_score` that takes in two Pokemon as its arguments and returns their friendship score.\n", + "\n", + "**Hint:** You might want to use helper functions you wrote in Lab-P4 (remember to copy/paste them into this notebook before you try to use them)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e46ba66b", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.348595Z", + "iopub.status.busy": "2023-09-27T00:11:07.347593Z", + "iopub.status.idle": "2023-09-27T00:11:07.357794Z", + "shell.execute_reply": "2023-09-27T00:11:07.356763Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# define the 'friendship_score' function here\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "04f8b2f3", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"friendship_score\")" + ] + }, + { + "cell_type": "markdown", + "id": "595363b2", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 17**: What is the output of `friendship_score('Landorus', 'Thundurus')`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "399e1eb2", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.393658Z", + "iopub.status.busy": "2023-09-27T00:11:07.392673Z", + "iopub.status.idle": "2023-09-27T00:11:07.401410Z", + "shell.execute_reply": "2023-09-27T00:11:07.400377Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "friendship_landorus_thundurus = ...\n", + "\n", + "friendship_landorus_thundurus" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c3e7d252", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q17\")" + ] + }, + { + "cell_type": "markdown", + "id": "01783c14", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 18**: What is the output of `friendship_score('Pikachu', 'Raichu')`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ec0ca87f", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.436529Z", + "iopub.status.busy": "2023-09-27T00:11:07.435525Z", + "iopub.status.idle": "2023-09-27T00:11:07.442237Z", + "shell.execute_reply": "2023-09-27T00:11:07.442237Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "friendship_pikachu_raichu = ...\n", + "\n", + "friendship_pikachu_raichu" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ab77092d", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q18\")" + ] + }, + { + "cell_type": "markdown", + "id": "ab63660c", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 19**: What is the output of `friendship_score('Ceruledge', 'Skeledirge')`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "439900c7", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.480018Z", + "iopub.status.busy": "2023-09-27T00:11:07.480018Z", + "iopub.status.idle": "2023-09-27T00:11:07.489382Z", + "shell.execute_reply": "2023-09-27T00:11:07.488360Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "friendship_ceruledge_skeledirge = ...\n", + "\n", + "friendship_ceruledge_skeledirge" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e5e777f2", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q19\")" + ] + }, + { + "cell_type": "markdown", + "id": "5055b3e9", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "**Question 20**: What is the output of `friendship_score('Flygon', 'Garchomp')`?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "32bd4552", + "metadata": { + "execution": { + "iopub.execute_input": "2023-09-27T00:11:07.529043Z", + "iopub.status.busy": "2023-09-27T00:11:07.529043Z", + "iopub.status.idle": "2023-09-27T00:11:07.537158Z", + "shell.execute_reply": "2023-09-27T00:11:07.536139Z" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# replace the ... with your code\n", + "friendship_flygon_garchomp = ...\n", + "\n", + "friendship_flygon_garchomp" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1303d40e", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"q20\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "31249ab1", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"general_deductions\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "83977219", + "metadata": { + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "grader.check(\"summary\")" + ] + }, + { + "cell_type": "markdown", + "id": "8364bbb1", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + "## Submission\n", + "It is recommended that at this stage, you Restart and Run all Cells in your notebook.\n", + "That will automatically save your work and generate a zip file for you to submit.\n", + "\n", + "**SUBMISSION INSTRUCTIONS**:\n", + "1. **Upload** the zipfile to Gradescope.\n", + "2. If you completed the project with a **partner**, make sure to **add their name** by clicking \"Add Group Member\"\n", + "in Gradescope when uploading the zip file.\n", + "3. Check **Gradescope** results as soon as the auto-grader execution gets completed.\n", + "4. Your **final score** for this project is the score that you see on **Gradescope**.\n", + "5. You are **allowed** to resubmit on Gradescope as many times as you want to.\n", + "6. **Contact** a TA/PM if you lose any points on Gradescope for any **unclear reasons**." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5c6431cb", + "metadata": { + "cell_type": "code", + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "# running this cell will create a new save checkpoint for your notebook\n", + "from IPython.display import display, Javascript\n", + "display(Javascript('IPython.notebook.save_checkpoint();'))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8ef7cd10", + "metadata": { + "cell_type": "code", + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "!jupytext --to py p4.ipynb" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "bc6f3020", + "metadata": { + "cell_type": "code", + "deletable": false, + "editable": false + }, + "outputs": [], + "source": [ + "public_tests.check_file_size(\"p4.ipynb\")\n", + "grader.export(pdf=False, run_tests=False, files=[\"p4.py\"])" + ] + }, + { + "cell_type": "markdown", + "id": "8b6c2757", + "metadata": { + "deletable": false, + "editable": false + }, + "source": [ + " " + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.4" + }, + "otter": { + "OK_FORMAT": true, + "tests": { + "battle": { + "name": "battle", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> \n>>> public_tests.rubric_check('battle: function output is incorrect when the two Pokemon can do damage to each other and do not take the same number of hits to defeat each other')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the two Pokemon can do damage to each other and do not take the same number of hits to defeat each other (-3)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('battle: function output is incorrect when the two Pokemon can do damage to each other but take the same number of hits to defeat each other')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the two Pokemon can do damage to each other but take the same number of hits to defeat each other (-3)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('battle: function output is incorrect when one or more of the Pokemon cannot damage the other')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when one or more of the Pokemon cannot damage the other (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "damage": { + "name": "damage", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> \n>>> public_tests.rubric_check('damage: function output is incorrect when the `attacker` needs to choose its physical attack')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the `attacker` needs to choose its physical attack (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('damage: function output is incorrect when the `attacker` needs to choose its special attack')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the `attacker` needs to choose its special attack (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "effective_damage": { + "name": "effective_damage", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> \n>>> public_tests.rubric_check('effective_damage: `get_num_types` function logic is incorrect')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - '`get_num_types` function logic is incorrect (-1)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('effective_damage: `get_num_types` function is not used by `effective_damage`', False)\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - '`get_num_types` function is not used by `effective_damage` (-1)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('effective_damage: function output is incorrect when the `attacker` has only one type')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the `attacker` has only one type (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('effective_damage: function output is incorrect when the `attacker` has two types')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the `attacker` has two types (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "friendship_score": { + "name": "friendship_score", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> \n>>> public_tests.rubric_check('friendship_score: function logic is incorrect')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function logic is incorrect (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('friendship_score: function output is incorrect when the stat difference of the two Pokemon is exactly 20')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the stat difference of the two Pokemon is exactly 20 (-1)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('friendship_score: function output is incorrect when the two Pokemon have the same types but not necessarily the same corresponding types')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the two Pokemon have the same types but not necessarily the same corresponding types (-1)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "general_deductions": { + "name": "general_deductions", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> \n>>> public_tests.rubric_check('general_deductions: Did not save the notebook file prior to running the cell containing \"export\". We cannot see your output if you do not save before generating the zip file. This deduction will become stricter for future projects.')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'Did not save the notebook file prior to running the cell containing \"export\". We cannot see your output if you do not save before generating the zip file. This deduction will become stricter for future projects. (-3)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('general_deductions: Functions are defined more than once.')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'Functions are defined more than once. (-3)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('general_deductions: Import statements are not all placed at the top of the notebook.')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'Import statements are not all placed at the top of the notebook. (-1)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('general_deductions: Used loops or other material not covered in class yet.')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'Used loops or other material not covered in class yet. (-20)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "num_hits": { + "name": "num_hits", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> \n>>> public_tests.rubric_check('num_hits: function output is incorrect when the `attacker` can do non-zero effective damage to the `defender`')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the `attacker` can do non-zero effective damage to the `defender` (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('num_hits: function output is incorrect when the `attacker` cannot do any damage to the `defender`')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the `attacker` cannot do any damage to the `defender` (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q1": { + "name": "q1", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q1', damage_tinkaton_arcanine)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q1: correct arguments are not passed to `damage` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `damage` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q1: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q10": { + "name": "q10", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q10', hits_copperajah_trubbish)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q10: correct arguments are not passed to `num_hits` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `num_hits` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q10: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q11": { + "name": "q11", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q11', battle_infernape_typhlosion)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q11: correct arguments are not passed to `battle` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `battle` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q11: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q12": { + "name": "q12", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q12', battle_espeon_sylveon)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q12: correct arguments are not passed to `battle` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `battle` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q12: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q13": { + "name": "q13", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q13', battle_terrakion_volcanion)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q13: correct arguments are not passed to `battle` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `battle` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q13: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q14": { + "name": "q14", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q14', battle_miraidon_koraidon)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q14: correct arguments are not passed to `battle` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `battle` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q14: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q15": { + "name": "q15", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q15', battle_meowth_greavard)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q15: correct arguments are not passed to `battle` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `battle` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q15: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q16": { + "name": "q16", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q16', battle_stufful_dragapult)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q16: correct arguments are not passed to `battle` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `battle` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q16: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q17": { + "name": "q17", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q17', friendship_landorus_thundurus)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q17: correct arguments are not passed to `friendship_score` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `friendship_score` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q17: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q18": { + "name": "q18", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q18', friendship_pikachu_raichu)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q18: correct arguments are not passed to `friendship_score` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `friendship_score` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q18: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q19": { + "name": "q19", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q19', friendship_ceruledge_skeledirge)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q19: correct arguments are not passed to `friendship_score` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `friendship_score` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q19: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q2": { + "name": "q2", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q2', damage_lucario_klawf)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q2: correct arguments are not passed to `damage` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `damage` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q2: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q20": { + "name": "q20", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q20', friendship_flygon_garchomp)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q20: correct arguments are not passed to `friendship_score` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `friendship_score` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q20: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q3": { + "name": "q3", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q3', bonus_rock_talonflame)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q3: correct arguments are not passed to `type_bonus` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `type_bonus` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q3: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q4": { + "name": "q4", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q4', bonus_bug_ninetales)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q4: correct arguments are not passed to `type_bonus` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `type_bonus` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q4: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q5": { + "name": "q5", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q5', eff_damage_froakie_snivy)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q5: correct arguments are not passed to `effective_damage` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `effective_damage` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q5: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q6": { + "name": "q6", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q6', eff_damage_gengar_lapras)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q6: correct arguments are not passed to `effective_damage` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `effective_damage` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q6: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q7": { + "name": "q7", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q7', eff_damage_tyranitar_charizard)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q7: correct arguments are not passed to `effective_damage` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `effective_damage` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q7: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q8": { + "name": "q8", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q8', hits_snorlax_golem)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q8: correct arguments are not passed to `num_hits` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `num_hits` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q8: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "q9": { + "name": "q9", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.check('q9', hits_sceptile_meowscarada)\nAll test cases passed!\n", + "hidden": false, + "locked": false + }, + { + "code": ">>> \n>>> public_tests.rubric_check('q9: correct arguments are not passed to `num_hits` function')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'correct arguments are not passed to `num_hits` function (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> public_tests.rubric_check('q9: public tests')\nAll test cases passed!\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "summary": { + "name": "summary", + "points": 127, + "suites": [ + { + "cases": [ + { + "code": ">>> public_tests.get_summary()\nTotal Score: 100/100\n", + "hidden": false, + "locked": false + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + }, + "type_bonus": { + "name": "type_bonus", + "points": 0, + "suites": [ + { + "cases": [ + { + "code": ">>> \n>>> public_tests.rubric_check('type_bonus: function output is incorrect when the `defender` has only one type')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the `defender` has only one type (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + }, + { + "code": ">>> \n>>> public_tests.rubric_check('type_bonus: function output is incorrect when the `defender` has two types')\nAll test cases passed!\n", + "hidden": false, + "locked": false, + "success_message": "Note that the Gradescope autograder will deduct points if your code fails the following rubric point - 'function output is incorrect when the `defender` has two types (-2)'. The public tests cannot determine if your code satisfies these requirements. Verify your code manually." + } + ], + "scored": true, + "setup": "", + "teardown": "", + "type": "doctest" + } + ] + } + } + }, + "vscode": { + "interpreter": { + "hash": "f08154012ddadd8e950e6e9e035c7a7b32c136e7647e9b7c77e02eb723a8bedb" + } + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/p4/pokemon_stats.csv b/p4/pokemon_stats.csv new file mode 100644 index 0000000000000000000000000000000000000000..b84d3b72cfe65e0daeac42652a0f96385c8e8287 --- /dev/null +++ b/p4/pokemon_stats.csv @@ -0,0 +1,982 @@ +,Name,Attack,Defense,HP,Region,Sp. Atk,Sp. Def,Speed,Type 1,Type 2 +0,Bulbasaur,49,49,45,Kanto,65,65,45,Grass,Poison +1,Ivysaur,62,63,60,Kanto,80,80,60,Grass,Poison +2,Venusaur,82,83,80,Kanto,100,100,80,Grass,Poison +3,Charmander,52,43,39,Kanto,60,50,65,Fire,DNE +4,Charmeleon,64,58,58,Kanto,80,65,80,Fire,DNE +5,Charizard,84,78,78,Kanto,109,85,100,Fire,Flying +6,Squirtle,48,65,44,Kanto,50,64,43,Water,DNE +7,Wartortle,63,80,59,Kanto,65,80,58,Water,DNE +8,Blastoise,83,100,79,Kanto,85,105,78,Water,DNE +9,Caterpie,30,35,45,Kanto,20,20,45,Bug,DNE +10,Metapod,20,55,50,Kanto,25,25,30,Bug,DNE +11,Butterfree,45,50,60,Kanto,90,80,70,Bug,Flying +12,Weedle,35,30,40,Kanto,20,20,50,Bug,Poison +13,Kakuna,25,50,45,Kanto,25,25,35,Bug,Poison +14,Beedrill,90,40,65,Kanto,45,80,75,Bug,Poison +15,Pidgey,45,40,40,Kanto,35,35,56,Normal,Flying +16,Pidgeotto,60,55,63,Kanto,50,50,71,Normal,Flying +17,Pidgeot,80,75,83,Kanto,70,70,101,Normal,Flying +18,Rattata,56,35,30,Kanto,25,35,72,Normal,DNE +19,Raticate,81,60,55,Kanto,50,70,97,Normal,DNE +20,Spearow,60,30,40,Kanto,31,31,70,Normal,Flying +21,Fearow,90,65,65,Kanto,61,61,100,Normal,Flying +22,Ekans,60,44,35,Kanto,40,54,55,Poison,DNE +23,Arbok,95,69,60,Kanto,65,79,80,Poison,DNE +24,Pikachu,55,40,35,Kanto,50,50,90,Electric,DNE +25,Raichu,90,55,60,Kanto,90,80,110,Electric,DNE +26,Sandshrew,75,85,50,Kanto,20,30,40,Ground,DNE +27,Sandslash,100,110,75,Kanto,45,55,65,Ground,DNE +28,Nidorina,62,67,70,Kanto,55,55,56,Poison,DNE +29,Nidoqueen,92,87,90,Kanto,75,85,76,Poison,Ground +30,Nidorino,72,57,61,Kanto,55,55,65,Poison,DNE +31,Nidoking,102,77,81,Kanto,85,75,85,Poison,Ground +32,Clefairy,45,48,70,Kanto,60,65,35,Fairy,DNE +33,Clefable,70,73,95,Kanto,95,90,60,Fairy,DNE +34,Vulpix,41,40,38,Kanto,50,65,65,Fire,DNE +35,Ninetales,76,75,73,Kanto,81,100,100,Fire,DNE +36,Jigglypuff,45,20,115,Kanto,45,25,20,Normal,Fairy +37,Wigglytuff,70,45,140,Kanto,85,50,45,Normal,Fairy +38,Zubat,45,35,40,Kanto,30,40,55,Poison,Flying +39,Golbat,80,70,75,Kanto,65,75,90,Poison,Flying +40,Oddish,50,55,45,Kanto,75,65,30,Grass,Poison +41,Gloom,65,70,60,Kanto,85,75,40,Grass,Poison +42,Vileplume,80,85,75,Kanto,110,90,50,Grass,Poison +43,Paras,70,55,35,Kanto,45,55,25,Bug,Grass +44,Parasect,95,80,60,Kanto,60,80,30,Bug,Grass +45,Venonat,55,50,60,Kanto,40,55,45,Bug,Poison +46,Venomoth,65,60,70,Kanto,90,75,90,Bug,Poison +47,Diglett,55,25,10,Kanto,35,45,95,Ground,DNE +48,Dugtrio,100,50,35,Kanto,50,70,120,Ground,DNE +49,Meowth,45,35,40,Kanto,40,40,90,Normal,DNE +50,Persian,70,60,65,Kanto,65,65,115,Normal,DNE +51,Psyduck,52,48,50,Kanto,65,50,55,Water,DNE +52,Golduck,82,78,80,Kanto,95,80,85,Water,DNE +53,Mankey,80,35,40,Kanto,35,45,70,Fighting,DNE +54,Primeape,105,60,65,Kanto,60,70,95,Fighting,DNE +55,Growlithe,70,45,55,Kanto,70,50,60,Fire,DNE +56,Arcanine,110,80,90,Kanto,100,80,95,Fire,DNE +57,Poliwag,50,40,40,Kanto,40,40,90,Water,DNE +58,Poliwhirl,65,65,65,Kanto,50,50,90,Water,DNE +59,Poliwrath,95,95,90,Kanto,70,90,70,Water,Fighting +60,Abra,20,15,25,Kanto,105,55,90,Psychic,DNE +61,Kadabra,35,30,40,Kanto,120,70,105,Psychic,DNE +62,Alakazam,50,45,55,Kanto,135,95,120,Psychic,DNE +63,Machop,80,50,70,Kanto,35,35,35,Fighting,DNE +64,Machoke,100,70,80,Kanto,50,60,45,Fighting,DNE +65,Machamp,130,80,90,Kanto,65,85,55,Fighting,DNE +66,Bellsprout,75,35,50,Kanto,70,30,40,Grass,Poison +67,Weepinbell,90,50,65,Kanto,85,45,55,Grass,Poison +68,Victreebel,105,65,80,Kanto,100,70,70,Grass,Poison +69,Tentacool,40,35,40,Kanto,50,100,70,Water,Poison +70,Tentacruel,70,65,80,Kanto,80,120,100,Water,Poison +71,Geodude,80,100,40,Kanto,30,30,20,Rock,Ground +72,Graveler,95,115,55,Kanto,45,45,35,Rock,Ground +73,Golem,120,130,80,Kanto,55,65,45,Rock,Ground +74,Ponyta,85,55,50,Kanto,65,65,90,Fire,DNE +75,Rapidash,100,70,65,Kanto,80,80,105,Fire,DNE +76,Slowpoke,65,65,90,Kanto,40,40,15,Water,Psychic +77,Slowbro,75,110,95,Kanto,100,80,30,Water,Psychic +78,Magnemite,35,70,25,Kanto,95,55,45,Electric,Steel +79,Magneton,60,95,50,Kanto,120,70,70,Electric,Steel +80,Doduo,85,45,35,Kanto,35,35,75,Normal,Flying +81,Dodrio,110,70,60,Kanto,60,60,110,Normal,Flying +82,Seel,45,55,65,Kanto,45,70,45,Water,DNE +83,Dewgong,70,80,90,Kanto,70,95,70,Water,Ice +84,Grimer,80,50,80,Kanto,40,50,25,Poison,DNE +85,Muk,105,75,105,Kanto,65,100,50,Poison,DNE +86,Shellder,65,100,30,Kanto,45,25,40,Water,DNE +87,Cloyster,95,180,50,Kanto,85,45,70,Water,Ice +88,Gastly,35,30,30,Kanto,100,35,80,Ghost,Poison +89,Haunter,50,45,45,Kanto,115,55,95,Ghost,Poison +90,Gengar,65,60,60,Kanto,130,75,110,Ghost,Poison +91,Onix,45,160,35,Kanto,30,45,70,Rock,Ground +92,Drowzee,48,45,60,Kanto,43,90,42,Psychic,DNE +93,Hypno,73,70,85,Kanto,73,115,67,Psychic,DNE +94,Krabby,105,90,30,Kanto,25,25,50,Water,DNE +95,Kingler,130,115,55,Kanto,50,50,75,Water,DNE +96,Voltorb,30,50,40,Kanto,55,55,100,Electric,DNE +97,Electrode,50,70,60,Kanto,80,80,150,Electric,DNE +98,Exeggcute,40,80,60,Kanto,60,45,40,Grass,Psychic +99,Exeggutor,95,85,95,Kanto,125,75,55,Grass,Psychic +100,Cubone,50,95,50,Kanto,40,50,35,Ground,DNE +101,Marowak,80,110,60,Kanto,50,80,45,Ground,DNE +102,Hitmonlee,120,53,50,Kanto,35,110,87,Fighting,DNE +103,Hitmonchan,105,79,50,Kanto,35,110,76,Fighting,DNE +104,Lickitung,55,75,90,Kanto,60,75,30,Normal,DNE +105,Koffing,65,95,40,Kanto,60,45,35,Poison,DNE +106,Weezing,90,120,65,Kanto,85,70,60,Poison,DNE +107,Rhyhorn,85,95,80,Kanto,30,30,25,Ground,Rock +108,Rhydon,130,120,105,Kanto,45,45,40,Ground,Rock +109,Chansey,5,5,250,Kanto,35,105,50,Normal,DNE +110,Tangela,55,115,65,Kanto,100,40,60,Grass,DNE +111,Kangaskhan,95,80,105,Kanto,40,80,90,Normal,DNE +112,Horsea,40,70,30,Kanto,70,25,60,Water,DNE +113,Seadra,65,95,55,Kanto,95,45,85,Water,DNE +114,Goldeen,67,60,45,Kanto,35,50,63,Water,DNE +115,Seaking,92,65,80,Kanto,65,80,68,Water,DNE +116,Staryu,45,55,30,Kanto,70,55,85,Water,DNE +117,Starmie,75,85,60,Kanto,100,85,115,Water,Psychic +118,Scyther,110,80,70,Kanto,55,80,105,Bug,Flying +119,Jynx,50,35,65,Kanto,115,95,95,Ice,Psychic +120,Electabuzz,83,57,65,Kanto,95,85,105,Electric,DNE +121,Magmar,95,57,65,Kanto,100,85,93,Fire,DNE +122,Pinsir,125,100,65,Kanto,55,70,85,Bug,DNE +123,Tauros,100,95,75,Kanto,40,70,110,Normal,DNE +124,Magikarp,10,55,20,Kanto,15,20,80,Water,DNE +125,Gyarados,125,79,95,Kanto,60,100,81,Water,Flying +126,Lapras,85,80,130,Kanto,85,95,60,Water,Ice +127,Ditto,48,48,48,Kanto,48,48,48,Normal,DNE +128,Eevee,55,50,55,Kanto,45,65,55,Normal,DNE +129,Vaporeon,65,60,130,Kanto,110,95,65,Water,DNE +130,Jolteon,65,60,65,Kanto,110,95,130,Electric,DNE +131,Flareon,130,60,65,Kanto,95,110,65,Fire,DNE +132,Porygon,60,70,65,Kanto,85,75,40,Normal,DNE +133,Omanyte,40,100,35,Kanto,90,55,35,Rock,Water +134,Omastar,60,125,70,Kanto,115,70,55,Rock,Water +135,Kabuto,80,90,30,Kanto,55,45,55,Rock,Water +136,Kabutops,115,105,60,Kanto,65,70,80,Rock,Water +137,Aerodactyl,105,65,80,Kanto,60,75,130,Rock,Flying +138,Snorlax,110,65,160,Kanto,65,110,30,Normal,DNE +139,Articuno,85,100,90,Kanto,95,125,85,Ice,Flying +140,Zapdos,90,85,90,Kanto,125,90,100,Electric,Flying +141,Moltres,100,90,90,Kanto,125,85,90,Fire,Flying +142,Dratini,64,45,41,Kanto,50,50,50,Dragon,DNE +143,Dragonair,84,65,61,Kanto,70,70,70,Dragon,DNE +144,Dragonite,134,95,91,Kanto,100,100,80,Dragon,Flying +145,Mewtwo,110,90,106,Kanto,154,90,130,Psychic,DNE +146,Mew,100,100,100,Kanto,100,100,100,Psychic,DNE +147,Chikorita,49,65,45,Johto,49,65,45,Grass,DNE +148,Bayleef,62,80,60,Johto,63,80,60,Grass,DNE +149,Meganium,82,100,80,Johto,83,100,80,Grass,DNE +150,Cyndaquil,52,43,39,Johto,60,50,65,Fire,DNE +151,Quilava,64,58,58,Johto,80,65,80,Fire,DNE +152,Typhlosion,84,78,78,Johto,109,85,100,Fire,DNE +153,Totodile,65,64,50,Johto,44,48,43,Water,DNE +154,Croconaw,80,80,65,Johto,59,63,58,Water,DNE +155,Feraligatr,105,100,85,Johto,79,83,78,Water,DNE +156,Sentret,46,34,35,Johto,35,45,20,Normal,DNE +157,Furret,76,64,85,Johto,45,55,90,Normal,DNE +158,Hoothoot,30,30,60,Johto,36,56,50,Normal,Flying +159,Noctowl,50,50,100,Johto,86,96,70,Normal,Flying +160,Ledyba,20,30,40,Johto,40,80,55,Bug,Flying +161,Ledian,35,50,55,Johto,55,110,85,Bug,Flying +162,Spinarak,60,40,40,Johto,40,40,30,Bug,Poison +163,Ariados,90,70,70,Johto,60,70,40,Bug,Poison +164,Crobat,90,80,85,Johto,70,80,130,Poison,Flying +165,Chinchou,38,38,75,Johto,56,56,67,Water,Electric +166,Lanturn,58,58,125,Johto,76,76,67,Water,Electric +167,Pichu,40,15,20,Johto,35,35,60,Electric,DNE +168,Cleffa,25,28,50,Johto,45,55,15,Fairy,DNE +169,Igglybuff,30,15,90,Johto,40,20,15,Normal,Fairy +170,Togepi,20,65,35,Johto,40,65,20,Fairy,DNE +171,Togetic,40,85,55,Johto,80,105,40,Fairy,Flying +172,Natu,50,45,40,Johto,70,45,70,Psychic,Flying +173,Xatu,75,70,65,Johto,95,70,95,Psychic,Flying +174,Mareep,40,40,55,Johto,65,45,35,Electric,DNE +175,Flaaffy,55,55,70,Johto,80,60,45,Electric,DNE +176,Ampharos,75,85,90,Johto,115,90,55,Electric,DNE +177,Bellossom,80,95,75,Johto,90,100,50,Grass,DNE +178,Marill,20,50,70,Johto,20,50,40,Water,Fairy +179,Azumarill,50,80,100,Johto,60,80,50,Water,Fairy +180,Sudowoodo,100,115,70,Johto,30,65,30,Rock,DNE +181,Politoed,75,75,90,Johto,90,100,70,Water,DNE +182,Hoppip,35,40,35,Johto,35,55,50,Grass,Flying +183,Skiploom,45,50,55,Johto,45,65,80,Grass,Flying +184,Jumpluff,55,70,75,Johto,55,95,110,Grass,Flying +185,Aipom,70,55,55,Johto,40,55,85,Normal,DNE +186,Sunkern,30,30,30,Johto,30,30,30,Grass,DNE +187,Sunflora,75,55,75,Johto,105,85,30,Grass,DNE +188,Yanma,65,45,65,Johto,75,45,95,Bug,Flying +189,Wooper,45,45,55,Johto,25,25,15,Water,Ground +190,Quagsire,85,85,95,Johto,65,65,35,Water,Ground +191,Espeon,65,60,65,Johto,130,95,110,Psychic,DNE +192,Umbreon,65,110,95,Johto,60,130,65,Dark,DNE +193,Murkrow,85,42,60,Johto,85,42,91,Dark,Flying +194,Slowking,75,80,95,Johto,100,110,30,Water,Psychic +195,Misdreavus,60,60,60,Johto,85,85,85,Ghost,DNE +196,Unown,72,48,48,Johto,72,48,48,Psychic,DNE +197,Wobbuffet,33,58,190,Johto,33,58,33,Psychic,DNE +198,Girafarig,80,65,70,Johto,90,65,85,Normal,Psychic +199,Pineco,65,90,50,Johto,35,35,15,Bug,DNE +200,Forretress,90,140,75,Johto,60,60,40,Bug,Steel +201,Dunsparce,70,70,100,Johto,65,65,45,Normal,DNE +202,Gligar,75,105,65,Johto,35,65,85,Ground,Flying +203,Steelix,85,200,75,Johto,55,65,30,Steel,Ground +204,Snubbull,80,50,60,Johto,40,40,30,Fairy,DNE +205,Granbull,120,75,90,Johto,60,60,45,Fairy,DNE +206,Qwilfish,95,85,65,Johto,55,55,85,Water,Poison +207,Scizor,130,100,70,Johto,55,80,65,Bug,Steel +208,Shuckle,10,230,20,Johto,10,230,5,Bug,Rock +209,Heracross,125,75,80,Johto,40,95,85,Bug,Fighting +210,Sneasel,95,55,55,Johto,35,75,115,Dark,Ice +211,Teddiursa,80,50,60,Johto,50,50,40,Normal,DNE +212,Ursaring,130,75,90,Johto,75,75,55,Normal,DNE +213,Slugma,40,40,40,Johto,70,40,20,Fire,DNE +214,Magcargo,50,120,60,Johto,90,80,30,Fire,Rock +215,Swinub,50,40,50,Johto,30,30,50,Ice,Ground +216,Piloswine,100,80,100,Johto,60,60,50,Ice,Ground +217,Corsola,55,95,65,Johto,65,95,35,Water,Rock +218,Remoraid,65,35,35,Johto,65,35,65,Water,DNE +219,Octillery,105,75,75,Johto,105,75,45,Water,DNE +220,Delibird,55,45,45,Johto,65,45,75,Ice,Flying +221,Mantine,40,70,85,Johto,80,140,70,Water,Flying +222,Skarmory,80,140,65,Johto,40,70,70,Steel,Flying +223,Houndour,60,30,45,Johto,80,50,65,Dark,Fire +224,Houndoom,90,50,75,Johto,110,80,95,Dark,Fire +225,Kingdra,95,95,75,Johto,95,95,85,Water,Dragon +226,Phanpy,60,60,90,Johto,40,40,40,Ground,DNE +227,Donphan,120,120,90,Johto,60,60,50,Ground,DNE +228,Porygon2,80,90,85,Johto,105,95,60,Normal,DNE +229,Stantler,95,62,73,Johto,85,65,85,Normal,DNE +230,Smeargle,20,35,55,Johto,20,45,75,Normal,DNE +231,Tyrogue,35,35,35,Johto,35,35,35,Fighting,DNE +232,Hitmontop,95,95,50,Johto,35,110,70,Fighting,DNE +233,Smoochum,30,15,45,Johto,85,65,65,Ice,Psychic +234,Elekid,63,37,45,Johto,65,55,95,Electric,DNE +235,Magby,75,37,45,Johto,70,55,83,Fire,DNE +236,Miltank,80,105,95,Johto,40,70,100,Normal,DNE +237,Blissey,10,10,255,Johto,75,135,55,Normal,DNE +238,Raikou,85,75,90,Johto,115,100,115,Electric,DNE +239,Entei,115,85,115,Johto,90,75,100,Fire,DNE +240,Suicune,75,115,100,Johto,90,115,85,Water,DNE +241,Larvitar,64,50,50,Johto,45,50,41,Rock,Ground +242,Pupitar,84,70,70,Johto,65,70,51,Rock,Ground +243,Tyranitar,134,110,100,Johto,95,100,61,Rock,Dark +244,Lugia,90,130,106,Johto,90,154,110,Psychic,Flying +245,Ho-oh,130,90,106,Johto,110,154,90,Fire,Flying +246,Celebi,100,100,100,Johto,100,100,100,Psychic,Grass +247,Treecko,45,35,40,Hoenn,65,55,70,Grass,DNE +248,Grovyle,65,45,50,Hoenn,85,65,95,Grass,DNE +249,Sceptile,85,65,70,Hoenn,105,85,120,Grass,DNE +250,Torchic,60,40,45,Hoenn,70,50,45,Fire,DNE +251,Combusken,85,60,60,Hoenn,85,60,55,Fire,Fighting +252,Blaziken,120,70,80,Hoenn,110,70,80,Fire,Fighting +253,Mudkip,70,50,50,Hoenn,50,50,40,Water,DNE +254,Marshtomp,85,70,70,Hoenn,60,70,50,Water,Ground +255,Swampert,110,90,100,Hoenn,85,90,60,Water,Ground +256,Poochyena,55,35,35,Hoenn,30,30,35,Dark,DNE +257,Mightyena,90,70,70,Hoenn,60,60,70,Dark,DNE +258,Zigzagoon,30,41,38,Hoenn,30,41,60,Normal,DNE +259,Linoone,70,61,78,Hoenn,50,61,100,Normal,DNE +260,Wurmple,45,35,45,Hoenn,20,30,20,Bug,DNE +261,Silcoon,35,55,50,Hoenn,25,25,15,Bug,DNE +262,Beautifly,70,50,60,Hoenn,100,50,65,Bug,Flying +263,Cascoon,35,55,50,Hoenn,25,25,15,Bug,DNE +264,Dustox,50,70,60,Hoenn,50,90,65,Bug,Poison +265,Lotad,30,30,40,Hoenn,40,50,30,Water,Grass +266,Lombre,50,50,60,Hoenn,60,70,50,Water,Grass +267,Ludicolo,70,70,80,Hoenn,90,100,70,Water,Grass +268,Seedot,40,50,40,Hoenn,30,30,30,Grass,DNE +269,Nuzleaf,70,40,70,Hoenn,60,40,60,Grass,Dark +270,Shiftry,100,60,90,Hoenn,90,60,80,Grass,Dark +271,Taillow,55,30,40,Hoenn,30,30,85,Normal,Flying +272,Swellow,85,60,60,Hoenn,75,50,125,Normal,Flying +273,Wingull,30,30,40,Hoenn,55,30,85,Water,Flying +274,Pelipper,50,100,60,Hoenn,95,70,65,Water,Flying +275,Ralts,25,25,28,Hoenn,45,35,40,Psychic,Fairy +276,Kirlia,35,35,38,Hoenn,65,55,50,Psychic,Fairy +277,Gardevoir,65,65,68,Hoenn,125,115,80,Psychic,Fairy +278,Surskit,30,32,40,Hoenn,50,52,65,Bug,Water +279,Masquerain,60,62,70,Hoenn,100,82,80,Bug,Flying +280,Shroomish,40,60,60,Hoenn,40,60,35,Grass,DNE +281,Breloom,130,80,60,Hoenn,60,60,70,Grass,Fighting +282,Slakoth,60,60,60,Hoenn,35,35,30,Normal,DNE +283,Vigoroth,80,80,80,Hoenn,55,55,90,Normal,DNE +284,Slaking,160,100,150,Hoenn,95,65,100,Normal,DNE +285,Nincada,45,90,31,Hoenn,30,30,40,Bug,Ground +286,Ninjask,90,45,61,Hoenn,50,50,160,Bug,Flying +287,Shedinja,90,45,1,Hoenn,30,30,40,Bug,Ghost +288,Whismur,51,23,64,Hoenn,51,23,28,Normal,DNE +289,Loudred,71,43,84,Hoenn,71,43,48,Normal,DNE +290,Exploud,91,63,104,Hoenn,91,73,68,Normal,DNE +291,Makuhita,60,30,72,Hoenn,20,30,25,Fighting,DNE +292,Hariyama,120,60,144,Hoenn,40,60,50,Fighting,DNE +293,Azurill,20,40,50,Hoenn,20,40,20,Normal,Fairy +294,Nosepass,45,135,30,Hoenn,45,90,30,Rock,DNE +295,Skitty,45,45,50,Hoenn,35,35,50,Normal,DNE +296,Delcatty,65,65,70,Hoenn,55,55,90,Normal,DNE +297,Sableye,75,75,50,Hoenn,65,65,50,Dark,Ghost +298,Mawile,85,85,50,Hoenn,55,55,50,Steel,Fairy +299,Aron,70,100,50,Hoenn,40,40,30,Steel,Rock +300,Lairon,90,140,60,Hoenn,50,50,40,Steel,Rock +301,Aggron,110,180,70,Hoenn,60,60,50,Steel,Rock +302,Meditite,40,55,30,Hoenn,40,55,60,Fighting,Psychic +303,Medicham,60,75,60,Hoenn,60,75,80,Fighting,Psychic +304,Electrike,45,40,40,Hoenn,65,40,65,Electric,DNE +305,Manectric,75,60,70,Hoenn,105,60,105,Electric,DNE +306,Plusle,50,40,60,Hoenn,85,75,95,Electric,DNE +307,Minun,40,50,60,Hoenn,75,85,95,Electric,DNE +308,Volbeat,73,75,65,Hoenn,47,85,85,Bug,DNE +309,Illumise,47,75,65,Hoenn,73,85,85,Bug,DNE +310,Roselia,60,45,50,Hoenn,100,80,65,Grass,Poison +311,Gulpin,43,53,70,Hoenn,43,53,40,Poison,DNE +312,Swalot,73,83,100,Hoenn,73,83,55,Poison,DNE +313,Carvanha,90,20,45,Hoenn,65,20,65,Water,Dark +314,Sharpedo,120,40,70,Hoenn,95,40,95,Water,Dark +315,Wailmer,70,35,130,Hoenn,70,35,60,Water,DNE +316,Wailord,90,45,170,Hoenn,90,45,60,Water,DNE +317,Numel,60,40,60,Hoenn,65,45,35,Fire,Ground +318,Camerupt,100,70,70,Hoenn,105,75,40,Fire,Ground +319,Torkoal,85,140,70,Hoenn,85,70,20,Fire,DNE +320,Spoink,25,35,60,Hoenn,70,80,60,Psychic,DNE +321,Grumpig,45,65,80,Hoenn,90,110,80,Psychic,DNE +322,Spinda,60,60,60,Hoenn,60,60,60,Normal,DNE +323,Trapinch,100,45,45,Hoenn,45,45,10,Ground,DNE +324,Vibrava,70,50,50,Hoenn,50,50,70,Ground,Dragon +325,Flygon,100,80,80,Hoenn,80,80,100,Ground,Dragon +326,Cacnea,85,40,50,Hoenn,85,40,35,Grass,DNE +327,Cacturne,115,60,70,Hoenn,115,60,55,Grass,Dark +328,Swablu,40,60,45,Hoenn,40,75,50,Normal,Flying +329,Altaria,70,90,75,Hoenn,70,105,80,Dragon,Flying +330,Zangoose,115,60,73,Hoenn,60,60,90,Normal,DNE +331,Seviper,100,60,73,Hoenn,100,60,65,Poison,DNE +332,Lunatone,55,65,90,Hoenn,95,85,70,Rock,Psychic +333,Solrock,95,85,90,Hoenn,55,65,70,Rock,Psychic +334,Barboach,48,43,50,Hoenn,46,41,60,Water,Ground +335,Whiscash,78,73,110,Hoenn,76,71,60,Water,Ground +336,Corphish,80,65,43,Hoenn,50,35,35,Water,DNE +337,Crawdaunt,120,85,63,Hoenn,90,55,55,Water,Dark +338,Baltoy,40,55,40,Hoenn,40,70,55,Ground,Psychic +339,Claydol,70,105,60,Hoenn,70,120,75,Ground,Psychic +340,Lileep,41,77,66,Hoenn,61,87,23,Rock,Grass +341,Cradily,81,97,86,Hoenn,81,107,43,Rock,Grass +342,Anorith,95,50,45,Hoenn,40,50,75,Rock,Bug +343,Armaldo,125,100,75,Hoenn,70,80,45,Rock,Bug +344,Feebas,15,20,20,Hoenn,10,55,80,Water,DNE +345,Milotic,60,79,95,Hoenn,100,125,81,Water,DNE +346,Castform,70,70,70,Hoenn,70,70,70,Normal,DNE +347,Kecleon,90,70,60,Hoenn,60,120,40,Normal,DNE +348,Shuppet,75,35,44,Hoenn,63,33,45,Ghost,DNE +349,Banette,115,65,64,Hoenn,83,63,65,Ghost,DNE +350,Duskull,40,90,20,Hoenn,30,90,25,Ghost,DNE +351,Dusclops,70,130,40,Hoenn,60,130,25,Ghost,DNE +352,Tropius,68,83,99,Hoenn,72,87,51,Grass,Flying +353,Chimecho,50,80,75,Hoenn,95,90,65,Psychic,DNE +354,Absol,130,60,65,Hoenn,75,60,75,Dark,DNE +355,Wynaut,23,48,95,Hoenn,23,48,23,Psychic,DNE +356,Snorunt,50,50,50,Hoenn,50,50,50,Ice,DNE +357,Glalie,80,80,80,Hoenn,80,80,80,Ice,DNE +358,Spheal,40,50,70,Hoenn,55,50,25,Ice,Water +359,Sealeo,60,70,90,Hoenn,75,70,45,Ice,Water +360,Walrein,80,90,110,Hoenn,95,90,65,Ice,Water +361,Clamperl,64,85,35,Hoenn,74,55,32,Water,DNE +362,Huntail,104,105,55,Hoenn,94,75,52,Water,DNE +363,Gorebyss,84,105,55,Hoenn,114,75,52,Water,DNE +364,Relicanth,90,130,100,Hoenn,45,65,55,Water,Rock +365,Luvdisc,30,55,43,Hoenn,40,65,97,Water,DNE +366,Bagon,75,60,45,Hoenn,40,30,50,Dragon,DNE +367,Shelgon,95,100,65,Hoenn,60,50,50,Dragon,DNE +368,Salamence,135,80,95,Hoenn,110,80,100,Dragon,Flying +369,Beldum,55,80,40,Hoenn,35,60,30,Steel,Psychic +370,Metang,75,100,60,Hoenn,55,80,50,Steel,Psychic +371,Metagross,135,130,80,Hoenn,95,90,70,Steel,Psychic +372,Regirock,100,200,80,Hoenn,50,100,50,Rock,DNE +373,Regice,50,100,80,Hoenn,100,200,50,Ice,DNE +374,Registeel,75,150,80,Hoenn,75,150,50,Steel,DNE +375,Latias,80,90,80,Hoenn,110,130,110,Dragon,Psychic +376,Latios,90,80,80,Hoenn,130,110,110,Dragon,Psychic +377,Kyogre,100,90,100,Hoenn,150,140,90,Water,DNE +378,Groudon,150,140,100,Hoenn,100,90,90,Ground,DNE +379,Rayquaza,150,90,105,Hoenn,150,90,95,Dragon,Flying +380,Jirachi,100,100,100,Hoenn,100,100,100,Steel,Psychic +381,Deoxys,150,50,50,Hoenn,150,50,150,Psychic,DNE +382,Turtwig,68,64,55,Sinnoh,45,55,31,Grass,DNE +383,Grotle,89,85,75,Sinnoh,55,65,36,Grass,DNE +384,Torterra,109,105,95,Sinnoh,75,85,56,Grass,Ground +385,Chimchar,58,44,44,Sinnoh,58,44,61,Fire,DNE +386,Monferno,78,52,64,Sinnoh,78,52,81,Fire,Fighting +387,Infernape,104,71,76,Sinnoh,104,71,108,Fire,Fighting +388,Piplup,51,53,53,Sinnoh,61,56,40,Water,DNE +389,Prinplup,66,68,64,Sinnoh,81,76,50,Water,DNE +390,Empoleon,86,88,84,Sinnoh,111,101,60,Water,Steel +391,Starly,55,30,40,Sinnoh,30,30,60,Normal,Flying +392,Staravia,75,50,55,Sinnoh,40,40,80,Normal,Flying +393,Staraptor,120,70,85,Sinnoh,50,60,100,Normal,Flying +394,Bidoof,45,40,59,Sinnoh,35,40,31,Normal,DNE +395,Bibarel,85,60,79,Sinnoh,55,60,71,Normal,Water +396,Kricketot,25,41,37,Sinnoh,25,41,25,Bug,DNE +397,Kricketune,85,51,77,Sinnoh,55,51,65,Bug,DNE +398,Shinx,65,34,45,Sinnoh,40,34,45,Electric,DNE +399,Luxio,85,49,60,Sinnoh,60,49,60,Electric,DNE +400,Luxray,120,79,80,Sinnoh,95,79,70,Electric,DNE +401,Budew,30,35,40,Sinnoh,50,70,55,Grass,Poison +402,Roserade,70,65,60,Sinnoh,125,105,90,Grass,Poison +403,Cranidos,125,40,67,Sinnoh,30,30,58,Rock,DNE +404,Rampardos,165,60,97,Sinnoh,65,50,58,Rock,DNE +405,Shieldon,42,118,30,Sinnoh,42,88,30,Rock,Steel +406,Bastiodon,52,168,60,Sinnoh,47,138,30,Rock,Steel +407,Burmy,29,45,40,Sinnoh,29,45,36,Bug,DNE +408,Wormadam,59,85,60,Sinnoh,79,105,36,Bug,Grass +409,Mothim,94,50,70,Sinnoh,94,50,66,Bug,Flying +410,Combee,30,42,30,Sinnoh,30,42,70,Bug,Flying +411,Vespiquen,80,102,70,Sinnoh,80,102,40,Bug,Flying +412,Pachirisu,45,70,60,Sinnoh,45,90,95,Electric,DNE +413,Buizel,65,35,55,Sinnoh,60,30,85,Water,DNE +414,Floatzel,105,55,85,Sinnoh,85,50,115,Water,DNE +415,Cherubi,35,45,45,Sinnoh,62,53,35,Grass,DNE +416,Cherrim,60,70,70,Sinnoh,87,78,85,Grass,DNE +417,Shellos,48,48,76,Sinnoh,57,62,34,Water,DNE +418,Gastrodon,83,68,111,Sinnoh,92,82,39,Water,Ground +419,Ambipom,100,66,75,Sinnoh,60,66,115,Normal,DNE +420,Drifloon,50,34,90,Sinnoh,60,44,70,Ghost,Flying +421,Drifblim,80,44,150,Sinnoh,90,54,80,Ghost,Flying +422,Buneary,66,44,55,Sinnoh,44,56,85,Normal,DNE +423,Lopunny,76,84,65,Sinnoh,54,96,105,Normal,DNE +424,Mismagius,60,60,60,Sinnoh,105,105,105,Ghost,DNE +425,Honchkrow,125,52,100,Sinnoh,105,52,71,Dark,Flying +426,Glameow,55,42,49,Sinnoh,42,37,85,Normal,DNE +427,Purugly,82,64,71,Sinnoh,64,59,112,Normal,DNE +428,Chingling,30,50,45,Sinnoh,65,50,45,Psychic,DNE +429,Stunky,63,47,63,Sinnoh,41,41,74,Poison,Dark +430,Skuntank,93,67,103,Sinnoh,71,61,84,Poison,Dark +431,Bronzor,24,86,57,Sinnoh,24,86,23,Steel,Psychic +432,Bronzong,89,116,67,Sinnoh,79,116,33,Steel,Psychic +433,Bonsly,80,95,50,Sinnoh,10,45,10,Rock,DNE +434,Happiny,5,5,100,Sinnoh,15,65,30,Normal,DNE +435,Chatot,65,45,76,Sinnoh,92,42,91,Normal,Flying +436,Spiritomb,92,108,50,Sinnoh,92,108,35,Ghost,Dark +437,Gible,70,45,58,Sinnoh,40,45,42,Dragon,Ground +438,Gabite,90,65,68,Sinnoh,50,55,82,Dragon,Ground +439,Garchomp,130,95,108,Sinnoh,80,85,102,Dragon,Ground +440,Munchlax,85,40,135,Sinnoh,40,85,5,Normal,DNE +441,Riolu,70,40,40,Sinnoh,35,40,60,Fighting,DNE +442,Lucario,110,70,70,Sinnoh,115,70,90,Fighting,Steel +443,Hippopotas,72,78,68,Sinnoh,38,42,32,Ground,DNE +444,Hippowdon,112,118,108,Sinnoh,68,72,47,Ground,DNE +445,Skorupi,50,90,40,Sinnoh,30,55,65,Poison,Bug +446,Drapion,90,110,70,Sinnoh,60,75,95,Poison,Dark +447,Croagunk,61,40,48,Sinnoh,61,40,50,Poison,Fighting +448,Toxicroak,106,65,83,Sinnoh,86,65,85,Poison,Fighting +449,Carnivine,100,72,74,Sinnoh,90,72,46,Grass,DNE +450,Finneon,49,56,49,Sinnoh,49,61,66,Water,DNE +451,Lumineon,69,76,69,Sinnoh,69,86,91,Water,DNE +452,Mantyke,20,50,45,Sinnoh,60,120,50,Water,Flying +453,Snover,62,50,60,Sinnoh,62,60,40,Grass,Ice +454,Abomasnow,92,75,90,Sinnoh,92,85,60,Grass,Ice +455,Weavile,120,65,70,Sinnoh,45,85,125,Dark,Ice +456,Magnezone,70,115,70,Sinnoh,130,90,60,Electric,Steel +457,Lickilicky,85,95,110,Sinnoh,80,95,50,Normal,DNE +458,Rhyperior,140,130,115,Sinnoh,55,55,40,Ground,Rock +459,Tangrowth,100,125,100,Sinnoh,110,50,50,Grass,DNE +460,Electivire,123,67,75,Sinnoh,95,85,95,Electric,DNE +461,Magmortar,95,67,75,Sinnoh,125,95,83,Fire,DNE +462,Togekiss,50,95,85,Sinnoh,120,115,80,Fairy,Flying +463,Yanmega,76,86,86,Sinnoh,116,56,95,Bug,Flying +464,Leafeon,110,130,65,Sinnoh,60,65,95,Grass,DNE +465,Glaceon,60,110,65,Sinnoh,130,95,65,Ice,DNE +466,Gliscor,95,125,75,Sinnoh,45,75,95,Ground,Flying +467,Mamoswine,130,80,110,Sinnoh,70,60,80,Ice,Ground +468,Porygon-Z,80,70,85,Sinnoh,135,75,90,Normal,DNE +469,Gallade,125,65,68,Sinnoh,65,115,80,Psychic,Fighting +470,Probopass,55,145,60,Sinnoh,75,150,40,Rock,Steel +471,Dusknoir,100,135,45,Sinnoh,65,135,45,Ghost,DNE +472,Froslass,80,70,70,Sinnoh,80,70,110,Ice,Ghost +473,Rotom,50,77,50,Sinnoh,95,77,91,Electric,Ghost +474,Uxie,75,130,75,Sinnoh,75,130,95,Psychic,DNE +475,Mesprit,105,105,80,Sinnoh,105,105,80,Psychic,DNE +476,Azelf,125,70,75,Sinnoh,125,70,115,Psychic,DNE +477,Dialga,120,120,100,Sinnoh,150,100,90,Steel,Dragon +478,Palkia,120,100,90,Sinnoh,150,120,100,Water,Dragon +479,Heatran,90,106,91,Sinnoh,130,106,77,Fire,Steel +480,Regigigas,160,110,110,Sinnoh,80,110,100,Normal,DNE +481,Giratina,100,120,150,Sinnoh,100,120,90,Ghost,Dragon +482,Cresselia,70,110,120,Sinnoh,75,120,85,Psychic,DNE +483,Phione,80,80,80,Sinnoh,80,80,80,Water,DNE +484,Manaphy,100,100,100,Sinnoh,100,100,100,Water,DNE +485,Darkrai,90,90,70,Sinnoh,135,90,125,Dark,DNE +486,Shaymin,100,100,100,Sinnoh,100,100,100,Grass,DNE +487,Arceus,120,120,120,Sinnoh,120,120,120,Normal,DNE +488,Victini,100,100,100,Unova,100,100,100,Psychic,Fire +489,Snivy,45,55,45,Unova,45,55,63,Grass,DNE +490,Servine,60,75,60,Unova,60,75,83,Grass,DNE +491,Serperior,75,95,75,Unova,75,95,113,Grass,DNE +492,Tepig,63,45,65,Unova,45,45,45,Fire,DNE +493,Pignite,93,55,90,Unova,70,55,55,Fire,Fighting +494,Emboar,123,65,110,Unova,100,65,65,Fire,Fighting +495,Oshawott,55,45,55,Unova,63,45,45,Water,DNE +496,Dewott,75,60,75,Unova,83,60,60,Water,DNE +497,Samurott,100,85,95,Unova,108,70,70,Water,DNE +498,Patrat,55,39,45,Unova,35,39,42,Normal,DNE +499,Watchog,85,69,60,Unova,60,69,77,Normal,DNE +500,Lillipup,60,45,45,Unova,25,45,55,Normal,DNE +501,Herdier,80,65,65,Unova,35,65,60,Normal,DNE +502,Stoutland,110,90,85,Unova,45,90,80,Normal,DNE +503,Purrloin,50,37,41,Unova,50,37,66,Dark,DNE +504,Liepard,88,50,64,Unova,88,50,106,Dark,DNE +505,Pansage,53,48,50,Unova,53,48,64,Grass,DNE +506,Simisage,98,63,75,Unova,98,63,101,Grass,DNE +507,Pansear,53,48,50,Unova,53,48,64,Fire,DNE +508,Simisear,98,63,75,Unova,98,63,101,Fire,DNE +509,Panpour,53,48,50,Unova,53,48,64,Water,DNE +510,Simipour,98,63,75,Unova,98,63,101,Water,DNE +511,Munna,25,45,76,Unova,67,55,24,Psychic,DNE +512,Musharna,55,85,116,Unova,107,95,29,Psychic,DNE +513,Pidove,55,50,50,Unova,36,30,43,Normal,Flying +514,Tranquill,77,62,62,Unova,50,42,65,Normal,Flying +515,Unfezant,115,80,80,Unova,65,55,93,Normal,Flying +516,Blitzle,60,32,45,Unova,50,32,76,Electric,DNE +517,Zebstrika,100,63,75,Unova,80,63,116,Electric,DNE +518,Roggenrola,75,85,55,Unova,25,25,15,Rock,DNE +519,Boldore,105,105,70,Unova,50,40,20,Rock,DNE +520,Gigalith,135,130,85,Unova,60,80,25,Rock,DNE +521,Woobat,45,43,65,Unova,55,43,72,Psychic,Flying +522,Swoobat,57,55,67,Unova,77,55,114,Psychic,Flying +523,Drilbur,85,40,60,Unova,30,45,68,Ground,DNE +524,Excadrill,135,60,110,Unova,50,65,88,Ground,Steel +525,Audino,60,86,103,Unova,60,86,50,Normal,DNE +526,Timburr,80,55,75,Unova,25,35,35,Fighting,DNE +527,Gurdurr,105,85,85,Unova,40,50,40,Fighting,DNE +528,Conkeldurr,140,95,105,Unova,55,65,45,Fighting,DNE +529,Tympole,50,40,50,Unova,50,40,64,Water,DNE +530,Palpitoad,65,55,75,Unova,65,55,69,Water,Ground +531,Seismitoad,95,75,105,Unova,85,75,74,Water,Ground +532,Throh,100,85,120,Unova,30,85,45,Fighting,DNE +533,Sawk,125,75,75,Unova,30,75,85,Fighting,DNE +534,Sewaddle,53,70,45,Unova,40,60,42,Bug,Grass +535,Swadloon,63,90,55,Unova,50,80,42,Bug,Grass +536,Leavanny,103,80,75,Unova,70,80,92,Bug,Grass +537,Venipede,45,59,30,Unova,30,39,57,Bug,Poison +538,Whirlipede,55,99,40,Unova,40,79,47,Bug,Poison +539,Scolipede,100,89,60,Unova,55,69,112,Bug,Poison +540,Cottonee,27,60,40,Unova,37,50,66,Grass,Fairy +541,Whimsicott,67,85,60,Unova,77,75,116,Grass,Fairy +542,Petilil,35,50,45,Unova,70,50,30,Grass,DNE +543,Lilligant,60,75,70,Unova,110,75,90,Grass,DNE +544,Basculin,92,65,70,Unova,80,55,98,Water,DNE +545,Sandile,72,35,50,Unova,35,35,65,Ground,Dark +546,Krokorok,82,45,60,Unova,45,45,74,Ground,Dark +547,Krookodile,117,80,95,Unova,65,70,92,Ground,Dark +548,Darumaka,90,45,70,Unova,15,45,50,Fire,DNE +549,Darmanitan,140,55,105,Unova,30,55,95,Fire,DNE +550,Maractus,86,67,75,Unova,106,67,60,Grass,DNE +551,Dwebble,65,85,50,Unova,35,35,55,Bug,Rock +552,Crustle,105,125,70,Unova,65,75,45,Bug,Rock +553,Scraggy,75,70,50,Unova,35,70,48,Dark,Fighting +554,Scrafty,90,115,65,Unova,45,115,58,Dark,Fighting +555,Sigilyph,58,80,72,Unova,103,80,97,Psychic,Flying +556,Yamask,30,85,38,Unova,55,65,30,Ghost,DNE +557,Cofagrigus,50,145,58,Unova,95,105,30,Ghost,DNE +558,Tirtouga,78,103,54,Unova,53,45,22,Water,Rock +559,Carracosta,108,133,74,Unova,83,65,32,Water,Rock +560,Archen,112,45,55,Unova,74,45,70,Rock,Flying +561,Archeops,140,65,75,Unova,112,65,110,Rock,Flying +562,Trubbish,50,62,50,Unova,40,62,65,Poison,DNE +563,Garbodor,95,82,80,Unova,60,82,75,Poison,DNE +564,Zorua,65,40,40,Unova,80,40,65,Dark,DNE +565,Zoroark,105,60,60,Unova,120,60,105,Dark,DNE +566,Minccino,50,40,55,Unova,40,40,75,Normal,DNE +567,Cinccino,95,60,75,Unova,65,60,115,Normal,DNE +568,Gothita,30,50,45,Unova,55,65,45,Psychic,DNE +569,Gothorita,45,70,60,Unova,75,85,55,Psychic,DNE +570,Gothitelle,55,95,70,Unova,95,110,65,Psychic,DNE +571,Solosis,30,40,45,Unova,105,50,20,Psychic,DNE +572,Duosion,40,50,65,Unova,125,60,30,Psychic,DNE +573,Reuniclus,65,75,110,Unova,125,85,30,Psychic,DNE +574,Ducklett,44,50,62,Unova,44,50,55,Water,Flying +575,Swanna,87,63,75,Unova,87,63,98,Water,Flying +576,Vanillite,50,50,36,Unova,65,60,44,Ice,DNE +577,Vanillish,65,65,51,Unova,80,75,59,Ice,DNE +578,Vanilluxe,95,85,71,Unova,110,95,79,Ice,DNE +579,Deerling,60,50,60,Unova,40,50,75,Normal,Grass +580,Sawsbuck,100,70,80,Unova,60,70,95,Normal,Grass +581,Emolga,75,60,55,Unova,75,60,103,Electric,Flying +582,Karrablast,75,45,50,Unova,40,45,60,Bug,DNE +583,Escavalier,135,105,70,Unova,60,105,20,Bug,Steel +584,Foongus,55,45,69,Unova,55,55,15,Grass,Poison +585,Amoonguss,85,70,114,Unova,85,80,30,Grass,Poison +586,Frillish,40,50,55,Unova,65,85,40,Water,Ghost +587,Jellicent,60,70,100,Unova,85,105,60,Water,Ghost +588,Alomomola,75,80,165,Unova,40,45,65,Water,DNE +589,Joltik,47,50,50,Unova,57,50,65,Bug,Electric +590,Galvantula,77,60,70,Unova,97,60,108,Bug,Electric +591,Ferroseed,50,91,44,Unova,24,86,10,Grass,Steel +592,Ferrothorn,94,131,74,Unova,54,116,20,Grass,Steel +593,Klink,55,70,40,Unova,45,60,30,Steel,DNE +594,Klang,80,95,60,Unova,70,85,50,Steel,DNE +595,Klinklang,100,115,60,Unova,70,85,90,Steel,DNE +596,Tynamo,55,40,35,Unova,45,40,60,Electric,DNE +597,Eelektrik,85,70,65,Unova,75,70,40,Electric,DNE +598,Eelektross,115,80,85,Unova,105,80,50,Electric,DNE +599,Elgyem,55,55,55,Unova,85,55,30,Psychic,DNE +600,Beheeyem,75,75,75,Unova,125,95,40,Psychic,DNE +601,Litwick,30,55,50,Unova,65,55,20,Ghost,Fire +602,Lampent,40,60,60,Unova,95,60,55,Ghost,Fire +603,Chandelure,55,90,60,Unova,145,90,80,Ghost,Fire +604,Axew,87,60,46,Unova,30,40,57,Dragon,DNE +605,Fraxure,117,70,66,Unova,40,50,67,Dragon,DNE +606,Haxorus,147,90,76,Unova,60,70,97,Dragon,DNE +607,Cubchoo,70,40,55,Unova,60,40,40,Ice,DNE +608,Beartic,130,80,95,Unova,70,80,50,Ice,DNE +609,Cryogonal,50,50,80,Unova,95,135,105,Ice,DNE +610,Shelmet,40,85,50,Unova,40,65,25,Bug,DNE +611,Accelgor,70,40,80,Unova,100,60,145,Bug,DNE +612,Stunfisk,66,84,109,Unova,81,99,32,Ground,Electric +613,Mienfoo,85,50,45,Unova,55,50,65,Fighting,DNE +614,Mienshao,125,60,65,Unova,95,60,105,Fighting,DNE +615,Druddigon,120,90,77,Unova,60,90,48,Dragon,DNE +616,Golett,74,50,59,Unova,35,50,35,Ground,Ghost +617,Golurk,124,80,89,Unova,55,80,55,Ground,Ghost +618,Pawniard,85,70,45,Unova,40,40,60,Dark,Steel +619,Bisharp,125,100,65,Unova,60,70,70,Dark,Steel +620,Bouffalant,110,95,95,Unova,40,95,55,Normal,DNE +621,Rufflet,83,50,70,Unova,37,50,60,Normal,Flying +622,Braviary,123,75,100,Unova,57,75,80,Normal,Flying +623,Vullaby,55,75,70,Unova,45,65,60,Dark,Flying +624,Mandibuzz,65,105,110,Unova,55,95,80,Dark,Flying +625,Heatmor,97,66,85,Unova,105,66,65,Fire,DNE +626,Durant,109,112,58,Unova,48,48,109,Bug,Steel +627,Deino,65,50,52,Unova,45,50,38,Dark,Dragon +628,Zweilous,85,70,72,Unova,65,70,58,Dark,Dragon +629,Hydreigon,105,90,92,Unova,125,90,98,Dark,Dragon +630,Larvesta,85,55,55,Unova,50,55,60,Bug,Fire +631,Volcarona,60,65,85,Unova,135,105,100,Bug,Fire +632,Cobalion,90,129,91,Unova,90,72,108,Steel,Fighting +633,Terrakion,129,90,91,Unova,72,90,108,Rock,Fighting +634,Virizion,90,72,91,Unova,90,129,108,Grass,Fighting +635,Tornadus,115,70,79,Unova,125,80,111,Flying,DNE +636,Thundurus,115,70,79,Unova,125,80,111,Electric,Flying +637,Reshiram,120,100,100,Unova,150,120,90,Dragon,Fire +638,Zekrom,150,120,100,Unova,120,100,90,Dragon,Electric +639,Landorus,125,90,89,Unova,115,80,101,Ground,Flying +640,Kyurem,130,90,125,Unova,130,90,95,Dragon,Ice +641,Keldeo,72,90,91,Unova,129,90,108,Water,Fighting +642,Meloetta,77,77,100,Unova,128,128,90,Normal,Psychic +643,Genesect,120,95,71,Unova,120,95,99,Bug,Steel +644,Chespin,61,65,56,Kalos,48,45,38,Grass,DNE +645,Quilladin,78,95,61,Kalos,56,58,57,Grass,DNE +646,Chesnaught,107,122,88,Kalos,74,75,64,Grass,Fighting +647,Fennekin,45,40,40,Kalos,62,60,60,Fire,DNE +648,Braixen,59,58,59,Kalos,90,70,73,Fire,DNE +649,Delphox,69,72,75,Kalos,114,100,104,Fire,Psychic +650,Froakie,56,40,41,Kalos,62,44,71,Water,DNE +651,Frogadier,63,52,54,Kalos,83,56,97,Water,DNE +652,Greninja,95,67,72,Kalos,103,71,122,Water,Dark +653,Bunnelby,36,38,38,Kalos,32,36,57,Normal,DNE +654,Diggersby,56,77,85,Kalos,50,77,78,Normal,Ground +655,Fletchling,50,43,45,Kalos,40,38,62,Normal,Flying +656,Fletchinder,73,55,62,Kalos,56,52,84,Fire,Flying +657,Talonflame,81,71,78,Kalos,74,69,126,Fire,Flying +658,Scatterbug,35,40,38,Kalos,27,25,35,Bug,DNE +659,Spewpa,22,60,45,Kalos,27,30,29,Bug,DNE +660,Vivillon,52,50,80,Kalos,90,50,89,Bug,Flying +661,Litleo,50,58,62,Kalos,73,54,72,Fire,Normal +662,Pyroar,68,72,86,Kalos,109,66,106,Fire,Normal +663,Floette,45,47,54,Kalos,75,98,52,Fairy,DNE +664,Florges,65,68,78,Kalos,112,154,75,Fairy,DNE +665,Skiddo,65,48,66,Kalos,62,57,52,Grass,DNE +666,Gogoat,100,62,123,Kalos,97,81,68,Grass,DNE +667,Pancham,82,62,67,Kalos,46,48,43,Fighting,DNE +668,Pangoro,124,78,95,Kalos,69,71,58,Fighting,Dark +669,Furfrou,80,60,75,Kalos,65,90,102,Normal,DNE +670,Espurr,48,54,62,Kalos,63,60,68,Psychic,DNE +671,Meowstic,48,76,74,Kalos,83,81,104,Psychic,DNE +672,Honedge,80,100,45,Kalos,35,37,28,Steel,Ghost +673,Doublade,110,150,59,Kalos,45,49,35,Steel,Ghost +674,Aegislash,50,140,60,Kalos,50,140,60,Steel,Ghost +675,Spritzee,52,60,78,Kalos,63,65,23,Fairy,DNE +676,Aromatisse,72,72,101,Kalos,99,89,29,Fairy,DNE +677,Swirlix,48,66,62,Kalos,59,57,49,Fairy,DNE +678,Slurpuff,80,86,82,Kalos,85,75,72,Fairy,DNE +679,Inkay,54,53,53,Kalos,37,46,45,Dark,Psychic +680,Malamar,92,88,86,Kalos,68,75,73,Dark,Psychic +681,Binacle,52,67,42,Kalos,39,56,50,Rock,Water +682,Barbaracle,105,115,72,Kalos,54,86,68,Rock,Water +683,Skrelp,60,60,50,Kalos,60,60,30,Poison,Water +684,Dragalge,75,90,65,Kalos,97,123,44,Poison,Dragon +685,Clauncher,53,62,50,Kalos,58,63,44,Water,DNE +686,Clawitzer,73,88,71,Kalos,120,89,59,Water,DNE +687,Helioptile,38,33,44,Kalos,61,43,70,Electric,Normal +688,Heliolisk,55,52,62,Kalos,109,94,109,Electric,Normal +689,Tyrunt,89,77,58,Kalos,45,45,48,Rock,Dragon +690,Tyrantrum,121,119,82,Kalos,69,59,71,Rock,Dragon +691,Amaura,59,50,77,Kalos,67,63,46,Rock,Ice +692,Aurorus,77,72,123,Kalos,99,92,58,Rock,Ice +693,Sylveon,65,65,95,Kalos,110,130,60,Fairy,DNE +694,Hawlucha,92,75,78,Kalos,74,63,118,Fighting,Flying +695,Dedenne,58,57,67,Kalos,81,67,101,Electric,Fairy +696,Carbink,50,150,50,Kalos,50,150,50,Rock,Fairy +697,Goomy,50,35,45,Kalos,55,75,40,Dragon,DNE +698,Sliggoo,75,53,68,Kalos,83,113,60,Dragon,DNE +699,Goodra,100,70,90,Kalos,110,150,80,Dragon,DNE +700,Klefki,80,91,57,Kalos,80,87,75,Steel,Fairy +701,Phantump,70,48,43,Kalos,50,60,38,Ghost,Grass +702,Trevenant,110,76,85,Kalos,65,82,56,Ghost,Grass +703,Pumpkaboo,66,70,49,Kalos,44,55,51,Ghost,Grass +704,Gourgeist,90,122,65,Kalos,58,75,84,Ghost,Grass +705,Bergmite,69,85,55,Kalos,32,35,28,Ice,DNE +706,Avalugg,117,184,95,Kalos,44,46,28,Ice,DNE +707,Noibat,30,35,40,Kalos,45,40,55,Flying,Dragon +708,Noivern,70,80,85,Kalos,97,80,123,Flying,Dragon +709,Xerneas,131,95,126,Kalos,131,98,99,Fairy,DNE +710,Yveltal,131,95,126,Kalos,131,98,99,Dark,Flying +711,Zygarde,100,121,108,Kalos,81,95,95,Dragon,Ground +712,Diancie,100,150,50,Kalos,100,150,50,Rock,Fairy +713,Hoopa,110,60,80,Kalos,150,130,70,Psychic,Ghost +714,Volcanion,110,120,80,Kalos,130,90,70,Fire,Water +715,Rowlet,55,55,68,Alola,50,50,42,Grass,Flying +716,Dartrix,75,75,78,Alola,70,70,52,Grass,Flying +717,Decidueye,107,75,78,Alola,100,100,70,Grass,Ghost +718,Litten,65,40,45,Alola,60,40,70,Fire,DNE +719,Torracat,85,50,65,Alola,80,50,90,Fire,DNE +720,Incineroar,115,90,95,Alola,80,90,60,Fire,Dark +721,Popplio,54,54,50,Alola,66,56,40,Water,DNE +722,Brionne,69,69,60,Alola,91,81,50,Water,DNE +723,Primarina,74,74,80,Alola,126,116,60,Water,Fairy +724,Pikipek,75,30,35,Alola,30,30,65,Normal,Flying +725,Trumbeak,85,50,55,Alola,40,50,75,Normal,Flying +726,Toucannon,120,75,80,Alola,75,75,60,Normal,Flying +727,Yungoos,70,30,48,Alola,30,30,45,Normal,DNE +728,Gumshoos,110,60,88,Alola,55,60,45,Normal,DNE +729,Grubbin,62,45,47,Alola,55,45,46,Bug,DNE +730,Charjabug,82,95,57,Alola,55,75,36,Bug,Electric +731,Vikavolt,70,90,77,Alola,145,75,43,Bug,Electric +732,Crabrawler,82,57,47,Alola,42,47,63,Fighting,DNE +733,Crabominable,132,77,97,Alola,62,67,43,Fighting,Ice +734,Oricorio,70,70,75,Alola,98,70,93,Fire,Flying +735,Cutiefly,45,40,40,Alola,55,40,84,Bug,Fairy +736,Ribombee,55,60,60,Alola,95,70,124,Bug,Fairy +737,Rockruff,65,40,45,Alola,30,40,60,Rock,DNE +738,Lycanroc,115,65,75,Alola,55,65,112,Rock,DNE +739,Wishiwashi,20,20,45,Alola,25,25,40,Water,DNE +740,Mareanie,53,62,50,Alola,43,52,45,Poison,Water +741,Toxapex,63,152,50,Alola,53,142,35,Poison,Water +742,Mudbray,100,70,70,Alola,45,55,45,Ground,DNE +743,Mudsdale,125,100,100,Alola,55,85,35,Ground,DNE +744,Dewpider,40,52,38,Alola,40,72,27,Water,Bug +745,Araquanid,70,92,68,Alola,50,132,42,Water,Bug +746,Fomantis,55,35,40,Alola,50,35,35,Grass,DNE +747,Lurantis,105,90,70,Alola,80,90,45,Grass,DNE +748,Morelull,35,55,40,Alola,65,75,15,Grass,Fairy +749,Shiinotic,45,80,60,Alola,90,100,30,Grass,Fairy +750,Salandit,44,40,48,Alola,71,40,77,Poison,Fire +751,Salazzle,64,60,68,Alola,111,60,117,Poison,Fire +752,Stufful,75,50,70,Alola,45,50,50,Normal,Fighting +753,Bewear,125,80,120,Alola,55,60,60,Normal,Fighting +754,Bounsweet,30,38,42,Alola,30,38,32,Grass,DNE +755,Steenee,40,48,52,Alola,40,48,62,Grass,DNE +756,Tsareena,120,98,72,Alola,50,98,72,Grass,DNE +757,Comfey,52,90,51,Alola,82,110,100,Fairy,DNE +758,Oranguru,60,80,90,Alola,90,110,60,Normal,Psychic +759,Passimian,120,90,100,Alola,40,60,80,Fighting,DNE +760,Wimpod,35,40,25,Alola,20,30,80,Bug,Water +761,Golisopod,125,140,75,Alola,60,90,40,Bug,Water +762,Sandygast,55,80,55,Alola,70,45,15,Ghost,Ground +763,Palossand,75,110,85,Alola,100,75,35,Ghost,Ground +764,Pyukumuku,60,130,55,Alola,30,130,5,Water,DNE +765,Silvally,95,95,95,Alola,95,95,95,Normal,DNE +766,Minior,60,100,60,Alola,60,100,60,Rock,Flying +767,Komala,115,65,65,Alola,75,95,65,Normal,DNE +768,Turtonator,78,135,60,Alola,91,85,36,Fire,Dragon +769,Togedemaru,98,63,65,Alola,40,73,96,Electric,Steel +770,Mimikyu,90,80,55,Alola,50,105,96,Ghost,Fairy +771,Bruxish,105,70,68,Alola,70,70,92,Water,Psychic +772,Drampa,60,85,78,Alola,135,91,36,Normal,Dragon +773,Dhelmise,131,100,70,Alola,86,90,40,Ghost,Grass +774,Jangmo-o,55,65,45,Alola,45,45,45,Dragon,DNE +775,Hakamo-o,75,90,55,Alola,65,70,65,Dragon,Fighting +776,Kommo-o,110,125,75,Alola,100,105,85,Dragon,Fighting +777,Cosmog,29,31,43,Alola,29,31,37,Psychic,DNE +778,Cosmoem,29,131,43,Alola,29,131,37,Psychic,DNE +779,Solgaleo,137,107,137,Alola,113,89,97,Psychic,Steel +780,Lunala,113,89,137,Alola,137,107,97,Psychic,Ghost +781,Nihilego,53,47,109,Alola,127,131,103,Rock,Poison +782,Buzzwole,139,139,107,Alola,53,53,79,Bug,Fighting +783,Pheromosa,137,37,71,Alola,137,37,151,Bug,Fighting +784,Xurkitree,89,71,83,Alola,173,71,83,Electric,DNE +785,Celesteela,101,103,97,Alola,107,101,61,Steel,Flying +786,Kartana,181,131,59,Alola,59,31,109,Grass,Steel +787,Guzzlord,101,53,223,Alola,97,53,43,Dark,Dragon +788,Necrozma,107,101,97,Alola,127,89,79,Psychic,DNE +789,Magearna,95,115,80,Alola,130,115,65,Steel,Fairy +790,Marshadow,125,80,90,Alola,90,90,125,Fighting,Ghost +791,Poipole,73,67,67,Alola,73,67,73,Poison,DNE +792,Naganadel,73,73,73,Alola,127,73,121,Poison,Dragon +793,Stakataka,131,211,61,Alola,53,101,13,Rock,Steel +794,Blacephalon,127,53,53,Alola,151,79,107,Fire,Ghost +795,Zeraora,112,75,88,Alola,102,80,143,Electric,DNE +796,Meltan,65,65,46,Alola,55,35,34,Steel,DNE +797,Melmetal,143,143,135,Alola,80,65,34,Steel,DNE +798,Grookey,65,50,50,Galar,40,40,65,Grass,DNE +799,Thwackey,85,70,70,Galar,55,60,80,Grass,DNE +800,Rillaboom,125,90,100,Galar,60,70,85,Grass,DNE +801,Scorbunny,71,40,50,Galar,40,40,69,Fire,DNE +802,Raboot,86,60,65,Galar,55,60,94,Fire,DNE +803,Cinderace,116,75,80,Galar,65,75,119,Fire,DNE +804,Sobble,40,40,50,Galar,70,40,70,Water,DNE +805,Drizzile,60,55,65,Galar,95,55,90,Water,DNE +806,Inteleon,85,65,70,Galar,125,65,120,Water,DNE +807,Skwovet,55,55,70,Galar,35,35,25,Normal,DNE +808,Greedent,95,95,120,Galar,55,75,20,Normal,DNE +809,Rookidee,47,35,38,Galar,33,35,57,Flying,DNE +810,Corvisquire,67,55,68,Galar,43,55,77,Flying,DNE +811,Corviknight,87,105,98,Galar,53,85,67,Flying,Steel +812,Blipbug,20,20,25,Galar,25,45,45,Bug,DNE +813,Dottler,35,80,50,Galar,50,90,30,Bug,Psychic +814,Orbeetle,45,110,60,Galar,80,120,90,Bug,Psychic +815,Nickit,28,28,40,Galar,47,52,50,Dark,DNE +816,Thievul,58,58,70,Galar,87,92,90,Dark,DNE +817,Gossifleur,40,60,40,Galar,40,60,10,Grass,DNE +818,Eldegoss,50,90,60,Galar,80,120,60,Grass,DNE +819,Wooloo,40,55,42,Galar,40,45,48,Normal,DNE +820,Dubwool,80,100,72,Galar,60,90,88,Normal,DNE +821,Chewtle,64,50,50,Galar,38,38,44,Water,DNE +822,Drednaw,115,90,90,Galar,48,68,74,Water,Rock +823,Yamper,45,50,59,Galar,40,50,26,Electric,DNE +824,Boltund,90,60,69,Galar,90,60,121,Electric,DNE +825,Rolycoly,40,50,30,Galar,40,50,30,Rock,DNE +826,Carkol,60,90,80,Galar,60,70,50,Rock,Fire +827,Coalossal,80,120,110,Galar,80,90,30,Rock,Fire +828,Applin,40,80,40,Galar,40,40,20,Grass,Dragon +829,Flapple,110,80,70,Galar,95,60,70,Grass,Dragon +830,Appletun,85,80,110,Galar,100,80,30,Grass,Dragon +831,Silicobra,57,75,52,Galar,35,50,46,Ground,DNE +832,Sandaconda,107,125,72,Galar,65,70,71,Ground,DNE +833,Cramorant,85,55,70,Galar,85,95,85,Flying,Water +834,Arrokuda,63,40,41,Galar,40,30,66,Water,DNE +835,Barraskewda,123,60,61,Galar,60,50,136,Water,DNE +836,Toxel,38,35,40,Galar,54,35,40,Electric,Poison +837,Toxtricity,98,70,75,Galar,114,70,75,Electric,Poison +838,Sizzlipede,65,45,50,Galar,50,50,45,Fire,Bug +839,Centiskorch,115,65,100,Galar,90,90,65,Fire,Bug +840,Clobbopus,68,60,50,Galar,50,50,32,Fighting,DNE +841,Grapploct,118,90,80,Galar,70,80,42,Fighting,DNE +842,Sinistea,45,45,40,Galar,74,54,50,Ghost,DNE +843,Polteageist,65,65,60,Galar,134,114,70,Ghost,DNE +844,Hatenna,30,45,42,Galar,56,53,39,Psychic,DNE +845,Hattrem,40,65,57,Galar,86,73,49,Psychic,DNE +846,Hatterene,90,95,57,Galar,136,103,29,Psychic,Fairy +847,Impidimp,45,30,45,Galar,55,40,50,Dark,Fairy +848,Morgrem,60,45,65,Galar,75,55,70,Dark,Fairy +849,Grimmsnarl,120,65,95,Galar,95,75,60,Dark,Fairy +850,Obstagoon,90,101,93,Galar,60,81,95,Dark,Normal +851,Perrserker,110,100,70,Galar,50,60,50,Steel,DNE +852,Cursola,95,50,60,Galar,145,130,30,Ghost,DNE +853,Runerigus,95,145,58,Galar,50,105,30,Ground,Ghost +854,Milcery,40,40,45,Galar,50,61,34,Fairy,DNE +855,Alcremie,60,75,65,Galar,110,121,64,Fairy,DNE +856,Falinks,100,100,65,Galar,70,60,75,Fighting,DNE +857,Pincurchin,101,95,48,Galar,91,85,15,Electric,DNE +858,Snom,25,35,30,Galar,45,30,20,Ice,Bug +859,Frosmoth,65,60,70,Galar,125,90,65,Ice,Bug +860,Stonjourner,125,135,100,Galar,20,20,70,Rock,DNE +861,Eiscue,80,110,75,Galar,65,90,50,Ice,DNE +862,Indeedee,65,55,60,Galar,105,95,95,Psychic,Normal +863,Morpeko,95,58,58,Galar,70,58,97,Electric,Dark +864,Cufant,80,49,72,Galar,40,49,40,Steel,DNE +865,Copperajah,130,69,122,Galar,80,69,30,Steel,DNE +866,Dracozolt,100,90,90,Galar,80,70,75,Electric,Dragon +867,Arctozolt,100,90,90,Galar,90,80,55,Electric,Ice +868,Dracovish,90,100,90,Galar,70,80,75,Water,Dragon +869,Arctovish,90,100,90,Galar,80,90,55,Water,Ice +870,Duraludon,95,115,70,Galar,120,50,85,Steel,Dragon +871,Dreepy,60,30,28,Galar,40,30,82,Dragon,Ghost +872,Drakloak,80,50,68,Galar,60,50,102,Dragon,Ghost +873,Dragapult,120,75,88,Galar,100,75,142,Dragon,Ghost +874,Zacian,120,115,92,Galar,80,115,138,Fairy,DNE +875,Zamazenta,120,115,92,Galar,80,115,138,Fighting,DNE +876,Eternatus,85,95,140,Galar,145,95,130,Poison,Dragon +877,Kubfu,90,60,60,Galar,53,50,72,Fighting,DNE +878,Urshifu,130,100,100,Galar,63,60,97,Fighting,Dark +879,Zarude,120,105,105,Galar,70,95,105,Dark,Grass +880,Regieleki,100,50,80,Galar,100,50,200,Electric,DNE +881,Regidrago,100,50,200,Galar,100,50,80,Dragon,DNE +882,Glastrier,145,130,100,Galar,65,110,30,Ice,DNE +883,Spectrier,65,60,100,Galar,145,80,130,Ghost,DNE +884,Calyrex,80,80,100,Galar,80,80,80,Psychic,Grass +885,Wyrdeer,105,72,103,Galar,105,75,65,Normal,Psychic +886,Kleavor,135,95,70,Galar,45,70,85,Bug,Rock +887,Ursaluna,140,105,130,Galar,45,80,50,Ground,Normal +888,Basculegion,112,65,120,Galar,80,75,78,Water,Ghost +889,Sneasler,130,60,80,Galar,40,80,120,Fighting,Poison +890,Overqwil,115,95,85,Galar,65,65,85,Dark,Poison +891,Enamorus,115,70,74,Galar,135,80,106,Fairy,Flying +892,Sprigatito,61,54,40,Paldea,45,45,65,Grass,DNE +893,Floragato,80,63,61,Paldea,60,63,83,Grass,DNE +894,Meowscarada,110,70,76,Paldea,81,70,123,Grass,Dark +895,Fuecoco,45,59,67,Paldea,63,40,36,Fire,DNE +896,Crocalor,55,78,81,Paldea,90,58,49,Fire,DNE +897,Skeledirge,75,100,104,Paldea,110,75,66,Fire,Ghost +898,Quaxly,65,45,55,Paldea,50,45,50,Water,DNE +899,Quaxwell,85,65,70,Paldea,65,60,65,Water,DNE +900,Quaquaval,120,80,85,Paldea,85,75,85,Water,Fighting +901,Lechonk,45,40,54,Paldea,35,45,35,Normal,DNE +902,Oinkologne,100,75,110,Paldea,59,80,65,Normal,DNE +903,Tarountula,41,45,35,Paldea,29,40,20,Bug,DNE +904,Spidops,79,92,60,Paldea,52,86,35,Bug,DNE +905,Nymble,46,40,33,Paldea,21,25,45,Bug,DNE +906,Lokix,102,78,71,Paldea,52,55,92,Bug,Dark +907,Pawmi,50,20,45,Paldea,40,25,60,Electric,DNE +908,Pawmo,75,40,60,Paldea,50,40,85,Electric,Fighting +909,Pawmot,115,70,70,Paldea,70,60,105,Electric,Fighting +910,Tandemaus,50,45,50,Paldea,40,45,75,Normal,DNE +911,Maushold,75,70,74,Paldea,65,75,111,Normal,DNE +912,Fidough,55,70,37,Paldea,30,55,65,Fairy,DNE +913,Dachsbun,80,115,57,Paldea,50,80,95,Fairy,DNE +914,Smoliv,35,45,41,Paldea,58,51,30,Grass,Normal +915,Dolliv,53,60,52,Paldea,78,78,33,Grass,Normal +916,Arboliva,69,90,78,Paldea,125,109,39,Grass,Normal +917,Squawkabilly,96,51,82,Paldea,45,51,92,Normal,Flying +918,Nacli,55,75,55,Paldea,35,35,25,Rock,DNE +919,Naclstack,60,100,60,Paldea,35,65,35,Rock,DNE +920,Garganacl,100,130,100,Paldea,45,90,35,Rock,DNE +921,Charcadet,50,40,40,Paldea,50,40,35,Fire,DNE +922,Armarouge,60,100,85,Paldea,125,80,75,Fire,Psychic +923,Ceruledge,125,80,75,Paldea,60,100,85,Fire,Ghost +924,Tadbulb,31,41,61,Paldea,59,35,45,Electric,DNE +925,Bellibolt,64,91,109,Paldea,103,83,45,Electric,DNE +926,Wattrel,40,35,40,Paldea,55,40,70,Electric,Flying +927,Kilowattrel,70,60,70,Paldea,105,60,125,Electric,Flying +928,Maschiff,78,60,60,Paldea,40,51,51,Dark,DNE +929,Mabosstiff,120,90,80,Paldea,60,70,85,Dark,DNE +930,Shroodle,65,35,40,Paldea,40,35,75,Poison,Normal +931,Grafaiai,95,65,63,Paldea,80,72,110,Poison,Normal +932,Bramblin,65,30,40,Paldea,45,35,60,Grass,Ghost +933,Brambleghast,115,70,55,Paldea,80,70,90,Grass,Ghost +934,Toedscool,40,35,40,Paldea,50,100,70,Ground,Grass +935,Toedscruel,70,65,80,Paldea,80,120,100,Ground,Grass +936,Klawf,100,115,70,Paldea,35,55,75,Rock,DNE +937,Capsakid,62,40,50,Paldea,62,40,50,Grass,DNE +938,Scovillain,108,65,65,Paldea,108,65,75,Grass,Fire +939,Rellor,50,60,41,Paldea,31,58,30,Bug,DNE +940,Rabsca,50,85,75,Paldea,115,100,45,Bug,Psychic +941,Flittle,35,30,30,Paldea,55,30,75,Psychic,DNE +942,Espathra,60,60,95,Paldea,101,60,105,Psychic,DNE +943,Tinkatink,45,45,50,Paldea,35,64,58,Fairy,Steel +944,Tinkatuff,55,55,65,Paldea,45,82,78,Fairy,Steel +945,Tinkaton,75,77,85,Paldea,70,105,94,Fairy,Steel +946,Wiglett,55,25,10,Paldea,35,25,95,Water,DNE +947,Wugtrio,100,50,35,Paldea,50,70,120,Water,DNE +948,Bombirdier,103,85,70,Paldea,60,85,82,Flying,Dark +949,Finizen,45,40,70,Paldea,45,40,75,Water,DNE +950,Palafin,70,72,100,Paldea,53,62,100,Water,DNE +951,Varoom,70,63,45,Paldea,30,45,47,Steel,Poison +952,Revavroom,119,90,80,Paldea,54,67,90,Steel,Poison +953,Cyclizar,95,65,70,Paldea,85,65,121,Dragon,Normal +954,Orthworm,85,145,70,Paldea,60,55,65,Steel,DNE +955,Glimmet,35,42,48,Paldea,105,60,60,Rock,Poison +956,Glimmora,55,90,83,Paldea,130,81,86,Rock,Poison +957,Greavard,61,60,50,Paldea,30,55,34,Ghost,DNE +958,Houndstone,101,100,72,Paldea,50,97,68,Ghost,DNE +959,Flamigo,115,74,82,Paldea,75,64,90,Flying,Fighting +960,Cetoddle,68,45,108,Paldea,30,40,43,Ice,DNE +961,Cetitan,113,65,170,Paldea,45,55,73,Ice,DNE +962,Veluza,102,73,90,Paldea,78,65,70,Water,Psychic +963,Dondozo,100,115,150,Paldea,65,65,35,Water,DNE +964,Tatsugiri,50,60,68,Paldea,120,95,82,Dragon,Water +965,Annihilape,115,80,110,Paldea,50,90,90,Fighting,Ghost +966,Clodsire,75,60,130,Paldea,45,100,20,Poison,Ground +967,Farigiraf,90,70,120,Paldea,110,70,60,Normal,Psychic +968,Dudunsparce,100,80,125,Paldea,85,75,55,Normal,DNE +969,Kingambit,135,120,100,Paldea,60,85,50,Dark,Steel +970,Frigibax,75,45,65,Paldea,35,45,55,Dragon,Ice +971,Arctibax,95,66,90,Paldea,45,65,62,Dragon,Ice +972,Baxcalibur,145,92,115,Paldea,75,86,87,Dragon,Ice +973,Gimmighoul,30,70,45,Paldea,75,70,10,Ghost,DNE +974,Gholdengo,60,95,87,Paldea,133,91,84,Steel,Ghost +975,Wo-Chien,85,100,85,Paldea,95,135,70,Dark,Grass +976,Chien-Pao,120,80,80,Paldea,90,65,135,Dark,Ice +977,Ting-Lu,110,125,155,Paldea,55,80,45,Dark,Ground +978,Chi-Yu,80,80,55,Paldea,135,120,100,Dark,Fire +979,Koraidon,135,115,100,Paldea,85,100,135,Fighting,Dragon +980,Miraidon,85,100,100,Paldea,135,115,135,Electric,Dragon diff --git a/p4/project.py b/p4/project.py new file mode 100644 index 0000000000000000000000000000000000000000..9049467939630c4f655b528b893019bce3d57748 --- /dev/null +++ b/p4/project.py @@ -0,0 +1,85 @@ +__pokemon__= {} +__effectiveness__ = {} + +def __init__(): + """This function loads the data from 'pokemon_stats.csv' and 'type_effectiveness_stats.csv'. This function runs automatically, when the module is imported""" + import csv + f = open('pokemon_stats.csv', encoding='utf-8') + raw_pkmn_data = list(csv.reader(f)) + f.close() + pkmn_header = raw_pkmn_data[0] + pkmn_header.pop(0) + raw_pkmn_data = raw_pkmn_data[1:] + for pkmn_data in raw_pkmn_data: + pkmn_data.pop(0) + pkmn = {} + for i in range(len(pkmn_header)): + pkmn[pkmn_header[i]] = pkmn_data[i] + for stat in pkmn: + if stat in ['HP', 'Attack', 'Defense', 'Sp. Atk', 'Sp. Def', 'Speed']: + pkmn[stat] = int(pkmn[stat]) + __pokemon__[pkmn["Name"]] = pkmn + + f = open('type_effectiveness_stats.csv', encoding='utf-8') + raw_type_data = list(csv.reader(f)) + f.close() + type_header = raw_type_data[0] + raw_type_data = raw_type_data[1:] + for type1 in type_header[1:]: + __effectiveness__[type1] = {} + for row in raw_type_data: + type2 = row[0] + for i in range(1, len(row)): + type1 = type_header[i] + __effectiveness__[type1][type2] = float(row[i]) + +def print_stats(pkmn): + """print_stats(pkmn) prints all the statistics of the Pokémon with the name 'pkmn' """ + try: + for stat in __pokemon__[pkmn]: + if not (stat == 'Type 2' and __pokemon__[pkmn][stat] == "DNE"): + print(stat, ": ", __pokemon__[pkmn][stat]) + except KeyError: + print(pkmn, " not found in the file") + +def get_region(pkmn): + """get_region(pkmn) returns the region of the Pokémon with the name 'pkmn' """ + return __pokemon__[pkmn]['Region'] + +def get_type1(pkmn): + """get_type1(pkmn) returns Type 1 of the Pokémon with the name 'pkmn' """ + return __pokemon__[pkmn]['Type 1'] + +def get_type2(pkmn): + """get_type2(pkmn) returns Type 2 of the Pokémon with the name 'pkmn' """ + return __pokemon__[pkmn]['Type 2'] + +def get_hp(pkmn): + """get_hp(pkmn) returns the HP of the Pokémon with the name 'pkmn' """ + return __pokemon__[pkmn]['HP'] + +def get_attack(pkmn): + """get_attack(pkmn) returns the Attack of the Pokémon with the name 'pkmn' """ + return __pokemon__[pkmn]['Attack'] + +def get_defense(pkmn): + """get_defense(pkmn) returns the Defense of the Pokémon with the name 'pkmn' """ + return __pokemon__[pkmn]['Defense'] + +def get_sp_atk(pkmn): + """get_sp_atk(pkmn) returns the Special Attack of the Pokémon with the name 'pkmn' """ + return __pokemon__[pkmn]['Sp. Atk'] + +def get_sp_def(pkmn): + """get_sp_def(pkmn) returns the Special Defense of the Pokémon with the name 'pkmn' """ + return __pokemon__[pkmn]['Sp. Def'] + +def get_speed(pkmn): + """get_speed(pkmn) returns the Speed of the Pokémon with the name 'pkmn' """ + return __pokemon__[pkmn]['Speed'] + +def get_type_effectiveness(attacker_type, defender_type): + """get_type_effectiveness(attacker_type, defender_type) returns the effectiveness of attacker's type against defender's type""" + return __effectiveness__[attacker_type][defender_type] + +__init__() diff --git a/p4/public_tests.py b/p4/public_tests.py new file mode 100644 index 0000000000000000000000000000000000000000..4fcdd537fc3fe026f2d7c0097c2946827c59317f --- /dev/null +++ b/p4/public_tests.py @@ -0,0 +1,808 @@ +#!/usr/bin/python +# + +import os, json, math, copy +from collections import namedtuple +from bs4 import BeautifulSoup + +HIDDEN_FILE = os.path.join("hidden", "hidden_tests.py") +if os.path.exists(HIDDEN_FILE): + import hidden.hidden_tests as hidn +# - + +MAX_FILE_SIZE = 750 # units - KB +REL_TOL = 6e-04 # relative tolerance for floats +ABS_TOL = 15e-03 # absolute tolerance for floats +TOTAL_SCORE = 100 # total score for the project + +DF_FILE = 'expected_dfs.html' +PLOT_FILE = 'expected_plots.json' + +PASS = "All test cases passed!" + +TEXT_FORMAT = "TEXT_FORMAT" # question type when expected answer is a type, str, int, float, or bool +TEXT_FORMAT_UNORDERED_LIST = "TEXT_FORMAT_UNORDERED_LIST" # question type when the expected answer is a list or a set where the order does *not* matter +TEXT_FORMAT_ORDERED_LIST = "TEXT_FORMAT_ORDERED_LIST" # question type when the expected answer is a list or tuple where the order does matter +TEXT_FORMAT_DICT = "TEXT_FORMAT_DICT" # question type when the expected answer is a dictionary +TEXT_FORMAT_SPECIAL_ORDERED_LIST = "TEXT_FORMAT_SPECIAL_ORDERED_LIST" # question type when the expected answer is a list where order does matter, but with possible ties. Elements are ordered according to values in special_ordered_json (with ties allowed) +TEXT_FORMAT_NAMEDTUPLE = "TEXT_FORMAT_NAMEDTUPLE" # question type when expected answer is a namedtuple +PNG_FORMAT_SCATTER = "PNG_FORMAT_SCATTER" # question type when the expected answer is a scatter plot +HTML_FORMAT = "HTML_FORMAT" # question type when the expected answer is a DataFrame +FILE_JSON_FORMAT = "FILE_JSON_FORMAT" # question type when the expected answer is a JSON file +SLASHES = " SLASHES" # question SUFFIX when expected answer contains paths with slashes + +def get_expected_format(): + """get_expected_format() returns a dict mapping each question to the format + of the expected answer.""" + expected_format = {'q1': 'TEXT_FORMAT', + 'q2': 'TEXT_FORMAT', + 'q3': 'TEXT_FORMAT', + 'q4': 'TEXT_FORMAT', + 'q5': 'TEXT_FORMAT', + 'q6': 'TEXT_FORMAT', + 'q7': 'TEXT_FORMAT', + 'q8': 'TEXT_FORMAT', + 'q9': 'TEXT_FORMAT', + 'q10': 'TEXT_FORMAT', + 'q11': 'TEXT_FORMAT', + 'q12': 'TEXT_FORMAT', + 'q13': 'TEXT_FORMAT', + 'q14': 'TEXT_FORMAT', + 'q15': 'TEXT_FORMAT', + 'q16': 'TEXT_FORMAT', + 'q17': 'TEXT_FORMAT', + 'q18': 'TEXT_FORMAT', + 'q19': 'TEXT_FORMAT', + 'q20': 'TEXT_FORMAT'} + return expected_format + + +def get_expected_json(): + """get_expected_json() returns a dict mapping each question to the expected + answer (if the format permits it).""" + expected_json = {'q1': 9.375, + 'q2': 20.90909090909091, + 'q3': 4.0, + 'q4': 0.5, + 'q5': 5.636363636363637, + 'q6': 13.68421052631579, + 'q7': 68.71794871794872, + 'q8': 9, + 'q9': 5, + 'q10': 'infinitely many', + 'q11': 'Infernape', + 'q12': 'Sylveon', + 'q13': 'Terrakion', + 'q14': 'Draw', + 'q15': 'Draw', + 'q16': 'Dragapult', + 'q17': 3, + 'q18': 2, + 'q19': 5, + 'q20': 0} + return expected_json + + +def get_special_json(): + """get_special_json() returns a dict mapping each question to the expected + answer stored in a special format as a list of tuples. Each tuple contains + the element expected in the list, and its corresponding value. Any two + elements with the same value can appear in any order in the actual list, + but if two elements have different values, then they must appear in the + same order as in the expected list of tuples.""" + special_json = {} + return special_json + + +def compare(expected, actual, q_format=TEXT_FORMAT): + """compare(expected, actual) is used to compare when the format of + the expected answer is known for certain.""" + try: + if q_format == TEXT_FORMAT: + return simple_compare(expected, actual) + elif q_format == TEXT_FORMAT_UNORDERED_LIST: + return list_compare_unordered(expected, actual) + elif q_format == TEXT_FORMAT_ORDERED_LIST: + return list_compare_ordered(expected, actual) + elif q_format == TEXT_FORMAT_DICT: + return dict_compare(expected, actual) + elif q_format == TEXT_FORMAT_SPECIAL_ORDERED_LIST: + return list_compare_special(expected, actual) + elif q_format == TEXT_FORMAT_NAMEDTUPLE: + return namedtuple_compare(expected, actual) + elif q_format == PNG_FORMAT_SCATTER: + return compare_flip_dicts(expected, actual) + elif q_format == HTML_FORMAT: + return compare_cell_html(expected, actual) + elif q_format == FILE_JSON_FORMAT: + return compare_json(expected, actual) + else: + if expected != actual: + return "expected %s but found %s " % (repr(expected), repr(actual)) + except: + if expected != actual: + return "expected %s" % (repr(expected)) + return PASS + + +def print_message(expected, actual, complete_msg=True): + """print_message(expected, actual) displays a simple error message.""" + msg = "expected %s" % (repr(expected)) + if complete_msg: + msg = msg + " but found %s" % (repr(actual)) + return msg + + +def simple_compare(expected, actual, complete_msg=True): + """simple_compare(expected, actual) is used to compare when the expected answer + is a type/Nones/str/int/float/bool. When the expected answer is a float, + the actual answer is allowed to be within the tolerance limit. Otherwise, + the values must match exactly, or a very simple error message is displayed.""" + msg = PASS + if 'numpy' in repr(type((actual))): + actual = actual.item() + if isinstance(expected, type): + if expected != actual: + if isinstance(actual, type): + msg = "expected %s but found %s" % (expected.__name__, actual.__name__) + else: + msg = "expected %s but found %s" % (expected.__name__, repr(actual)) + elif not isinstance(actual, type(expected)) and not (isinstance(expected, (float, int)) and isinstance(actual, (float, int))): + msg = "expected to find type %s but found type %s" % (type(expected).__name__, type(actual).__name__) + elif isinstance(expected, float): + if not math.isclose(actual, expected, rel_tol=REL_TOL, abs_tol=ABS_TOL): + msg = print_message(expected, actual, complete_msg) + elif isinstance(expected, (list, tuple)) or is_namedtuple(expected): + new_msg = print_message(expected, actual, complete_msg) + if len(expected) != len(actual): + return new_msg + for i in range(len(expected)): + val = simple_compare(expected[i], actual[i]) + if val != PASS: + return new_msg + elif isinstance(expected, dict): + new_msg = print_message(expected, actual, complete_msg) + if len(expected) != len(actual): + return new_msg + val = simple_compare(list(expected.keys()), list(actual.keys())) + if val != PASS: + return new_msg + for key in expected: + val = simple_compare(expected[key], actual[key]) + if val != PASS: + return new_msg + else: + if expected != actual: + msg = print_message(expected, actual, complete_msg) + return msg + + +def intelligent_compare(expected, actual, obj=None): + """intelligent_compare(expected, actual) is used to compare when the + data type of the expected answer is not known for certain, and default + assumptions need to be made.""" + if obj == None: + obj = type(expected).__name__ + if is_namedtuple(expected): + msg = namedtuple_compare(expected, actual) + elif isinstance(expected, (list, tuple)): + msg = list_compare_ordered(expected, actual, obj) + elif isinstance(expected, set): + msg = list_compare_unordered(expected, actual, obj) + elif isinstance(expected, (dict)): + msg = dict_compare(expected, actual) + else: + msg = simple_compare(expected, actual) + msg = msg.replace("CompDict", "dict").replace("CompSet", "set").replace("NewNone", "None") + return msg + + +def is_namedtuple(obj, init_check=True): + """is_namedtuple(obj) returns True if `obj` is a namedtuple object + defined in the test file.""" + bases = type(obj).__bases__ + if len(bases) != 1 or bases[0] != tuple: + return False + fields = getattr(type(obj), '_fields', None) + if not isinstance(fields, tuple): + return False + if init_check and not type(obj).__name__ in [nt.__name__ for nt in _expected_namedtuples]: + return False + return True + + +def list_compare_ordered(expected, actual, obj=None): + """list_compare_ordered(expected, actual) is used to compare when the + expected answer is a list/tuple, where the order of the elements matters.""" + msg = PASS + if not isinstance(actual, type(expected)): + msg = "expected to find type %s but found type %s" % (type(expected).__name__, type(actual).__name__) + return msg + if obj == None: + obj = type(expected).__name__ + for i in range(len(expected)): + if i >= len(actual): + msg = "at index %d of the %s, expected missing %s" % (i, obj, repr(expected[i])) + break + val = intelligent_compare(expected[i], actual[i], "sub" + obj) + if val != PASS: + msg = "at index %d of the %s, " % (i, obj) + val + break + if len(actual) > len(expected) and msg == PASS: + msg = "at index %d of the %s, found unexpected %s" % (len(expected), obj, repr(actual[len(expected)])) + if len(expected) != len(actual): + msg = msg + " (found %d entries in %s, but expected %d)" % (len(actual), obj, len(expected)) + + if len(expected) > 0: + try: + if msg != PASS and list_compare_unordered(expected, actual, obj) == PASS: + msg = msg + " (%s may not be ordered as required)" % (obj) + except: + pass + return msg + + +def list_compare_helper(larger, smaller): + """list_compare_helper(larger, smaller) is a helper function which takes in + two lists of possibly unequal sizes and finds the item that is not present + in the smaller list, if there is such an element.""" + msg = PASS + j = 0 + for i in range(len(larger)): + if i == len(smaller): + msg = "expected %s" % (repr(larger[i])) + break + found = False + while not found: + if j == len(smaller): + val = simple_compare(larger[i], smaller[j - 1], complete_msg=False) + break + val = simple_compare(larger[i], smaller[j], complete_msg=False) + j += 1 + if val == PASS: + found = True + break + if not found: + msg = val + break + return msg + +class NewNone(): + """alternate class in place of None, which allows for comparison with + all other data types.""" + def __str__(self): + return 'None' + def __repr__(self): + return 'None' + def __lt__(self, other): + return True + def __le__(self, other): + return True + def __gt__(self, other): + return False + def __ge__(self, other): + return other == None + def __eq__(self, other): + return other == None + def __ne__(self, other): + return other != None + +class CompDict(dict): + """subclass of dict, which allows for comparison with other dicts.""" + def __init__(self, vals): + super(self.__class__, self).__init__(vals) + if type(vals) == CompDict: + self.val = vals.val + elif isinstance(vals, dict): + self.val = self.get_equiv(vals) + else: + raise TypeError("'%s' object cannot be type casted to CompDict class" % type(vals).__name__) + + def get_equiv(self, vals): + val = [] + for key in sorted(list(vals.keys())): + val.append((key, vals[key])) + return val + + def __str__(self): + return str(dict(self.val)) + def __repr__(self): + return repr(dict(self.val)) + def __lt__(self, other): + return self.val < CompDict(other).val + def __le__(self, other): + return self.val <= CompDict(other).val + def __gt__(self, other): + return self.val > CompDict(other).val + def __ge__(self, other): + return self.val >= CompDict(other).val + def __eq__(self, other): + return self.val == CompDict(other).val + def __ne__(self, other): + return self.val != CompDict(other).val + +class CompSet(set): + """subclass of set, which allows for comparison with other sets.""" + def __init__(self, vals): + super(self.__class__, self).__init__(vals) + if type(vals) == CompSet: + self.val = vals.val + elif isinstance(vals, set): + self.val = self.get_equiv(vals) + else: + raise TypeError("'%s' object cannot be type casted to CompSet class" % type(vals).__name__) + + def get_equiv(self, vals): + return sorted(list(vals)) + + def __str__(self): + return str(set(self.val)) + def __repr__(self): + return repr(set(self.val)) + def __getitem__(self, index): + return self.val[index] + def __lt__(self, other): + return self.val < CompSet(other).val + def __le__(self, other): + return self.val <= CompSet(other).val + def __gt__(self, other): + return self.val > CompSet(other).val + def __ge__(self, other): + return self.val >= CompSet(other).val + def __eq__(self, other): + return self.val == CompSet(other).val + def __ne__(self, other): + return self.val != CompSet(other).val + +def make_sortable(item): + """make_sortable(item) replaces all Nones in `item` with an alternate + class that allows for comparison with str/int/float/bool/list/set/tuple/dict. + It also replaces all dicts (and sets) with a subclass that allows for + comparison with other dicts (and sets).""" + if item == None: + return NewNone() + elif isinstance(item, (type, str, int, float, bool)): + return item + elif isinstance(item, (list, set, tuple)): + new_item = [] + for subitem in item: + new_item.append(make_sortable(subitem)) + if is_namedtuple(item): + return type(item)(*new_item) + elif isinstance(item, set): + return CompSet(new_item) + else: + return type(item)(new_item) + elif isinstance(item, dict): + new_item = {} + for key in item: + new_item[key] = make_sortable(item[key]) + return CompDict(new_item) + return item + +def list_compare_unordered(expected, actual, obj=None): + """list_compare_unordered(expected, actual) is used to compare when the + expected answer is a list/set where the order of the elements does not matter.""" + msg = PASS + if not isinstance(actual, type(expected)): + msg = "expected to find type %s but found type %s" % (type(expected).__name__, type(actual).__name__) + return msg + if obj == None: + obj = type(expected).__name__ + + try: + sort_expected = sorted(make_sortable(expected)) + sort_actual = sorted(make_sortable(actual)) + except: + return "unexpected datatype found in %s; expected entries of type %s" % (obj, obj, type(expected[0]).__name__) + + if len(actual) == 0 and len(expected) > 0: + msg = "in the %s, missing" % (obj) + sort_expected[0] + elif len(actual) > 0 and len(expected) > 0: + val = intelligent_compare(sort_expected[0], sort_actual[0]) + if val.startswith("expected to find type"): + msg = "in the %s, " % (obj) + simple_compare(sort_expected[0], sort_actual[0]) + else: + if len(expected) > len(actual): + msg = "in the %s, missing " % (obj) + list_compare_helper(sort_expected, sort_actual) + elif len(expected) < len(actual): + msg = "in the %s, found un" % (obj) + list_compare_helper(sort_actual, sort_expected) + if len(expected) != len(actual): + msg = msg + " (found %d entries in %s, but expected %d)" % (len(actual), obj, len(expected)) + return msg + else: + val = list_compare_helper(sort_expected, sort_actual) + if val != PASS: + msg = "in the %s, missing " % (obj) + val + ", but found un" + list_compare_helper(sort_actual, + sort_expected) + return msg + + +def namedtuple_compare(expected, actual): + """namedtuple_compare(expected, actual) is used to compare when the + expected answer is a namedtuple defined in the test file.""" + msg = PASS + if is_namedtuple(actual, False): + msg = "expected namedtuple but found %s" % (type(actual).__name__) + return msg + if type(expected).__name__ != type(actual).__name__: + return "expected namedtuple %s but found namedtuple %s" % (type(expected).__name__, type(actual).__name__) + expected_fields = expected._fields + actual_fields = actual._fields + msg = list_compare_ordered(list(expected_fields), list(actual_fields), "namedtuple attributes") + if msg != PASS: + return msg + for field in expected_fields: + val = intelligent_compare(getattr(expected, field), getattr(actual, field)) + if val != PASS: + msg = "at attribute %s of namedtuple %s, " % (field, type(expected).__name__) + val + return msg + return msg + + +def clean_slashes(item): + """clean_slashes()""" + if isinstance(item, str): + return item.replace("\\", "/").replace("/", os.path.sep) + elif item == None or isinstance(item, (type, int, float, bool)): + return item + elif isinstance(item, (list, tuple, set)) or is_namedtuple(item): + new_item = [] + for subitem in item: + new_item.append(clean_slashes(subitem)) + if is_namedtuple(item): + return type(item)(*new_item) + else: + return type(item)(new_item) + elif isinstance(item, dict): + new_item = {} + for key in item: + new_item[clean_slashes(key)] = clean_slashes(item[key]) + return item + + +def list_compare_special_initialize(special_expected): + """list_compare_special_initialize(special_expected) takes in the special + ordering stored as a sorted list of items, and returns a list of lists + where the ordering among the inner lists does not matter.""" + latest_val = None + clean_special = [] + for row in special_expected: + if latest_val == None or row[1] != latest_val: + clean_special.append([]) + latest_val = row[1] + clean_special[-1].append(row[0]) + return clean_special + + +def list_compare_special(special_expected, actual): + """list_compare_special(special_expected, actual) is used to compare when the + expected answer is a list with special ordering defined in `special_expected`.""" + msg = PASS + expected_list = [] + special_order = list_compare_special_initialize(special_expected) + for expected_item in special_order: + expected_list.extend(expected_item) + val = list_compare_unordered(expected_list, actual) + if val != PASS: + return val + i = 0 + for expected_item in special_order: + j = len(expected_item) + actual_item = actual[i: i + j] + val = list_compare_unordered(expected_item, actual_item) + if val != PASS: + if j == 1: + msg = "at index %d " % (i) + val + else: + msg = "between indices %d and %d " % (i, i + j - 1) + val + msg = msg + " (list may not be ordered as required)" + break + i += j + return msg + + +def dict_compare(expected, actual, obj=None): + """dict_compare(expected, actual) is used to compare when the expected answer + is a dict.""" + msg = PASS + if not isinstance(actual, type(expected)): + msg = "expected to find type %s but found type %s" % (type(expected).__name__, type(actual).__name__) + return msg + if obj == None: + obj = type(expected).__name__ + + expected_keys = list(expected.keys()) + actual_keys = list(actual.keys()) + val = list_compare_unordered(expected_keys, actual_keys, obj) + + if val != PASS: + msg = "bad keys in %s: " % (obj) + val + if msg == PASS: + for key in expected: + new_obj = None + if isinstance(expected[key], (list, tuple, set)): + new_obj = 'value' + elif isinstance(expected[key], dict): + new_obj = 'sub' + obj + val = intelligent_compare(expected[key], actual[key], new_obj) + if val != PASS: + msg = "incorrect value for key %s in %s: " % (repr(key), obj) + val + return msg + + +def is_flippable(item): + """is_flippable(item) determines if the given dict of lists has lists of the + same length and is therefore flippable.""" + item_lens = set(([str(len(item[key])) for key in item])) + if len(item_lens) == 1: + return PASS + else: + return "found lists of lengths %s" % (", ".join(list(item_lens))) + +def flip_dict_of_lists(item): + """flip_dict_of_lists(item) flips a dict of lists into a list of dicts if the + lists are of same length.""" + new_item = [] + length = len(list(item.values())[0]) + for i in range(length): + new_dict = {} + for key in item: + new_dict[key] = item[key][i] + new_item.append(new_dict) + return new_item + +def compare_flip_dicts(expected, actual, obj="lists"): + """compare_flip_dicts(expected, actual) flips a dict of lists (or dicts) into + a list of dicts (or dict of dicts) and then compares the list ignoring order.""" + msg = PASS + example_item = list(expected.values())[0] + if isinstance(example_item, (list, tuple)): + val = is_flippable(actual) + if val != PASS: + msg = "expected to find lists of length %d, but " % (len(example_item)) + val + return msg + msg = list_compare_unordered(flip_dict_of_lists(expected), flip_dict_of_lists(actual), "lists") + elif isinstance(example_item, dict): + expected_keys = list(example_item.keys()) + for key in actual: + val = list_compare_unordered(expected_keys, list(actual[key].keys()), "dictionary %s" % key) + if val != PASS: + return val + for cat_key in expected_keys: + expected_category = {} + actual_category = {} + for key in expected: + expected_category[key] = expected[key][cat_key] + actual_category[key] = actual[key][cat_key] + val = list_compare_unordered(flip_dict_of_lists(expected), flip_dict_of_lists(actual), "category " + repr(cat_key)) + if val != PASS: + return val + return msg + + +def get_expected_tables(): + """get_expected_tables() reads the html file with the expected DataFrames + and returns a dict mapping each question to a html table.""" + if not os.path.exists(DF_FILE): + return None + + expected_tables = {} + f = open(DF_FILE, encoding='utf-8') + soup = BeautifulSoup(f.read(), 'html.parser') + f.close() + + tables = soup.find_all('table') + for table in tables: + expected_tables[table.get("data-question")] = table + + return expected_tables + +def parse_df_html_table(table): + """parse_df_html_table(table) takes in a table as a html string and returns + a dict mapping each row and column index to the value at that position.""" + rows = [] + for tr in table.find_all('tr'): + rows.append([]) + for cell in tr.find_all(['td', 'th']): + rows[-1].append(cell.get_text().strip("\n ")) + + cells = {} + for r in range(1, len(rows)): + for c in range(1, len(rows[0])): + rname = rows[r][0] + cname = rows[0][c] + cells[(rname,cname)] = rows[r][c] + return cells + + +def get_expected_namedtuples(): + """get_expected_namedtuples() defines the required namedtuple objects + globally. It also returns a tuple of the classes.""" + expected_namedtuples = [] + + return tuple(expected_namedtuples) + +_expected_namedtuples = get_expected_namedtuples() + + +def compare_cell_html(expected, actual): + """compare_cell_html(expected, actual) is used to compare when the + expected answer is a DataFrame stored in the `expected_dfs` html file.""" + expected_cells = parse_df_html_table(expected) + try: + actual_cells = parse_df_html_table(BeautifulSoup(actual, 'html.parser').find('table')) + except Exception as e: + return "expected to find type DataFrame but found type %s instead" % type(actual).__name__ + + expected_cols = list(set(["column %s" % (loc[1]) for loc in expected_cells])) + actual_cols = list(set(["column %s" % (loc[1]) for loc in actual_cells])) + msg = list_compare_unordered(expected_cols, actual_cols, "DataFrame") + if msg != PASS: + return msg + + expected_rows = list(set(["row index %s" % (loc[0]) for loc in expected_cells])) + actual_rows = list(set(["row index %s" % (loc[0]) for loc in actual_cells])) + msg = list_compare_unordered(expected_rows, actual_rows, "DataFrame") + if msg != PASS: + return msg + + for location, expected in expected_cells.items(): + location_name = "column {} at index {}".format(location[1], location[0]) + actual = actual_cells.get(location, None) + if actual == None: + return "in %s, expected to find %s" % (location_name, repr(expected)) + try: + actual_ans = float(actual) + expected_ans = float(expected) + if math.isnan(actual_ans) and math.isnan(expected_ans): + continue + except Exception as e: + actual_ans, expected_ans = actual, expected + msg = simple_compare(expected_ans, actual_ans) + if msg != PASS: + return "in %s, " % location_name + msg + return PASS + + +def get_expected_plots(): + """get_expected_plots() reads the json file with the expected plot data + and returns a dict mapping each question to a dictionary with the plots data.""" + if not os.path.exists(PLOT_FILE): + return None + + f = open(PLOT_FILE, encoding='utf-8') + expected_plots = json.load(f) + f.close() + return expected_plots + + +def compare_file_json(expected, actual): + """compare_file_json(expected, actual) is used to compare when the + expected answer is a JSON file.""" + msg = PASS + if not os.path.isfile(expected): + return "file %s not found; make sure it is downloaded and stored in the correct directory" % (expected) + elif not os.path.isfile(actual): + return "file %s not found; make sure that you have created the file with the correct name" % (actual) + try: + e = open(expected, encoding='utf-8') + expected_data = json.load(e) + e.close() + except json.JSONDecodeError: + return "file %s is broken and cannot be parsed; please delete and redownload the file correctly" % (expected) + try: + a = open(actual, encoding='utf-8') + actual_data = json.load(a) + a.close() + except json.JSONDecodeError: + return "file %s is broken and cannot be parsed" % (actual) + if type(expected_data) == list: + msg = list_compare_ordered(expected_data, actual_data, 'file ' + actual) + elif type(expected_data) == dict: + msg = dict_compare(expected_data, actual_data) + return msg + + +_expected_json = get_expected_json() +_special_json = get_special_json() +_expected_plots = get_expected_plots() +_expected_tables = get_expected_tables() +_expected_format = get_expected_format() + +def check(qnum, actual): + """check(qnum, actual) is used to check if the answer in the notebook is + the correct answer, and provide useful feedback if the answer is incorrect.""" + msg = PASS + error_msg = "<b style='color: red;'>ERROR:</b> " + q_format = _expected_format[qnum] + + if q_format == TEXT_FORMAT_SPECIAL_ORDERED_LIST: + expected = _special_json[qnum] + elif q_format == PNG_FORMAT_SCATTER: + if _expected_plots == None: + msg = error_msg + "file %s not parsed; make sure it is downloaded and stored in the correct directory" % (PLOT_FILE) + else: + expected = _expected_plots[qnum] + elif q_format == HTML_FORMAT: + if _expected_tables == None: + msg = error_msg + "file %s not parsed; make sure it is downloaded and stored in the correct directory" % (DF_FILE) + else: + expected = _expected_tables[qnum] + else: + expected = _expected_json[qnum] + + if SLASHES in q_format: + q_format = q_format.replace(SLASHES, "") + expected = clean_slashes(expected) + actual = clean_slashes(actual) + + if msg != PASS: + print(msg) + else: + msg = compare(expected, actual, q_format) + if msg != PASS: + msg = error_msg + msg + print(msg) + + +def check_file_size(path): + """check_file_size(path) throws an error if the file is too big to display + on Gradescope.""" + size = os.path.getsize(path) + assert size < MAX_FILE_SIZE * 10**3, "Your file is too big to be displayed by Gradescope; please delete unnecessary output cells so your file size is < %s KB" % MAX_FILE_SIZE + + +def reset_hidden_tests(): + """reset_hidden_tests() resets all hidden tests on the Gradescope autograder where the hidden test file exists""" + if not os.path.exists(HIDDEN_FILE): + return + hidn.reset_hidden_tests() + +def rubric_check(rubric_point, ignore_past_errors=True): + """rubric_check(rubric_point) uses the hidden test file on the Gradescope autograder to grade the `rubric_point`""" + if not os.path.exists(HIDDEN_FILE): + print(PASS) + return + error_msg_1 = "ERROR: " + error_msg_2 = "TEST DETAILS: " + try: + msg = hidn.rubric_check(rubric_point, ignore_past_errors) + except: + msg = "hidden tests crashed before execution" + if msg != PASS: + hidn.make_deductions(rubric_point) + if msg == "public tests failed": + comment = "The public tests have failed, so you will not receive any points for this question." + comment += "\nPlease confirm that the public tests pass locally before submitting." + elif msg == "answer is hardcoded": + comment = "In the datasets for testing hardcoding, all numbers are replaced with random values." + comment += "\nIf the answer is the same as in the original dataset for all these datasets" + comment += "\ndespite this, that implies that the answer in the notebook is hardcoded." + comment += "\nYou will not receive any points for this question." + else: + comment = hidn.get_comment(rubric_point) + msg = error_msg_1 + msg + if comment != "": + msg = msg + "\n" + error_msg_2 + comment + print(msg) + +def get_summary(): + """get_summary() returns the summary of the notebook using the hidden test file on the Gradescope autograder""" + if not os.path.exists(HIDDEN_FILE): + print("Total Score: %d/%d" % (TOTAL_SCORE, TOTAL_SCORE)) + return + score = min(TOTAL_SCORE, hidn.get_score(TOTAL_SCORE)) + display_msg = "Total Score: %d/%d" % (score, TOTAL_SCORE) + if score != TOTAL_SCORE: + display_msg += "\n" + hidn.get_deduction_string() + print(display_msg) + +def get_score_digit(digit): + """get_score_digit(digit) returns the `digit` of the score using the hidden test file on the Gradescope autograder""" + if not os.path.exists(HIDDEN_FILE): + score = TOTAL_SCORE + else: + score = hidn.get_score(TOTAL_SCORE) + digits = bin(score)[2:] + digits = "0"*(7 - len(digits)) + digits + return int(digits[6 - digit]) diff --git a/p4/rubric.md b/p4/rubric.md new file mode 100644 index 0000000000000000000000000000000000000000..8f96e8573053b6219a58b771877fc8ea059c0826 --- /dev/null +++ b/p4/rubric.md @@ -0,0 +1,107 @@ +# Project 4 (P4) grading rubric + +## Code reviews + +- The Gradescope autograder will make deductions based on the rubric provided below. +- To ensure that you don't lose any points, you must review the rubric and make sure that you have followed the instructions provided in the project correctly. + + +## Rubric + +### General guidelines: + +- Did not save the notebook file prior to running the cell containing "export". We cannot see your output if you do not save before generating the zip file. This deduction will become stricter for future projects. (-3) +- Functions are defined more than once. (-3) +- Import statements are not all placed at the top of the notebook. (-1) +- Used loops or other material not covered in class yet. (-20) +- Hardcoded answers. (all points allotted for that question) + +### Question specific guidelines: + +- `damage` (4) + - function output is incorrect when the `attacker` needs to choose its physical attack (-2) + - function output is incorrect when the `attacker` needs to choose its special attack (-2) + +- q1 (3) + - correct arguments are not passed to `damage` function (-2) + +- q2 (3) + - correct arguments are not passed to `damage` function (-2) + +- `type_bonus` (4) + - function output is incorrect when the `defender` has only one type (-2) + - function output is incorrect when the `defender` has two types (-2) + +- q3 (3) + - correct arguments are not passed to `type_bonus` function (-2) + +- q4 (3) + - correct arguments are not passed to `type_bonus` function (-2) + +- `effective_damage` (6) + - `get_num_types` function logic is incorrect (-1) + - `get_num_types` function is not used by `effective_damage` (-1) + - function output is incorrect when the `attacker` has only one type (-2) + - function output is incorrect when the `attacker` has two types (-2) + +- q5 (3) + - correct arguments are not passed to `effective_damage` function (-2) + +- q6 (3) + - correct arguments are not passed to `effective_damage` function (-2) + +- q7 (3) + - correct arguments are not passed to `effective_damage` function (-2) + +- `num_hits` (4) + - function output is incorrect when the `attacker` can do non-zero effective damage to the `defender` (-2) + - function output is incorrect when the `attacker` cannot do any damage to the `defender` (-2) + +- q8 (3) + - correct arguments are not passed to `num_hits` function (-2) + +- q9 (3) + - correct arguments are not passed to `num_hits` function (-2) + +- q10 (3) + - correct arguments are not passed to `num_hits` function (-2) + +- `battle` (8) + - function output is incorrect when the two Pokemon can do damage to each other and do not take the same number of hits to defeat each other (-3) + - function output is incorrect when the two Pokemon can do damage to each other but take the same number of hits to defeat each other (-3) + - function output is incorrect when one or more of the Pokemon cannot damage the other (-2) + +- q11 (4) + - correct arguments are not passed to `battle` function (-2) + +- q12 (4) + - correct arguments are not passed to `battle` function (-2) + +- q13 (4) + - correct arguments are not passed to `battle` function (-2) + +- q14 (4) + - correct arguments are not passed to `battle` function (-2) + +- q15 (4) + - correct arguments are not passed to `battle` function (-2) + +- q16 (4) + - correct arguments are not passed to `battle` function (-2) + +- `friendship_score` (4) + - function logic is incorrect (-2) + - function output is incorrect when the stat difference of the two Pokemon is exactly 20 (-1) + - function output is incorrect when the two Pokemon have the same types but not necessarily the same corresponding types (-1) + +- q17 (4) + - correct arguments are not passed to `friendship_score` function (-2) + +- q18 (4) + - correct arguments are not passed to `friendship_score` function (-2) + +- q19 (4) + - correct arguments are not passed to `friendship_score` function (-2) + +- q20 (4) + - correct arguments are not passed to `friendship_score` function (-2) diff --git a/p4/type_effectiveness_stats.csv b/p4/type_effectiveness_stats.csv new file mode 100644 index 0000000000000000000000000000000000000000..88ef8fa3517506241ce3682310d6c13ab825fa7e --- /dev/null +++ b/p4/type_effectiveness_stats.csv @@ -0,0 +1,19 @@ +,Normal,Fire,Water,Electric,Grass,Ice,Fighting,Poison,Ground,Flying,Psychic,Bug,Rock,Ghost,Dragon,Dark,Steel,Fairy +Normal,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,0.0,1.0,1.0,1.0,1.0 +Fire,1.0,0.5,2.0,1.0,0.5,0.5,1.0,1.0,2.0,1.0,1.0,0.5,2.0,1.0,1.0,1.0,0.5,0.5 +Water,1.0,0.5,0.5,2.0,2.0,0.5,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,0.5,1.0 +Electric,1.0,1.0,1.0,0.5,1.0,1.0,1.0,1.0,2.0,0.5,1.0,1.0,1.0,1.0,1.0,1.0,0.5,1.0 +Grass,1.0,2.0,0.5,0.5,0.5,2.0,1.0,2.0,0.5,2.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0 +Ice,1.0,2.0,1.0,1.0,1.0,0.5,2.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,1.0 +Fighting,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,2.0,0.5,0.5,1.0,1.0,0.5,1.0,2.0 +Poison,1.0,1.0,1.0,1.0,0.5,1.0,0.5,0.5,2.0,1.0,2.0,0.5,1.0,1.0,1.0,1.0,1.0,0.5 +Ground,1.0,1.0,2.0,0.0,2.0,2.0,1.0,0.5,1.0,1.0,1.0,1.0,0.5,1.0,1.0,1.0,1.0,1.0 +Flying,1.0,1.0,1.0,2.0,0.5,2.0,0.5,1.0,0.0,1.0,1.0,0.5,2.0,1.0,1.0,1.0,1.0,1.0 +Psychic,1.0,1.0,1.0,1.0,1.0,1.0,0.5,1.0,1.0,1.0,0.5,2.0,1.0,2.0,1.0,2.0,1.0,1.0 +Bug,1.0,2.0,1.0,1.0,0.5,1.0,0.5,1.0,0.5,2.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0 +Rock,0.5,0.5,2.0,1.0,2.0,1.0,2.0,0.5,2.0,0.5,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0 +Ghost,0.0,1.0,1.0,1.0,1.0,1.0,0.0,0.5,1.0,1.0,1.0,0.5,1.0,2.0,1.0,2.0,1.0,1.0 +Dragon,1.0,0.5,0.5,0.5,0.5,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0 +Dark,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,0.0,2.0,1.0,0.5,1.0,0.5,1.0,2.0 +Steel,0.5,2.0,1.0,1.0,0.5,0.5,2.0,0.0,2.0,0.5,0.5,0.5,0.5,1.0,0.5,1.0,0.5,0.5 +Fairy,1.0,1.0,1.0,1.0,1.0,1.0,0.5,2.0,1.0,1.0,1.0,0.5,1.0,1.0,0.0,0.5,2.0,1.0