<snapdata remixID="12015056"><project name="Debugger Blocks" app="Snap! 7, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="Debugger Blocks"><notes></notes><palette><category name="Debugger" color="0,116,143,1"/></palette><hidden></hidden><headers></headers><code></code><blocks><block-definition s="breakpoint" type="command" category="Debugger"><comment x="0" y="0" w="90" collapsed="false">Same as pause all.</comment><header></header><code></code><translations></translations><inputs></inputs><script><block s="doPauseAll"></block></script></block-definition><block-definition s="%&apos;dropdown&apos; %&apos;text&apos;" type="command" category="Debugger"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">log<options>log&#xD;warn&#xD;error</options></input><input type="%s"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="dropdown"/><l>log</l></block><script><custom-block s="inform %s titled %s"><block var="text"/><l>ℹ</l></custom-block></script></block><block s="doIf"><block s="reportEquals"><block var="dropdown"/><l>warn</l></block><script><custom-block s="inform %s titled %s"><block var="text"/><l>⚠️</l></custom-block></script></block><block s="doIf"><block s="reportEquals"><block var="dropdown"/><l>error</l></block><script><custom-block s="inform %s titled %s"><block var="text"/><l>✖️</l></custom-block></script></block></script></block-definition><block-definition s="set value %&apos;which&apos; to %&apos;value&apos;" type="command" category="sensing"><comment x="0" y="0" w="254.66666666666666" collapsed="false">Allows changing global settings programmatically.&#xD;This block is for numeric or text settings; use&#xD;SET FLAG for Boolean (checkbox) values.&#xD;&#xD;Eisenberg&apos;s Law:  Anything you can do from the user interface you should be able to do in your program, and vice versa.  This library is just a beginning; there are many UI controls outside of the Settings menu.</comment><header></header><code></code><translations>pt:altera o valor da configuração _ para _&#xD;</translations><inputs><input type="%s" readonly="true"><options>Project notes&#xD;Project name&#xD;Language&#xD;Zoom blocks&#xD;Stage size&#xD;Stage scale&#xD;Visible palette</options></input><input type="%s"></input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>which</l><l>value</l></list><l>var   stage = this.parentThatIsA(StageMorph),&#xD;        ide = stage.parentThatIsA(IDE_Morph),&#xD;        world = stage.parentThatIsA(WorldMorph);&#xD;&#xD;try {&#xD;ide.savingPreferences = false;&#xD;&#xD;switch (which) {&#xD;    case &apos;Project notes&apos;:&#xD;        ide.projectNotes = value;&#xD;        break;&#xD;    case &apos;Project name&apos;:&#xD;        ide.setProjectName(value);&#xD;        break;&#xD;    case &apos;Language&apos;:&#xD;        ide.setLanguage(value);&#xD;        break;&#xD;    case &apos;Zoom blocks&apos;:&#xD;        if (!isNaN(value)) ide.setBlocksScale(Math.min(value, 12));&#xD;        break;&#xD;    case &apos;Stage size&apos;:&#xD;        if ((value instanceof List) &amp;&amp; value.length()==2&#xD;                       &amp;&amp; !isNaN(value.at(1)) &amp;&amp; !isNaN(value.at(2)))&#xD;            ide.setStageExtent(new Point(value.at(1), value.at(2)));&#xD;        break;&#xD;    case &apos;Stage scale&apos;:&#xD;        ide.toggleStageSize(value != 1, Math.max(0.1, value));&#xD;        break;&#xD;    case &apos;Visible palette&apos;:&#xD;        ide.currentCategory = value.toLowerCase();&#xD;        ide.categories.children.forEach(function (each) {&#xD;                each.refresh();&#xD;        });&#xD;        ide.refreshPalette(true);&#xD;        break;&#xD;};&#xD;}&#xD;finally {ide.savingPreferences = true;&#xD;};</l></block><list><block var="which"/><block var="value"/></list></block></script></block-definition><block-definition s="inform %&apos;body&apos; titled %&apos;title&apos;" type="command" category="sensing"><comment x="0" y="0" w="90" collapsed="false">These blocks are obsolete, use the CUSTOM DIALOG block instead.</comment><header></header><code></code><translations></translations><inputs><input type="%s">This is some content!</input><input type="%s">!</input></inputs><script><custom-block s="let %upvar be %s"><l>test</l><block s="evaluate"><block s="reportJSFunction"><list><l>body</l><l>title</l></list><l>var dialog = new DialogBoxMorph(),&#xD;    isDone = false;&#xD;dialog.destroy = function() {&#xD;    isDone = true;&#xD;    var world = this.world();&#xD;    world.keyboardFocus = null;&#xD;    world.hand.destroyTemporaries();&#xD;    DialogBoxMorph.uber.destroy.call(this);&#xD;}&#xD;dialog.inform(title, body, this.world());&#xD;return () =&gt; (isDone);</l></block><list><block var="body"/><block var="title"/></list></block></custom-block><block s="doWaitUntil"><block s="evaluate"><block var="test"/><list></list></block></block></script></block-definition><block-definition s="let %&apos;var&apos; be %&apos;val&apos;" type="command" category="other"><comment x="0" y="0" w="183.33333333333334" collapsed="false">LET (FOO) BE (5)&#xD;is equivalent to&#xD;SCRIPT VARIABLES (FOO)&#xD;SET (FOO) TO (5)</comment><header></header><code></code><translations>pt:cria a variável de guião _ com valor _&#xD;</translations><inputs><input type="%upvar"></input><input type="%s"></input></inputs><script><block s="doSetVar"><l>var</l><block var="val"/></block></script></block-definition><block-definition s="script %&apos;block&apos; $arrowRight scratchblocks" type="reporter" category="other"><comment x="0" y="0" w="90" collapsed="false">turns the specified script into scratchblocks.&#xD;the jsfunction block does not work.</comment><header></header><code></code><translations></translations><inputs><input type="%repRing"></input></inputs><script><block s="doRun"><block s="reportJSFunction"><list></list><l>if( !BlockMorph.prototype._userMenu){&#xD;  BlockMorph.prototype._userMenu = BlockMorph.prototype.userMenu;&#xD;}&#xD;&#xD;BlockMorph.prototype.userMenu = function(){&#xD;var&#xD; shiftClicked = world.currentKey === 16 &#xD; ,menu = this._userMenu();&#xD; &#xD; if (shiftClicked){&#xD;   menu.addItem(&#xD;     "to scratchblocks...",&#xD;      function () {&#xD;        var code = &apos;&lt;p&gt;[scratchblocks]\n&apos;+this.topBlock().toScratchblocks()+&apos;\n[/scratchblocks]&apos;;&#xD;        window.prompt(&apos;scratchblocks code for you to copy and paste&apos;, code);&#xD;      },&#xD;      &apos;open a new window\nwith a scratchblocks...&apos;&#xD;   );&#xD; }&#xD;return menu;&#xD;}&#xD;&#xD;SyntaxElementMorph.prototype.toScratchblocks = function () {&#xD;    var nb = this.nextBlock &amp;&amp; this.nextBlock(),&#xD;        result;&#xD;    result = this.parts().map(function(child) {&#xD;        if (child.toScratchblocks) {&#xD;          return child.toScratchblocks();&#xD;        } else if (child instanceof StringMorph) {&#xD;          return child.text;&#xD;        } else {&#xD;          return &apos;&apos;; // should never happen&#xD;        }&#xD;    }).join(&apos; &apos;) + this.toScratchblocksCategory();&#xD;    if (nb) {&#xD;        result += &apos;\n&apos; + nb.toScratchblocks()&#xD;    }&#xD;    return result;&#xD;};&#xD;&#xD;SyntaxElementMorph.prototype.toScratchblocksCategory = function () {&#xD;    // private. answers with scratchblocks category specifier&#xD;    if (!this.category) { return &apos;&apos;; }&#xD;    return &apos; :: &apos; + ({&#xD;        &apos;lists&apos;: &apos;list&apos;,&#xD;        &apos;other&apos;: &apos;grey&apos;,&#xD;    }[this.category] || this.category);&#xD;};&#xD;&#xD;ReporterBlockMorph.prototype.toScratchblocks = function () {&#xD;    var inner = ReporterBlockMorph.uber.toScratchblocks.call(this);&#xD;    if (this.isPredicate) {&#xD;        return &apos;&lt;&apos; + inner + &apos;&gt;&apos;;&#xD;    } else {&#xD;        return &apos;(&apos; + inner + &apos;)&apos;;&#xD;    }&#xD;};&#xD;&#xD;RingMorph.prototype.toScratchblocksCategory = function () {&#xD;    // force rendering as a &apos;ring&apos; shape.&#xD;    return RingMorph.uber.toScratchblocksCategory.call(this) + &apos; ring&apos;;&#xD;};&#xD;&#xD;ArgMorph.prototype.toScratchblocks = function () {&#xD;    if (this.isHole) {&#xD;        if (this.children[0] instanceof ArgMorph) {&#xD;            return this.isPredicate ? &apos;&lt; &gt;&apos; : &apos;( )&apos;;&#xD;        } else {&#xD;            return this.children[0].toScratchblocks();&#xD;        }&#xD;    } else if (this.type === &apos;list&apos;) {&#xD;        return &apos;≡&apos;; // scratchblocks renderer does not have a "list" symbol&#xD;    }&#xD;    return &apos;&apos;; // should never happen&#xD;};&#xD;&#xD;CommandSlotMorph.prototype.toScratchblocks = function () {&#xD;    var inside = this.children.map(function(child) {&#xD;        return child.toScratchblocks();&#xD;    }).join(&apos;\n&apos;);&#xD;    // need line break if empty&#xD;    // otherwise scratchblocks renders an empty embedded block&#xD;    return &apos;{&apos; + (inside || &apos;\n&apos;) + &apos;}&apos;;&#xD;};&#xD;&#xD;InputSlotMorph.prototype.toScratchblocks = function () {&#xD;    var contents = this.contents(),&#xD;        text = contents.text;&#xD;    if (this.isNumeric) {&#xD;        if (this.choices) {&#xD;            return &apos;(&apos; + text + &apos; v)&apos;;&#xD;        } else {&#xD;            return &apos;(&apos; + text + &apos;)&apos;;&#xD;        }&#xD;    } else if (this.choices) {&#xD;        return &apos;[&apos; + text + &apos; v]&apos;;&#xD;    } else {&#xD;        // escape trailing &apos; v&apos;&#xD;        text = text.replace(/ v$/, &apos;\\ v&apos;);&#xD;        return &apos;[&apos; + text + &apos;]&apos;;&#xD;    }&#xD;};&#xD;&#xD;TemplateSlotMorph.prototype.toScratchblocks = function () {&#xD;    var category = this.parent.toScratchblocksCategory() || &apos; :: grey&apos;;&#xD;    return &apos;(&apos; + this.children[0].toScratchblocks() + category + &apos;)&apos;;&#xD;};&#xD;&#xD;BooleanSlotMorph.prototype.toScratchblocks = function () {&#xD;    if (this.value === null) {&#xD;      return &apos;&lt; &gt;&apos;; // empty boolean slot&#xD;    } else {&#xD;      // use unicode symbols to emulate green tick/red cross&#xD;      return this.value ? &apos;&lt;&lt;✔true (::grey):: operators&gt; :: operators&gt;&apos; : &apos;&lt;(::grey)✘false :: obsolete&gt;&apos;;&#xD;    }&#xD;};&#xD;&#xD;SymbolMorph.prototype.toScratchblocks = function () {&#xD;    var symbol = {&#xD;        &apos;flag&apos;: &apos;greenFlag&apos;,&#xD;    }[this.name] || this.name;&#xD;    return &apos;@&apos; + symbol;&#xD;};&#xD;&#xD;MultiArgMorph.prototype.toScratchblocks = function () {&#xD;    var arrows = this.arrows().children,&#xD;        label = this.children[0],&#xD;        result = &apos;&apos;;&#xD;    if (label.isVisible) {&#xD;        result += label.text;&#xD;    }&#xD;    result += this.inputs().map(function(child) {&#xD;        return child.toScratchblocks();&#xD;    }).join(&apos; &apos;);&#xD;    if (arrows[0].isVisible) result += &apos; @delInput&apos;;&#xD;    if (arrows[1].isVisible) result += &apos; @addInput&apos;;&#xD;    return result;&#xD;};&#xD;&#xD;PrototypeHatBlockMorph.prototype.toScratchblocks = function () {&#xD;    var customCommand = this.parts()[0],&#xD;        nb = this.nextBlock(),&#xD;        result;&#xD;    result = &apos;{&apos; + customCommand.toScratchblocks() + &apos;} :: control hat&apos;;&#xD;    if (nb) {&#xD;      result += &apos;\n&apos; + nb.toScratchblocks();&#xD;    }&#xD;    return result;&#xD;};&#xD;&#xD;BlockLabelPlaceHolderMorph.prototype.toScratchblocks = function () {&#xD;    return &apos;&apos;; // don&apos;t include plusses in scratchblocks output&#xD;};&#xD;</l></block><list></list></block><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>b</l></list><l>return (b).expression.toScratchblocks()</l></block><list><block var="block"/></list></block></block></script></block-definition><block-definition s="send %&apos;thing&apos; to clipboard" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportIsA"><block var="thing"/><l><option>list</option></l></block><script><custom-block s="send %s to clipboard"><block s="reportCombine"><block var="thing"/><block s="reifyReporter"><autolambda><block s="reportJoinWords"><list><l></l><custom-block s="multiline %mlt"><l>&#xD;</l></custom-block><l></l></list></block></autolambda><list></list></block></block></custom-block></script><script><block s="doRun"><block s="reportJSFunction"><list><l>thing</l></list><l>if("clipboard" in navigator) {&#xD;  navigator.clipboard.writeText(thing)&#xD;} else {alert("I can&apos;t send thing to clipboard.")}</l></block><list><block var="thing"/></list></block></script></block></script></block-definition><block-definition s="multiline %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations>pt:o texto multilinha _&#xD;</translations><inputs><input type="%mlt"></input></inputs><script><block s="doReport"><block var="text"/></block></script></block-definition><block-definition s="alt list %&apos;listtext&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%mlt"></input></inputs><script><block s="doReport"><block s="reportTextSplit"><block var="listtext"/><l><option>line</option></l></block></block></script></block-definition><block-definition s="Infinity" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l>Infinity</l></block></script></block-definition><block-definition s="turn red" type="command" category="looks"><header></header><code></code><translations></translations><inputs></inputs><script><block s="setEffect"><l><option>color</option></l><block s="reportPower"><l>10</l><l>301</l></block></block></script></block-definition></blocks><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" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="166"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAAEBxJREFUeF7t21tOm2kQRdEwQ4bKDJPw4AhZwb8xl405q9+6SShq1dfagigPv/xDgAABAgQIfLnAw5dPNJAAAQIECBD4JcAeAQECBAgQCAQEOEA3kgABAgQICLA3QIAAAQIEAgEBDtCNJECAAAECAuwNECBAgACBQECAA3QjCRAgQICAAHsDBAgQIEAgEBDgAN1IAgQIECAgwN4AAQIECBAIBAQ4QDeSAAECBAgIsDdAgAABAgQCAQEO0I0kQIAAAQIC7A0QIECAAIFAQIADdCMJECBAgIAAewMECBAgQCAQEOAA3UgCBAgQICDA3gABAgQIEAgEBDhAN5IAAQIECAiwN0CAAAECBAIBAQ7QjSRAgAABAgLsDRAgQIAAgUBAgAN0IwkQIECAgAB7AwQIECBAIBAQ4ADdSAIECBAgIMDeAAECBAgQCAQEOEA3kgABAgQICLA3QIAAAQIEAgEBDtCNJECAAAECAuwNECBAgACBQECAA3QjCRAgQICAAHsDBAgQIEAgEBDgAN1IAgQIECAgwN4AAQIECBAIBAQ4QDeSAAECBAgIsDdAgAABAgQCAQEO0I0kQIAAAQIC7A0QIECAAIFAQIADdCMJECBAgIAAewMECBAgQCAQEOAA3UgCBAgQICDA3gABAgQIEAgEBDhAN5IAAQIECAiwN0CAAAECBAIBAQ7QjSRAgAABAgLsDRAgQIAAgUBAgAN0IwkQIECAgAB7AwQIECBAIBAQ4ADdSAIECBAgIMDeAAECBAgQCAQEOEA3kgABAgQICLA3QIAAAQIEAgEBDtCNJECAAAECAuwNECBAgACBQECAA3QjCRAgQICAAHsDBAgQIEAgEBDgAN1IAgQIECAgwN4AAQIECBAIBAQ4QDeSAAECBAgIsDdAgAABAgQCAQEO0I0kQIAAAQIC7A0QIECAAIFAQIADdCMJECBAgIAAewMECBAgQCAQEOAA3UgCBAgQICDA3gABAgQIEAgEBDhAN5IAAQIECAiwN0CAAAECBAIBAQ7QjSRAgAABAgLsDRAgQIAAgUBAgAN0IwkQIECAgAB7AwQIECBAIBAQ4ADdSAIECBAgIMDeAAECBAgQCAQEOEA3kgABAgQICLA3QIAAAQIEAgEBDtCNJECAAAECAuwNECBAgACBQECAA3QjCRAgQICAAHsDBAgQIEAgEBDgAN1IAgQIECAgwN4AAQIECBAIBAQ4QDeSAAECBAgIsDdAgAABAgQCAQEO0I0kQIAAAQIC7A0QIECAAIFAQIADdCMJECBAgIAAewMECBAgQCAQEOAA3UgCBAgQICDA3gABAgQIEAgEBDhAN5IAAQIECAiwN0CAAAECBAIBAQ7QjSRAgAABAgLsDRAgQIAAgUBAgAN0IwkQIECAgAB7AwQIECBAIBAQ4ADdSAIECBAgIMDeAAECBAgQCAQEOEA3kgABAgQICLA3QIAAAQIEAgEBDtCNJECAAAECAuwNECBAgACBQECAA3QjCRAgQICAAHsDBAgQIEAgEBDgAN1IAgQIECAgwN4AAQIECBAIBAQ4QDeSAAECBAgIsDdAgAABAgQCAQEO0I0kQIAAAQIC7A0QIECAAIFAQIADdCMJECBAgIAAewMECBAgQCAQEOAA3UgCBAgQICDA3gABAgQIEAgEBDhAN5IAAQIECAiwN0CAAAECBAIBAQ7QjSRAgAABAgLsDRAgQIAAgUBAgAN0IwkQIECAgAB7AwQIECBAIBAQ4ADdSAIECBAgIMDeAAECBAgQCAQEOEA3kgABAgQICLA3QIAAAQIEAgEBDtCNJECAAAECAuwNECBAgACBQECAA3QjCRAgQICAAHsDBAgQIEAgEBDgAN1IAgQIECAgwN4AAQIECBAIBAQ4QDeSAAECBAgIsDdAgAABAgQCAQEO0I0kQIAAAQIC7A0QIECAAIFAQIADdCMJECBAgIAAewMECBAgQCAQEOAA3UgCBAgQICDA3gABAgQIEAgEBDhAN5IAAQIECAiwN0CAAAECBAIBAQ7QjSRAgAABAgLsDRAgQIAAgUBAgAN0IwkQIECAgAB7AwQIECBAIBAQ4ADdSAIECBAgIMDeAAECBAgQCAQEOEA3kgABAgQICLA3QIAAAQIEAgEBDtCNJECAAAECAuwNECBAgACBQECAA3QjCRAgQICAAHsDBAgQIEAgEBDgAN1IAgQIECAgwN4AAQIECBAIBAQ4QDeSAAECBAgIsDdAgAABAgQCAQEO0I0kQIAAAQIC7A0QIECAAIFAQIADdCMJECBAgIAAewMECBAgQCAQEOAA3UgCBAgQICDA3gABAgQIEAgEBDhAN5IAAQIECAiwN0CAAAECBAIBAQ7QjSRAgAABAgLsDRAgQIAAgUBAgAN0IwkQIECAgAB7AwQIECBAIBAQ4ADdSAIECBAgIMDeAAECBAgQCAQEOEA3kgABAgQICLA3QODOBR4fH38/PT39+3/5/N9fW+/5150+9vL3P/+3Sx+7huvar+Gaz+XXEPipAgL8Uy9rrxmBWwN8AroUy1tDeuvvmzmaRQn8FRBgz4DAnQscBfjou9lbAvyez3nn3L58Ah8mIMAfRukTEWgEXsbw/EfKR3E+/bj5/EfQl747fu/nbJRMJfD9BAT4+93EV0TgTQKXgngpzrf+CFqA33Qev5jAqwIC7HEQuHOBowC/9t3tZwb4zkl9+QS+RECAv4TZEAKfJ3AU4OfJlyL81j8DvvY74KO5nyfiMxO4DwEBvo87+SoJvCpwFMTzH0OfYnz0Z8fnA8//qtPp4/+L++lzH3337awElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgUEePn6didAgACBTECAM3qDCRAgQGBZQICXr293AgQIEMgEBDijN5gAAQIElgX+AA1X3Wkvx+YqAAAAAElFTkSuQmCC</pentrails><costumes><list struct="atomic" id="167"></list></costumes><sounds><list struct="atomic" id="168"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Blocks" idx="1" x="42" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="173"><costumes><list id="174"><item><ref mediaID="Blocks_cst_633246159_480x360"></ref></item></list></costumes><sounds><list struct="atomic" id="175"></list></sounds><blocks></blocks><variables></variables><scripts><script x="252" y="104.83333333333337"><custom-block s="%s %s"><l>log</l><l>This is a test.</l></custom-block><custom-block s="breakpoint"></custom-block></script><script x="242" y="45"><custom-block s="send %s to clipboard"><custom-block s="script %repRing $arrowRight scratchblocks"><block s="reifyScript"><script><custom-block s="%s %s"><l>log</l><l>This is a test.</l></custom-block><custom-block s="breakpoint"></custom-block></script><list></list></block></custom-block></custom-block></script><script x="221" y="311.83333333333337"><custom-block s="Infinity"></custom-block></script><script x="73" y="244.83333333333326"><custom-block s="turn red"></custom-block></script><script x="188" y="252.83333333333343"><block s="changeEffect"><l><option>saturation</option></l><l>90</l></block></script><script x="185" y="392.66666666666674"><block s="getEffect"><l><option>color</option></l></block></script></scripts></sprite><sprite name="Text" idx="2" x="62" y="30" heading="90" scale="0.2" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="203"><costumes><list id="204"><item><ref mediaID="Text_cst_download"></ref></item></list></costumes><sounds><list struct="atomic" id="205"></list></sounds><blocks></blocks><variables></variables><scripts></scripts></sprite></sprites></stage><variables></variables></scene></scenes></project><media name="Debugger Blocks" app="Snap! 7, https://snap.berkeley.edu" version="2"><costume name="633246159_480x360" center-x="89" center-y="99" image="data:image/png;base64,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" mediaID="Blocks_cst_633246159_480x360"/><costume name="download" center-x="238" center-y="42.5" image="data:image/png;base64,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" mediaID="Text_cst_download"/></media></snapdata>