<snapdata remixID="11129737"><project name="U3L14" app="Snap! 7, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAAE1pJREFUeF7tnQeQVEUTxxsTQQRRRMEEAgYEBHNCQERyUMnfZwQUTJjKUGYxo5bxUzKSJWfJwQxKkJyRLIKAOetXv76a3X27e+wut8ucdz1V1C1778287ffbnvl397wr8M8///wj1swCnixQwAD0ZHkbVi1gABoIXi0QF8CFCxfKySefLAcffLDXi/M5+J9//ikbNmyQc8891+dl5PmxYwD84IMPpGzZsnn+gyf7AdevXy+1atVK9nA7LkULBADE8x111FHaxdy5c+Wzzz6TCy64QL788kv59ddf9TXvo1tq1Kghn3/+uZQrV06KFy8ue/fulSOPPFLfO//88/XYV199VY444gj54YcfpESJEvLHH3/Ijz/+qH0VKVJEmjRpImPHjpULL7xQx+LnypUr5YYbbkjxY2T2cK6/cuXKmR0kn/YeAPDbb79VWGivvfaaHHPMMfL7778rOAcddJC+z9RUsGBBWbFihcLH60MPPVT/X716dQHi5s2bh2ADSOD75ptvFDqOHzdunAwdOlS6dOkiZ555phQrVkz7L1y4sBQqVEg6deok33//fa65JVw7Xypr6bdAAEC8GP9owPjxxx/LSSedpBCyHpw3b55Oz6VLl1Yv6Dwanu+3335Tb/f1119LpUqVpEyZMvL222/LRRddJJs3b5ZSpUppH/S/atUqOeWUU+Tyyy+XSZMmyWGHHSbbt2+XBg0ayKZNm3TKo7/c0nbv3i1nn312brmcPHUdAQD37NkTAhBPhEeKbLwHGJGhw0MOOUT4x7SaV9r2rVukUJHDQx8HAM8555y88vFy1eeIARAIaavnzZSiS0dKobLVc9UFZ+pi3JcPb1614E75uUm30BeN3xmAmbF8DIB822kLRneXGicVlJ/OyV2CIDNmEJk5c2ao6zZru8quTnPk77//1vdYNhiAmbF8AEDgcx4wEsB169apUECUJGqsC2fPni1169ZNdGjC36OIFy1aJG3atEl4bKIDli1bpn0hkA4/PDy9uvMiAWyxuqvsvTUMIDaxeGAiC+/f72MADHvAHnLZyVke8LHHHtOwSzJQvf7667JmzRp544039u+KIs4CQMDo3LmzFChQIEf9vfXWW3LbbbfpFwxVHt2iAdzTeXbA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</thumbnail><scenes select="1"><scene name="U3L14"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><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></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></list><l>var stage = this.parentThatIsA(StageMorph),&#xD;    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();</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="map %&apos;function&apos; over %&apos;lists&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%mult%l"></input></inputs><script><block s="doWarp"><script><block s="doDeclareVariables"><list><l>mapone</l><l>mapmany</l></list></block><block s="doSetVar"><l>mapone</l><block s="reifyScript"><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="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="evaluate"><block var="mapone"/><list><block s="reportCDR"><block var="data"/></block></list></block></block></block></script><list><l>data</l></list></block></block><block s="doSetVar"><l>mapmany</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportListItem"><l>1</l><block var="data lists"/></block></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></block><block s="evaluate"><block var="mapmany"/><list><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportCDR"><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></list></block></block></block></script><list><l>data lists</l></list></block></block><block s="doIfElse"><custom-block s="empty? %l"><block s="reportCDR"><block var="lists"/></block></custom-block><script><block s="doReport"><block s="evaluate"><block var="mapone"/><list><block s="reportListItem"><l>1</l><block var="lists"/></block></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="mapmany"/><list><block var="lists"/></list></block></block></script></block></script></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations></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></translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><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></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></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><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></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></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></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></translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doWarp"><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="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></script></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></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></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations></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></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></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></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></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></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block></script></block-definition><block-definition s="ignore %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></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="ask %&apos;sprite&apos; for %&apos;expression&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%repRing"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportAttributeOf"><block var="expression"/><block var="sprite"/></block><list></list></block></block></script></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block></script></block-definition><block-definition s="employee, name: %&apos;name&apos; job title: %&apos;title&apos; salary: %&apos;salary&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block var="name"/><block var="title"/><block var="salary"/></list></block></block></script></block-definition><block-definition s="name from employee %&apos;employee&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="employee"/></block></block></script></block-definition><block-definition s="job title from employee %&apos;employee&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportListItem"><l>2</l><block var="employee"/></block></block></script></block-definition><block-definition s="salary from employee %&apos;employee&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportListItem"><l>3</l><block var="employee"/></block></block></script></block-definition><block-definition s="average of %&apos;a&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportQuotient"><block s="reportCombine"><block var="a"/><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block><block s="reportListAttribute"><l><option>length</option></l><block var="a"/></block></block></block></script></block-definition></blocks><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" hyperops="true" codify="false" inheritance="false" sublistIDs="false" id="583"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+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+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==</pentrails><costumes><list struct="atomic" id="584"></list></costumes><sounds><list struct="atomic" id="585"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Sprite" idx="1" x="0" y="-1.1368683772161603e-13" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="590"><costumes><list struct="atomic" id="591"></list></costumes><sounds><list struct="atomic" id="592"></list></sounds><blocks></blocks><variables></variables><scripts><script x="10" y="10"><block s="doSetVar"><l>employee database</l><block s="reportNewList"><list><custom-block s="employee, name: %s job title: %s salary: %s"><l>Ben Bitdiddle</l><l>computer wizard</l><l>60000</l></custom-block><custom-block s="employee, name: %s job title: %s salary: %s"><l>Alyssa P Hacker</l><l>computer programmer</l><l>40000</l></custom-block><custom-block s="employee, name: %s job title: %s salary: %s"><l>Cy D Fect</l><l>computer programmer</l><l>35000</l></custom-block><custom-block s="employee, name: %s job title: %s salary: %s"><l>Lem E Tweakit</l><l>computer technician</l><l>25000</l></custom-block><custom-block s="employee, name: %s job title: %s salary: %s"><l>Louis Reasoner</l><l>computer programmer trainee</l><l>30000</l></custom-block><custom-block s="employee, name: %s job title: %s salary: %s"><l>Oliver Warbucks</l><l>big wheel</l><l>650000</l></custom-block><custom-block s="employee, name: %s job title: %s salary: %s"><l>Eben Scrooge</l><l>chief accountant</l><l>75000</l></custom-block><custom-block s="employee, name: %s job title: %s salary: %s"><l>Robert Cratchet</l><l>accounting scrivener</l><l>18000</l></custom-block><custom-block s="employee, name: %s job title: %s salary: %s"><l>Aull DeWitt</l><l>secretary</l><l>25000</l></custom-block></list></block></block></script><script x="33.66666666666666" y="245.73333333333335"><block s="doReport"><block s="reportNewList"><list><block s="reportCombine"><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><custom-block s="salary from employee %l"><l/></custom-block></autolambda><list></list></block><list><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportGreaterThan"><l>100000</l><custom-block s="salary from employee %l"><l/></custom-block></block></autolambda><list></list></block><block var="employee database"/></block></list></custom-block><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><custom-block s="name from employee %l"><l/></custom-block></autolambda><list></list></block><list><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportGreaterThan"><l>100000</l><custom-block s="salary from employee %l"><l/></custom-block></block></autolambda><list></list></block><block var="employee database"/></block></list></custom-block></list></block></block></script><script x="20.66666666666663" y="469.73333333333323"><block s="doReport"><block s="reportNewList"><list><block s="reportCombine"><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><custom-block s="salary from employee %l"><l/></custom-block></autolambda><list></list></block><list><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportGreaterThan"><custom-block s="salary from employee %l"><l/></custom-block><l>100000</l></block></autolambda><list></list></block><block var="employee database"/></block></list></custom-block><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><custom-block s="name from employee %l"><l/></custom-block></autolambda><list></list></block><list><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportGreaterThan"><custom-block s="salary from employee %l"><l/></custom-block><l>100000</l></block></autolambda><list></list></block><block var="employee database"/></block></list></custom-block></list></block></block></script><script x="584.2333984374998" y="385.4000000000003"><block s="reportQuotient"><block s="reportCombine"><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><custom-block s="salary from employee %l"><l/></custom-block></autolambda><list></list></block><list><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportGreaterThan"><l>100000</l><custom-block s="salary from employee %l"><l/></custom-block></block></autolambda><list></list></block><block var="employee database"/></block></list></custom-block><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block><block s="reportListAttribute"><l><option>length</option></l><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportGreaterThan"><l>100000</l><custom-block s="salary from employee %l"><l/></custom-block></block></autolambda><list></list></block><block var="employee database"/></block></block></block></script></scripts></sprite><watcher var="employee database" style="normal" x="10" y="10" color="243,118,29" extX="185.5615234375" extY="150"/></sprites></stage><variables><variable name="employee database"><list id="840"><item><list struct="atomic" id="841">Ben Bitdiddle,computer wizard,60000</list></item><item><list struct="atomic" id="842">Alyssa P Hacker,computer programmer,40000</list></item><item><list struct="atomic" id="843">Cy D Fect,computer programmer,35000</list></item><item><list struct="atomic" id="844">Lem E Tweakit,computer technician,25000</list></item><item><list struct="atomic" id="845">Louis Reasoner,computer programmer trainee,30000</list></item><item><list struct="atomic" id="846">Oliver Warbucks,big wheel,650000</list></item><item><list struct="atomic" id="847">Eben Scrooge,chief accountant,75000</list></item><item><list struct="atomic" id="848">Robert Cratchet,accounting scrivener,18000</list></item><item><list struct="atomic" id="849">Aull DeWitt,secretary,25000</list></item></list></variable></variables></scene></scenes></project><media name="U3L14" app="Snap! 7, https://snap.berkeley.edu" version="2"></media></snapdata>