<snapdata remixID="9404936"><project name="Lab 4.3 Starter" app="Snap! 5.4, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="false" codify="false" inheritance="true" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAgAElEQVR4Xu3dX4hlx30n8Kqrl+ke21kWwRqsGBYMsiCwDwlZQkzsB+MxevCM9WCBcPBiY5DMMh6DidgFB0GyC/Iar2yCZBCrJ2MjLVgzQ2KswQ9a8MPaTzEEbEHYB8UBGfyw2Xim9dKnlro5dak+c+7f6b51u+8nEDSevudU1edU9/f86pyeisH/ESBAgAABAlsXiFtvUYMECBAgQIBAEMAmAQECBAgQaCAggBuga5IAAQIECAhgc4AAAQIECDQQEMAN0DVJgAABAgQEsDlAgAABAgQaCAjgBuiaJECAAAECAtgcIECAAAECDQQEcAN0TRIgQIAAAQFsDhAgQIAAgQYCArgBuiYJECBAgIAANgcIECBAgEADAQHcAF2TBAgQIEBAAJsDBAgQIECggYAAboCuSQIECBAgIIDNAQIECBAg0EBAADdA1yQBAgQIEBDA5gABAgQIEGggIIAboGuSAAECBAgIYHOAAAECBAg0EBDADdA1SYAAAQIEBLA5QIAAAQIEGggI4AbomiRAgAABAgLYHCBAgAABAg0EBHADdE0SIECAAAEBbA4QIECAAIEGAgK4AbomCRAgQICAADYHCBAgQIBAAwEB3ABdkwQIECBAQACbAwQIECBAoIGAAG6ArkkCBAgQICCAzQECBAgQINBAQAA3QNckAQIECBAQwOYAAQIECBBoICCAG6BrkgABAgQICGBzgAABAgQINBAQwA3QNUmAAAECBASwOUCAAAECBBoICOAG6JokQIAAAQIC2BwgQIAAAQINBARwA3RNEiBAgAABAWwOECBAgACBBgICuAG6JgkQIECAgAA2BwgQIECAQAMBAdwAXZMECBAgQEAAmwMECBAgQKCBgABugK5JAgQIECAggM0BAgQIECDQQEAAN0DXJAECBAgQEMDmAAECBAgQaCAggBuga5IAAQIECAhgc4AAAQIECDQQEMAN0DVJgAABAgQEsDlAgAABAgQaCAjgBuiaJECAAAECAtgcIECAAAECDQQEcAN0TRIgQIAAAQFsDhAgQIAAgQYCArgBuiYJECBAgIAANgcIECBAgEADAQHcAF2TBAgQIEBAAJsDBAgQIECggYAAboCuSQIECBAgIIDNAQIECBAg0EBAADdA1yQBAgQIEBDA5gABAgQIEGggIIAboGuSAAECBAgIYHOAAAECBAg0EBDADdA1SYAAAQIEBLA5QIAAAQIEGggI4AbomiRAgAABAgLYHCBAgAABAg0EBHADdE0SIECAAAEBbA4QIECAAIEGAgK4AbomCRAgQICAADYHCBAgQIBAAwEB3ABdkwQIECBAQACbAwQIECBAoIGAAG6ArkkCBAgQICCAzQECBAgQINBAQAA3QNckAQIECBAQwOYAAQIECBBoICCAG6BrkgABAgQICGBzgAABAgQINBAQwA3QNUmAAAECBASwOUCAAAECBBoICOAG6JokQIAAAQIC2BwgQIAAAQINBARwA3RNEiBAgAABAWwOECBAgACBBgICuAG6JgkQIECAgAA2BwgQIECAQAMBAdwAXZMECBAgQEAAmwMECBAgQKCBgABugK5JAgQIECAggM0BAgQIECDQQEAAN0DXJAECBAgQEMDmAAECBAgQaCAggBuga5IAAQIECAhgc4AAAQIECDQQEMAN0DVJgAABAgQEsDlAgAABAgQaCAjgBuiaJECAAAECAtgcIECAAAECDQQEcAN0TRIgQIAAAQFsDhAgQIAAgQYCArgBuiYJECBAgIAANgcIECBAgEADAQHcAF2TBAgQIEBAAJsDBAgQIECggYAAboCuSQIECBAgIIDNAQIECBAg0EBAADdA1yQBAgQIEBDA5gABAgQIEGggIIAboGuSAAECBAgIYHOAAAECBAg0EBDADdA1SYAAAQIEBLA5QIAAAQIEGggI4AbomiRAgAABAgLYHCBAgAABAg0EBHADdE0SIECAAAEBbA4QIECAAIEGAgK4AbomCRAgQICAADYHCBAgQIBAAwEB3ABdkwQIECBAQACbAwQIECBAoIGAAG6ArkkCBAgQICCAzQECBAgQINBAQAA3QNckAQIECBAQwOYAAQIECBBoICCAG6BrkgABAgQICGBzYG2Bq1evXokx/qgcmFL65K1bt95Y+0QPeMCnPvWpfxNjfDPG+OEQwm9ijB9//fXXfz522vLZEMKbt27deiZ/5urVqy+FEG5u0vd8vslk8krXdZ+/ffv2rx9wKFs/PI89xvh0SunLt27d+nbpwNWrV6/HGL+V/3dK6TvFausd1CCBPRAQwHtwkU9ziJ/+9Kf/XUrpxa7rnmgdPDks8tjqAJk31j4wfxBC+L8lNPcxgD/xiU9cPjw8fC2llEP3WgjhF8Wvv0l57ujo6KuXLl16T765CSHc2OQG5TTnnHMRuKgCAviiXtkzGteiAK4Dsf9B/3KM8fm+mvqvIYR/lVL61zHG2yGEP1tWOZewCCE83p9jWK2tXMGWijWE8D9TSu/LoVMCeDKZvJNSevbevXtfvHPnzt0yjpTSq7nK7Sn/MMb4QkrpL3PVWH3t7/JYhhV4qTCH/e4rzA+klD7VV+4/vHfv3mdKu1X1+cuU0sdWucnp+/vMqp+vqt3sNwvg4ZR5kBuUM5p+TkvgQgkI4At1ObczmGr58sQS5ZIA/nEI4ekQwudTSm/nH/zLqtc+AKYBMajcHi1BVUa8bLm0WjL+TzHGZ3KVd3Bw8I28BL0ogPsqMAfVYzHGD4YQXkkpfTyl9Fz5Wh/meVn+eg7Tg4ODL5Sx1f3OleQwLEvIpZT+dtMl7bMI4LJiEGP80rxl/e3MNq0QuLgCAvjiXtszH1kVxNNnwEsC+Nmu674ymUz+e66Ku6776KIArivoEgDDJed1KrT6mW2M8ckQwlv9EuzCAC6hGGN8Lod1j3otB3AdmOX8x8fH//Ghhx76q1K1VzcI9xnVF6iq9nOlPfdZ9mle1PoGZ6wvKaU3VlneP80+OReBfRIQwPt0tc9grP0LWfMqv3oJemcC+KGHHnp/SumpvBS9rAJeNYD7pfm8jH3j8PDwhXyTMVY5Lntuvc0gHgvgqmJ/2wtYZ/AN45QEKgEBbDo8kED/TPNKtfT6WP7B3f/913I1lxvIz1jXqYDzMXVAVG8xz14K2rQCzs9Vr169+p9jjH+cX0bql6CnL5b14fzjlNJflOe8+aWtZRVwH6yzsecl67EAWxbA5WKsM7bTXILu280vtk3fFPd/BAicnYAAPjvbC3nmkV9Bmr0sNPi1oO9ngOolrLUDeHC+HOIP/BJW9Qb09Fepyotg1XL6L/NLYimlf1wWwNWvQOWhzl6mGnl5bGY0L4D7Cjo/J3+4nziz8y2bSOsGcP2CWH/u6a9wdV33/vrXy9btx7J++joBAicFBLAZQYAAAQIEGggI4AbomiRAgAABAgLYHCBAgAABAg0EBHADdE0SIECAAAEBbA4QIECAAIEGAgK4AbomCRAgQICAADYHCBAgQIBAAwEB3ABdkwQIECBAQACbAwQIECBAoIGAAG6ArkkCBAgQICCAzQECBAgQINBAQAA3QNckAQIECBAQwObARgL1bkf7sGF7P95vZayU0nfm7RZUbcQQ8g5Rd+7cubvqDkjzLsQ6OyNtdDHP8KDitsisbn64AUcIYbpRxD7MsTO8DE69owICeEcvzC53K4fMwcHBN2KMP8176l70TdtzKJR9gfNWhouuTR/AL6eU/u1kMnk6B8e+BnDZTrL3Gt2ecWi5jvUuf4/oG4FVBATwKko+c0Kg3zrvqRjj9/I+v/fu3fvipUuX3jOZTH4QY/xSqVbq4BnZou+Tt27deqP8wA0h/F0I4c/6CnP6teEWffV2hMNtEetKqd5ub7iF4YIq83qMcVrh1lsL5v/R92M6zlzRrhLAIYQ7eU/gmzdvPls71NVsHTb9fsN5+8anQwhfTyl9Ksb4f/p9lr8xmUx+lVK6kbcrrMdUG6WU6m0P83aLnwsh/E4I4fH6a8u2eZw3vtJWSumz+fqs+m1R75W87BgBvEzI1y+SgAC+SFdzS2Ppf6C+dXR09JPDw8OX856/w0qvVILV114KIdysQnca1sfHx+/kfXVDCC/lSnpe2NXny8fUYV8qrXz8WOinlL69KDD6ML8+WDJ+LKX03GDP3yy8cEm0qoD/KoTwp/05nswH9v0bOryS9yjOARxj/GAI4ZUQwndyyMUYr9dfy/2rb3R6h+nxuTKvx3FwcPCRGON3y/Lt4CbgeunPOlNmWwFcm6+6dL3OOHyWwK4ICOBduRLnpB8jwTr7YV6H5+XLlz9UV8fzgmwYIjXDvOeB8wL46OjofxweHr6WK776PCmlaUW9qPqtA2l4E7BJBZxvPPIG9yGER0u7ywI436D0n72Wg7sse/fV8fTmJX+9VNH5zzHGHw3G9cO+av5ICOHa2LPqsnqwrXBbpwKux1JWTVJKb1z0xxzn5NtfN09ZQACfMuhFP91wWbgf7/SHfl6evXbt2vN5abrruo+GEN6ql5lLpTYM2XnPV/ugyZXjM3Xw37179+8HQTttP5+3rshXvRbDZ7SnFcB9dZ+D9Fdd1/3zaQRw7dAH/NyQnRfAxWVbQbxpAPc3GxtV66tee58j0FJAALfUP4dtD8Nq+Mwu/1CfTCZ/0HXdI7mKKy8t1cvEawbwL/rgys80p0uq+fhSXQ+fyW7yw35kCTovE0+DP/930wo4L8tfu3btP4QQPpFS+t9VAJcx5XY+llL6WKlyl1XAfV9e7LruifzZ4XP3OlyXBfC6YzvtJejqfH8xVuGWFZAQwo11njmfw28rXd5TAQG8pxd+k2FXS4InnqkOXyzqn+m+WS9/jiwnT6vW/pnm7Dlm3a9Btf39/LW8tDtSAecv1VXwbBm6fvlo0ZjrF7dO4yWs8ux7GDKDMX09hPB75TnvoiXo/uWsPIQTz6CHL6OVF7Ty3y9Ygn6pOl++mVm4RF/c1g3g+le3yjnqtsYCeOTFu5X6tsl8dgyB1gICuPUV0P7aAsNw6avwE29gr31SBxAgQGDLAgJ4y+Cae3CBkWp65SruwVt3BgIECJyOgAA+HUdnIUCAAAECawkI4LW4fJgAAQIECJyOgAA+HUdnIUCAAAECawkI4LW4fJgAAQIECJyOgAA+HUdnIUCAAAECawkI4LW4fJgAAQIECJyOgAA+HUdnIUCAAAECawkI4LW4fJgAAQIECJyOgAA+HUdnIUCAAAECawkI4LW4fJhAGwEbE7Rx1yqBsxQQwGepewHPPeefgfzypvu1Ds4329ZwHbpFGw+sc57Wn12069K2Arja3GH0WtSbVpSNH+a51RtFLPtsa3vtE2ghIIBbqF+ANodb+D3okNbZ8m/Y1j4E8IP6rnt8v5PRlbLPcz5+02s03MJy3b74PIGLKiCAL+qVPeNxjQVw/kE7mUzem1K6EUJ4OKX0nXpLwsH2dCcqrLEf7vUP7noj+rzP7si2dbO25lVpw+p9laps0ZjqPtTbHpZtG0MIj5fLUCxGtg/85NHR0U8ODw9nWyhWx0xXFmq3eju/4d7HI3szz7YdrMe6isPQO/dp3o3OwPuXeX/jsg90f9z1/N96lWRRHwZGG62KnPH0d3oCpyIggE+Fcf9OMi+AQwjP5B/AWaTeLH5ZxbxOAB8fH78zPHfZ+3YktF9LKU33L96kEuuPuW9MfR9m+xjX4zs4OPhCCOGxfPPRj+vFruueqEMp+wwDc1mFWe+7PHZ8HZAP6lBv8ZjbSin9ON9UVTcH9wXtvJAec593LYYGw5uM/ftOM+KLLCCAL/LVPcOxLQjgaaUzrKCG4THs2joB3HXd++vN5kvwHB0dfXVOJTnd1L1UVsPKfBHTvCo89yHG+KPBsdNqbVEAj1TusyBbN4D7wHsphHCzH9/0zwsq6qUOdfU+soJxpXYvYx+sbOSwvm/lY1gBz7sWw3P14X/ifGc4rZ2awFYFBPBWuS9OYzscwC/HGJ/Py9TztNcJ4kUBPBZGpQqsw7ksG5dwSym9kW9SHrQCzm31of1U13XfjDE+l29C8t8fHh6eqsO86rZv/9UY45PZfGyZetHKw/BabLJKcXG+q4xk3wQE8L5d8VMa7wYBfD3GeOKlnrorCyrg6VJuXxl9Lcb48b4qmi7r5j/HGN8MIbxZPleWfxcNdVm1WVd3pXqrq/rhMnjd1rxqvwrgekl8urydl6cXLVcPq93SXj7nwcHBN2KMP00pva88Z1116XbosOht67Fwrfv87rvv/javQKSU3h4++x9WwPOu/eXLlz+UUhpdsj+lqes0BHZGQADvzKU4Hx1Z9GtIi16aKgESY3y6H+l0ubb/gTt8vjhdchy09f0+bKfVbXnxJ7/8lCvelNK/z8cMX4CqX46qXxbqQ3y6JLtIftGYRl6oKi9NXRkuT5cqeHDM10MIv9d13efL8+GxF8iG/Q4h/CbfiJQqv745KX+3qcO6ATy4rrlfL3Rd90h10/St2rdymL0gNrwWI0vaS6/T+fju0UsCJwUEsBlB4BQF5rw9nN8Cnlbyp9iUUxEgcM4FBPA5v4C6v3sCIy8S+VWa3btMekSguYAAbn4JdIAAAQIE9lFAAO/jVTdmAgQIEGguIICbXwIdIECAAIF9FBDA+3jVjZkAAQIEmgsI4OaXQAcIECBAYB8FBPA+XnVjJkCAAIHmAgK4+SXQAQIECBDYRwEBvI9X3ZgJECBAoLmAAG5+CXSAAAECBPZRQADv41XfwTH3/3rU3M0adrDL0y71GxS8MNyEflf7q18ECOyOgADenWtxLnqyaDOGBxmAAP6XMO83cRj9pyvHNmqYZ15v+pBSmm4S8SDXx7EECJy+gAA+fdO9OOPYdoR7MfAtDHLsZmTV7ROH3bO/7hYumCYIbCgggDeE2/fDxgJ4ZAu86baCi6wGFfWJyi+Hx2QyeW9K6UYI4eGU0ux8I23VWwF+LoTwOyGEx+vtCEeOmW5zN/z7EMKsH/PGVP993Ua/LD2336usIMzZUelKCOHa0HNQFf9yuBQ+FsDDPtQV8mC7RJtI7Ps3uvGfqYAAPlPei3vysQAe27B9VYGxCq8Pj+mG9fk8k8nkBzHGL5X9gEMIvxgurfb9+m7ZL7cOoBxWIYSbOXRzCNXnq/s5OGY0+Mrn+/O8MtjTN28/uLTf81YR6r7ldlJKw/2S7wvaPvjv6+tYAM+riofXoP+cbRRXncQ+R2BNAQG8JpiP/4vAWHj0P8BzWPzs3r17n7lz587dVb0WBHDIIVtXhcfHx+9MJpMToVfamXcTMFZ51hvbDze9L1XhsjEtCOD7+j28cRgaDqrqE6sH88Y1snn98Lh8MzDtS22UnzXXKwqlco8xfqu+ZsPPrHo9fY4AgeUCAni5kU+MCCx6BrwstMZAtxHAS0J79ibzWIU4b0wbBPD1KuR+Uyr1ZZNsLID7Pr0aY3yyD/eVKuB5Qex58bKr4OsETldAAJ+u596cbdlLWGPBtAhnnQC+e/fu3x8eHr6WUnpjbAl67FlpX+HlJeh5y9bXc9V+6dKl98QY3wwhvDQ899iY1gngvt8vxxifz4E59ChVegjhRl4mr7++IIBf7LruiXffffe3vcnb9XPiZaFau1++fPlDKaXp+W7fvv3rvZnMBkqgkYAAbgR/Xptd9BLRyHLo0l9/qSrLh4tJWfasw2P4YtK8F4kWPYce6fv0JaPcbg6v8tJWjPF2SukfcwDPG9OcJe3p+Q4ODr6QzzlcOu+r1LoCzh+bVcHrBnC5qYgxPt2f54Wu6x7JATzsd/5sSmn60tnIcvv07/vznehfOea8zlf9JrDLAgJ4l6+Ovl0ogTnV8mhVfqEGbjAECIwKCGATg8AWBUaqz6W/qrXF7mmKAIEtCgjgLWJrigABAgQIFAEBbC4QIECAAIEGAgK4AbomCRAgQICAADYHCBAgQIBAAwEB3ABdkwQIECBAQACbAwQIECBAoIGAAG6ArkkCBAgQICCAzQECBAgQINBAQAA3QNckAQIECBAQwObATgj0/3bxlXW3MdyJzusEAQIENhAQwBug7fMhcza8n24+/yA76Ox6ANebGyzbI7fe1zfPFRsa7PN3jLETmC8ggM2OtQT63YaeCyE8d3R09JPDw8M/DyH8btd1X3mQAF6rE1v+8LpbK/ZGj/a7KeU9emd7DW+565ojQGCHBQTwDl+cXexaXwl+IKX0T5PJ5G9SSn8SQvijvMdtX+39OIQw3VowpTTdjrDaZm+6x27ZgjCl9NmU0t/m/XdjjB8OIUy387tz587dEnq9wR/GGHOI/WU+Z0rp1clk8krXdZ/PoV+2IEwpPZf/fuyY4d6+Q9vB9n2zfuTPje1VvOq1WTe8Vz2vzxEgcP4FBPD5v4ZbHUG/R+9bIYTfn0wmef78dUrpqRjj9+pN5sf27y2hGWPMFfTNetP5YcjVoR1CeCzG+MEQwisppY+XoB0L4BzmIYS8xd+JY+pN6kfC90qM8XoJ/36Mj+V2qpuDcths/95V4Psl+9m5VznGZwgQ2A8BAbwf1/nURlkFcCihlZehcwAfHx+/MwisE2HVh9GPxp6hjgXwMLD7QVxbFMDzjlkSwNfzuUuVPOzLphVwf9yrMcYn65uTU7sYTkSAwLkWEMDn+vJtv/MlgOvqNe9xmyvaEMK1PsieGVbA+e/7AP5cCOEfbt68+Wzd+4sWwPUye221/SumRQIEdlVAAO/qldnRfpWwXRDAvygvH8UYvxtj/Hiu/vpAerHruif6Jejp58owNwjgH8QYv1Sq7hDCm3VlXJa5S9W85hJ0vqHIFfEz+b/rVsDV8vkN4bujE1m3COyAgADegYtwnrqwKIAnk8k7KaXyEtb387jyy1lVSE4DqX6+O5lM/ld1zJQiL1EvC9Pqpam8zP1C13WPLDtmkXMeV4zx6f4zD/QS1uBcZUzTF9LO07XWVwIEzlZAAJ+tr7MTIECAAIFRAQFsYhAgQIAAgQYCArgBuiYJECBAgIAANgcIECBAgEADAQHcAF2TBAgQIEBAAJsDBAgQIECggYAAboCuSQIECBAgIIDNAQIECBAg0EBAADdA1yQBAgQIEBDA5gABAgQIEGggIIAboGuSAAECBAgIYHOAwJYFNtmsYZNjtjwszREgsKaAAF4TbN8/3m8pONvlqN+e8JmU0sdu377963k+Y5s4nIVl2XM4nzuldGIDhGoDh/y1T7baqWhemC7adWlbAVxto/ibZde0XL/aPIRwYiOLede4jCfG+OEQwol9oxfNi7LRxfDazjum3xbztRDC4/2cWOm6b8sh92ndMZ3F941zthEQwG3cz22r+YdtCOG5/P9HR0c/OTw8/PMQwu92XfeVXQjgKhSu5z+P7UC0rZuBdS/yutsernv+ZZ/vg/R6Sum/xBj/W946ctE1zefLAXdwcPCNvBPVu++++9vDw8PXUkpvLNv5qd5Xur8xunLv3r3P3Llz5+5YP0uQppTyjlJ53+kT21kuuPHL8/XRskVmCOGFZTcW23LYdEzLrqOvnx8BAXx+rtVO9LT/YfmBlNI/TSaTv0kp/UkI4Y/ytoN9hVG2IzxRgdah15/ja2Wv4E0qqHrLv5TSL4c/VPsf8A8cwPk8k8nkvSmlGyGEh/NWiWWf4EG1PevDSNVVH3M9xvituhobfr5c6FLlzavc+zE+VvqTq8rJZPJK13Wfz8E5MFp5O8R67+ZlATyclIvc503gdW88+rm0UgDXbQ59ln1DbdNh0zEtG4Ov77aAAN7t67NzvSuVSwjh9yeTSZ4/f51SeirG+L3XX3/956XDfai8nIM5/30J4P7rsypk+MN3GCqrAPRV+bUSRPmY0wzgEMJ0ib2q8L7d7338YqkSS9WUq7iDg4OP5Cqt7s9IUL0UQrhZL4MvC6Jh5T4SuLnam7Zbj7+utFZZdt80eNZtZ7BaMbuRWHbNNw2r+hrNq7TrtrfpsOmYlln5+m4LCODdvj4717sqgEOM8XoOnLwMnQP4+Pj4nRjjm/1zvdz32bO96jnXiWq1ru6qym9WMc4DGB5XV6ZnEMCzSroEWwjhrTpk6zB86KGH3p9SyisBP5u3rDq2DL5uAPfjnAV5OWf/aGD23LNyXef55+zmYtVJ2LefrZ5Z45h807B0Wbg+3yZh1du+GmN8sr5RXNTPTQN4Q4d8Hdeu6ld19rndFBDAu3lddrZX9bO7qoKZhkD/bG76A3isAp5MJr9KKf1p/UPwAZYsZz9Mt1AB1wE8/UG5KIDLsm15kWcsiE8rgPs2nuq67psxxvxc/qv5uhweHs5WH9adTJsET3+D9cFFz3FHVgGuxBhnL/St2s91A7h6oeqzq6wAlH5sy6G6kRLAq06CC/I5AXxBLuS2hjEWHNXy8uzlmJG3pach3S/dzsJzkx9y9THVsvDbZ7gEPQ3gvsr9QYzxS9k7pVQvQednu/e9SDTvueOCAJ5beY4dU16CijH+NKX0vvLy0yZL+ZsGzyovUQ3n5yYV6eCGb6WwepC3x9edm5s4bDKmbX2va+fsBQTw2RtfqBYWBXAfruUlrO/ngQ+fAecKpLy8VH4VaGQ5eelSafWCUV7mfqHrukfKs8/yktNw6bV+Kan/2tJff1nUt8HLUbOl9ZFjZi9ALevD2ItTKxyTw3/2Ulse28iLYPe9qDYnFGcv0fU3GQsfB1RV/sOV98K2Frx0tvC6L3MY+0YbOea+X09r5VAq3xjj01Ufls7JC/UDZc8HI4D3fAIY/mKBTZbImRIgQGAVAQG8ipLP7K2AAN7bS2/gBM5cQACfObEGCBAgQIDA/QIC2KwgQIAAAQINBARwA3RNEiBAgAABAWwOECBAgACBBgICuAG6JgkQIECAgAA2BwgQIECAQAMBAdwAXZMECBAgQEAAmwMECBAgQKCBgABugK5JAgQIECAggM0BAgQIECDQQEAAN0A/702WzRTyOKhOBccAAAeQSURBVFJKS/+R//y5wcYFSzdbOM9GIxshrDTegdHSPZF717yl3496rx+ush1g2SGo37fZP/5/niebvp9rAQF8ri/f9js/3EZu3S3YxnZT2v4ozrbFfn/iR/PWgP2fl24434fidD/fS5cuvSfG+GYI4cai/WvLVoQppeeqbRnfKFsSzhtlvafzutfvbOWcncB+CQjg/breDzza4eYEfbU33fy967qPTiaT96aUboQQHk4p3VfFDQN4uLl6X11fX1bJ1dvglSo8D24ymUz363399dd/Xirv/N8cSvMq03yuruuejjF+MITweF3VjxyzUmVaoOftB7zsQmxyo7LJxhG947P37t374p07d+4u65evEyBwegIC+PQs9+JMi/YDDiE8GkJ4JqX0sbEw7APxpRDCzVLZDQNgleAZhlod2gcHB18YBO705iAHcn3u/hzTsM6fTyn9OKX02X6/4tzH6YbvfQV7Le81vMkFXvWGoj533bdyI7Gs7XKjkFL69qKqeXiePrQf23R8y/rl6wQIzBcQwGbHWgIrBHBdbc7CrzQyPL6uoI+Pj9+JMU6XYRdVY/Uz6Krz0+efly9f/lBKaVrR1X8uy7r9c89y2PT5Zx/AsyqwriSrSvtny6ryIeRwuX4V6CpIly4l1+frXbP9yjcKqy6Pr9JvnyFAYH0BAby+2V4fsWwJel71OS+A+6r4Sl89v9Uf/8Yi5GVV6bVr156PMX4vL4mHEN7KFeGipeCRKvx6GUfpx7pBXD5fqupVJk0Vvm+vGaQv5eXzdW4Q+puY7+YbkFWr7FXG4DMECKwuIIBXt/LJEEIfLC92XffE7du3f12/xLNo+XdRAJcXkGKM/6/rum/m8y7CXrZEm8NlMpn8Qdd1j+QXlMr5hs+bB+E6WgHX/Vj1eW55y3jZS1TDMW5YxV6PMV5ZJ3w3qcxNfgIETl9AAJ++6YU/Y/3rMiGE2a++1NVxvbRcnr/GGJ+ucE78+su64TNchk4pfbm8/VsF4Jt1JTn49ZvclfuWrfPSdz2OwVjzs+JZO/MudB7LYKxLj1u0rD5vOb5+Ea30ZdmvhQ1fKquOW+lXpS785DZAAlsUEMBbxNbUuMAwrDkRIEBgHwQE8D5c5R0dY12NpZRUYDt6nXSLAIGzERDAZ+PqrAQIECBAYKGAADZBCBAgQIBAAwEB3ABdkwQIECBAQACbAwQIECBAoIGAAG6ArkkCBAgQICCAzQECBAgQINBAQAA3QNckAQIECBAQwOYAAQIECBBoICCAG6BrkgABAgQICGBzgAABAgQINBAQwA3QNUmAAAECBASwOUCAAAECBBoICOAG6JokQIAAAQIC2BwgQIAAAQINBARwA3RNEiBAgAABAWwOECBAgACBBgICuAG6JgkQIECAgAA2BwgQIECAQAMBAdwAXZMECBAgQEAAmwMECBAgQKCBgABugK5JAgQIECAggM0BAgQIECDQQEAAN0DXJAECBAgQEMDmAAECBAgQaCAggBuga5IAAQIECAhgc4AAAQIECDQQEMAN0DVJgAABAgQEsDlAgAABAgQaCAjgBuiaJECAAAECAtgcIECAAAECDQQEcAN0TRIgQIAAAQFsDhAgQIAAgQYCArgBuiYJECBAgIAANgcIECBAgEADAQHcAF2TBAgQIEBAAJsDBAgQIECggYAAboCuSQIECBAgIIDNAQIECBAg0EBAADdA1yQBAgQIEBDA5gABAgQIEGggIIAboGuSAAECBAgIYHOAAAECBAg0EBDADdA1SYAAAQIEBLA5QIAAAQIEGggI4AbomiRAgAABAgLYHCBAgAABAg0EBHADdE0SIECAAAEBbA4QIECAAIEGAgK4AbomCRAgQICAADYHCBAgQIBAAwEB3ABdkwQIECBAQACbAwQIECBAoIGAAG6ArkkCBAgQICCAzQECBAgQINBAQAA3QNckAQIECBAQwOYAAQIECBBoICCAG6BrkgABAgQICGBzgAABAgQINBAQwA3QNUmAAAECBASwOUCAAAECBBoICOAG6JokQIAAAQIC2BwgQIAAAQINBARwA3RNEiBAgAABAWwOECBAgACBBgICuAG6JgkQIECAgAA2BwgQIECAQAMBAdwAXZMECBAgQEAAmwMECBAgQKCBgABugK5JAgQIECAggM0BAgQIECDQQEAAN0DXJAECBAgQEMDmAAECBAgQaCAggBuga5IAAQIECAhgc4AAAQIECDQQEMAN0DVJgAABAgQEsDlAgAABAgQaCAjgBuiaJECAAAECAtgcIECAAAECDQQEcAN0TRIgQIAAAQFsDhAgQIAAgQYCArgBuiYJECBAgIAANgcIECBAgEADAQHcAF2TBAgQIEBAAJsDBAgQIECggYAAboCuSQIECBAgIIDNAQIECBAg0EBAADdA1yQBAgQIEBDA5gABAgQIEGggIIAboGuSAAECBAgIYHOAAAECBAg0EBDADdA1SYAAAQIEBLA5QIAAAQIEGggI4AbomiRAgAABAgLYHCBAgAABAg0EBHADdE0SIECAAAEBbA4QIECAAIEGAgK4AbomCRAgQICAADYHCBAgQIBAA4H/Dzy9w/7ViJjBAAAAAElFTkSuQmCC</pentrails><costumes><list struct="atomic" id="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><sprite name="Sprite" idx="1" x="18.7578125" y="-80" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="80,80,80,1" pen="tip" id="8"><costumes><list struct="atomic" id="9"></list></costumes><sounds><list struct="atomic" id="10"></list></sounds><blocks></blocks><variables></variables><scripts><script x="143.8425196850393" y="78.48818897637784"><block s="receiveGo"></block><block s="clear"></block><block s="hide"></block><block s="up"></block><block s="gotoXY"><l>-100</l><l>40</l></block><block s="doSetVar"><l>numbers</l><block s="reportNewList"><list><l>1</l><l>2</l><l>2</l><l>1</l><l>2</l><l>1</l><l>2</l><l>1</l></list></block></block><block s="write"><block s="reportJoinWords"><list><l>Sum of Numbers : </l><custom-block s="Sum of %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>20</l></block><block s="write"><block s="reportJoinWords"><list><l>Average of Numbers : </l><custom-block s="Average of %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>0</l></block><block s="write"><block s="reportJoinWords"><list><l>Includes negatives?</l><custom-block s="includes negative? %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>-20</l></block><block s="write"><block s="reportJoinWords"><list><l>Is increasing?</l><custom-block s="is increasing? %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>-40</l></block><block s="write"><block s="reportJoinWords"><list><l>Maximum of </l><custom-block s="Maximum of %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>-60</l></block><block s="write"><block s="reportJoinWords"><list><l>Make all positive </l><custom-block s="make all positive %l"><block var="numbers"/></custom-block></list></block><l>12</l><comment w="578.0000000000001" collapsed="false">You will have to write further code here to make the returned list elements display in a more readable way.[Hint: loop and a variable to join all the list elements, or list-&gt;sentence from words, sentences library].[Optional]</comment></block><block s="gotoXY"><l>-100</l><l>-80</l></block><block s="write"><block s="reportJoinWords"><list><l>Only evens </l><custom-block s="only evens %l"><block var="numbers"/></custom-block></list></block><l>12</l><comment w="433.2" collapsed="true">You will have to write further code here to make the returned list elements display in a more readable way.[Hint: loop and a variable to join all the list elements, or list-&gt;sentence from words, sentences library].[Optional].</comment></block></script><script x="310" y="801"><custom-block s="Maximum of %l"><l/></custom-block></script><script x="481.38261918750004" y="733.400004"><custom-block s="only evens %l"><block var="numbers"/></custom-block></script><script x="939" y="682"><block s="reportMonadic"><l><option>2^</option></l><l>10</l></block></script></scripts></sprite><watcher var="numbers" style="normal" x="10" y="10" color="243,118,29" extX="80" extY="70"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Sum of %&apos;List of numbers&apos;" type="reporter" category="lists"><comment w="90" collapsed="false">add code here to report the sum of all the numbers in the list.</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>x</l></list></block><block s="doSetVar"><l>x</l><l>0</l></block><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="List of numbers"/></block><script><block s="doSetVar"><l>x</l><block s="reportSum"><block var="x"/><block s="reportListItem"><block var="i"/><block var="List of numbers"/></block></block></block></script></block><block s="doReport"><block var="x"/></block></script></block-definition><block-definition s="Average of %&apos;list&apos;" type="reporter" category="lists"><comment w="90" collapsed="true">add code to report the average of all the numbers in the list.</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>x</l></list></block><block s="doSetVar"><l>x</l><l>0</l></block><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="list"/></block><script><block s="doSetVar"><l>x</l><block s="reportSum"><block var="x"/><block s="reportListItem"><block var="i"/><block var="list"/></block></block></block></script></block><block s="doReport"><block s="reportQuotient"><block var="x"/><block s="reportListLength"><block var="list"/></block></block></block></script></block-definition><block-definition s="includes negative? %&apos;List of Numbers&apos;" type="predicate" category="lists"><comment w="90" collapsed="false">add to report true if the list contains at least one negative number, and false if all numbers are non-negative.</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doSetVar"><l>a</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doForEach"><l>item</l><block var="List of Numbers"/><script><block s="doIf"><block s="reportLessThan"><block var="item"/><l>0</l></block><script><block s="doSetVar"><l>a</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block><block s="doReport"><block var="a"/></block></script></block-definition><block-definition s="is increasing? %&apos;List of Numbers&apos;" type="predicate" category="lists"><comment w="94" collapsed="false">add code to report true if each value in the list is greater than or equal to the one before it..</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="numbers"/></block><script><block s="doIfElse"><block s="reportGreaterThan"><block s="reportListItem"><block var="i"/><block var="numbers"/></block><block s="reportListItem"><block s="reportDifference"><block var="i"/><l>1</l></block><block var="numbers"/></block></block><script><block s="doSetVar"><l>a</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block><block s="doReport"><block var="a"/></block></script></block-definition><block-definition s="Maximum of %&apos;List of Numbers&apos;" type="reporter" category="lists"><comment w="90" collapsed="false">add code to report the largest number in the list..</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doSetVar"><l>a</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="numbers"/></block><script><block s="doIf"><block s="reportGreaterThan"><block s="reportListItem"><block var="i"/><block var="numbers"/></block><block var="a"/></block><script><block s="doSetVar"><l>a</l><block s="reportListItem"><block var="i"/><block var="numbers"/></block></block></script></block></script></block><block s="doReport"><block var="a"/></block></script></block-definition><block-definition s="make all positive %&apos;List of Numbers&apos;" type="reporter" category="lists"><comment w="90" collapsed="true">add code to report a new LIST that is the same as the argument, except all negative numbers have been replaced by their absolute value. .</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="List of Numbers"/></block><script><block s="doIf"><block s="reportLessThan"><block s="reportListItem"><block var="i"/><block var="List of Numbers"/></block><l>0</l></block><script><block s="doReplaceInList"><block var="i"/><block var="List of Numbers"/><block s="reportMonadic"><l><option>abs</option></l><block s="reportListItem"><block var="i"/><block var="List of Numbers"/></block></block></block></script></block></script></block><block s="doReport"><custom-block s="list $arrowRight sentence %l"><block var="List of Numbers"/></custom-block></block></script></block-definition><block-definition s="only evens %&apos;List of Numbers&apos;" type="reporter" category="lists"><comment w="90" collapsed="false">add code to report a new LIST that contains only the even numbers from the argument list..</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doFor"><l>i</l><l>1</l><block s="reportListLength"><block var="List of Numbers"/></block><script><block s="doIf"><block s="reportEquals"><block s="reportModulus"><block s="reportListItem"><block var="i"/><block var="List of Numbers"/></block><l>2</l></block><l>1</l></block><script><block s="doDeleteFromList"><block var="i"/><block var="List of Numbers"/></block></script></block></script></block><block s="doReport"><custom-block s="list $arrowRight sentence %l"><block var="List of Numbers"/></custom-block></block></script></block-definition><block-definition s="all but first letter of %&apos;string&apos;" type="reporter" category="operators"><comment x="0" y="0" w="199" collapsed="false">Takes a text string as input, and reports a new text string containing all but the first character of the input.</comment><header></header><code></code><translations>pt:_ sem o primeiro caractere&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>result</l><l>i</l></list></block><block s="doWarp"><script><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="string"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportSum"><l>0</l><l>0</l></block></block></block></script></block><block s="doSetVar"><l>result</l><l></l></block><block s="doSetVar"><l>i</l><l>2</l></block><block s="doUntil"><block s="reportGreaterThan"><block var="i"/><block s="reportStringSize"><block var="string"/></block></block><script><block s="doSetVar"><l>result</l><block s="reportJoinWords"><list><block var="result"/><block s="reportLetter"><block var="i"/><block var="string"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doReport"><block var="result"/></block></script></block></script></block-definition><block-definition s="all but first word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="223.00000099999997" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing all but the first word, with one space between words and no spaces at the beginning or end. (Note: consider using SENTENCE-&gt;LIST and processing the resulting list instead of doing recursion on sentences in text string form.  List operations are faster.)</comment><header></header><code></code><translations>pt:_ sem a primeira palavra&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>bf</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>bf</l><l></l></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportGreaterThan"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><script><block s="doSetVar"><l>bf</l><block s="reportJoinWords"><list><block var="bf"/><block s="reportLetter"><block var="index"/><block var="sentence"/></block></list></block></block><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doReport"><block var="bf"/></block></script></block></script></block-definition><block-definition s="all but last letter of %&apos;string&apos;" type="reporter" category="operators"><comment x="0" y="0" w="218" collapsed="false">Takes a text string as input, and reports a new text string containing all but the last letter of the input.</comment><header></header><code></code><translations>pt:_ sem o último caractere&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>result</l><l>i</l></list></block><block s="doWarp"><script><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="string"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportSum"><l>0</l><l>0</l></block></block></block></script></block><block s="doSetVar"><l>result</l><l></l></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportEquals"><block var="i"/><block s="reportStringSize"><block var="string"/></block></block><script><block s="doSetVar"><l>result</l><block s="reportJoinWords"><list><block var="result"/><block s="reportLetter"><block var="i"/><block var="string"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doReport"><block var="result"/></block></script></block></script></block-definition><block-definition s="all but last word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="211.99999999999997" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing all but the last word, with one space between words and no spaces at the beginning or end.  (Note: consider using SENTENCE-&gt;LIST and processing the resulting list instead of doing recursion on sentences in text string form.  List operations are faster.)</comment><header></header><code></code><translations>pt:_ sem a última palavra&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>bl</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>bl</l><l></l></block><block s="doSetVar"><l>index</l><block s="reportStringSize"><block var="sentence"/></block></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="index"/><l>1</l></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportLessThan"><block var="index"/><l>1</l></block><script><block s="doSetVar"><l>bl</l><block s="reportJoinWords"><list><block s="reportLetter"><block var="index"/><block var="sentence"/></block><block var="bl"/></list></block></block><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doReport"><block var="bl"/></block></script></block></script></block-definition><block-definition s="first word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="236.00000000000003" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing only the first word, with no spaces before or after it.</comment><header></header><code></code><translations>pt:a primeira palavra de _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>first</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>first</l><l></l></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>first</l><block s="reportJoinWords"><list><block var="first"/><block s="reportLetter"><block var="index"/><block var="sentence"/></block></list></block></block><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>first</l><block s="reportJoinWords"><list><block var="first"/><block s="reportLetter"><block var="index"/><block var="sentence"/></block></list></block></block></script></block><block s="doReport"><block var="first"/></block></script></block></script></block-definition><block-definition s="last letter of %&apos;word&apos;" type="reporter" category="operators"><comment x="0" y="0" w="260" collapsed="false">Takes a text string as input, and reports the last character in the string.</comment><header></header><code></code><translations>pt:o último caractere de _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportLetter"><block s="reportStringSize"><block var="word"/></block><block var="word"/></block></block></script></block-definition><block-definition s="last word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="262" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing only the last word of the input, with no spaces before or after it.</comment><header></header><code></code><translations>pt:a última palavra de _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>last</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>last</l><l></l></block><block s="doSetVar"><l>index</l><block s="reportStringSize"><block var="sentence"/></block></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>last</l><block s="reportJoinWords"><list><block s="reportLetter"><block var="index"/><block var="sentence"/></block><block var="last"/></list></block></block><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>last</l><block s="reportJoinWords"><list><block s="reportLetter"><block var="index"/><block var="sentence"/></block><block var="last"/></list></block></block></script></block><block s="doReport"><block var="last"/></block></script></block></script></block-definition><block-definition s="empty word? %&apos;word&apos;" type="predicate" category="operators"><comment x="0" y="0" w="208.00000000000003" collapsed="false">Takes a text string as input, and reports TRUE if the string has no characters in it of any kind, otherwise false.</comment><header></header><code></code><translations>pt:a palavra _ está vazia&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportEquals"><block s="reportStringSize"><block var="word"/></block><l>0</l></block></block></script></block-definition><block-definition s="empty sentence? %&apos;sentence&apos;" type="predicate" category="operators"><comment x="0" y="0" w="221" collapsed="false">Takes a text string as input, and reports TRUE if the input contains no characters other than spaces (therefore, no words when the string is considered as a sentence), otherwise FALSE.</comment><header></header><code></code><translations>pt:a frase _ está vazia&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l></list></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doReport"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:füge Wörter zusammen _&#xD;ca:uneix les paraules _&#xD;es:unir las palabras _&#xD;fr:fusionne les mots _&#xD;pt:uma frase com as palavras _&#xD;</translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doIf"><block s="reportListIsEmpty"><block s="reportCDR"><block var="words"/></block></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="words"/></block><block s="reportCDR"><block s="reportCDR"><block var="words"/></block></block></block></custom-block></block></script></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="words"/></block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Liste $arrowRight Satz _&#xD;ca:llista $arrowRight frase _&#xD;es:lista $arrowRight frase _&#xD;fr:liste $arrowRight phrase _&#xD;pt:uma frase com as palavras em _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Satz $arrowRight Liste _&#xD;ca:frase $arrowRight llista _&#xD;es:frase $arrowRight lista _&#xD;fr:phrase $arrowRight liste _&#xD;pt:uma lista com as palavras da frase _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><comment x="0" y="0" w="146.42857142857144" collapsed="false">report a list in which each item is one letter from the input word</comment><header></header><code></code><translations>de:Wort $arrowRight Liste _&#xD;ca:paraula $arrowRight llista _&#xD;es:palabra $arrowRight lista _&#xD;fr:mot $arrowRight liste _&#xD;pt:uma lista com os caracteres da palavra _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><comment x="0" y="0" w="158.57142857142858" collapsed="false">join all the items of the input list&#xD;into a single word, and report it</comment><header></header><code></code><translations>de:Liste $arrowRight Wort _&#xD;ca:llista $arrowRight paraula _&#xD;es:lista $arrowRight palabra _&#xD;fr:liste $arrowRight mot _&#xD;pt:uma palavra com os caracteres em _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block-definition></blocks><variables><variable name="numbers"><list struct="atomic" id="1256">2,2,2,2</list></variable></variables></project><media name="Lab 4.3 Starter" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>