<snapdata remixID="11425888"><project name="multi-input variable declarations" app="Snap! 10, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAAA1VJREFUeF7t1jFKJFAQRdHfCoIYCy7EfYihoYkLcQcGBm7ALRiYm7oREUPBoAfNZgbUgocP5HRcVNHnX+jebLfb7fIhUBLYCLAk7+yHgACFUBUQYJXfcQFqoCogwCq/4wLUQFVAgFV+xwWogaqAAKv8jgtQA1UBAVb5HRegBqoCAqzyOy5ADVQFBFjld1yAGqgKCLDK77gANVAVEGCV33EBaqAqIMAqv+MC1EBVQIBVfscFqIGqgACr/I4LUANVAQFW+R0XoAaqAgKs8jsuQA1UBQRY5XdcgBqoCgiwyu+4ADVQFRBgld9xAWqgKiDAKr/jAtRAVUCAVX7HBaiBqoAAq/yOC1ADVQEBVvkdF6AGqgICrPI7LkANVAUEWOV3XIAaqAoIsMrvuAA1UBUQYJXfcQFqoCogwCq/4wLUQFVAgFV+xwWogaqAAKv8jgtQA1UBAX7C//DwsI6Pj9fe3l71kX7zcQF+8bqnp6drZ2dnPT09rdvb23V0dLR2d3d/cxM/+t0E+AX34+Pjury8/Gtqu92uw8PDdXV1tfb399dms/nRR/tNxwT4jdc8Oztbr6+v/02+h/j8/Lzu7u7WwcHBNzYZ+VdAgF80cX5+vl5eXj6m3oN7e3tbJycn6+LiQk0BAQF+gnhzc7Pu7+8/fm6vr68//gv6ZAUEmPW0bSggwCGY8ayAALOetg0FBDgEM54VEGDW07ahgACHYMazAgLMeto2FBDgEMx4VkCAWU/bhgICHIIZzwoIMOtp21BAgEMw41kBAWY9bRsKCHAIZjwrIMCsp21DAQEOwYxnBQSY9bRtKCDAIZjxrIAAs562DQUEOAQznhUQYNbTtqGAAIdgxrMCAsx62jYUEOAQzHhWQIBZT9uGAgIcghnPCggw62nbUECAQzDjWQEBZj1tGwoIcAhmPCsgwKynbUMBAQ7BjGcFBJj1tG0oIMAhmPGsgACznrYNBQQ4BDOeFRBg1tO2oYAAh2DGswICzHraNhQQ4BDMeFZAgFlP24YCAhyCGc8KCDDradtQQIBDMONZAQFmPW0bCghwCGY8KyDArKdtQwEBDsGMZwUEmPW0bSggwCGY8ayAALOetg0FBDgEM54VEGDW07ahgACHYMazAgLMeto2FPgDSfQOt7JYKtEAAAAASUVORK5CYII=</thumbnail><scenes select="1"><scene name="multi-input variable declarations"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="create block" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>body</l></list><l>var ide = this.parentThatIsA(IDE_Morph) || world.childThatIsA(IDE_Morph),&#xD;    stage = ide.stage;&#xD;&#xD;stage.globalBlocks = stage.globalBlocks.filter(block =&gt; block.spec != "var $nl %&apos;decs&apos;");&#xD;&#xD;var def = new CustomBlockDefinition("var $nl %&apos;decs&apos;");&#xD;def.isGlobal = true;&#xD;def.body = body;&#xD;def.category = &apos;variables&apos;;&#xD;def.declarations = new Map;&#xD;def.declarations.set(&apos;decs&apos;, [&apos;%mult%s&apos;, &apos;&apos;, undefined, false]);&#xD;&#xD;def.blockInstance = function (storeTranslations) {&#xD;    var block = this.type === &apos;command&apos; &#xD;          ? new CustomCommandBlockMorph(this)&#xD;          : new CustomReporterBlockMorph(this, this.type === &apos;predicate&apos;);&#xD;&#xD;    block.isDraggable = true;&#xD;    if (storeTranslations) block.storedTranslations = this.translationsAsText();&#xD;&#xD;    var multi = block.inputs()[0];&#xD;	   multi.collapseAll();&#xD;    multi.addInput = function () {&#xD;        var add = spec =&gt; {&#xD;            var part = this.labelPart(spec);&#xD;            part.parent = this;&#xD;            this.children.splice(this.children.length - 1, 0, part);&#xD;            part.fixLayout();&#xD;            this.fixLayout();&#xD;        }&#xD;        add(&apos;%br&apos;);&#xD;        add(&apos;%upvar&apos;);&#xD;        add(&apos;=&apos;);&#xD;        add(&apos;%anyUE&apos;);&#xD;    };&#xD;    multi.removeInput = function () {&#xD;        var pop = r =&gt; {for(; r &gt; 0; r--) this.removeChild(this.children[this.children.length - 2])};&#xD;		      pop(4);&#xD;		      this.fixLayout();&#xD;    };&#xD;    return block;&#xD;};&#xD;&#xD;stage.globalBlocks.push(def);&#xD;&#xD;ide.flushBlocksCache();&#xD;ide.refreshPalette();</l></block><list><block s="reifyScript"><script><block s="doWarp"><script><block s="doSetVar"><l>decs</l><block s="reportReshape"><block var="decs"/><list><block s="reportNewList"><list></list></block><l>2</l></list></block></block><block s="doForEach"><l>dec</l><block var="decs"/><script><block s="doApplyExtension"><l>var_declare(scope, name)</l><list><l>script</l><block s="reportListItem"><l>1</l><block var="dec"/></block></list></block><block s="doApplyExtension"><l>var_set(name, val)</l><list><block s="reportListItem"><l>1</l><block var="dec"/></block><block s="evaluate"><block s="reportListItem"><l>2</l><block var="dec"/></block><list></list></block></list></block></script></block></script></block></script><list><l>decs</l></list></block></list></block></script></block-definition><block-definition s="example" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><custom-block s="create block"></custom-block><block s="doRun"><block s="reportJSFunction"><list></list><l>var stage = this.parentThatIsA(StageMorph),&#xD;    def = stage.globalBlocks.find(block =&gt; block.spec == "var $nl %&apos;decs&apos;");&#xD;if (!def) return;&#xD;&#xD;var scr = this.scripts,&#xD;&#xD;    gb = s =&gt; this.blockForSelector(s),&#xD;    vb = n =&gt; this.variableBlock(n),&#xD;    ri = (b, i, n) =&gt; b.replaceInput(b.inputs()[i], n),&#xD;    ai = (b, r = 1) =&gt; {for(; r &gt; 0; r--) b.addInput()},&#xD;&#xD;    b = def.blockInstance(),&#xD;    m = b.inputs()[0],&#xD;    sb = gb(&apos;reportVariadicProduct&apos;),&#xD;    sm = sb.inputs()[0],&#xD;    bb = gb(&apos;bubble&apos;),&#xD;    jb = gb(&apos;reportJoinWords&apos;),&#xD;    jm = jb.inputs()[0];&#xD;&#xD;b.parent = scr;&#xD;scr.add(b);&#xD;b.setPosition(new Point(221, 123));&#xD;scr.adjustBounds();&#xD;&#xD;ai(m, 3);&#xD;m.setContents([&apos;a&apos;, 3, &apos;b&apos;, 4, &apos;c&apos;]);&#xD;&#xD;ri(sm, 0, vb(&apos;a&apos;));&#xD;ri(sm, 1, vb(&apos;b&apos;));&#xD;ri(m, 5, sb);&#xD;m.inputs()[5].ringify();&#xD;&#xD;ai(jm, 3);&#xD;jm.setContents([,&apos;, &apos;,,&apos;, &apos;]);&#xD;ri(jm, 0, vb(&apos;a&apos;));&#xD;ri(jm, 2, vb(&apos;b&apos;));&#xD;ri(jm, 4, vb(&apos;c&apos;));&#xD;&#xD;ri(bb, 0, jb);&#xD;b.add(bb);&#xD;&#xD;sb.isDraggable = true;&#xD;jb.isDraggable = true;&#xD;bb.isDraggable = true;&#xD;&#xD;b.fixLayout();</l></block><list></list></block></script></block-definition><block-definition s="js enabled" type="predicate" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportApplyExtension"><l>err_try(cmd, catch, err)</l><list><block s="reifyScript"><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return true;</l></block><list></list></block></block></script><list></list></block><block s="reifyScript"><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><list></list></block><l></l></list></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><list></list></block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><scripts><script x="12.099998474121094" y="371.0333333333331"><block s="reportNot"><block s="reportApplyExtension"><l>err_try(cmd, catch, err)</l><list><block s="reifyScript"><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return true;</l></block><list></list></block></block></script><list></list></block><block s="reifyScript"><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><list></list></block><l></l></list></block></block></script><script x="46.36666711171472" y="282.20000000000005"><block s="reportApplyExtension"><l>err_try(cmd, catch, err)</l><list><block s="reifyScript"><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list></list><l>return true;</l></block><list></list></block></block></script><list></list></block><block s="reifyScript"><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><list></list></block><l></l></list></block></script><comment x="446" y="284.20000000000005" w="90" collapsed="false">a == not a&#xD;&#xD;...kthen</comment></scripts></block-definition><block-definition s="var $nl %&apos;decs&apos;" type="command" category="variables"><header></header><code></code><translations></translations><inputs><input type="%mult%s"></input></inputs><script><block s="doWarp"><script><block s="doSetVar"><l>decs</l><block s="reportReshape"><block var="decs"/><list><block s="reportNewList"><list></list></block><l>2</l></list></block></block><block s="doForEach"><l>dec</l><block var="decs"/><script><block s="doApplyExtension"><l>var_declare(scope, name)</l><list><l>script</l><block s="reportListItem"><l>1</l><block var="dec"/></block></list></block><block s="doApplyExtension"><l>var_set(name, val)</l><list><block s="reportListItem"><l>1</l><block var="dec"/></block><block s="evaluate"><block s="reportListItem"><l>2</l><block var="dec"/></block><list></list></block></list></block></script></block></script></block></script></block-definition></blocks><primitives></primitives><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" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="238"><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="239"></list></costumes><sounds><list struct="atomic" id="240"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Sprite" idx="1" x="3.3114754098364756" y="-6.951006651801748" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="245"><costumes><list struct="atomic" id="246"></list></costumes><sounds><list struct="atomic" id="247"></list></sounds><blocks></blocks><variables></variables><scripts><script x="18.18181818181818" y="18.18181818181818"><custom-block s="create block"></custom-block><custom-block s="example"></custom-block></script></scripts></sprite></sprites></stage><variables></variables></scene></scenes></project><media name="multi-input variable declarations" app="Snap! 10, https://snap.berkeley.edu" version="2"></media></snapdata>