computer science
<project name="CSE3-Assignment3-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,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="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="0,33,35,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="20" y="20"><block s="doDeleteFromList"><l>1</l><block var="data"/><comment w="222.07547169811318" collapsed="false">Right-click on the variable data on the stage, import the csv file with your data, and then run the code below.</comment></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block s="reportListItem"><l><option>last</option></l><block var="data"/></block></block><l>0</l></block><script><block s="doDeleteFromList"><l><option>last</option></l><block var="data"/></block></script></block></script><script x="20" y="125"><block s="up"></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="setHeading"><l>90</l></block><block s="clear"></block></script><script x="20" y="221"><custom-block s="Bar Graph, data values: %l data labels: %l"><l/><l/></custom-block></script></scripts></sprite><watcher var="data" style="normal" x="11.6875" y="13.750000000000007" color="243,118,29"/><watcher var="data labels" style="normal" x="196.875" y="18.875" color="243,118,29"/><watcher var="data values" style="normal" x="193.875" y="51.65000137499999" color="243,118,29"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="get column %'columnNum' from %'array'" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>listToReturn</l></list></block><block s="doSetVar"><l>listToReturn</l><block s="reportNewList"><list></list></block></block><custom-block s="for each %upvar of %l %cs"><l>row</l><block var="array"/><script><block s="doAddToList"><block s="reportListItem"><block var="columnNum"/><block var="row"/></block><block var="listToReturn"/></block></script></custom-block><block s="doReport"><block var="listToReturn"/></block></script></block-definition><block-definition s="label %'text' of size %'size'" type="command" category="pen"><comment x="0" y="0" w="89.99999999999999" 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 _
ca:etiqueta _ de mida _
es:etiqueta _ de tamaño _
fr:étiquette _ d'une taille de _
</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);

if (this == stage) {
 throw new Error(
 'LABEL cannot be used from the stage because the stage does not have a postion.\n'
 + 'Use LABEL from a sprite to draw text.');
}

if (typeof text !== 'string' && typeof text !== 'number') {
 throw new Error('LABEL can only draw text or numbers, not a ' + process.reportTypeOf(text)); 
}

var context = stage.penTrails().getContext('2d'),
 rotation = radians(this.direction() - 90),
 trans = new Point(
 this.center().x - stage.left(),
 this.center().y - stage.top()
 ),
 isWarped = this.Warped,
 len,
 pos;

if (isWarped) {endWarp(); }
context.save();
context.font = size + 'px monospace';
context.textAlign = 'left';
context.textBaseline = 'alphabetic';
context.fillStyle = this.color.toString();
len = context.measureText(text).width;
trans = trans.multiplyBy(1 / stage.scale);
context.translate(trans.x, trans.y);
context.rotate(rotation);
context.fillText(text, 0, 0);
context.translate(-trans.x, -trans.y);
context.restore();
pos = new Point(
 len * Math.sin(radians(this.direction())),
 len * Math.cos(radians(this.direction())));
