<snapdata remixID="9388552"><project name="U5L1p1-GuessNumber" 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="true" codify="false" inheritance="false" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAOhUlEQVR4Xu3VwQkAAAjEMN1/abewn7jAQRC64wgQIECAAIF3gX1fNEiAAAECBAiMAHsCAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQIHLFxAWmhEwHPAAAAAElFTkSuQmCC</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="20" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="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><comment x="13" y="6.666666666666667" w="317.3333333333333" collapsed="false">U5L1 page 1 FYTD 3-4:&#xD;&#xD;The algorithm is &quot;guess the midpoint of the available range.&quot;  To make this detailed enough for a computer program, the key point is to maintain two variables, &quot;smallest possible number&quot; and &quot;largest possible number,&quot; and to guess the average.&#xD;&#xD;1. Set &quot;smallest possible number&quot; to 1; set &quot;largest possible number&quot; to 60.&#xD;2. Guess ROUND or FLOOR or CEILING (it doesn&apos;t matter which) of (SMALLEST+LARGEST)/2.&#xD;3. If JUST RIGHT button clicked, announce win.&#xD;4. If TOO SMALL clicked, set SMALLEST to GUESS+1, then repeat step 2.&#xD;5. If TOO LARGE clicked, set LARGEST to GUESS-1, then repeat step 2.&#xD;&#xD;Since step 2 is run from three different sprites, it&apos;s best to define a procedure that does it: </comment><script x="16" y="267.6666666666667"><custom-block s="guess average"><comment w="144.66666666666666" collapsed="true">Look inside for step 2.</comment></custom-block></script><script x="16.666666666666668" y="299"><block s="receiveGo"><comment w="58" collapsed="true">5.1.1.6</comment></block><block s="doDeleteFromList"><l><option>all</option></l><block var="guesses"/></block><block s="doSetVar"><l>smallest possible number</l><l>1</l><comment w="53.333333333333336" collapsed="true">Step 1.</comment></block><block s="doSetVar"><l>largest possible number</l><l>60</l></block><block s="doSetVar"><l>turns</l><l>0</l><comment w="243.33333333333334" collapsed="true">Count how many turns the program needs.</comment></block><block s="doSayFor"><l>Think of a number from 1 to 60.</l><l>2</l></block><block s="doSayFor"><l>I&apos;ll guess it.</l><l>2</l></block><block s="doSayFor"><l>Don&apos;t forget your number!</l><l>2</l></block><custom-block s="guess average"></custom-block></script><comment x="14" y="521.3333333333334" w="306" collapsed="false">Steps 3-5 are in the other sprites.&#xD;&#xD;Students may feel they ought to have more code here, but there&apos;s no need, because what happens next is that the user clicks one of the three buttons, and their when-clicked scripts carry out the next steps of the algorithm.</comment></scripts></sprite><sprite name="Too small" idx="2" x="-121.36491266256803" y="-106.02258257604643" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="26.41799999999994,0,188.7,1" pen="tip" id="38"><costumes><list id="39"><item><costume name="toosmall" center-x="58.5" center-y="51.5" image="data:image/png;base64,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" id="40"/></item></list></costumes><sounds><list struct="atomic" id="41"></list></sounds><blocks></blocks><variables></variables><scripts><script x="49.59999999999999" y="55.333333333333336"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doSetVar"><l>smallest possible number</l><block s="reportSum"><block var="guess"/><l>1</l><comment w="53.333333333333336" collapsed="true">Step 4.</comment></block></block><block s="doAddToList"><custom-block s="join words %mult%txt"><list><block var="guess"/><l> is too small.</l></list></custom-block><block var="guesses"/></block><custom-block s="guess average"></custom-block></script><comment x="46" y="171.33333333333334" w="306.6666666666667" collapsed="false">It&apos;s not the main point of the lab, but don&apos;t pass this by without a comment on how elegant the abstraction is.  After the initial setup, there&apos;s hardly any code in this program!</comment></scripts></sprite><sprite name="Just right" idx="3" x="9.635087337432651" y="-103.02258257604637" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="59.67000000000005,229.5,0,1" pen="tip" id="62"><costumes><list id="63"><item><costume name="justright" center-x="58.5" center-y="51.5" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHUAAABnCAYAAAA+Gg0sAAANOElEQVR4Xu2dB6wWRRDHFxFUQASRXpQSkBIUEqoizWiojxI0goEEKUECEgSkKCpN6VghQIKUUEO1UgQFJJQHQoKAIk26dBBEATG/Dftlv+Puu7vHV97d201e4L1vbm92/js7u7Mz82W7ffv2bWFaqCSQzYAaKjzlYAyo4cPUgBpCTA2oBtQwSiCEYzI21YAaQgmEcEgxNXXFihXi5MmTokiRIiJHjhwhHH6whgQWDz74oGjSpIl49NFHHZl3BHX27Nnixx9/DNaoswi3LVq0EGlpaf5BnTJlikhPT88iYgrWMGvXri26dOniH9Rly5aJr776Sj5YsWJF8eSTTwZr5CHjdt++fWLv3r1yVK1btxbNmjXzD+rXX38tli5d6qmTkMkvUw7HDx6ONtVPJ5lSCiFjyg8eBtSAgG9ADQhQftg0oPqRVkBoDagBAcoPmwZUP9IKCK0BNSBA+WHTgOpHWgGhNaAGBCg/bBpQ/UgrILQG1IAA5YdNA6ofaQWE1oAaEKD8sGlA9SMtF9ozZ86IGzduyOiP++67L449++sqJaBu2bJFTJs2TeTKlcuV2+vXr4shQ4aIxx9/3JU2lQRnz54VAwcOlCz069cvpXfKSQeVdJwZM2aITZs2ecagV69e4qmnnvJMnwrCU6dOiaFDh4r//vtPdO7cWdStWzcVbMh3Jh1UXnrw4EGxatUqAcA5c+aUjFy+fFn88ssvEUHUrFlTCoggtlatWokCBQqkTEheXvzHH3+IYcOGSdIXXnhBvPTSS14eSwhNSkC1G8nNmzdFnz59BMttyZIlxTvvvHOXXQLkf/75J/I40XLZsmWL6u7vv/+O+p1Jkz179pjC453Hjh0TFy5ckHT0yyTCNl66dEkcP35clCpVSuTNm9exn6NHj4r3339fft60aVPRpk2bhADmpdNMAyqCxRbxb6FChcSIESOiQAXMN998U36umi48tP6zzz4TO3fujBp3iRIl5LJot3Ghr4ULF4r169e7yqpGjRqie/fuUXQ8z0Sg799//12aFRoxWp06dZKbJmsrXLiw6yRzZcaFINOAqoNmByoa2Ldv3yhBvfjii6Jdu3ZyiID63nvvSa3Sm11ffH7r1i3x1ltviYsXL0bI0Xp+WBGsrWDBgmLkyJGRyQENzyvt9gpEMpbmwIAKaHv27BGHDh0SRC/SdFD5/cCBA+Lw4cPSDs+bN09OACdQf/rpp4hmPfzww+KNN96QO2xA/euvv8TatWsFAeqqWfsB1AEDBkRNCi/AGlBtznq67bWCqgt1woQJchI4gaqOVTzTv39/UaFChbswIcxy/Pjx8u92dh4tRdPvv/9+8euvv4r58+dL2jJlysjl999//43qkwlTtGhR8cADD3jBP8M0gdFUNUJ9mXYCFa2eOHFiTFC//fZbsXjxYtlt8+bNRcuWLW3t7v79+8XMmTNF27ZtRbVq1RwFfeLECWm7aWajdEdMbjY13qDu3r1bTJo0KQqk4sWLyx2vOmZhR6tUqSJKly591y7biq5+pIm1gmRY/Xw8mBRN3bx5s5g+fbpo1KiReOWVV2wFlGxQ0eZPP/1U7Nq1y1Vc7G579OgRU1OzHKhr1qyR9sa6g9SlmWxQ1bt//vlnuQzjEYrVsIfDhw+XmmzXsjSonD/tnAE6qF7Bd7JdXmwqHizsZbly5cQjjzwiz79XrlyRRyP4g5/ffvtNzJ07N3LEwfbi3TKgCiGUprKMjR49WuTPn/8uuaApb7/9tvw7B/1u3bq5LtMc8jm7Wh0LHElwrjs5MnjHhg0b5AYI+/nJJ584OgRINho3bpzkK5atzLKaimDIwCITy9q++OILsXHjRlfh6Z4nlsRBgwbJI4S+kfroo4+kltGcXI4//PCDmDNnjqR59tlnRceOHW13v6tXrxYLFixw5UsHFXfi2LFjoyYKzg582/i8mSgdOnQQDRs2dLXnGSFIykaJgeCOU41l8/nnn5e+VLSKjDk9aRmNfeKJJ2zHw/L4wQcfyEsB1dAgtBb/65dffhnldUKLGzRoIMqWLSu4JFC+YrV6qD7ItubYAl3u3LklX9B8//33kfc4nWch4PyMG/Pq1auSHt+xcupz3sUVqXuq4OnVV1/NCGauzyQF1O3bt4vJkye7MgMBV2w9e/aMeckMoKNGjXLtD8e88hVjN9EetVTr51TXju6YhK5du8bky+s44QE/d/ny5b282jdNUkCFK3yyJCZv27bNlkk0iJnduHFjT1EDAPv555/f5aZjKX7ttdeklq1bty7yrqefflq8/vrrkb51TUVL8QzZ+Xy5yIevZ555xvWsysvYTVMugY2Y3hgfzot69eqJypUrexqjbzTvPJA0UBWD+GOJEuBKi/+zbKFF2L6MFAAhhARtZMfKcp4nTx5PssDGsVzny5dP/tDgCTDgiYZPmGXUer3n5QUs39euXZOkbMYYY0b68fIuK03SQc0Ik+YZfxIwoPqTVyCoDaiBgMkfkwZUf/IKBLUBNRAw+WPSgOpPXoGgNqAGAiZ/TBpQ/ckrENQG1EDA5I9JA6o/eQWC2oAaCJj8MWlA9SevQFAbUAMBkz8mQwEqQdWLFi2Styvcx5JGmKwbEX/iTg51KED95ptvxJIlS6TErJfhiRQjGQDfffedzJLj+o/MOLLdUplFznhDAaoKImNATmkW8QaXsJqpU6dGXfrHioL08/57LTOQcFC5ECcbzW32EheEUKpWrSoDwZj9XpsexZBMTWUyEeWgIibiMaHiUWYg4aDqybheQWICMBGKFSvm6ZHTp0/L8BWES9yPHmDmqYN7IEJjSaIiQjAeoMajzEDCQcXWEPrJv6QGqlmNNj722GNSnAiG2B7CLFUjtIV4WzQ4MzcvgeN++I9HmYGEg6oPiEw0Yl9J/SM5ybrEHjlyRHz44YeREE+i92rVqmUrE2upAEVkVzLAq1CJK6IxofR0Qyak+j5ga7kBO1DZeRNoh21UMVhkAriZIN4djzIDSQNVHzyDQwvtaijo9tEpQRchk8WtYmx10PymEZJDunLlShkvrEcTsvS//PLL4ty5c2LWrFmRVzAh4V0FuOnjohRB+/btxccffxxVxoCHGTOB52TQWVu8ywxkOlDJbyE1g+aU5sBmYvDgwbYhnX7SCLFf5PbodSTctBotxIaqCamD6uVZa5JVIsoMZCpQrcU4nDQVOgp2nD9/XjoZqAehvhfHK6gstUTc68U2iBkmPphKLVu3bo3CiPeQMkIEvx63awcqWknKJtnppH+o9A46pH+C1ZVzJBFlBlIGKkUxiKlFKMTg/vnnn7KWg15dhSQnbJFb81oyQPXDO0mOUrk7LKlUVSP2WDXifwkWp+oKzWkfYAWVYxnlgvRqbnpGgd0OOd5lBlICqhtIfO6n4IWXkgH6O3V6tIolkVI41sZkoVgHADvtA3RQ0T5qKVmPYtAwiSkywuRg+Xba1cejzECmAxXhUQaOL57z2vyCqqdNuiUqqSx4L6A6AeZ1k8h445ESmTJQyU9hKcJ/Snkb1cheI3nIT/MLqi44t92y0hwvoDoV4soSoFrtE44HqpWp5rdg472A6raxUgU/vIDq5FHKEqDaCYhiVioXNNY51k6D/YLKbpmdL0eZWDaOnSkpk9hCA6rN93W6zVaAYVOiHApOqf/xABWw3n33Xfl12zRK7eDM0Hes8EuiNJnktHsFVfmH3SZsoGwqglFVyJyOB7rjAXrqPuCcd2uA1Lt3b6l5bjZS9UU5PHakqrFzpVAHZ1WcG1Rs0Z0SscBQ7k+nUgS8w81FqviIR5mBhG+U0DyWVQSkblIYAMU6sEH169eP+iJ0qqGojRPgc+BHk6pXry7HzZlPT1wGDLRclRfgqPDcc89Fckz5HF+u9T30xXt4n5dmByoAUA4PN6PSZlWKQPms8Wezg1YaDx0OCMbDDt/qD45HmYGEg2rVCKsArUcK6zIMvbojBSC7SqFeQHGq7u2UkU6fbKJw7HO7ZAXVrvaE4kO303pUhs4nY8GHzNis7V7LDCQcVP1+0E74uMysNf84RuAQUC48PbVf//5zL2BCgwCxmbG8U9hXVSaWmx6cEdhYVcXFTlOdNJ33sD/gGbxWVJ6xNlYfahk6FZi+lzIDCQfVq+AzK93y5cvlDY7bBidR/GekzIABNQYaes2mVIGakcliQBVCbuLY0GE/H3roIamVbHBw6HMTpOz6mDFjEl4qPSMgWp/J8qDq2hhLoHa2Px4AJKKPLA+qHr1nJ2A2WZyXOYIFpWV5UDmacO7dsWNHpDwsu17KonMZzk+iy6PHe7JkeVDjLdDM0J8BNTOgEGce4g5qpUqVUvrldXGWTyC7o2opP7QWLVqItLQ0x3Fku62CXy0kU6ZMEenp6YEUQNiZrlOnjizA6dQcQSWfRK/XG3ZBBWl8GdZUDugkC+E/1SPygjT4MPGqKrXiw3YrFO2oqWESSFYbiwE1hIgbUA2oIZRACIdkNNWAGkIJhHBIRlMNqCGUQAiHZDTVgBpCCYRwSEZTQwjq/9s3R4+Xip0VAAAAAElFTkSuQmCC" id="64"/></item></list></costumes><sounds><list struct="atomic" id="65"></list></sounds><blocks></blocks><variables></variables><scripts><script x="16.999999999999773" y="26.333333333333258"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doAddToList"><custom-block s="join words %mult%txt"><list><block var="guess"/><l>is correct!</l></list></custom-block><block var="guesses"/></block><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><block s="bubble"><custom-block s="join words %mult%txt"><list><l>I win in</l><block var="turns"/><l>turns!</l></list></custom-block></block></script><list></list></block><list></list><comment w="57.333333333333336" collapsed="true">Step 3.</comment></block></script></scripts></sprite><sprite name="Too big" idx="4" x="137.63508733743265" y="-103.02258257604637" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="133.72199999999998,0,145.35,1" pen="tip" id="97"><costumes><list id="98"><item><costume name="toobih" center-x="58.5" center-y="51.5" image="data:image/png;base64,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" id="99"/></item></list></costumes><sounds><list struct="atomic" id="100"></list></sounds><blocks></blocks><variables></variables><scripts><script x="12.666666666666666" y="38"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doSetVar"><l>largest possible number</l><block s="reportDifference"><block var="guess"/><l>1</l><comment w="53.333333333333336" collapsed="true">Step 5.</comment></block></block><block s="doAddToList"><custom-block s="join words %mult%txt"><list><block var="guess"/><l> is too big.</l></list></custom-block><block var="guesses"/></block><custom-block s="guess average"></custom-block></script></scripts></sprite><watcher scope="Stage" s="getLastAnswer" style="normal" x="17" y="13" color="4,148,220" hidden="true"/><watcher var="smallest possible number" style="normal" x="10" y="10" color="243,118,29" hidden="true"/><watcher var="largest possible number" style="normal" x="10" y="40.000001999999995" color="243,118,29" hidden="true"/><watcher var="guess" style="normal" x="10" y="70.00000399999999" color="243,118,29" hidden="true"/><watcher var="turns" style="normal" x="10" y="100.00000599999998" color="243,118,29" hidden="true"/><watcher var="guesses" style="normal" x="5" y="5.500001999999995" color="243,118,29" extX="174" extY="185"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="number guessing game" type="command" category="looks"><header></header><code></code><translations></translations><inputs></inputs><script><block s="clear"></block><block s="gotoXY"><l>-200</l><l>-100</l></block><custom-block s="label %txt of size %n"><l>I&apos;m thinking of a number from 1 to 60.</l><l>16</l></custom-block><block s="gotoXY"><l>20</l><l>0</l></block><block s="doDeclareVariables"><list><l>secret number</l><l>number of guesses</l><l>sprite response</l></list></block><block s="doSetVar"><l>secret number</l><block s="reportRandom"><l>1</l><l>60</l></block></block><block s="doSetVar"><l>number of guesses</l><l>0</l></block><block s="doDeleteFromList"><l><option>all</option></l><block var="guesses"/></block><block s="doUntil"><block s="reportEquals"><block s="getLastAnswer"></block><block var="secret number"/></block><script><block s="doAsk"><l>Guess my secret number.</l></block><block s="doSetVar"><l>number of guesses</l><block s="reportSum"><block var="number of guesses"/><l>1</l></block></block><block s="doSetVar"><l>sprite response</l><custom-block s="high or low answer: %n secret number: %n"><block s="getLastAnswer"></block><block var="secret number"/></custom-block></block><block s="doAddToList"><block var="sprite response"/><block var="guesses"/></block><block s="doSayFor"><block var="sprite response"/><l>2</l></block></script></block><block s="doSayFor"><block s="reportJoinWords"><list><l>You guessed it in </l><block var="number of guesses"/><l> guesses.</l></list></block><l>3</l></block></script></block-definition><block-definition s="high or low answer: %&apos;answer&apos; secret number: %&apos;secret number&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="answer"/><block var="secret number"/></block><script><block s="doReport"><custom-block s="join words %mult%txt"><list><block var="answer"/><l>is correct!</l></list></custom-block></block></script></block><block s="doIfElse"><block s="reportLessThan"><block var="answer"/><block var="secret number"/></block><script><block s="doReport"><custom-block s="join words %mult%txt"><list><block var="answer"/><l>is too low.</l></list></custom-block></block></script><script><block s="doReport"><custom-block s="join words %mult%txt"><list><block var="answer"/><l>is too high.</l></list></custom-block></block></script></block></script></block-definition><block-definition s="tell %&apos;sprite&apos; to %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%cs"></input></inputs><script><block s="doRun"><block s="reportAttributeOf"><block var="action"/><block var="sprite"/></block><list></list></block></script></block-definition><block-definition s="label %&apos;text&apos; of size %&apos;size&apos;" type="command" category="pen"><comment x="0" y="0" w="90" collapsed="false">LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment><header></header><code></code><translations>de:drucke _ in Größe _&#xD;ca:etiqueta _ de mida _&#xD;es:etiqueta _ de tamaño _&#xD;fr:étiquette _ d&apos;une taille de _&#xD;</translations><inputs><input type="%txt">Hello!</input><input type="%n">12</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>text</l><l>size</l><l>process</l></list><l>var stage = this.parentThatIsA(StageMorph);&#xD;&#xD;if (this == stage) {&#xD;    throw new Error(&#xD;     &apos;LABEL cannot be used from the stage because the stage does not have a postion.\n&apos;&#xD;     + &apos;Use LABEL from a sprite to draw text.&apos;);&#xD;}&#xD;&#xD;if (typeof text !== &apos;string&apos; &amp;&amp; typeof text !== &apos;number&apos;) {&#xD;    throw new Error(&apos;LABEL can only draw text or numbers, not a &apos; + process.reportTypeOf(text)); &#xD;}&#xD;&#xD;var context = stage.penTrails().getContext(&apos;2d&apos;),&#xD;    rotation = radians(this.direction() - 90),&#xD;    trans = new Point(&#xD;      this.center().x - stage.left(),&#xD;      this.center().y - stage.top()&#xD;    ),&#xD;    isWarped = this.Warped,&#xD;    len,&#xD;    pos;&#xD;&#xD;if (isWarped) {endWarp(); }&#xD;context.save();&#xD;context.font = size + &apos;px monospace&apos;;&#xD;context.textAlign = &apos;left&apos;;&#xD;context.textBaseline = &apos;alphabetic&apos;;&#xD;context.fillStyle = this.color.toString();&#xD;len = context.measureText(text).width;&#xD;trans = trans.multiplyBy(1 / stage.scale);&#xD;context.translate(trans.x, trans.y);&#xD;context.rotate(rotation);&#xD;context.fillText(text, 0, 0);&#xD;context.translate(-trans.x, -trans.y);&#xD;context.restore();&#xD;pos = new Point(&#xD;  len * Math.sin(radians(this.direction())),&#xD;  len * Math.cos(radians(this.direction())));&#xD;pos = pos.add(new Point(this.xPosition(), this.yPosition()));&#xD;this.gotoXY(pos.x, pos.y, false);&#xD;this.changed();&#xD;if (isWarped) {this.startWarp(); }&#xD;stage.changed();&#xD;</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations>de:ist _ leer?&#xD;ca:_ buida?&#xD;es:_ vacía?&#xD;fr:_ vide?&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block></block></script></block-definition><block-definition s="keep items such that %&apos;pred&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:behalte Elemente, die _ aus _&#xD;ca:manté els elements on _ de _&#xD;es:mantener los elementos donde _ de _&#xD;fr:garder les items tels que _ de _&#xD;</translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIfElse"><block s="evaluate"><block var="pred"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></script></block></script></block-definition><block-definition s="combine with %&apos;function&apos; items of %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:kombiniere mit _ die Elemente von _&#xD;ca:combina amb _ els elements de _&#xD;es:combinar con _ los elementos de _&#xD;fr:combine avec _ les items de _&#xD;</translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="data"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="data"/></block></block></script></block><block s="doReport"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="combine with %repRing items of %l"><block var="function"/><block s="reportCDR"><block var="data"/></block></custom-block></list></block></block></script></block-definition><block-definition s="if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;" type="reporter" category="control"><header></header><code></code><translations>de:wenn _ dann _ sonst _&#xD;ca:si _ llavors _ si no _&#xD;es:si _ entonces _ sino _&#xD;fr:si _ alors _ sinon _&#xD;</translations><inputs><input type="%b"></input><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doReport"><block s="evaluate"><block var="true"/><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="false"/><list></list></block></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations>de:für _ = _ bis _ _&#xD;ca:per _ = _ fins _ _&#xD;es:para _ = _ hasta _ _&#xD;fr:pour _ allant de _ à _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportGreaterThan"><block var="start"/><block var="end"/></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportLessThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportGreaterThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></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;</translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="words"/></block></custom-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;</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;</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="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations>de:fange _ _&#xD;ca:agafa _ _&#xD;es:atrapar _ _&#xD;fr:attrape _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doRun"><block var="action"/><list></list></block></script><list><l>cont</l></list></block></block><custom-block s="ignore %s"><l>3</l></custom-block></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations>de:wirf _&#xD;ca:llança _&#xD;es:lanzar _&#xD;fr:lance _&#xD;</translations><inputs><input type="%s">catchtag</input></inputs><script><block s="doRun"><block var="cont"/><list></list></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;value&apos;" type="reporter" category="control"><header></header><code></code><translations>de:fange _ _&#xD;ca:agafa _ _&#xD;es:atrapar _ _&#xD;fr:attrape _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doReport"><block s="evaluate"><block var="value"/><list></list></block></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;tag&apos; %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations>de:wirf _ _&#xD;ca:llança _ _&#xD;es:lanzar _ _&#xD;fr:lance _ _&#xD;</translations><inputs><input type="%s">catchtag</input><input type="%s"></input></inputs><script><block s="doRun"><block var="tag"/><list><block var="value"/></list></block></script></block-definition><block-definition s="for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><header></header><code></code><translations>de:für jedes _ von _ _&#xD;ca:per cada _ de _ _&#xD;es:para cada _ de _ _&#xD;fr:pour chaque _ de _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doUntil"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><header></header><code></code><translations>de:falls _ dann _ und pause $pause-1-255-220-0&#xD;ca:si _ fes _ i atura-ho tot $pause-1-255-220-0&#xD;es:si _ haz _ y páralo todo $pause-1-255-220-0&#xD;fr:si _ faire _ et mettre tout en pause $pause-1-255-220-0&#xD;</translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><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;</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="ignore %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations>de:ignoriere _&#xD;ca:ignora _&#xD;es:ignorar _&#xD;fr:ignore _&#xD;</translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><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;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block-definition><block-definition s="%&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block var="x"/></block></script></block-definition><block-definition s="numbers from %&apos;from&apos; to %&apos;to&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:Zahlen von _ bis _&#xD;ca:nombres des de _ a _&#xD;es:números de _ a _&#xD;fr:nombres de _ à _&#xD;</translations><inputs><input type="%n">1</input><input type="%n">10</input></inputs><script><block s="doIf"><block s="reportGreaterThan"><block var="from"/><block var="to"/></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block var="from"/><custom-block s="numbers from %n to %n"><block s="reportSum"><block var="from"/><l>1</l></block><block var="to"/></custom-block></block></block></script></block-definition><block-definition s="map %&apos;func&apos; over %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:wende _ an auf _&#xD;ca:mapeja _ sobre _&#xD;es:mapear _ sobre _&#xD;fr:appliquer _ à _&#xD;</translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block var="data"/></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="func"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><custom-block s="map %repRing over %l"><block var="func"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script></block-definition><block-definition s="guess average" type="command" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doChangeVar"><l>turns</l><l>1</l></block><block s="doSetVar"><l>guess</l><block s="reportMonadic"><l><option>floor</option></l><block s="reportQuotient"><block s="reportSum"><block var="smallest possible number"/><block var="largest possible number"/></block><l>2</l></block></block></block><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><block s="bubble"><block s="reportJoinWords"><list><l>I guess </l><block var="guess"/></list></block></block></script><list></list></block><list></list></block></script><scripts><comment x="12" y="170.46666666666667" w="304" collapsed="false">There&apos;s a good chance that your students will do the SAY in whatever sprite is current, i.e., one of the buttons.  They may need to be reminded about TELL to have the correct sprite get the speech balloon.</comment></scripts></block-definition></blocks><variables><variable name="guesses"><list struct="atomic" id="727">30  is too big.,15  is too small.,22  is too big.,18  is too big.,16  is too small.,17 is correct!</list></variable><variable name="smallest possible number"><l>17</l></variable><variable name="largest possible number"><l>17</l></variable><variable name="guess"><l>17</l></variable><variable name="turns"><l>6</l></variable></variables></project><media name="U5L1p1-GuessNumber" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>