<snapdata remixID="12263628"><project name="xml parser" app="Snap! 8.1, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAAAwJJREFUeF7t10FqImAQhFHj7bIScwK3XjQHcCnkKMFAlsMsLKhQTOa5trvh/R+IL4/H43HwITASeBHgSN7ZbwEBCmEqIMApv+MC1MBUQIBTfscFqIGpgACn/I4LUANTAQFO+R0XoAamAgKc8jsuQA1MBQQ45XdcgBqYCghwyu+4ADUwFRDglN9xAWpgKiDAKb/jAtTAVECAU37HBaiBqYAAp/yOC1ADUwEBTvkdF6AGpgICnPI7LkANTAUEOOV3XIAamAoIcMrvuAA1MBUQ4JTfcQFqYCogwCm/4wLUwFRAgFN+xwWogamAAKf8jgtQA1MBAU75HRegBqYCApzyOy5ADUwFBDjld1yAGpgKCHDK77gANTAVEOCU33EBamAqIMApv+MC1MBUQIBTfscFqIGpgACn/I4LUANTAQEW+d/f3w+Xy+Vwv9+LW3/3KgGW3/d4PB5Op9P31s/Pz+8g397eyld+zzoB/sBbns/nv2693W6Hj4+PH7j4764U4A+8nQCfRxXg81ZPffPPn+Dr9Xp4fX19avZ//JIAi6/uT0iOKcDczERRQIBFTKtyAQHmZiaKAgIsYlqVCwgwNzNRFBBgEdOqXECAuZmJooAAi5hW5QICzM1MFAUEWMS0KhcQYG5moiggwCKmVbmAAHMzE0UBARYxrcoFBJibmSgKCLCIaVUuIMDczERRQIBFTKtyAQHmZiaKAgIsYlqVCwgwNzNRFBBgEdOqXECAuZmJooAAi5hW5QICzM1MFAUEWMS0KhcQYG5moiggwCKmVbmAAHMzE0UBARYxrcoFBJibmSgKCLCIaVUuIMDczERRQIBFTKtyAQHmZiaKAgIsYlqVCwgwNzNRFBBgEdOqXECAuZmJooAAi5hW5QICzM1MFAUEWMS0KhcQYG5moiggwCKmVbmAAHMzE0UBARYxrcoFBJibmSgKCLCIaVUuIMDczERRQIBFTKtyAQHmZiaKAgIsYlqVCwgwNzNRFBBgEdOqXECAuZmJooAAi5hW5QICzM1MFAW+AOf6Are0RywgAAAAAElFTkSuQmCC</thumbnail><scenes select="1"><scene name="xml parser"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="new gobbler %&apos;x&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>p</l></list></block><block s="doSetVar"><l>p</l><l>1</l></block><block s="doReport"><block s="reifyScript"><script><block s="doIf"><block s="reportEquals"><block var="func"/><l>eat</l></block><script><block s="doChangeVar"><l>p</l><l>1</l></block><block s="doIf"><block s="reportNotEquals"><block s="reportLetter"><block s="reportDifference"><block var="p"/><l>1</l></block><block var="x"/></block><block var="input"/></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="func"/><l>spit</l></block><script><block s="doChangeVar"><l>p</l><l>1</l></block><block s="doReport"><block s="reportLetter"><block s="reportDifference"><block var="p"/><l>1</l></block><block var="x"/></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="func"/><l>explode</l></block><script><block s="doReport"><block s="reportGreaterThan"><block var="p"/><block s="reportStringSize"><block var="x"/></block></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="func"/><l>before</l></block><script><block s="doDeclareVariables"><list><l>got</l><l>last</l></list></block><block s="doSetVar"><l>got</l><l></l></block><block s="doSetVar"><l>last</l><block s="reportLetter"><block var="p"/><block var="x"/></block></block><block s="doUntil"><block s="reportOr"><block s="reportListContainsItem"><block var="input"/><block var="last"/></block><block s="reportGreaterThan"><block var="p"/><block s="reportStringSize"><block var="x"/></block></block></block><script><block s="doSetVar"><l>got</l><block s="reportJoinWords"><list><block var="got"/><block var="last"/></list></block></block><block s="doChangeVar"><l>p</l><l>1</l></block><block s="doSetVar"><l>last</l><block s="reportLetter"><block var="p"/><block var="x"/></block></block></script></block><block s="doReport"><block var="got"/></block></script></block><block s="doIf"><block s="reportEquals"><block var="func"/><l>retreat</l></block><script><block s="doChangeVar"><l>p</l><l>-1</l></block></script></block></script><list><l>func</l><l>input</l></list></block></block></script></block-definition><block-definition s="space gobbler %&apos;x&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><custom-block s="gobble trash %s"><block s="evaluate"><block var="x"/><list><l>before</l><block s="reportUnicodeAsLetter"><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportNot"><block s="reportListContainsItem"><block s="reportNewList"><list><l>32</l><l>10</l><l>7</l></list></block><block var="value"/></block></block></autolambda><list><l>value</l></list></block><block s="reportNumbers"><l>0</l><l>255</l></block></block></block></list></block></custom-block></script></block-definition><block-definition s="gobble trash %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="parse xml %&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>tag name</l><l>params</l><l>key</l><l>value</l><l>stuff</l></list></block><block s="doIfElse"><block s="evaluate"><block var="x"/><list><l>eat</l><l>&lt;</l></list></block><script><block s="doSetVar"><l>tag name</l><block s="evaluate"><block var="x"/><list><l>before</l><block s="reportNewList"><list><l> </l><l>&gt;</l><l>/</l></list></block></list></block></block><block s="doSetVar"><l>params</l><block s="reportNewList"><list></list></block></block><block s="doIfElse"><block s="evaluate"><block var="x"/><list><l>eat</l><l> </l></list></block><script><custom-block s="space gobbler %s"><block var="x"/></custom-block><block s="doUntil"><block s="evaluate"><block var="x"/><list><l>eat</l><l>&gt;</l></list></block><script><block s="doRun"><block var="x"/><list><l>retreat</l></list></block><block s="doIfElse"><block s="reportEquals"><block s="evaluate"><block var="x"/><list><l>spit</l></list></block><l>/</l></block><script><custom-block s="gobble trash %s"><block s="evaluate"><block var="x"/><list><l>eat</l><l>&gt;</l></list></block></custom-block><block s="doReport"><block s="reportNewList"><list><block var="tag name"/><block var="params"/></list></block></block></script><script><block s="doRun"><block var="x"/><list><l>retreat</l></list></block></script></block><custom-block s="space gobbler %s"><block var="x"/></custom-block><block s="doSetVar"><l>key</l><block s="evaluate"><block var="x"/><list><l>before</l><block s="reportNewList"><list><l>=</l></list></block></list></block></block><custom-block s="gobble trash %s"><block s="evaluate"><block var="x"/><list><l>eat</l><l>=</l></list></block></custom-block><custom-block s="space gobbler %s"><block var="x"/></custom-block><block s="doSetVar"><l>value</l><custom-block s="parse a string %s"><block var="x"/></custom-block></block><block s="doAddToList"><block s="reportNewList"><list><block var="key"/><block var="value"/></list></block><block var="params"/></block></script></block></script><script><block s="doRun"><block var="x"/><list><l>retreat</l></list></block><custom-block s="space gobbler %s"><block var="x"/></custom-block><block s="doIfElse"><block s="reportEquals"><block s="evaluate"><block var="x"/><list><l>spit</l></list></block><l>/</l></block><script><custom-block s="gobble trash %s"><block s="evaluate"><block var="x"/><list><l>eat</l><l>&gt;</l></list></block></custom-block><block s="doReport"><block s="reportNewList"><list><block var="tag name"/><block var="params"/></list></block></block></script><script><block s="doRun"><block var="x"/><list><l>retreat</l></list></block><block s="doIf"><block s="reportNotEquals"><block s="evaluate"><block var="x"/><list><l>spit</l></list></block><l>&gt;</l></block><script><block s="doRun"><block var="x"/><list><l>retreat</l></list></block></script></block></script></block></script></block><block s="doSetVar"><l>stuff</l><block s="reportNewList"><list></list></block></block><block s="doUntil"><block s="reportEquals"><block s="reportJoinWords"><list><block s="evaluate"><block var="x"/><list><l>spit</l></list></block><block s="evaluate"><block var="x"/><list><l>spit</l></list></block></list></block><l>&lt;/</l></block><script><block s="doRun"><block var="x"/><list><l>retreat</l></list></block><block s="doRun"><block var="x"/><list><l>retreat</l></list></block><block s="doAddToList"><custom-block s="parse xml %s"><block var="x"/></custom-block><block var="stuff"/></block></script></block><block s="doIf"><block s="reportNotEquals"><block s="evaluate"><block var="x"/><list><l>before</l><block s="reportNewList"><list><l>&gt;</l></list></block></list></block><block var="tag name"/></block><script><custom-block s="error %txt"><l>Mismatch</l></custom-block></script></block><custom-block s="gobble trash %s"><block s="evaluate"><block var="x"/><list><l>eat</l><l>&gt;</l></list></block></custom-block><block s="doReport"><block s="reportNewList"><list><block var="tag name"/><block var="params"/><block var="stuff"/></list></block></block></script><script><block s="doRun"><block var="x"/><list><l>retreat</l></list></block><block s="doReport"><custom-block s="replace %l %txt"><block s="reportNewList"><list><block s="reportNewList"><list><l>&amp;lt;</l><l>&lt;</l></list></block><block s="reportNewList"><list><l>&amp;gt;</l><l>&gt;</l></list></block><block s="reportNewList"><list><l>&amp;amp;</l><l>&amp;</l></list></block></list></block><block s="evaluate"><block var="x"/><list><l>before</l><block s="reportNewList"><list><l>&lt;</l></list></block></list></block></custom-block></block></script></block></script></block-definition><block-definition s="parse a string %&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>escape</l><l>end</l><l>s</l><l>res</l></list></block><block s="doSetVar"><l>end</l><block s="evaluate"><block var="x"/><list><l>spit</l></list></block></block><block s="doSetVar"><l>s</l><block s="evaluate"><block var="x"/><list><l>spit</l></list></block></block><block s="doSetVar"><l>res</l><l></l></block><block s="doUntil"><block s="reportOr"><block s="evaluate"><block var="x"/><list><l>explode</l></list></block><block s="reportAnd"><block s="reportEquals"><block var="s"/><block var="end"/></block><block s="reportNot"><block var="escape"/></block></block></block><script><block s="doIfElse"><block s="reportEquals"><block var="s"/><l>\</l></block><script><block s="doIfElse"><block var="escape"/><script><block s="doSetVar"><l>res</l><block s="reportJoinWords"><list><block var="res"/><block var="s"/></list></block></block><block s="doSetVar"><l>escape</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doSetVar"><l>escape</l><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script><script><block s="doIfElse"><block var="escape"/><script><block s="doSetVar"><l>escape</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doIfElse"><block s="reportEquals"><block var="s"/><block var="end"/></block><script><block s="doSetVar"><l>res</l><block s="reportJoinWords"><list><block var="res"/><block var="s"/></list></block></block></script><script><block s="doIfElse"><block s="reportOr"><block s="reportEquals"><block var="s"/><l>x</l></block><block s="reportEquals"><block var="s"/><l>u</l></block></block><script><block s="doSetVar"><l>s</l><block s="evaluate"><block var="x"/><list><l>spit</l></list></block></block><block s="doSetVar"><l>s</l><block s="reportJoinWords"><list><block var="s"/><block s="evaluate"><block var="x"/><list><l>spit</l></list></block></list></block></block><block s="doSetVar"><l>s</l><block s="reportJoinWords"><list><block var="s"/><block s="evaluate"><block var="x"/><list><l>spit</l></list></block></list></block></block><block s="doSetVar"><l>s</l><block s="reportJoinWords"><list><block var="s"/><block s="evaluate"><block var="x"/><list><l>spit</l></list></block></list></block></block><block s="doSetVar"><l>res</l><block s="reportJoinWords"><list><block var="res"/><block s="reportUnicodeAsLetter"><custom-block s="hex to int %s"><block var="s"/></custom-block></block></list></block></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="s"/><l>n</l></block><script><block s="doSetVar"><l>res</l><block s="reportJoinWords"><list><block var="res"/><block s="reportUnicodeAsLetter"><l>10</l></block></list></block></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="s"/><l>t</l></block><script><block s="doSetVar"><l>res</l><block s="reportJoinWords"><list><block var="res"/><block s="reportUnicodeAsLetter"><l>7</l></block></list></block></block></script><script><block s="doSetVar"><l>res</l><block s="reportJoinWords"><list><block var="res"/><l>\</l><block var="s"/></list></block></block></script></block></script></block></script></block></script></block></script><script><block s="doSetVar"><l>res</l><block s="reportJoinWords"><list><block var="res"/><block var="s"/></list></block></block></script></block></script></block><block s="doSetVar"><l>s</l><block s="evaluate"><block var="x"/><list><l>spit</l></list></block></block></script></block><block s="doReport"><block var="res"/></block></script></block-definition><block-definition s="hex to int %&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>a</l></list></block><block s="doSetVar"><l>a</l><l>0</l></block><block s="doForEach"><l>item</l><block s="reportTextSplit"><block var="x"/><l></l></block><script><block s="doSetVar"><l>a</l><block s="reportVariadicSum"><list><block s="reportVariadicProduct"><list><block var="a"/><l>16</l></list></block><block s="reportIfElse"><block s="reportIsA"><block var="item"/><l><option>number</option></l></block><block var="item"/><block s="reportDifference"><block s="reportUnicode"><block var="item"/></block><l>87</l><comment w="90" collapsed="false">assume lowercase</comment></block></block></list></block></block></script></block><block s="doReport"><block var="a"/></block></script></block-definition><block-definition s="safely try %&apos;action&apos; then if %&apos;error&apos; %&apos;handler&apos;" type="command" category="control"><comment x="0" y="0" w="276" collapsed="false">Catch errors.&#xD;&#xD;Runs the first script.  If it succeeds, nothing else happens.&#xD;But if it has an error (something that would otherwise result&#xD;in a red halo around the block), then the second script is run,&#xD;with the text of the error message that would have been shown in the variable ERROR.</comment><header></header><code></code><translations>pt:tenta executar _ e, em caso de erro _ , executa _&#xD;ca:prova de forma segura _ i si _ _&#xD;</translations><inputs><input type="%cs"></input><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doApplyExtension"><l>err_try(cmd, catch, err)</l><list><block var="action"/><block var="handler"/><block var="error"/></list></block><block s="doApplyExtension"><l>err_reset</l><list></list></block></script></block-definition><block-definition s="error %&apos;msg&apos;" type="command" category="control"><comment x="0" y="0" w="268.6666666666667" collapsed="false">Throw an error.&#xD;&#xD;Makes a red halo appear around the script that runs it,&#xD;with the input text shown in a speech balloon next to&#xD;the script, just like any Snap! error.&#xD;&#xD;This is useful to put in the second script of SAFELY TRY&#xD;after some other instructions to undo the partial work of&#xD;the first script.</comment><header></header><code></code><translations>pt:lança o erro _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doApplyExtension"><l>err_error(msg)</l><list><block var="msg"/></list></block></script></block-definition><block-definition s="safely try reporting %&apos;this&apos; then if %&apos;error&apos; report %&apos;that&apos;" type="reporter" category="control"><comment x="0" y="0" w="316.6666666666667" collapsed="false">Catch errors in a reporter.&#xD;&#xD;Evaluates its first input.  If that expression successfully reports a value, this block reports that value.  If the expression causes a Snap! error,&#xD;then the final input slot is evaluated with the text of what would have&#xD;been the error message in variable ERROR.  SAFELY TRY then reports the value of that final expression.&#xD;&#xD;Sometimes you&apos;ll want to throw an error in the final expression.  You&#xD;can put an ERROR block inside a CALL block to do that.</comment><header></header><code></code><translations>ca:prova de forma segura reportant _ i si _ reportant _&#xD;</translations><inputs><input type="%anyUE"></input><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doDeclareVariables"><list><l>value</l></list></block><custom-block s="safely try %cs then if %upvar %cs"><script><block s="doSetVar"><l>value</l><block s="evaluate"><block var="this"/><list></list></block></block></script><l>err</l><script><block s="doSetVar"><l>error</l><block var="err"/></block><block s="doSetVar"><l>value</l><block s="evaluate"><block var="that"/><list></list></block></block></script></custom-block><block s="doReport"><block var="value"/></block></script></block-definition><block-definition s="unparse xml %&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%code"></input></inputs><script><block s="doIfElse"><block s="reportIsA"><block var="x"/><l><option>list</option></l></block><script><block s="doIf"><block s="reportIsA"><block s="reportListItem"><l>3</l><block var="x"/></block><l><option>list</option></l></block><script><block s="doReport"><block s="reportJoinWords"><list><l>&lt;</l><block s="reportListItem"><l>1</l><block var="x"/></block><block s="reportJoinWords"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportJoinWords"><list><l> </l><block s="reportListItem"><l>1</l><l/></block><l>="</l><custom-block s="escape %txt"><block s="reportListItem"><l>2</l><l/></block></custom-block><l>"</l></list></block></autolambda><list></list></block><block s="reportListItem"><l>2</l><block var="x"/></block></block></block><l>&gt;</l><block s="reportJoinWords"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="unparse xml %code"><l></l></custom-block></autolambda><list></list></block><block s="reportListItem"><l>3</l><block var="x"/></block></block></block><l>&lt;/</l><block s="reportListItem"><l>1</l><block var="x"/></block><l>&gt;</l></list></block></block></script></block><block s="doReport"><block s="reportJoinWords"><list><l>&lt;</l><block s="reportListItem"><l>1</l><block var="x"/></block><block s="reportJoinWords"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportJoinWords"><list><l> </l><block s="reportListItem"><l>1</l><l/></block><l>-"</l><custom-block s="escape %txt"><block s="reportListItem"><l>2</l><l/></block></custom-block><l>"</l></list></block></autolambda><list></list></block><block s="reportListItem"><l>2</l><block var="x"/></block></block></block><l>/&gt;</l></list></block></block></script><script><block s="doReport"><custom-block s="replace %l %txt"><block s="reportNewList"><list><block s="reportNewList"><list><l>&lt;</l><l>&amp;lt;</l></list></block><block s="reportNewList"><list><l>&gt;</l><l>&amp;gt;</l></list></block><block s="reportNewList"><list><l>&amp;</l><l>&amp;amp;</l></list></block></list></block><block var="x"/></custom-block></block></script></block></script></block-definition><block-definition s="escape %&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportIfElse"><block s="reportEquals"><l></l><block s="reportUnicodeAsLetter"><l>10</l></block></block><l>\n</l><block s="reportIfElse"><block s="reportEquals"><l></l><l>"</l></block><l>\"</l><l></l></block></block></autolambda><list></list></block><block s="reportTextSplit"><block var="x"/><l></l></block></block></block></block></script></block-definition><block-definition s="blocks of %&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportAttributeOf"><block s="evaluate"><block s="reportJSFunction"><list><l>x</l></list><l>let ser=world.children[0].serializer,sp=world.children[0].currentSprite;&#xD;return new Context(null,ser.loadScript(ser.parse(x,sp),sp));</l></block><list><block var="x"/></list></block><block s="reifyScript"><script></script><list></list></block></block><list></list></block></block></script></block-definition><block-definition s="xml of %&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l>x</l></list><l>return x.toBlock().toScriptXML(world.children[0].serializer);</l></block><list><block var="x"/></list></block></block></script></block-definition><block-definition s="replace %&apos;x&apos; %&apos;y&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input><input type="%txt"></input></inputs><script><block s="doIf"><block s="reportEquals"><block s="reportListAttribute"><l><option>length</option></l><block var="x"/></block><l>0</l></block><script><block s="doReport"><block var="y"/></block></script></block><block s="doReport"><custom-block s="replace %l %txt"><block s="reportCDR"><block var="x"/></block><block s="reportCombine"><block s="reportTextSplit"><block var="y"/><block s="reportListItem"><l>1</l><block s="reportListItem"><l>1</l><block var="x"/></block></block></block><block s="reifyReporter"><autolambda><block s="reportJoinWords"><list><l></l><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="x"/></block></block><l></l></list></block></autolambda><list></list></block></block></custom-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="1128"><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="1129"></list></costumes><sounds><list struct="atomic" id="1130"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Sprite" idx="1" x="40" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="1135"><costumes><list struct="atomic" id="1136"></list></costumes><sounds><list struct="atomic" id="1137"></list></sounds><blocks></blocks><variables></variables><scripts><script x="10" y="10"><custom-block s="parse xml %s"><custom-block s="new gobbler %s"><l>&lt;foo bar="baz" garply="quux"&gt;&lt;foo bar="baz"&gt;&lt;spam eggs="qux"/&gt;&lt;/foo&gt;&lt;spam eggs="qux"/&gt;&lt;/foo&gt;</l></custom-block></custom-block></script><script x="10" y="68.66666666666674"><custom-block s="unparse xml %code"><block s="reportNewList"><list><l>foo</l><block s="reportNewList"><list><block s="reportNewList"><list><l>bar</l><l>baz</l></list></block><block s="reportNewList"><list><l>garply</l><l>quux</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>foo</l><block s="reportNewList"><list><block s="reportNewList"><list><l>bar</l><l>baz</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>spam</l><block s="reportNewList"><list><block s="reportNewList"><list><l>eggs</l><l>qux</l></list></block></list></block></list></block></list></block></list></block><block s="reportNewList"><list><l>spam</l><block s="reportNewList"><list><block s="reportNewList"><list><l>eggs</l><l>qux</l></list></block></list></block></list></block></list></block></list></block></custom-block></script><script x="10" y="210.5"><custom-block s="unparse xml %code"><block s="reportNewList"><list><l>foo</l><block s="reportNewList"><list><block s="reportNewList"><list><l>bar</l><l>baz</l></list></block><block s="reportNewList"><list><l>garply</l><l>quux</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>foo</l><block s="reportNewList"><list><block s="reportNewList"><list><l>bar</l><l>baz</l></list></block></list></block><block s="reportNewList"><list><block s="reportNewList"><list><l>spam</l><block s="reportNewList"><list><block s="reportNewList"><list><l>eggs</l><l>qux</l></list></block></list></block></list></block></list></block></list></block><block s="reportNewList"><list><l>spam</l><block s="reportNewList"><list><block s="reportNewList"><list><l>eggs</l><l>qux</l></list></block></list></block></list></block></list></block></list></block></custom-block></script><script x="10" y="352.33333333333337"><custom-block s="unparse xml %code"><custom-block s="parse xml %s"><custom-block s="new gobbler %s"><l>&lt;foo bar="baz" garply="quux"&gt;&lt;foo bar="baz"&gt;&lt;spam eggs="qux"/&gt;&lt;/foo&gt;&lt;spam eggs="qux"/&gt;&lt;/foo&gt;</l></custom-block></custom-block></custom-block></script><script x="10" y="425.83333333333326"><custom-block s="parse xml %s"><custom-block s="new gobbler %s"><l>&lt;foo bar="baz" garply="quux"&gt;&lt;foo bar="baz"&gt;&lt;spam eggs="qux"/&gt;&lt;/foo&gt;&lt;spam eggs="qux"/&gt;&lt;/foo&gt;</l></custom-block></custom-block></script><script x="13" y="480.4999999999999"><custom-block s="blocks of %s"><custom-block s="unparse xml %code"><custom-block s="parse xml %s"><custom-block s="new gobbler %s"><custom-block s="xml of %s"><block s="reifyPredicate"><autolambda><block s="reportAnd"><block s="reportAnd"><l/><block s="reportOr"><l/><l/></block></block><l/></block></autolambda><list></list></block></custom-block></custom-block></custom-block></custom-block></custom-block></script></scripts></sprite></sprites></stage><variables></variables></scene></scenes></project><media name="xml parser" app="Snap! 8.1, https://snap.berkeley.edu" version="2"></media></snapdata>