pos = pos.add(new Point(this.xPosition(), this.yPosition()));
this.gotoXY(pos.x, pos.y, false);
this.changed();
if (isWarped) {this.startWarp(); }
stage.changed();
</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="empty? %'data'" type="predicate" category="lists"><header></header><code></code><translations>de:ist _ leer?
ca:_ buida?
es:_ vacía?
fr:_ vide?
</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 %'pred' from %'data'" type="reporter" category="lists"><header></header><code></code><translations>de:behalte Elemente, die _ aus _
ca:manté els elements on _ de _
es:mantener los elementos donde _ de _
fr:garder les items tels que _ de _
</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 %'function' items of %'data'" type="reporter" category="lists"><header></header><code></code><translations>de:kombiniere mit _ die Elemente von _
ca:combina amb _ els elements de _
es:combinar con _ los elementos de _
fr:combine avec _ les items de _
</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 %'test' then %'true' else %'false'" type="reporter" category="control"><header></header><code></code><translations>de:wenn _ dann _ sonst _
ca:si _ llavors _ si no _
es:si _ entonces _ sino _
fr:si _ alors _ sinon _
</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 %'i' = %'start' to %'end' %'action'" type="command" category="control"><header></header><code></code><translations>de:für _ = _ bis _ _
ca:per _ = _ fins _ _
es:para _ = _ hasta _ _
fr:pour _ allant de _ à _ _
</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 %'words'" type="reporter" category="operators"><header></header><code></code><translations>de:füge Wörter zusammen _
ca:uneix les paraules _
es:unir las palabras _
fr:fusionne les mots _
</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 %'data'" type="reporter" category="operators"><header></header><code></code><translations>de:Liste $arrowRight Satz _
ca:llista $arrowRight frase _
es:lista $arrowRight frase _
fr:liste $arrowRight phrase _
</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 %'text'" type="reporter" category="operators"><header></header><code></code><translations>de:Satz $arrowRight Liste _
ca:frase $arrowRight llista _
es:frase $arrowRight lista _
fr:phrase $arrowRight liste _
</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 %'tag' %'action'" type="command" category="control"><header></header><code></code><translations>de:fange _ _
ca:agafa _ _
es:atrapar _ _
fr:attrape _ _
</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 %'cont'" type="command" category="control"><header></header><code></code><translations>de:wirf _
ca:llança _
es:lanzar _
fr:lance _
</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 %'tag' %'value'" type="reporter" category="control"><header></header><code></code><translations>de:fange _ _
ca:agafa _ _
es:atrapar _ _
fr:attrape _ _
</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 %'tag' %'value'" type="command" category="control"><header></header><code></code><translations>de:wirf _ _
ca:llança _ _
es:lanzar _ _
fr:lance _ _
</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 %'item' of %'data' %'action'" type="command" category="lists"><header></header><code></code><translations>de:für jedes _ von _ _
ca:per cada _ de _ _
es:para cada _ de _ _
fr:pour chaque _ de _ _
</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 %'test' do %'action' 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
ca:si _ fes _ i atura-ho tot $pause-1-255-220-0
es:si _ haz _ y páralo todo $pause-1-255-220-0
fr:si _ faire _ et mettre tout en pause $pause-1-255-220-0
</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 %'word'" type="reporter" category="operators"><header></header><code></code><translations>de:Wort $arrowRight Liste _
ca:paraula $arrowRight llista _
es:palabra $arrowRight lista _
fr:mot $arrowRight liste _
</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 %'x'" type="command" category="control"><header></header><code></code><translations>de:ignoriere _
ca:ignora _
es:ignorar _
fr:ignore _
</translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="list $arrowRight word %'list'" type="reporter" category="operators"><header></header><code></code><translations>de:Liste $arrowRight Wort _
ca:llista $arrowRight paraula _
es:lista $arrowRight palabra _
fr:liste $arrowRight mot _
</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="%'x'" 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 %'from' to %'to'" type="reporter" category="lists"><header></header><code></code><translations>de:Zahlen von _ bis _
ca:nombres des de _ a _
es:números de _ a _
fr:nombres de _ à _
</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 %'func' over %'data'" type="reporter" category="lists"><header></header><code></code><translations>de:wende _ an auf _
ca:mapeja _ sobre _
es:mapear _ sobre _
fr:appliquer _ à _
</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="draw axes at x: %'x0' y: %'y0' length: %'length' height: %'height'" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input><input type="%n"></input></inputs></block-definition><block-definition s="label %'text' of size %'size' in direction %'direction'" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%n"></input><input type="%n"></input></inputs></block-definition><block-definition s="draw bar width: %'width' height: %'height' at y %'y0' with label %'label' of size %'size'" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input><input type="%txt"></input><input type="%n"></input></inputs></block-definition><block-definition s="max of list : %'list'" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><custom-block s="combine with %repRing items of %l"><block s="reifyReporter"><autolambda><custom-block s="max of %s %s"><l></l><l></l></custom-block></autolambda><list></list></block><block var="list"/></custom-block></block></script></block-definition><block-definition s="max of %'a' %'b'" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportGreaterThan"><block var="a"/><block var="b"/></block><script><block s="doReport"><block var="a"/></block></script><script><block s="doReport"><block var="b"/></block></script></block></script></block-definition><block-definition s="label vertical axis: x: %'x0' y: %'y0' height: %'height' data values: %'data values list'" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>yaxisinterval</l></list></block><block s="doDeclareVariables"><list><l>change</l></list></block><block s="doSetVar"><l>change</l><block s="reportQuotient"><block var="height"/><l>10</l></block></block><block s="doSetVar"><l>yaxisinterval</l><block s="reportQuotient"><custom-block s="max of list : %s"><block var="data values list"/></custom-block><l>10</l></block></block><block s="up"></block><block s="gotoXY"><block s="reportDifference"><block var="x0"/><l>35</l></block><block var="y0"/></block><custom-block s="label %txt of size %n in direction %n"><l>0</l><l>14</l><l>90</l></custom-block><block s="setXPosition"><block s="reportDifference"><block var="x0"/><l>10</l></block></block><custom-block s="label %txt of size %n in direction %n"><l>-</l><l>14</l><l>90</l></custom-block><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><l>10</l><script><block s="setXPosition"><block s="reportDifference"><block var="x0"/><l>35</l></block></block><block s="changeYPosition"><block var="change"/></block><custom-block s="label %txt of size %n in direction %n"><block s="reportRound"><block s="reportProduct"><block var="i"/><block var="yaxisinterval"/></block></block><l>14</l><l>90</l></custom-block><block s="setXPosition"><block s="reportDifference"><block var="x0"/><l>10</l></block></block><custom-block s="label %txt of size %n in direction %n"><l>-</l><l>14</l><l>90</l></custom-block></script></custom-block></script></block-definition><block-definition s="draw bars at x: %'x0' y: %'y0' bar width: %'bar width' max height: %'max height' labels: %'labels' values: %'values'" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input><input type="%n"></input><input type="%l"></input><input type="%l"></input></inputs></block-definition><block-definition s="Bar Graph, data values: %'data values' data labels: %'data labels'" type="command" category="looks"><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%l"></input></inputs><script><block s="clear"></block><block s="up"></block><block s="gotoXY"><l>0</l><l>0</l></block><custom-block s="draw axes at x: %n y: %n length: %n height: %n"><l></l><l></l><l></l><l></l></custom-block><custom-block s="draw bars at x: %n y: %n bar width: %n max height: %n labels: %l values: %l"><l></l><l></l><l></l><l></l><l/><l/></custom-block><custom-block s="label vertical axis: x: %n y: %n height: %n data values: %l"><l></l><l></l><l></l><l/></custom-block></script></block-definition></blocks><variables><variable name="data"><l>0</l></variable><variable name="data labels"><l>0</l></variable><variable name="data values"><l>0</l></variable></variables></project>