diff --git a/Pointers.ipynb b/Pointers.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..b547684acf56e47d76305780aeca48f798441d54 --- /dev/null +++ b/Pointers.ipynb @@ -0,0 +1,255 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "fc73d74c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "('answercheck.py', <http.client.HTTPMessage at 0x7f646df0f820>)" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "##ANSWER##\n", + "#Install answercheck in current director\n", + "from urllib.request import urlretrieve\n", + "urlretrieve('https://raw.githubusercontent.com/colbrydi/jupytercheck/master/answercheck.py', filename='answercheck.py')\n", + "##ANSWER##" + ] + }, + { + "cell_type": "markdown", + "id": "3c2a4f39", + "metadata": {}, + "source": [ + "# Pointers\n", + "Understanding Pointers and their purpose " + ] + }, + { + "cell_type": "markdown", + "id": "2b78245b", + "metadata": {}, + "source": [ + "Pointer Dog: \n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "id": "71e867d9", + "metadata": {}, + "source": [ + "## Description\n", + "Pointers are variables whose value is an address, which is in another location in memory. Thus it is possible to refer to another variable in memory by that other variables memory address and also manipulate memory.\n" + ] + }, + { + "cell_type": "markdown", + "id": "4ee3c1f1", + "metadata": {}, + "source": [ + "## Learning Goals\n" + ] + }, + { + "cell_type": "markdown", + "id": "58ec20e8", + "metadata": {}, + "source": [ + "## Self Assessment\n", + "\n", + "Questions that test for the learning goals and allows students to evaluate if they truly understand the topics." + ] + }, + { + "cell_type": "markdown", + "id": "07524fd7", + "metadata": {}, + "source": [ + "✅ **<span style=\"color:red\">Question:</span>** What is the correct way to create a pointer so that it points to a string variable named drink in the following code: \n", + " \n", + " string drink = \"Coke\";\n", + "\n", + "1. string* ptr = &drink;\n", + "2. string ptr = drink;\n", + "3. string& ptr = drink*;" + ] + }, + { + "cell_type": "markdown", + "id": "f1da5683", + "metadata": {}, + "source": [ + "✅ **<span style=\"color:red\">Question:</span>** For the code below, which of the following is the best way to read the code:\n", + "\n", + " int w = 99;\n", + " int* x = &w;\n", + " int* y = x;\n", + "\n", + "1. Pointer x and Pointer y point to the same address.\n", + "2. Pointer x points to the value \"99 \"and Pointer y points to the the address of w.\n", + "3. Pointer x and Pointer y point to the same value." + ] + }, + { + "cell_type": "markdown", + "id": "7e232e3c", + "metadata": {}, + "source": [ + "✅ **<span style=\"color:red\">Question:</span>** For the code below, which of the following is true:\n", + "\n", + " int w = 99;\n", + " int* x = &w;\n", + " int* y = x;\n", + "\n", + "1. x and y have the same name.\n", + "2. x and y have the same address.\n", + "3. x and y have the same value." + ] + }, + { + "cell_type": "markdown", + "id": "0843ee02", + "metadata": {}, + "source": [ + "## TODO: DIRK will work on a list of list with pointers" + ] + }, + { + "cell_type": "markdown", + "id": "6527d414", + "metadata": {}, + "source": [ + "## TODO: Reword the second question" + ] + }, + { + "cell_type": "markdown", + "id": "81760d5f", + "metadata": {}, + "source": [ + "✅ **<span style=\"color:red\">Optional Question:</span>** Example Question:\n", + "\n", + " \n", + "\n", + "1. AN2 1.\n", + "2. ANS 2.\n", + "3. ANS 3." + ] + }, + { + "cell_type": "markdown", + "id": "5d237ca9", + "metadata": {}, + "source": [ + "## Training Materials\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "id": "21f9b14e", + "metadata": {}, + "source": [ + "Introduction to Pointers in C++ in 6 minutes (https://youtu.be/fBlM7pR2r_Q)" + ] + }, + { + "cell_type": "markdown", + "id": "68f2cbdb", + "metadata": {}, + "source": [ + "Pointer Material with exercises (https://www.w3schools.com/cpp/cpp_pointers.asp)" + ] + }, + { + "cell_type": "markdown", + "id": "dd1da075", + "metadata": {}, + "source": [ + "Pointer Material (https://www.programiz.com/cpp-programming/pointers)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "deeec8f7", + "metadata": { + "collapsed": true + }, + "outputs": [ + { + "data": { + "image/jpeg": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAUDBAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChALCAgOCQgIDRUNDh0dHx8fCAsWGBYeGBAeHx4BBQUFCAcIDwgJDhISERAYExISHhISEhISEhISEhITEhIWFRMSEhUSFRISEhISEhISEhISFRISEhISEhISEhUSEv/AABEIAWgB4AMBIgACEQEDEQH/xAAdAAEAAQQDAQAAAAAAAAAAAAAACAQFBgcBAwkC/8QAWRAAAgIBAwIDBQIHCgkIBwkAAQIAAwQFERIGIQcTMQgUIkFRI2EJFTI2UmKBFiRCcXR1dpG0tRczNFaCobGz0zdTVYOFlJXhGGNykqLB8CY1Q1Rzd7LH0f/EABgBAQADAQAAAAAAAAAAAAAAAAABAgME/8QALhEBAAIBAgQEBAcBAQAAAAAAAAECEQMhEjFBUQRxofATYYGRFCIyUrHB0eFC/9oADAMBAAIRAxEAPwCGUREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEROYHEREBERAREQEROdoHEREBERAREQERORAqjp14UMabApQ2BijAGsbbuCR3X4h3H1nTVjuyuyqStahnP6KllQH/wB5lH7ZmC9RY4a8iy0e8vZaGapWGMzABUVS55/TkNv8XXsPpTtnBq8y0hfdbChqpZqlZ7Bk47P9mh5Vs1aWE7dhue8z4pcVfEamd69vf8/bLE9jPpqmChypCklQ2x4llClgD6EgMvb9YfWZfm69ivbyQ+UfKdK7hjqXpLW1uvwGwg7VrYnw+nmdvSWzK1YWYbUG+zkt1jBfLULclhpK7kN9mVat227/AJQEtFp7NKa17Y/LjvnO3osMbS99MahTR5nmMUZmqYOtSXE1pz8yni5AAfde/wCpsexnbfrSsKKqyKKxuX2qVzU/vVtyMh/KYqhRd/4xGZ7LW1LRbEV948ljycd63at1KuhKsv0IOxHacVVM7BVVmZiAqqCWYk7AADuST8pl+PrWDXdlv+X5zrYpantx+050MocfCeSfcdu/oJ0UdR1I9LDfah8EoFrRWCV4/DMAI23LuF9fXYH5SOKezKuvqT/46Rz2zt5d2KbGdhofgLOJ4Fiob5cgASv8exH9cyjF1rGVMlXY3WOe11lP+OXyQioyizdOLb7fsPqJS9TarRfTXXUW2W13VDWta1VslarUvEnlsVPxfPfeOKc4wtXXvNorwfXft5fzhju0bfdMnxc6mrT0ViGaz3pTUK62LMRWK3ssJ5IEbdh94+8z6bqCt8i8s3l1nzvdbVorZ6A9tbD4e3rWjL/1rH5mOKeyY17znFeWfT6e/nyYtsfpGxmwLs3HOI1tRrrR3Z2r3qBI985cRWnxDINar29OJI9O8tmn9RU+8223fkDktHGlf8WbQ/B1RkJHEbAb7d/oZEXmejKvi72iZinLMc9/4YlsfpO2jGd+ZVSeCl2+5QQCe/3kf1zMv3S4gHEL8IB4jyKzsR7pw/jA4ZHr+kPrOnI1vFta3exq1fHarYUqeTG650YhSNiqsvf9Y/SOOeyI8Vqzz05j7z/TDtjBEzLR9VottqqbiFQ4pr5pUoBpw7Uv+JuxZrvL25evFfoJaOtX5ZW/NXHl1KOLBioVAvGwr8Pm7gk7fNj/ABSYtvhtTXmdT4c1xtn3sscREu6SIiAiIgciXnHwFS2heDPy48iR8DB1BPHbv2B9fullnYtrDbZj2327ntv67TXTvWvOM8mmnaK84XSnSgyWM3JSpfbsdvgAYgjbt2I9dvUT6/FKckG78WVjvxO7MvHtttug3Ydz/XLSbW7/ABHv69z3+X/zMea3rudx2B3Pp9Jr8XT/AGNPi6f7V1bSVFbMWYMGYbActuL8eJ49uXz/AKvrKTV8QUsoXfiRuC3qe5G+2wK+noZSczttudj6icOxPckn7zK6mppzXFa4+qt9SkxiK4fMRE52JERAREQEREBERAREQLv0hYiZlLWMqKOZLNx2X7Ntj8RA3322/ZLrfqOFatt9lC3vWcWoea5osvBF5vtKUN2btWu/fbZCSd++JxLxfEYc9/Dxa3HmeURttynPTuzPTtMwbfIThURYcQK65BOS9lliDJqsp5bVoqm3ZuI/xaHc8p96ri4OOjWHFofaukoFvt8q8m61bWqK5DswVAinv2IJ22mG02sjKyMVZSCrKSCpHcEEdwd52Zubdewa6yy1gOIax2c7Dcgbsd9tye33y3HGOTKfC3m365x5z79z9Ms0vTtOail7DQC9tTEefxsFbZQR6rSb/VaSSSEX0B5du/aMbSvL5+Vj8vL34DJtHx+7ecdgbeW/mnht9wHr64PG8RqRHSC3hLWn9duffH0ZflY1Hk5KIaFpXUEasDMBNlAOQjMamvPLiDUAwG+zE7kSrx9M0+6xzWmOq1HLHE32GopXdj10W2sbgdmFz9wQDxG30OC7zvwsy6hi1NllTbcS1bsjbHbcbqd9uw7fdEXjstfw9pja05/4qeo6Vryr0SryEFh4VEliqeqbsXbcleJ3BPr27TIbMcXPp/vV2PZxxbVt8zJrt3ZLcl0rY15CkHg9W3JgPQb9tpiN9zOxd2ZnYkszElmJ7kknuTPjeV4oy0tpTNYjO8f5hmWdiaajNWq0Nz97Is89t6vLwabqFQLcV2OQ1iDly32K7kiVWpaJh1+XWKah2uR7jeRxt9zsNFd5a/jXYchS3cKPhA+omB7yqzNSyLlVbbrbFT8lXsZwvbb4Qx7dh8pb4kb7MZ8NfNcXnbOd53+bLMLSdP52ix8bitdC9r92Ww4aNa6P7yqsDeWHYN3BGwE7jouCiY/mVIAxxTbaLG5V+ZjGwpkKb9qw9xUA7LsA3xb95ge8qsjUsixFrsutetNuCPY7IvEcRxUnYbDt2kxevZFvDakztqSrOqaaEvAx1CrwXkFdHTn334FLrdl227Fj85aYMTKd3ZSvDERnLiIiQsTnecRAREQEREBERAREQEREDnecREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQOYlfotCOz8lDcULAM3BdwRtu242HeVWUmIuwCghnYF1ck1gFdiAPyh3b19dpvXQma8WYhvXQma8WYjzWWJktWBjsx+GscVYlRbyr25oqMzh/wAohn7b/IdpS5VWOrLX5YRnYhmZ2+xIvdeLgE9uA7/xg7/W9vCzEZmYWnwsxGZmPf0WSJkvumGD3FZ3CnbzAADvbv6WN8lT5/wvvnycXD+EfCO67sLNyRtTv232G5scf6H3GW/BzjPFX7r/AIOcZ4q/djk5l7yq8WvmeAfvUAvmDtyFnMpwdv0U9SfWWSc+pp8G2Yc99Pg6w4iImbNn+p9ZYvD97e9LYtOXVVZYCbK/ObDNC+bZk2N8HkXHknEAuCqAky1P1Y7VUVuz/Hde+eErpRb1ttrsHDYbCwcWIbYbFtx6mYrE548LpxEbcu/1/wBTlsluo8LJsLsC2NVjfb+8MFuuspyWysRK0uybrrySooJ3Owuc9hNd5V7W2PY55PY7O7dhyZyWY7Dt3JM6oltLQrp5x19+/oZIiJsgiIgIiICJdNF0n3lLSHVGQ1KvMhVJsLDux9DuB/X9BOxencggbBOZK7181Fiqz8Fdgeypy2G/3gnsZnOtSJxM8mU69ImazPJZ5zL3Vomwt5vuRQb6Xr2euxVYq25OxX4gR/omfK9N5PGpyABaUA7klfMUvXuAO/JQT23+W/cyPjU6yj8RpxzlZZzL1b01kKbA3AFN/hL7M21Qv+FSN/8AFnfv/Ee8splq6lbcpXpqVv8ApnLiIiXXIiIHMyK7ozPRKLHqKrkNWi7paCpsXmOe6dtlHoP2THZkerdUDLTHqvx0FVLBn8hceiyzbFx8cBbFxz5Y5UM+2xHxqu21a7Y6vxMxwYxvnPp2SorOncvlkCqi25Ma22qyxKrAoNJPLcMoZDxHLiw37Ht2M6U0m1VqtvV6Ma5gq5D1uU77nkoA3cfC3p+ifpL7Z1ivnNbXjMofOtzmR7w/2l1TI6BhUuy7sSP6vvlrztVx7/Ia3Gs82uuim16sgIttWPSKK+CPS3lWcEr3bcj4D8I3lK21ZnExt9M9fn77DqzdDvTIux0U3NTljD5Vg7Pcz2JUqg9938p9h+qZ94vTuTZjPlCtxWGqWoFG3va2zygKe3x/FuP2EDuJd8fq+lMu7J9zdhbm0ah5bZQ+HJobIYfGtA3p/fL/AA+vwr8R7g/GF1l5S1FcVTfWMEGxrSa2XT7A1IFPH4OSgBjv6gEbStr6+MVr+3t9evvobLI+h5a3pjNj2rfYOSVsvEsvcl9z24AK27eg4NuexnLaPaMVMr+DZcaUUI5LEAnkHC8D8SleO+/b02l1yurGa3cVMcZqPdrca16zzqNjWsqWUU1eV8ZDAgeq99wSJ0aX1BXj41dVdDm+rLqzEta9TV5tLHgrUCkMa+BII5evffbtL8WriMxHTOPX+u/+NlIenc4WLScS8WshsCGtgeCnZmO47AN2O/oex7z7u6czExhltSRTztRiezIajWGLqfQcrOP8at9JcaeqakZBXjW10IMg+UMlLGd8lqjb5rX47120bU1gVsp/J3JLd5QZmsVW02VNjBP3zkZOP5NnCug5IqV6jWyMbKwtNfEAjbbuTIi2tONoj3Pz8u/U2fFnTeeti1Nh5C2PzKq1bAkVnaw9x2C7gnf9JT6EToGi5fC6z3e7hQzJcSjDymTbmrgjdSu43+m43l2xOrXTLzMhqy1WY2SzUeYPs/eLq7y1TWVsgs5U0gsVO4QdpUL1kBXlKcblbkjJU3s9fmFMioVKLWWgGxqwDtxKj4m+Hc7yJtrx/wCYnl/3r29fRssWq6Jl4oDZONdSrNxDWVsoLAbkAkbb7f7D9J2Y2g5FuJ73UjWVrZclgRGY1imuq1rHIGwXjYT/ANW59BLpq/Vi5RUW4oasZYyLK/OYeYhyMu96eaqGXkMtl5D9Hf5ym03qIUKiJQONd2baq+YdtsvGXGCbkEngF33PrvJi2tw7xGfSfXqbLPl4dtXlmxCotRbK2PdXRvRlYdmG+4P0KkHuJTy5Z2qNZRViogroqJsKglmsvZFWy5mb03CgBV2ACjsTuTbZ0VzjdBERJCIiAiIgIiICIiAiIgIiIH3XYy78SRuNjsdtx9D90+d4nEZMu7HybKySjshI2JUkHb6dvlOt2JJJJJPck+pP3ziBJzPJOZ5G8bziJCHO84iICIiAiIgIiICIiAiIgIiIFdpmqW43Py+Px8SQ6I43Q7owDg7EEzvTX8pQoDjdSvx8ELkK3NVdyN3QN32P3b+glqiUnTrO8xDOdGkzmYj7LwnUFwLHjSQU8sL5ScUTdmKooGygs5J/jnCdQZAFfdCaxxBNaElPLNXBjt8S+WxX+r6CWiJHwqdoR8DT7Qu1uv5DHkSu/wB1aKB9iKOwA2A8sAbS1EziJatIryhetK15RgiIlliIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAmT6R4edQZlS34mhaxlUOAyXY2mZt9TqRuGWyqoqwI+YkxPY49nzCxsHF6g1rGrys/LRMnAxchFspwcdtnx72qbdXy3XjYC35IKbAMDJKdTdU6Zpio2pajg6etpK1NnZdGKLGHcis3uvMgfSB5Ha3o+Xg2+Rm4uTh3gBjTlUW49vEkgN5dqhttwe/3GUM9F/bG630YdHX2A6fqp1Jhh6Y6tTl1LfYpazMotrLBHppDsHX+Eagfyp50QESa3sx+zz0xrvS2mapqOLkWZmSc0XOmZfUh8jPysevatG4rtXUg7fQmRI8SNMpwtZ1fCx1K0Ymp5+LQrMXZacfKtqrBY92IRF7mBYIibb9k3ofTuoeo69N1Ot7cVsTKuKV2vS3OpFKHnWQdgSe0DUkST3tpeDuhdL4mk26RRdS+Xk5NdxtybbwyVVVsgAsJ492PpIwwEuukdOahmIbMTAzcqtW4NZjYt96K4AYoWqQgNxZTt+sJapP78HJ+auf8A0gyv7u0qBCFuiNaAJOkaoAO5J0/LA/3csVtbIzIylWUlWVgQysp2KsD3DAjbaevutdT6bg249GbqODh35bccWnKy6Me3Jfkqcceu5w1zc3Rdl37sB85i/jN4TaR1Th2Y+dj1rleWwxNRStRl4lm3wMtg2aynfblUx2O3yIBAeXmkdOahmIbMTAzcqtW4NZjYt96K4AYoWqQgNxZTt+sJWfuG1v8A6H1X/wAPy/8AhydnsC6VdgaDrWDkADIwuqdRxLwp3Aux8PTKbADt3AdDN5a91TpmBZRTn6jgYVuSSMarLzMfGsyCGVSKEudWtPJ0Hw/pL9YHkNmYtlNjVXV2VWodnrsRq3Q7b7MjAFTsR6zpnrP4q+HGk9S4NmFqeMlm6MKMpVUZeHYfybsa4jlWwbY8fQ7bMCCRIKeAXgDZrHVGpaVqJYYHT+TZXqdlW9ZyXS+ynHx6ifiRb/JtfmP4Nb7EEgwNM9OdN6jqTtXp2Bm59iAF0wsW/KdA2+xZaEYqDsfX6GX7VfCjqfFTzMjp/WK6wpZrDp2UURR6l3Wsqn+lPU7QtHwNJxFxsOjGwMLHQkV1IlFNaj4ndtthue7M7dzuSTvOvp3qrS9RNi6dqWBntV2tGFmY+Uaj6faCh2KHf6wPIGJ6J+1h4A4WvYOVqmm41dGvY9bX8qUCfjNa15PRkKo2sySoIS099wik8fSK/sk+Da9WapY2ZzXSNNFdubwJR8l7C3kYSOO6B/LsZmXuFrIBDMCA1X050xqWpM6adp2dqDpsXXCxL8pkB32LChGKg7H1+hl51vwu6kwka3K0HV6KkXm9z6dleSi9+72ivgnYH1M9VdG0vC0zEXHxKMfBwsZDxrqRKKKkXuzHbZR8yWP3kmUeg9aaPn2NTg6tpmbau4arEz8XJsUj1DJTYWB7QPIrGpe10rrRrLLGVERFLO7uQqoiqN2YkgAD6y+/uG1v/ofVf/D8v/hTeninq+Hl+LWmjCox6asTqHQsK1setK/eMqjUMf3y64IAGvGQ9tRY/Khd56AWOFBZiFVQSSSAAoG5JJ9AADA8gNV6Z1LETzcrT87Gr3A8zIxL6U3J2A52IBuSZaZ6/wDTvUmmarXY2n5+DqVSHy7mwsrHzK0Zl34WGh2Ckr8jIa+3l4OYGlpjdQ6VQmJXk5Iw9QxKE444ueuy2nLqrUccfkKXRwNgSaiByYkhEqZAvRGtEAjSNUIIBBGn5ZBB9CCK+4mU+zL0b+PeqdJwnTnjpkDMzAV5J7rhj3ixLB+hYUSn/rhPU7eB45anp2Ri2mnJoux7lALVX1PTYAw3UmuwBgCCCP4596TpWVmOasTGyMqwKXNePTZe4QEAuUrUkKCyjf8AWH1kvfwkXR3fSNfrUd+ek5bbnfceZl4Oy+np78C33Vj+LDvwcf506h/R/K/vHSoGh/3Da3/0Pqv/AIfl/wDClgdSpIIIIOxBGxBHqCD6Geys8y/bJ6S/FPWGphV40aiU1WjuTuM3kcg9/T9+JlgAfICBrPSumNSy6/NxdPzsmrcr5uPiX3V8l23XnWhXkNx2++fWpdK6pi1Ndk6bn49Kbcrb8PIqqUswVeVliBRuxAG/1E9S/A7pT8R9O6PpZUJbjYVXvKqSR73dvkZmxIBI95tt9Zhnts/mJrv/AGZ/fGnwPOvF6O1e1Etq0rUrK7FV67K8HKdLEYbq6OtezKQQQRKTWNAzsIIczCy8QWEhDk411AcrtyCG1RyI3Hp9Z6peBX5rdNf0f0b+7saYT7anSX416P1AqvK/TDXqtPcjiMXkuUTt67YduUdvqFgea+Fi232JTTXZdbYwWuqpGssdj6KiICzH7hL3+4bW/wDofVf/AA/L/wCFN7/g8elPfOosrVHUGrSMJuDbndMvP5Y9Ow22IOMmd/qk/wCB4+0dN6jZfZipgZr5VKh7cZMW9r6lPHZrKQnNF+NO5H8NfrOdW6Z1LEr83L0/NxaiwQWZGJfTXzIJC87EA5EA9vuMn54af8qnW3816R/YtKn37fv5nWfzjg/7bIECauitZZVZdI1NlZQysuBlFWVhurKRXsVIIO/3yyZND1O9diNXZWzJZW6lHR0JVkdWG6sGBBB+k9gelv8AIcL+SY3+5SQw/CC+Fvu2VV1Ph1nyc1kxtTCgkV5aJxx8kgdlW2pOBPYcqlP5VsCNFXRWssqsukamysAysuBlFWVhurKRXsQRsdx9ZZMmh6neuxGrsrZksrdSjo6Eq6OjDdWDAgg/Qz2B6W/yHC/kmN/uUnn3oXhVZ1b4idRYJd6cHH1zWcrUchBu6Yyapcvk1MRwGRa7BF5enxvsRWQQ0h0/oGfqNhp0/Cy860Dc1YeNdk2Aem5SlWYDeZFqPhP1Rj1+bd09rSV8eRc6bllUUepsK1ny/wDS2nqT0f0vp2jYdeFpuLThYlK9q6htvsADZbYxL3WkDvY5JPqTOnS+uNFyrzi4usaXk5Kni2PRqGJdeG32Kmmu0uDv22+6B5ERJD+37rGJf1UcXFox67MHDoTOuqpVLsjLvHvH21qj7cJjvjAE+hNg3+QjxAREQEREBM36V07TeGHlW5FK2orNZQ9qrvYmTbWtjhm3UjzcJgnzFVxPYGYREy1tOb14YmY8hn+PXhtli2n3WsW42pJbyzVrFblsmmmxGsuUebYprBX02sZgoHpS6XjV2YWLTl30LSmpjmFycVra8Zj5drKi2F+BsLHfb0PL8mYVEz/D9Mz/AH1/0XvrHHxq70XGAVTUpsC2VWVizm4PlmrKv4rwCdmYnfl8iJl/S2mUZ7dN4uffQarM23GsWvLxjetWQMf3OqxKXNtNbOjISwHHkdyCRNbTsxb3qdLK2KWVuro6nYq6EMrA/IggH9k6KxiMD2QrRVAVQFVQAoA2AUDYAAdgAJ5aePmuX6rqupahnXcsptRtpx6fODtRgVm0V0GlSfd1q+yUA7ElrGIJ3M9HfBzrvG6j0XC1bGZN76lXJqU7nGzEAGTjNuAQVs32J9VZGHZhNAeO/sjnV9UydV0bUKMM51hvysPMrt8pchyTfdRfSGZVsY8jUy9iX2bYgLIgvJs+yt4CdLa70tg6lqenvkZl9uatlozc2kMKcy6qsCum5UGyIo7D5TVPjr7MeX0todernPXUGTJSnOrpxzVVjU3gJRctj2FrF8/jWSQO+RXsOxM07o3XGtYVK4+Hq+qYmOhYpRjahl0UqXYs5WqqwKpLEk7fUwPVroTpPB0PAo0zTaTRhYxtNNRstuK+ddZfZ9pczO29ljnufntNda17M/RuZlZGZkaXZZkZd92Te/4w1BA919jW2twTICqC7Mdh9Z2ex1qeTmdGaRk5mRflZFjajzvybbL7n4apmIvO21izbIqqN/koHykGfFrxE6gp6g12qnXdZqqq1jU66q69TzUrrrTNvVERFtARFUAAD6CBfPBDoDStT69v0PNxmt01MrWqlxxffWwTEGT7uPOrcWHj5ad9++3eTc8PfArpjQM1dR0rAfHy1rsqWw5mbcOFo4uvC+5kO4HrtPMTTtdzsbJObj5mXRmE2McunIuqyS1u/msb0YWEvybkd+/I7yRvsQdaazndW00ZuranmUe45rmnKz8rIqLKi8WNdthUsN+xgTH8UPDLRupa8arWcVsqvEeyyhVyMjH4taqq5Jx7FLbhV9ZDL24PCnQumV0I6NhtinNOpDJLZOVkc/dxgeUP3xa3Dbz7Pyf0u/pNtfhCuotQ07B0N9Pz83BazKzFsbDyr8U2KKaSquaXXmASdt/qZCTqHqfUtR8sahqOdninn5PvmXkZXleZx8zy/PduHLgm+3rwXf0gWiT+/Byfmrn/ANIMr+7tKkAZP78HJ+auf/SDK/u7SoGc+0D4E4vWOTpl2VqF+HVp63o1ePTW73re9LNtbY21TAVbA8T+V6dptjOy6cam2++xKcfHqe2661wqVU1IXssssc7KiopJY/QmaK9rHxyz+jrNLTCw8PK/GFeYznKNw8tsdscLxFTruD5x3B+gkO/F32gOpOpqji5uTVjYLFS+Dp9bY+PayHkpuLu916g7Hg7Fd0U8dxvAmR7F2s16jgdT6hSCKc/rTWsyoMNmFeVTp96Bh8m4uJkfjt4G6b1hdgW6hl52MMBLkRcNqF8xb2qZ+TXVPsR5Q22+pmvPwcn5q5/9IMr+7tKmw/EfxHfR+rOmdNusC6frdGoYtisE2TOFmJ7hcH489y7NRxB2/fW5BKiBsXVNQxNMw7MjJuTGwsOjlZda54VU1KBuzN3J2AH1PYepmnvY91ivVsLqLW0Xj+NuqNRyFUgC2vGWjEXFpt4kgutZ3O3zsMyz2jPDpeqOn8vTV+HLXbK09y3FVzaFbylc+nl2Kz1En0FpbbdRI9/g7us68Z9V6Yy/3vlNkNn4tVoNdj3V1Lj5+OUfYi5Ex6G4euy3Hb4DAqfwkXU2XVTo2lVWPXh5fvWVlKpKrkPjNjrjo+35SIbHfie25rO26iRA6N6jy9Iz8TUsG005WHcl9TgsASp+KuwKQXpdeSOnoQ7Kexnpl7Q/g7h9Y4FONfc2Jl4lj24WalYt8o2KFuqsqYjzKLAlZIBB3prO/Yg6V8LfY1rwdRozdY1SrOx8W1bkwsfGatch62DVjIttc7U8gOVYHf05CBLaptwp2I5AHY+o3G+x++aa9lDQsfBxOpEoChT1hryAKAAleLemLTWuw7IEqBA/XM2V191TiaJpubqua4THwqWtfuA1jDtVTXy7G2ywpWo+rrIwewF4nLl3a3pObYi5ubnX67j9yBfZkhV1CusN6FDXTYE3JIe07bITA6/wkPUuXVToulV2PXh5ZysrLRDxGS+M2OuOjkflIhsd+J7bms7bqJsbF9k/owcLa8fPUjjZW66jkKwPZlZWB3BHY7iZZ7Q/g7hdY4FWNfc2Jl4lj24OalYtNLWKq3VWVMR5lFgWslQQd6qzv22NH4J9CdU6VlWWa51N+OMMYhxsbCXGFYSzzKSmS1p2bktdTpx77+cTv27hpzxd8GNE6b1norN0xMpcjL6w0qnIfIyrMnzFOVVaWPmbnnzXfl+sd5LfMpFldlRJAsR0JHqA6lSR9/eaO9q7/L+gf6a6T/vkm7dWsZMe90OzLTayn6MqMQe/b1ga08BvA3TOj2zrMHJzcq3OWhLWy3p4olBsZBUlNSdybTuW3/JXbbvvqH8In13ippuJ09VYtmbkZVedkopDe7YtFdgqFo33Sy221GUfSl9/Ub7m9mTxDPU3TeFn3OHzquWFqJARd8zHChrStahENtbVXcVAA8/YDYSIHt2eGTaPrn43x0b3DXGsvY/Ewo1FdmyqmY78RZyFyg/pXADauBsn8G90dxp1bXrE+K100vEYjYhKwmTmEb/lIztiDcfOlxN+eJ3iRXpGt9K6UzKo1zOyqbmOxIrTFarHQEn4Wsz8nDAP6jiV3gJ0f+Iem9J0wrwuoxEsyh6/vzJJyMsb+rAX2uoJ+SKPlHVNfSmTm1X6m2h25+CyrTZl3YRysR6rPNUIbX50utnxdtu8Cn9ovo78e9Mavp6KWvbGORiAbcjl4hGTQik+nN6hWT9LWkQvwcf506h/R/K/vHSpPnEya7q0tqsS2qxQ9dlbK9diMN1dHUkMpGx3Eif7P3Rv4i8U+psJE4Y76Pl5mGAvFPds3UdKyK0rH6FbO9X/AFJgS0mj/aH8LBrmvdG5wrLV4upvTnkVlw2JXU+p1i5gPgp8zBtp3PzzVG+5Ey72i+qH0Xp3K1WvlvgZmi3uqbcrKV1vThkUjl2+0oNlf+mZn2JkV3V121MHqtRbK3U7q6OoZGB+hUg/tgds0z7bP5ia7/2Z/fGny9nrDzuuq9DrbdMLpjNzsoA/CcjL1LSq6EceosroqZh92XLJ7bP5ia7/ANmf3xp8DM/Ar81umv6P6N/d2NMr1DEryKbaLVFlV1b02ofR67FKOpH0KkiYp4Ffmt01/R/Rv7uxpavD7rDz+pur9EsYl9PydKzMcMR/kubo2ALK6x67JkUu53+eWIGO+yB4bv05o2bTeG95yNY1Hm7oa3ajCyH0/GIB7mp1xnvU/MZQIOxm6ZYfETqWrRtJ1HVbtimBh35PAnbzHrQmqkH9J7OCD/2xKLway7Mjpvp++52suv0TSbbbG/KeyzAx3d2+8sSf2wNTeGn/ACq9bfzXpH9i0qfft/fmdZ/OOB/tsnx4af8AKr1t/Nekf2LSp9+39+Z1n844H+2yBvDpb/IcL+SY3+5SUXXXTWHrul52l5YFmLm02Y9hXgxrdW2W2vcFRfTeiuu/o1Q+krelv8hwv5Jjf7lJHz2a/FIHqfqvpXMsG69Qa9maQWIG6nUsq3Nwk3Pcgl8hQP0sknsogSK0fFNGNj0sQzU0VVFh2BNdaoSAfQEiaI9k3Tql1fxCywPtrertQx3O5P2WPk5dlYA9B8WVb/q+kkFIi+zJ13Th9eda6Jk2BBquu6pdhFjspy8TUM3nSP8A1ltNm43/APyoA7nuGQfhDepszD0DCw8ax6atSzWqzHrPE2Y9NLP7szevlu7oxA9fJ29CQezw/wDZf6N1DSNLz2xs1mzdOwcst79cu5ycaq4niNgu5f0E2544+GWF1XpL6ZmO9LCxcjEyqwGfFykVlS0ISBbWVd1as7bhzsQwBGG+CHhf1RoeVjpqHVA1HR8LFOLjacuL5e6LWKsfk5O9a1qBsN2/JAgaX9sHwL0HQtBbVsBc3346hjVPbkZtuT5iWrcHD+duWPwqd/X4R32kPJ6JfhAvzPP86YP/APG+edsBERAREQEREBERAREQNgeC3i5rHSeU1+m2q1FxHveDeC+LlBdwC6ghq7V37WIQfkd1JBlRovtt6Q1IOboupU37fEmLbi5VO+/ba216W2P8X9cgvECUnjf7XFmtafmaTp2kV42Lm1Pj35GdYMm9qbFIbyaK1FePcDts5LbbbgA7ERbiIF503qvVMapaMbUs/HpTlwqozMiqpOTFm411uFXdiSdvqZasi57Heyx2sssZnd3Ys7uxLM7s3dmJJJJ+s64gJV6VqWRiWedi5F2NaAVFuPbZTZxb8oc6yG2P0lJEC56xr+fmBFzM3Ly1rJKLk5N14QkbEqLWIUkAen0lsiICSL9mT2jMbpDScnTb9LvzWv1G3OFtWRXUqi3GxMfyyj1k7g4xO/6/3SOkQN1e1L410dZW6Y9GBbgjT68pW829LjaclqCNuCDiF8j/AOL7ppWIgSL9mT2jMXpDScnTb9LvzWv1G3OFtWRXUqrbjYmP5ZV6ydwcYnf9f7pYPad8b6+rsnSsjEwr9ObTEyNmbIWyxrLrKXV62rRTWUNIIP633TScQJp6L7btC41C5eh5FmUtNa5FlOXUlVl6oBbZWjVbojMCwU+m+2523kcfGDxAxtT6ifX9FxsjRrrWqyXC3qbF1BCfMyqXpVfLL7Vsf1jY2/xTXUQJd+GvtqZVFNdGv6Z766KAc/BsTHus4gDlbiOvlNYx3JZCo+iTL9X9tvRlqY4mjanddt8KZNmLi1k/fbU9zAfskFYgbN8c/GzWerrU9+evHwaLGfG07G5Lj1ud1F1pZi2RkitivmN6cn4qocg6+0XVMjCyKcvEusx8nHsW2m+pilldincMrD0P/nKOIEvvDj21ciqqunXtL97dFAbOwLEpssI2AazDsXyjYe5LIyj6IJles+25o61E4ei6lfd/BTJtxcWvf77KmuYD9kgtEDc3WntC6trWu6NqmopWMLRtTxdQxtLxCaqv3vk1XNzss5NbktXUE8xuw3biqhiDvLUfbZwLKbqxoGWDZVYgJzadgWQqN9qfTcyE8QN0ey945v0bdnLbi2Z2Dn11FqEuFT1ZNBPl3Vl1ZdjW9isNu+1Z3+Daba639rPQdZx6sbP6ay7qqMzDzqh75j7rfh3pfWQTSdgwVq229VtsXccpD2IE3j7cGB8tAzN/lvm0gf1+T2kM+qNXs1DOzc+7bzs7LyMy3b08zJue59vu5OZbYgSp8Dvaxq0HQsLSMzSsjNswRbVXk15daB6Gte2pWR6iVKLZ5YA+Va/WVt/tYaWeocfX10HKW1NGy9IvX3ynlbXbm4WbjMCKtgK2pygQfX3gfo94kxAlP47+1RidSdP5+i1aPk4r5vuu19mVVYlfu+bj5Z3RawW3FHH/AEt/lKzwh9ryrR9E07S83ScjLu0+gYoyKsqutbKKSVxh5b1kqyUCuv1P+L3+ewiZEDfXhz7Qf4v6w1nqrNwbMn8a42RjLi13qr49T5GE+MnmvXtYK6MKurfYb+vb0mW+PHtUYnUnT+fotWkZOK+b7rtfZlVWJX7tm4+Wd0WsFtxRx/0t/lIsRAmH4fe2JhaZpGl6a+iZVr6fp2FgtauZUq2NiY1eObFU1bqG8vfY/Wa30/2hfd+u8vq6rAsGLnUJiZGnm9fNbHTBxcYAX8OIb3jDpu22/g8fvmhIgSW9oz2n16n0Y6Ph6bdgpdk025VtuSlvmU0E2pQqJWPW8UvyJ/8AwQNu/bLfD72xMLTNI0rTX0TKtfT9OwsFrVzKVW04mNXjmxVNW6hvL5bH67SHkQJK9K+0vjYfV+u9StpN706xiYmMmKuVWLKDi0YdPJrDXxcN7sx7enIDvPr2jPaZxeqtEOk06TkYjtlY95utya7FC08yVCJWCSSwH9cjRECamj+2tg0Y+PS2g5ZaqiqpiM2nYmutUJG9PpuDItar1zkfukyuo8Dli5FmsZOrYyluZqa/LsyVqsK7C1Nn4MPQgsCNjMQiBNyj24MLinPp/KD8V5hM6koH2HIKTSCV332J/qkROtepGzta1HV6BZivmapl6lSFsPm4zZGXZlVhbU2PmIXHxLt3XcTHogSx8KPbJ1HGrqxNc08apwHH37FsXGyyiqTyupZDVkWdvygU7dzufXYOpe2jpC1O2Nomq3XKDslz4mPUWA32N1dlrBfTchT677SCuDk+U/LYMCrKynfYqwKkdu49ZUpqYClRUo25hDuxKCxeLj12Pb6/UzSsVxvLalaTH5p39+/eW2vHvxs13q5a8e6qrB01LTbVp+OS29la7C3LyLNjc6i1gOyjuPh37zT7adcFZzWQq7ht/lxOzdvXtuN5X/j5t9xWoBLlwC3xGw1ljvy+HvWvpKLOz2tAB7bM7bgk78yCQST39Je0aURtMtb10IicTM+4+XmooiJg5CIiAiIgIl36T0tMvJFdrOlFdORk5DVhTZ5GJRZk2LWG7eYy1lQT6FwSNhLlo+gDV8tKtNxMuirYC92Zs5KSQxR3eqivy1bhts3z32O3YBi0TJ9I6F1PI96HuWbW2LUzFWw8jk9wFLrjAcN1uau9LAvrsQdtjMcvpet2rsVkdGKOjgq6Op2ZWU91YEEEH6QOuIiAiIgIiICIiAiIgIiICJsb2adHxdQ6s0TDzaK8nFvymW6i0cq7FWi5wrr/AAhyVTt909DP8BvR/wDm7pX/AHZYHlbE9OeqPZs6Mz6mrOjVYjlSEvwLLcW2skflqqN5TsPkLFI+6QY9o/weyekNTTGaw5WDmK9unZfHi9iIyrZRcg7DIqLoDx7EWVsNuWwDVsScns9eyVgU41GodUVvlZlqraul83rxsQHi6LlGsh8jIGw5JvxHJlKt6yQmP4X9NV1mpOntEWtvyk/FWCQ3YD496fjOwHcwPJeJ6N+L/ssdOaxRY+nY9eiaiFJpuw14YbsAeNeRhL9mKiSfiqCt6HcgbGJ/s++H/l+IGD0/r2DXb5N2o1ZeJevOmw1aXmX0v9LKiVqtVvmCh9DA0pE9G/Hvwf6Xw+mNdysXQtOoyMfTcm2i6rHVLKrETkrow7ggiUPs0eEfTOd0nouXmaJp+Tk34zvdfdQLLLG94uG7Oe57AD9gEDzyiSs9ubwUxNIXE1zRcNMXAcrh5+NjqRVRf3ONkhRuK0sAatj2HJKv4Vk3D7NHhH0zndJ6Ll5miafk5N+M73X3UB7LH94uG7Mx3PYAfsAgeeUT0c6R8HOlrOoOpKH0LT3px00XyKmp3rpNuLe1vlITxr5MATt67DeZt/gN6P8A83dK/wC7LA8rYnql/gN6P/zd0r/uyzXfg94WdLZ2b1WLND062vD6jtwcZWoDLRVRp+nh6qwT8C+e17bD5uYHnjE9Uv8AAb0f/m7pX/dlmJeM/g30ti9Oa/k4+g6bTkY+jalfRdXjhbKrqcO6yuxGHcMrqp/ZA82onob7NHhH0zndJ6Ll5miafk5N+M73X3UB7LH94uG7Mx3PYAfsAmxH8C+jyNv3O6X3+mOoP7CDuIHldEm57R/spaamn5WqdNV24uTiVPkW6b5luRRlVVBrLvdvNLXV5PHchASDwChQTvNZ+x34BY/U3n6rq/mHScW73avGrdqmzskIllge1CHrx0SxN+GxJfYMOB3CN8T1dxPB3pOqsVL03ohUDYGzTMS2zb073W1tYx+8mR39sTwO6T0rRr9bxFfSMxbaqaMbGbzMXPyLnG1Pu1z/AGLLUlr70kACuwlGPaBCqIiAiIgIiICIiAiIgIiICIiAiIgIiICIiBXaHqduHkV5FPHnXyHGxQ9bpYjV21WIezVvW7oR9GMrU6gNeTRlY2LiYjUb8a6VvatmPLdn94usdm+Lb127DYSyRArdM1GzHF4r4/vjHfGs5Df7N2Rm49+zbovf+OUURAREQEREBERAREQEREBERA2p7JH569P/AMrs/st89KOvsTKv0nVKMFnTNu07Nqw3rtNFi5VmNamOyXhgaXFpQhwRt2O/aea/skfnr0//ACuz+y3z021zUq8PFycy7l5WLj3ZNvABn8uitrX4jccm4qdhA1b7LXTfVWmablVdU5tmXkPlc8Vb8ts/Ipp8sBxZlMzFlZxuE3O2x/S2nHjhpOHqPUPQ2FkIHsXVc/UlX5inTNPfJ3b/ANWcsYIK/P6EAzAepfbS6dprf3DA1TNv471i1MfExyx3+F7ja9ifLuEPrNF+GPjXmap4h6PresWpXU9z6dXTXuuNh4+ZTfi01ryJIQX5C2M7feT2GwCeviD1GmkaVqOqWIbFwMPIyvLB4m1qa2dag23w8mAXf9aeauveP/WGZmnOOu52O/MumPiXNj4Va7krWMRD5VqKNh9qGJ2+Ik956W9ddO1avpmoaXczJXn4eRiNYoBavz62rFqg9iyEhgD+iJ5ya37M3WeNltippD5YDla8rFvx2xbl32FgttsXylPrtaFP1ECbHsmeJmT1T08mZnBff8TJtwMyxEWtMiyqum6vJWtDsham+vkBsOS2FVCkCY54laBVT4ndE6kg4252HruNdsAORwNLymRz9X45oXf6VoPlMs9lzwxs6U0CvAyXSzNyMizOzTWeVaX2pVUtNbEAsqU0VAn68yOxmG+IvUtOR4pdG6XWwZ9Nw9avv4kEV2ajpWWVqbvuLBViVPsfleh+cDYntJ/mh1H/ADTmf7oy3eyZ+ZfT/wDI2/tN8uPtJ/mh1H/NOZ/ujLd7Jn5l9P8A8jb+03wM7616cxdX07M0zNTzMXNoei0dt1Dd1srJB42o4V1b5FFPylg8Cumb9G6f07SsnY3YC5GOzr+TaqZeR5dyDfsllfBwD8nG/eWHR/ExU621LpbKfbzsPEz9LZiBvYMZffMMd9ySiC9QB/AyST6TasCAHto9X6tpfWWaum6pqOnLdhacbhg5uTiC0pSwQ2DHsUOVDNtv+kfrJM+xhrOZn9IYWTnZeTm5L5GcGyMu+3JvYJlWKga25mcgKAAPukS/b3/PPJ/kOB/uZKX2EvzJwP5VqP8AbLYGlvb4631rTepMGjTtX1TT6H0PGtanC1DLxamtbP1NGtauixVawrWi8j32RR8psX8Hfl25GgaxffbZffdr+Rddda7WW222YWC9lttjktZYzEkse5JJM01+Ec/OnT/6P4v946rNvfg4Pzb1P+e7f7BgQNoePHhzrHUH4v8AxV1LndO+6e9+8e5nKHvnn+7eV5nu2VT/AIvybNuW/wDj222+cdvHvwj6n0Lp7UdSyuvdY1LHrWmm3Att1Fa8qvMyKsR6rDZqFiFOF7EqwIIUj5yQftAdZ9T6QdO/c5oY1r3j3z3zeu+z3byfdfd+9Nihefm3+v8AzXb0kcfHfrPxB13Q8rB1DpJsHBXhl5WTVj5XJKcPe9iTZcVVBwDE7eiGBJH2TPzL6f8A5G39pvlg646E6xyessHVdO1psTQKWwTk4TZ+Warq6v8ALE/FoQ47tYhKgnbuQ24IBl/9kz8y+n/5G39pvmS6R11j36/qPT7KK8rBw8PPrPmA+842TyS1lr2BTyrfLU+v+UVwMh1zUaMPFyMvJda8bGotyL7G24pTSjWWMd/kFUyP34PnqDGyelmwa2UZOnZ2QMirdefDKbz6L+IO4rbeysE/PHf6Tp/CCYOsP07VfgZNi6ZTkBdZw61QedXYye6ZFln5ZoqvUKax2JyKmI+z3ES/Zw0bqnJ1S+/pOx6tQwcOy+x/MSuq2kvWvulnng0XNY5UrVb2PlFv4G4CeXj54TZPUnut2Fr+o6Ll4auKjjWW+62cyG5WU1W1utu4AFin0+R2kMvai0PrjATT8bqjLfUcDGayvTs+tltx7LLFUut1/lpc+Vwr7e8fFstnEkAyUPgT409Q6hqdehdR9M5uBmMt22oU4uTVhjyK3s3yK7wRVWwr4i5GYFrKwFAbtn/tJ6TRmdI9RV5CB0q0nNy032+HIwqHysd1PyYXUp/rHzgeVcREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQNh+zfruJpnVWjZ2dcuPiY+SzXXuGZa1ai1AzBFLbcnUftk5PETx86PyNH1ainXcWy67Tc6qqtUyCz2WYtqIijyu5LMB+2ebEQERECZvs8+1xj1YtOm9U+cr0ItVWsVo+R5taDZRn01g2m5QAPNrDct/iUEEmRGN429I2Vixeo9ICkb7PmVVWftqsIcH7iJ5VRA9A/F/2udC06i2rQydY1Aq61uK7a9OosGwD322cHyAN+QWnseJHNd95F72d+vVr66wNe1/P2D26jbm514JHmZGm5tKErUvwJ5llaBVGwHEABRNOxA9D/Hfxy6Tzumtcw8TW8W/JydOyaKKUTI5WW2JxRF3q23JPqZRezd429K6d0ro2Fm6zjY2VjYz130WJkc6394uPE8aiPQg7j6zz9iBvP2n/ETHyOtV1zQM5bvda9Osx8qpXCC/GQMV2sUc132Uj0O7A/OS96R9pfpLLwMTJytVx8HJuorfJw7VyC+NfxHnU8hVs6rZyAYeo2PznmfEDcftidVafrPVORm6ZlJl4pxMOoXVq4QvXT8ajzFBOxO2/wDH9JIT2QfGHprSOlcPB1LV8fEy6sjNayi1L+SrZkvYh3WsqQUYHt/8pBiIG+vbh6z0vXOocPL0nMrzcerRsfGe2oWBVvTN1G1q/tFBJCXVHt+lNl+w14p9P6HoeoYuranRg5FmqvkV12rcS9LYmJWHUpWVI51WDb9X75DqIHqJ/wCkN0X/AJwYf/u5P/BmOeKPjz0hk6FrWNRrmLbfkaTqNFFSpkcrLrsO6utF3q23Z2A7/Web0QPQL2bvGzpXTuldGws3WcbGysbGeu+ixMjnW/vFx2O1RHoQdx9RNOeJvjNgY3iTh9Q6XljL06qnDxcyykXBLMaytqsxArKptKV2cwPTlUnzWRgiB6c6z46dCZuNfiZOt4N2NlU2UX1OmTxspuQpYjfZbgFWIkefZm8W+l+jcvWtIvse/GyNRNmN1Fjo99eRhVpxxKsrHWpbq/LBsbesN8WTaNtlBMTIgeqlPjf0g9QtHUek8Nt9my60t2//AEXItB+7aRp9rL2mcHU9Pu0Lp5rLqcrZc/UmSyhGoVgxxsWuwLY3NgA9jADYFQDz3EQYgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgcxL5puAXwMmwVWErZV9oEVk4DlyAPllkK+pIPzXcdpd00bDryK14WuvvNuMVe1PidFQoe1f1Yjj/F3mFvERXMds+kRP8Abnv4mtcxjln0iJ/thcSq1Krhc6eXZTsR9nad3XcA/EeK+vr6fMS+ZGhUhaCWsq80qLC5qb3Y+TzCWAlQWsPxLuR27dzvte2pFcZ6tLata4z1YzEzjQNGxRzBK5CiytLWKglKXTcvvW7JSoPImwnt5Y29TMIb1MjT1ovMxHRXS141JmIztj1cRETVsREQEREBERAufTGPVbl49d3Lg9takKvLlu6jifiXip323H9UvlGlU5ZNm9jB7TSHqopx68YJWH82+qssvl/ER6jtU5J3ExJWIO4OxHcEeoP3TlXI3AJAI7gE9++/f69wD+yXraI5ww1NK1pzFsLrrmJjUqqIbfP8vFsblx8thfji5woA3XiWQDf15H049+7p3Gr911LJZFsfHoqrqRxyVDlWil8gr6EohZRv6NajeqiWNmJ7kk+g7/QDYD+qd+BnW0eZ5bcfNqemwEKyvVYNmVlYEHuFYH5FFYd1ErM5a1rMRid1/wATSFuq08GuytLLra7H4qSw40Mrq3AdjybZTv8AknvOzF0vFKWMtF9xfEW+qtbVFikZS0OAVqIc7Kzb7enIbfOYz7zZsF5tsNthyOw29Nu/afK2sNiGII7AgnsO/YfT1P8AXMeCe7n+Df8Ad/PeZfVSb2KvB23cL5anaxt2A4KeJ+M+np+yZjrPTlT5zrZz0+psTBvqV1wau9uHjtYn77yMSt2V2YMU77qxKiYUrEEEEgg7gjsQR3BB+Rlfp+PfnXLUbt24WubL3cpXVTW99zsdmbitdbtsoJ7dhvNXUzbN6dwq9KscIH44j315qpYWOVXqJxuFl6XNjBWr2rWmvnvs9nIAKWtnSmi1tquPQcTLZLMaqzhfXWSrXY6Mch6zU62YvJyV32/Kr+IETELHIBrD8kDEjYtwY+nMKwHqPmRvKrN1jJutN72sLCiV71BaVWutVRKkrpCpXWqqoCqAOw7QK1dGVcG/IbzHyKrhS9CbIcIBlBuzFdeZV2JqUKNgT8Tg7K2Q9UaVRZk6ea8O6jHy8m6lMSrDONqRRbKdgEtusS8lbQqWDYEpaCBtMEdySWJJLEliSSWJO5JJ9Tv3lXg6nfTemUj731nkllipcVYLxVtrgw5L2Kn5FVI2IEC+6NpXmaZqtgxrjZQ1JFzVqwRFuUWV/wCK5VWKjFnIb023XYbzs/cti89LX8Y45GagZ9kzdzvmZWPvTvh9lIpVPj78uR247GYwuZcAyi2wK5YuA7bOWGzFhv8AESPXedEDLcbSaEv1TC5V5FdeNk3V5CK4ei3C52IC1tSN8WxpZQNibVI3KgzEpU4+bZXXdUhAS8ItvwryZa38xU5kchXzCMVHYmtCfyRKaAlTplSvait3BPf5f6xKecqxB3HYj6SJjML6doraJmM49V2/F9Vh3RiASF+EFlD7EnctsQm23/xfSdfuauKBx4Fw4JHI8mH5G/I9tzt6fWW9LGAOxI39dj6j6GdtWZYpXuW4/khtyoO2wIB7dpnw27uyNfRnnTGeePOJ+m0Y27q8aSnE7u3IbjbiNuQVSQTv22Ztv9GcPpKLvu7bLy5HgO5VeW6d+6//AOg/OW03v+ke5J9T6n1M4Nzn1Y9ht6nsPp/FHBfumdfw+NtP1lcF06soWV2I+Mr8HbZNj8R37E77f1fWVFmn1C7Zdypa5QpBIUpt9G3I2Yd/ulqOSxQV77KCTsPmTt6/X0nCZDjuHYHv33Pz23/2D+qOC3c/EaET+jt6c1diaarqDyIJYBhxHwgsE37ndu5+U6NTxFq48WLBhv3AB/1H6EToOQ/pybbfl6n1+v8AHPh3J23JO31kxW2czLK+rozThim+2+ffN8RETRyEREBLloNfJrBxU/ZWgMWVeJNbhduR2O52H7ZbZzL0tw2yreMxhkGBjY4NBIHMNQ7kuCDvcUdSp7ABQD/5RhYWJYvM/DyRT5fmLug52qzAsRudkQ9/0/TYzH4m8eIrtmsMZ0Z3/NK6vXSDUiV87CtTk+ZspJXd0Ppx77f6/rKvJqr3zFNdbv5vNGNigmsmz4lIIHb4TsPqO3aY/G8iNeI6fx28lp0p7/z382QnAxlRGPFmCEsFsADnyuY/hFh8QI9B8xKfKxKVWw1qrnkfW5R5ScEZSBuDZuzMP9D6mWbeJNtesxjhhFdG0TmbSuuv4tFYTyTvuWG/JWDKOPF+xJDHc/8A0JaZzOJjqWi1sxGGlKzWMTOSIiZrkREBERA53jecRATnecRA53M4iICIiAiIgIiICIiAiIgIiICIiAl86MzEqyLEseuqvIxczGNtlYYVvfiX1UtzVGspXznrDMnyLA7qSJY5f+gq0szq6LK0sqyEtptDoj8Eapj5ylvirasqH5V/F8BA332IWKxeJI3DbEjde4Ox9R9QZ8z7uQKzKGVwGIDryCuAdgyh1DBT69wD37ifEBERAREQEREBERAREQEREBERAREQEREBERAREQEREBETMPBvTNFzNZw8bqDMtwNMtcrbkVBfyyv2KW2sCMalrOIa3Y7fPYbsoYfElJi+zFg4OsW4OuapbVpupU+V03q2PUnu1+oWnlTRnXEmujJFa/DS2wt5ny7Ay8ZS9KeyjlY2ZnX9VZtGm9P6Zu1mfTfWHzk2BQ43mA+71/EAzWjffZFVidwEZYkjNN9nXDwdL1LW+ptXs0rTwuRVoYbH8vOzbDz9xycjBsJsr8xFD+5j49ixZkFZJj/o+l5OZatGJj35V7b8acamy+1gO5411KWOw+kCjiXn9yuqe8vh/i3P97rTzLMX3PI95SvdV8x6OHNU5Mo3I/hD6z5v6X1NKWyX07OTHUEte2JkLSoDcCWtKcQOXbvAtES64fTmoXUHKpwM23GUOzZFeLfZQFr3NhNqoUAXY7nftsd523dKaolJyH03UEoCeab2w8haRWRy8w2FOITj35QLLEuC6JmHGOaMTKOGp2bLGPacYHmK9jfx8sHmQvr6kCVOm9K6pk1Ldjabn5FL7hbaMPItqbiSrcbK0KnZgQdvoYFmiVubpWVRcMa7GyKcklAMe2myu4mzbywKnUOS242+u4lZqnSuqYllFWVpufjW5LBMau/DyKbMhmKqq0JYgNrEso2X9IfWBZol3/czqXvHun4vzvevL833b3S/3jy/+c8nhz4frbTn9y2p8ef4uz+Hne78/c8jj7x53u/kcuG3nef9nw9d/h23gWeJddW6c1HDQWZeBm4tZPEPkYt9CFiN+Ia1AC2wPb7p2fuU1TyRk/i3P93NYuGR7nkeSaWUOLRbw4+WVIbl6d94FmiXfSumNSy6/NxdOzsmrkV83HxL7q+S7cl51oV3G47ffKleidZJIGkamSu3IDAytxv3G48vtuIGPxLzl9K6pU9Ndum59T5D+XQlmHkI91n6FSsm9j9/RZ0a7oWdgOtedh5eFYw5LXl492M7L+kqXKpI+8QLbERAREQESo9zt8zyvKs807bV8G5ncch8G2/cbGdLKQSCCCCQQexBHqCPkYyPmInZRS9jBEVndvRVUsx+fYDuYHXE+nQqSrAgg7EEbEEdiCPkZ8wErdJ1K3FdrKeIsap6g7IrsgsHF2r5A8LOO68h3HI7SiiAidzY1gQWFHFbEqthU8GI9QG9Cex7TpgInYaXCB+LcCxUPseJZQCyhvQsAynb9YfWc3UOnHmjJzUOvJSvJD6Mu/qp+o+kZHVERAREQOdp2NQ4JBVgVG7Ag7qO3cj5DuP65U6HmjHyKrmXmK232BAP/tKSDxceoP1Al/wupaqi/fKs+0S1WZ1DX8auHk5PrvTvvt69mcbfF2tWInnLDV1L1n8tc/VYMXS77FR1T4HsFSszKo5kE99z2UAHdvTse8p7Md1LfDvxJBK/EvYgH4h2I3K9/wBYfWZW/VFLGj/KUFdtdp4spFYro8ryqF3HFNwP2Ntt279DdSVpzSvzvKsszndSQof3vFWmvmqnY8LOR/iI+ctNa92VNbVmd6sasodQGZWCt6EggH+I/OdUzLxEzqrhUKshbFFlzCtSzbBwgFhZnPDcKAKwBtxPwjeYbK3jhnDXw+rOrSLzGMkREq3IiIF103QMu80cabETIfy6brEsWh3+L4Vs4kMfgbsP0T9J9U9O5hNwfHvq93qe202Y+QBWFqa1Q/CsmsuqnYtsO+5IHeXbTusvJ8phjb2qMRLm89gllWEvCkV18PsbCoTdtz+SSAORnXj6tQzG4sKEx8HJwsfGJtuvsF+PkVqzXCsVna3JdmJ49gAqzl49XinMbdOvv3PyTssZ0nKAqY41/HIIWhvKs2uY7bCo8ftCdx2X6yrPTWeKrrjiZCpjsqW8qbAycq3tLMCvZFRN2J9Oab/lS7HrRtqPsADWKkuCmmtbkqxLMIENVQtyWeTbZszM2xY8QB2lpTU8dasqgY9vk3NTbUDkKbKraKr60Z38kC1Cch2KgL6L37S8W1esdvn136x0NlDmaffStbXU21LaOVTWVui2LsDyrLABxsy9x+kPrKWXnqHWUykoUUlXqBD32Oll1o4VoqM9dSFkUV9ufI/ERy2lmmtJmY/NGJQRESwREzDwdo0GzWcRepLcinSeRN744Ykso5V13GtTauO7DixqHLZuxHqAlV7Bl2o6npGqafq9b5vT1a1V4lWfi13YfPkzX0VX3Pu9a8UY08SqnYhlPZpK1YPvl+XXqWJTdj4uoYt2mDJw8fij04tFi5GO/vFptsTIe7jaVrIPJQpC8jE2r2g+mdTy7cLUsfJ0/pTScZbdK0bEoUVaxkYz/Z0alVQQDV+Q1eIxFRKsbmOwn1ontN6V1Hk5GmdVYC4GmW5KZGk6hiWXe9aNk0D97XtkVjzEyVbcrk0gbFyrIa2O05Q097W2u6zl9TZ9OrtkhMS62vT8e+kY1dWGz/Zvj0pbYhSwKp84MS3FST22Gx/YK660TSm1nH1HIq03MzVxvd9SyNhQtVYuU1PfYPKxtrbEf7QgNuoJ3UCfes+L/S/Vml5+ndVe8LmaYuXZoeu041a52bXUW8hLaaz5VWZci186WIrYkkMjKpmpPAbxhyuk7M004GDqFGopTXl05iPyKUeaUWm1W2rBa0lgwIPFe3YSEpx9LaZr9PW2NZq+dh6hht0tqdWn34mKcMs6arotmU2VSbbAL2W3GHJG4kVjZQQd8k6b0mjUemTpmSwFepUangnc/EfPszQ3D9dUDuNv0N/lIan2tNbOtrrDYOAa6NOyNNxNP+2FFFeVkYeTfebQ3mW3scHHX5DZBsoO+9P/AOlTrAxtNx68DBqOmagufXYrZBa3vki2hwX2FdlWXbWSO+zQJd6V0uuh9BX6MfLXIwumcw5aVtzUZORh5VuS6ttuyNlHJ2P3S/6LqFmLp3T+RZqGBg6dVplbaiM3ij2oMCnyDRkPciY/l2fE5YHcdu3rIUZ3tW6xcuupZgYLDW6fII5ZG2HV7j7lwo+PuO72/F/Ctf5TDPGLxpzOptP0nT8nDxcevSU4VWUG0vb9hVR8fmMQO1QPb6wJReM2dpuT4adTX6OEGm26tyxvLXjU3/2iwRfZUvoKnyBc6gfJ12EvHsy6l7p4a6bf+NMLRuFuYPxhqFS34lPLWsleNlb5FIJffgPiHdwe/pI2+DvtNaj01pFOj4+mYGVTTZfYLchrxYxvta4hgj8ezN2/iEyDQfbE1fEqsq/FGmWrZlZmV8TZI2OXlW5Xl7B9uKG3iD+qPnAr9C8R9Nx/E+3U9Y1DD1XFrxhiUaxg4vDErt9xqK5a0V3XlUQG+lnVjtuWOwB23X4uDWc6zp7UcLWNN1Xpp+r9AyW92oVcims6rj41FS5lN7U5uMuU/E/CrAhAd+JkStQ8e9Qs6qp6sTA05MyihcdMZktsxggpehnH2gdbSljgMD23mTdc+1Vq2o/i6qjTsDT8PB1HC1OzFo8xvfL8HLTNrrts7BKDfWrlUG+4BLQJy5fTOFka9jazW6jUNOxMjTckKBysxczysqlLTty+zsTkny/fF/z9Ndv/APcK/wD7j/8A9ktIuYXtV61Tr2XriYWEPfcDGwcjB5X+7P7pZZZj5PLnzF6edco+W1z9t+86T7T+pe5DC/FuDwGvfj/nzyOfn/j89QeR+Xt5Xnnyt/Xj98CbniPr2BgU6q/UOdpn4kswkRcC5F96c8LfeUIaz99G0eWErRd91PeW/wAMM2zH6Z6PvOdhYWFXoeltn++AA20jR6eC0XNai0OtvFizb9lI2nnf43eJGR1Vqn41ysejFt92pxvKxzYU40lyG3sJPI8z/UJdvErxkzNc0LRdCuw8aijRKsaqm+prTdcMbDXDU2B24jdRyO3zgTu6J1/TG0jqDUNH1DA0zTjrOU1GpXUq+n1WeXg15WQajbUtlNmZ7wQQwB84MD3mtug/GbUruvcXp5NV0nW9NzK7Huz8DD8hWenSsrLWulkzLk+GyusMdz/CGw2kf/Bb2lNR6X0oaTj6bg5VIvuvFmQ14cm7iSpCPxIBWUmr+0Ln5HVWndVnTsGvJ03Dswq8VDcMexLK8+svYeXPntn2en/NrAkp/hvx8bxB1DTdebHowtMpvx9KzPJfbHsy69PvyDluCwRWSoqLtgFHME7OTMD9u3F1yzStLzbNVwNV6ffOd8W7Ex1pu83KossxDbbVbZTl0Lj13hLquO/mHkp3UjTeh+POoYnVOf1TXgYD5Go1mjIxLltsoWlxjLYKG8wPXaVxlHM7/luNiDtOfHnx51HqujEwXxMTTtNw7PPqw8UFuV4rapLLLGA7JXZaqqgA+1bfftsGoYiICduKfjT4lX4l+J15Ivcd3XieSj5jY/xTqiBmn44xKcvJuDY9/m4SqjqmXUFvFK12VKqCooHYMdwNtiuxHcTEWtDWF3UlWfk6qxBILbsFd+RB2+Z3+/edMTLT0opy+UfZWK4d2W1ZcmpHSvtxWyxbXHYb7uqID33Pp8wJlWXl6ea8NaGqpdGoL2nzhZVxpPvAsFWIC/O3vvyf5bAKSBh8Sb6cWxnOxNcsxy8vBY6lvbjsbrrraLRVa1rh1Z0rVbsbZF5sFLBkIPI/EAJSdX5WBZXSuGlYKk915i1a+CgJcpxkVm5Anlyc9277bTGYlK6ERMTmdvmiKdVTW9PlMGrsNxI4WC1RWq7ruGqNRZzty7hh6jt273LpC7FrtsbK47eSRSbByRbedfdh5FoI8vzQN1Pcj09RZJzNbU4owtMZZTm5OK2NeiXUqGz1vqxf32yrSpuQqH8hRw2sVvkdge3LtLnVqGkjIexvd25VV8V8pkx69rbPNqBXALOxr8r4ym/dhz3G5wKczGfDVmMZn7+X+K8DI8rJxfdKAGxrHqyb7BilMgMabfLCpZclSeaQVY8i2+3EA/IUvWWpplZl1tYHl+ZYK2BuPNDa7LYVuYlCVI+EbD9USyxL10orOfP1TFcERE1WIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiIH//2Q==\n", + "text/html": [ + "\n", + " <iframe\n", + " width=\"100%\"\n", + " height=\"360\"\n", + " src=\"https://www.youtube.com/embed/fBlM7pR2r_Q?cc_load_policy=True\"\n", + " frameborder=\"0\"\n", + " allowfullscreen\n", + " ></iframe>\n", + " " + ], + "text/plain": [ + "<IPython.lib.display.YouTubeVideo at 0x7f646ce74370>" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import YouTubeVideo\n", + "YouTubeVideo(\"fBlM7pR2r_Q\",width=\"100%\", height=360, cc_load_policy=True)" + ] + }, + { + "cell_type": "markdown", + "id": "44b461a0", + "metadata": {}, + "source": [ + "---\n", + "\n", + "Written by <<YOUR NAME HERE>>, Michigan State University \n", + "As part of the Data Science Bridge Project \n", + " \n", + "<a rel=\"license\" href=\"http://creativecommons.org/licenses/by-nc/4.0/\"><img alt=\"Creative Commons License\" style=\"border-width:0\" src=\"https://i.creativecommons.org/l/by-nc/4.0/88x31.png\" /></a><br />This work is licensed under a <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-nc/4.0/\">Creative Commons Attribution-NonCommercial 4.0 International License</a>." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "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.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/References.ipynb b/References.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..5bb8e7ef7bbd4be05039cbc2e75d0a167239c8de --- /dev/null +++ b/References.ipynb @@ -0,0 +1,202 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 32, + "id": "fc73d74c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "('answercheck.py', <http.client.HTTPMessage at 0x7fc9a8612220>)" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "##ANSWER##\n", + "#Install answercheck in current director\n", + "from urllib.request import urlretrieve\n", + "urlretrieve('https://raw.githubusercontent.com/colbrydi/jupytercheck/master/answercheck.py', filename='answercheck.py')\n", + "##ANSWER##" + ] + }, + { + "cell_type": "markdown", + "id": "3c2a4f39", + "metadata": {}, + "source": [ + "# References\n", + "Understanding References and their purpose " + ] + }, + { + "cell_type": "markdown", + "id": "2b78245b", + "metadata": {}, + "source": [ + "Understanding the Reference: \n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "id": "71e867d9", + "metadata": {}, + "source": [ + "## Description\n", + "A reference variable is an alias, that is, another name for an already existing variable. Think of a variable name as a label attached to the variable's location in memory. You can then think of a reference as a second label attached to that memory location. Therefore, you can access the contents of the variable through either the original variable name or the reference.\n" + ] + }, + { + "cell_type": "markdown", + "id": "89c2fa92", + "metadata": {}, + "source": [ + "## Learning Goals" + ] + }, + { + "cell_type": "markdown", + "id": "58ec20e8", + "metadata": {}, + "source": [ + "## Self Assessment\n", + "\n", + "Questions that test for the learning goals and allows students to evaluate if they truly understand the topics." + ] + }, + { + "cell_type": "markdown", + "id": "0234bfdc", + "metadata": {}, + "source": [ + "✅ **<span style=\"color:red\">Question:</span>** Based on the code below what will be the output of the variable meal:\n", + "\n", + " string food = \"Pizza\";\n", + " string &meal = food; \n", + "\n", + " cout << meal;\n", + "\n", + "1. \"Pizza\"\n", + "2. \"food\"\n", + "3. nothing\n", + "4. error" + ] + }, + { + "cell_type": "markdown", + "id": "d030f312", + "metadata": {}, + "source": [ + "✅ **<span style=\"color:red\">Question:</span>** Based on the code below, what should be done to change the value of the variable GPA without changing the variable directly:\n", + "\n", + " #include <iostream>\n", + " int main(){\n", + " double GPA = 3.14;\n", + " std::cout << \"My GPA is: \" << GPA;\n", + " }\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "daaf2d04", + "metadata": {}, + "outputs": [], + "source": [ + "#Put your answer here" + ] + }, + { + "cell_type": "markdown", + "id": "5d237ca9", + "metadata": {}, + "source": [ + "## Training Materials\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "id": "21f9b14e", + "metadata": {}, + "source": [ + "Reference Variable In C++ in 6 minutes (https://youtu.be/NGKt3Xwlobg)\n", + "\n", + "References Materials (https://www.w3schools.com/cpp/cpp_references.asp)\n", + "\n", + "References Material (https://www.tutorialspoint.com/cplusplus/cpp_references.htm)" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "9cc2b34a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "CheckWarning: passed variable is <class 'int'> and not a numpy.matrix.\n", + " Trying to convert to a array matrix using ```A = np.matrix(A)```.\n", + "\n", + "\n", + "CheckWarning: passed matrix is int64 and not <class 'numpy.float64'>...\n", + " Trying to convert to float using ```A = A.astype(float)```.\n", + "\n", + "Testing [[4.]]\n", + "Answer seems to be correct\n", + "\n" + ] + } + ], + "source": [ + "from answercheck import checkanswer\n", + "checkanswer.vector(x,'2cab95d1b144d663bad1ce5c51020ae0')" + ] + }, + { + "cell_type": "markdown", + "id": "44b461a0", + "metadata": {}, + "source": [ + "---\n", + "\n", + "Written by <<YOUR NAME HERE>>, Michigan State University \n", + "As part of the Data Science Bridge Project \n", + " \n", + "<a rel=\"license\" href=\"http://creativecommons.org/licenses/by-nc/4.0/\"><img alt=\"Creative Commons License\" style=\"border-width:0\" src=\"https://i.creativecommons.org/l/by-nc/4.0/88x31.png\" /></a><br />This work is licensed under a <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-nc/4.0/\">Creative Commons Attribution-NonCommercial 4.0 International License</a>." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "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.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}