<snapdata remixID="9743476"><project name="U2_PasswordGen" app="Snap! 6, https://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" hyperops="true" codify="false" inheritance="true" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAgAElEQVR4Xu3df5RdZX3v8c+zZxLIZJJMAmFmQjIzAa8LbNWrtrX+4mddorYLukC8WLFryVXEBnB1KSqFUOmlopXW4lXQKqstWlqVC9ZaQRt+WFn1x2pZlqpUC/ODmEwSSCbJzFCSOfu569nnx5w5M2fO2ScZvpl53ufPzD77u/drf8/5nP3sZ+848UIAAQQQQACB513APe8VKYgAAggggAACIoBpAgQQQAABBAwECGADdEoigAACCCBAANMDCCCAAAIIGAgQwAbolEQAAQQQQIAApgcQQAABBBAwECCADdApiQACCCCAAAFMDyCAAAIIIGAgQAAboFMSAQQQQAABApgeQAABBBBAwECAADZApyQCCCCAAAIEMD2AAAIIIICAgQABbIBOSQQQQAABBAhgegABBBBAAAEDAQLYAJ2SCCCAAAIIEMD0AAIIIIAAAgYCBLABOiURQAABBBAggOkBBBBAAAEEDAQIYAN0SiKAAAIIIEAA0wMIIIAAAggYCBDABuiURAABBBBAgACmBxBAAAEEEDAQIIAN0CmJAAIIIIAAAUwPIIAAAgggYCBAABugUxIBBBBAAAECmB5AAAEEEEDAQIAANkCnJAIIIIAAAgQwPYAAAggggICBAAFsgE5JBBBAAAEECGB6AAEEEEAAAQMBAtgAnZIIIIAAAggQwPQAAggggAACBgIEsAE6JRFAAAEEECCA6QEEEEAAAQQMBAhgA3RKIoAAAgggQADTAwgggAACCBgIEMAG6JREAAEEEECAAKYHEEAAAQQQMBAggA3QKYkAAggggAABTA8ggAACCCBgIEAAG6BTEgEEEEAAAQKYHkAAAQQQQMBAgAA2QKckAggggAACBDA9gAACCCCAgIEAAWyATkkEEEAAAQQIYHoAAQQQQAABAwEC2ACdkggggAACCBDA9AACCCCAAAIGAgSwATolEUAAAQQQIIDpAQQQQAABBAwECGADdEoigAACCCBAANMDCCCAAAIIGAgQwAbolEQAAQQQQIAApgcQQAABBBAwECCADdApiQACCCCAAAFMDyCAAAIIIGAgQAAboFMSAQQQQAABApgeQAABBBBAwECAADZApyQCCCCAAAIEMD2AAAIIIICAgQABbIBOSQQQQAABBAhgegABBBBA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</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="117.9296875" y="100.00000000000001" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="0,240,12,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="131" y="51"><block s="receiveGo"></block><block s="clear"></block><block s="hide"></block><block s="gotoXY"><l>-80</l><l>100</l></block><block s="setColor"><color>0,240,12,1</color></block><block s="write"><l>Password Generator</l><l>20</l></block></script><script x="421" y="39"><block s="receiveKey"><l><option>space</option></l></block><block s="clear"></block></script></scripts></sprite><sprite name="Sprite(2)" idx="2" x="166.89453125" y="2.842170943040401e-14" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="31,224,24,1" pen="tip" id="28"><costumes><list struct="atomic" id="29"></list></costumes><sounds><list struct="atomic" id="30"></list></sounds><blocks></blocks><variables></variables><scripts><script x="170" y="91"><block s="receiveGo"></block><block s="hide"></block><block s="gotoXY"><l>-130</l><l>0</l></block><block s="setColor"><color>31,224,24,1</color></block><block s="write"><l>Press Space to get started!</l><l>20</l></block></script></scripts></sprite><sprite name="Sprite(6)" idx="3" x="127.9296875" y="105.00000000000001" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="0,183.6,40.39199999999995,1" pen="tip" id="44"><costumes><list id="45"><item><costume name="Untitled" center-x="8" center-y="9" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAT0lEQVQ4T2NkYGCoZ2BgUGAgDzxghBrA8P///wZSzGBkZASrBxtAqmaYRSBDRg0YDYPRdMDAQL0wAJUH////TyAxOy9gYGAAlwckaUS3BAATBkridwE8pAAAAABJRU5ErkJggg==" id="46"/></item><item><costume name="Untitled(2)" center-x="10.5" center-y="19" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAA60lEQVRIS+2VSw7CMAxEJ2LDMVhyJ1AvBxyKFfdgAShVgtzUv1JngdQuo9ivM+MkCX2+N2mbUgcGBYzt/xIyUxGthAVktyLt4iBj/yiIqCIKogJ6QiYOrbXLVNEqkQrqeb0DODaHVwyb7qtKLECuuQE4l+IrgBNzW7DO5EXX3zgUiBlLEG0oXsroi0pyQ1eARc1i5ZTsAXn2zKLyQKp1DwAH0mEAcPE8FV4I12tHFnNO4rcWojavVAmiTV1buwfwLIssVINoU0dHfPKec55ZEAnkqfvyFm0Wkg1RYk3pBrEccp07M/hfKewt/AHABzMaWZcHnQAAAABJRU5ErkJggg==" id="47"/></item></list></costumes><sounds><list struct="atomic" id="48"></list></sounds><blocks></blocks><variables></variables><scripts><script x="517" y="74"><block s="receiveGo"></block><block s="hide"></block></script><script x="106" y="290"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doWearNextCostume"></block><block s="doIfElse"><block s="reportEquals"><block s="getCostumeIdx"></block><l>2</l></block><script><block s="doSetVar"><l>holder_1</l><l>yes</l></block><block s="doReplaceInList"><l>1</l><block var="password_options"/><block var="holder_1"/></block></script><script><block s="doSetVar"><l>holder_1</l><l>no</l></block><block s="doReplaceInList"><l>1</l><block var="password_options"/><block var="holder_1"/></block></script></block></script><script x="100" y="65"><block s="receiveKey"><l><option>space</option></l></block><block s="doSetVar"><l>holder_1</l><l>0</l></block><block s="doSwitchToCostume"><l>Untitled</l></block><block s="show"></block><block s="gotoXY"><l>-100</l><l>100</l></block><block s="write"><l>Enable password accessability?</l><l>12</l></block><block s="forward"><l>30</l></block><block s="changeYPosition"><l>5</l></block></script><script x="638" y="192.00000000000003"><block s="receiveKey"><l><option>g</option></l></block><block s="hide"></block></script><script x="506.83333333333337" y="220.83333333333334"><block s="getCostumeIdx"></block></script></scripts></sprite><sprite name="Sprite(3)" idx="4" x="-82" y="54" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="0,209.1,133.824,1" pen="tip" id="103"><costumes><list struct="atomic" id="104"></list></costumes><sounds><list struct="atomic" id="105"></list></sounds><blocks></blocks><variables></variables><scripts><script x="65" y="193.33333333333334"><block s="receiveGo"></block><block s="hide"></block><block s="doSetVar"><l>password_options</l><block s="reportNewList"><list></list></block></block><block s="doRepeat"><l>3</l><script><block s="doAddToList"><l>no</l><block var="password_options"/></block></script></block></script></scripts></sprite><sprite name="Sprite(4)" idx="5" x="121.33203125" y="85" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="0,183.6,40.39199999999995,1" pen="tip" id="124"><costumes><list id="125"><item><costume name="Untitled" center-x="8" center-y="9" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAT0lEQVQ4T2NkYGCoZ2BgUGAgDzxghBrA8P///wZSzGBkZASrBxtAqmaYRSBDRg0YDYPRdMDAQL0wAJUH////TyAxOy9gYGAAlwckaUS3BAATBkridwE8pAAAAABJRU5ErkJggg==" id="126"/></item><item><costume name="Untitled(2)" center-x="10.5" center-y="19" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAA60lEQVRIS+2VSw7CMAxEJ2LDMVhyJ1AvBxyKFfdgAShVgtzUv1JngdQuo9ivM+MkCX2+N2mbUgcGBYzt/xIyUxGthAVktyLt4iBj/yiIqCIKogJ6QiYOrbXLVNEqkQrqeb0DODaHVwyb7qtKLECuuQE4l+IrgBNzW7DO5EXX3zgUiBlLEG0oXsroi0pyQ1eARc1i5ZTsAXn2zKLyQKp1DwAH0mEAcPE8FV4I12tHFnNO4rcWojavVAmiTV1buwfwLIssVINoU0dHfPKec55ZEAnkqfvyFm0Wkg1RYk3pBrEccp07M/hfKewt/AHABzMaWZcHnQAAAABJRU5ErkJggg==" id="127"/></item></list></costumes><sounds><list struct="atomic" id="128"></list></sounds><blocks></blocks><variables></variables><scripts><script x="517" y="197.33333333333334"><block s="receiveGo"></block><block s="hide"></block></script><script x="100" y="188.33333333333334"><block s="receiveKey"><l><option>space</option></l></block><block s="doSetVar"><l>holder_2</l><l>0</l></block><block s="doSwitchToCostume"><l>Untitled</l></block><block s="show"></block><block s="gotoXY"><l>-100</l><l>80</l></block><block s="write"><l>Enable special character use?</l><l>12</l></block><block s="forward"><l>30</l></block><block s="changeYPosition"><l>5</l></block></script><script x="20" y="123.33333333333334"><block s="receiveKey"><l><option>g</option></l></block><block s="hide"></block></script><script x="91" y="412"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doWearNextCostume"></block><block s="doIfElse"><block s="reportEquals"><block s="getCostumeIdx"></block><l>2</l></block><script><block s="doSetVar"><l>holder_2</l><l>yes</l></block><block s="doReplaceInList"><l>2</l><block var="password_options"/><block var="holder_2"/></block></script><script><block s="doSetVar"><l>holder_2</l><l>no</l></block><block s="doReplaceInList"><l>2</l><block var="password_options"/><block var="holder_2"/></block></script></block></script></scripts></sprite><sprite name="Sprite(5)" idx="6" x="167.515625" y="65" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="0,183.6,40.39199999999995,1" pen="tip" id="182"><costumes><list id="183"><item><costume name="Untitled" center-x="8" center-y="9" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAT0lEQVQ4T2NkYGCoZ2BgUGAgDzxghBrA8P///wZSzGBkZASrBxtAqmaYRSBDRg0YDYPRdMDAQL0wAJUH////TyAxOy9gYGAAlwckaUS3BAATBkridwE8pAAAAABJRU5ErkJggg==" id="184"/></item><item><costume name="Untitled(2)" center-x="10.5" center-y="19" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAA60lEQVRIS+2VSw7CMAxEJ2LDMVhyJ1AvBxyKFfdgAShVgtzUv1JngdQuo9ivM+MkCX2+N2mbUgcGBYzt/xIyUxGthAVktyLt4iBj/yiIqCIKogJ6QiYOrbXLVNEqkQrqeb0DODaHVwyb7qtKLECuuQE4l+IrgBNzW7DO5EXX3zgUiBlLEG0oXsroi0pyQ1eARc1i5ZTsAXn2zKLyQKp1DwAH0mEAcPE8FV4I12tHFnNO4rcWojavVAmiTV1buwfwLIssVINoU0dHfPKec55ZEAnkqfvyFm0Wkg1RYk3pBrEccp07M/hfKewt/AHABzMaWZcHnQAAAABJRU5ErkJggg==" id="185"/></item></list></costumes><sounds><list struct="atomic" id="186"></list></sounds><blocks></blocks><variables></variables><scripts><script x="517" y="424"><block s="receiveGo"></block><block s="hide"></block><block s="doSetVar"><l>Password_Container</l><block s="reportNewList"><list></list></block></block></script><script x="100" y="415"><block s="receiveKey"><l><option>space</option></l></block><block s="doSetVar"><l>holder_3</l><l>0</l></block><block s="doSwitchToCostume"><l>Untitled</l></block><block s="show"></block><block s="gotoXY"><l>-100</l><l>60</l></block><block s="write"><l>Enable inputting custom information?</l><l>12</l></block><block s="forward"><l>30</l></block><block s="changeYPosition"><l>5</l></block></script><script x="20" y="350"><block s="receiveKey"><l><option>g</option></l></block><block s="hide"></block></script><script x="20" y="10"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doWearNextCostume"></block></script><script x="66" y="674"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doAsk"><l>Input Custom Information Below!(write no inside the box without quotations if you dont want to input)</l></block><block s="doIf"><block s="reportNot"><block s="reportEquals"><block s="getLastAnswer"></block><l>"no"</l></block></block><script><block s="doAddToList"><block s="getLastAnswer"></block><block var="Password_Container"/></block><block s="doWearNextCostume"></block></script></block></script></scripts></sprite><sprite name="Sprite(7)" idx="8" x="61.953125" y="45" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="1" color="0,183.6,40.39199999999995,1" pen="tip" id="241"><costumes><list id="242"><item><costume name="Untitled" center-x="8" center-y="9" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAT0lEQVQ4T2NkYGCoZ2BgUGAgDzxghBrA8P///wZSzGBkZASrBxtAqmaYRSBDRg0YDYPRdMDAQL0wAJUH////TyAxOy9gYGAAlwckaUS3BAATBkridwE8pAAAAABJRU5ErkJggg==" id="243"/></item><item><costume name="Untitled(2)" center-x="10.5" center-y="19" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAA60lEQVRIS+2VSw7CMAxEJ2LDMVhyJ1AvBxyKFfdgAShVgtzUv1JngdQuo9ivM+MkCX2+N2mbUgcGBYzt/xIyUxGthAVktyLt4iBj/yiIqCIKogJ6QiYOrbXLVNEqkQrqeb0DODaHVwyb7qtKLECuuQE4l+IrgBNzW7DO5EXX3zgUiBlLEG0oXsroi0pyQ1eARc1i5ZTsAXn2zKLyQKp1DwAH0mEAcPE8FV4I12tHFnNO4rcWojavVAmiTV1buwfwLIssVINoU0dHfPKec55ZEAnkqfvyFm0Wkg1RYk3pBrEccp07M/hfKewt/AHABzMaWZcHnQAAAABJRU5ErkJggg==" id="244"/></item></list></costumes><sounds><list struct="atomic" id="245"></list></sounds><blocks></blocks><variables></variables><scripts><script x="517" y="310.66666666666663"><block s="receiveGo"></block><block s="hide"></block></script><script x="100" y="301.66666666666663"><block s="receiveKey"><l><option>space</option></l></block><block s="doSetVar"><l>holder_4</l><l>0</l></block><block s="doSwitchToCostume"><l>Untitled</l></block><block s="show"></block><block s="gotoXY"><l>-100</l><l>40</l></block><block s="write"><l>Enable numbers only?</l><l>12</l></block><block s="forward"><l>30</l></block><block s="changeYPosition"><l>5</l></block></script><script x="20" y="236.66666666666666"><block s="receiveKey"><l><option>g</option></l></block><block s="hide"></block></script><script x="444" y="496"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doWearNextCostume"></block><block s="doIfElse"><block s="reportEquals"><block s="getCostumeIdx"></block><l>2</l></block><script><block s="doSetVar"><l>holder_3</l><l>yes</l></block><block s="doReplaceInList"><l>3</l><block var="password_options"/><block var="holder_3"/></block></script><script><block s="doSetVar"><l>holder_3</l><l>no</l></block><block s="doReplaceInList"><l>3</l><block var="password_options"/><block var="holder_3"/></block></script></block></script></scripts></sprite><sprite name="Sprite(8)" idx="7" x="-180" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="119.64599999999994,0,175.95,1" pen="tip" id="299"><costumes><list struct="atomic" id="300"></list></costumes><sounds><list struct="atomic" id="301"></list></sounds><blocks></blocks><variables></variables><scripts><script x="20" y="10"><block s="receiveGo"></block><block s="gotoXY"><l>-180</l><l>0</l></block><block s="hide"></block></script><script x="20" y="101.83333333333334"><block s="receiveKey"><l><option>space</option></l></block><block s="write"><l>Complete the checkboxes plus the popup </l><l>12</l></block><block s="gotoXY"><l>-180</l><l>-20</l></block><block s="write"><l>and press G to generate the password</l><l>12</l></block></script><script x="20" y="216.8333333333334"><block s="receiveKey"><l><option>g</option></l></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="clear"></block><block s="doIfElse"><block s="reportAnd"><block s="reportEquals"><l>4</l><block s="reportListLength"><block var="password_options"/></block></block><block s="reportGreaterThan"><block s="reportListItem"><l>4</l><block var="password_options"/></block><l>0</l></block></block><script><block s="doIf"><block s="reportAnd"><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="password_options"/></block><l>yes</l></block><block s="reportEquals"><block s="reportListItem"><l>2</l><block var="password_options"/></block><l>no</l></block></block><block s="reportEquals"><block s="reportListItem"><l>3</l><block var="password_options"/></block><l>yes</l></block></block><script><block s="doRepeat"><block s="reportListItem"><l>1</l><block var="password_options"/></block><script><block s="doAddToList"><block s="reportUnicodeAsLetter"><block s="reportRandom"><l>48</l><l>57</l></block></block><block var="Password_Container"/></block></script></block><block s="write"><custom-block s="list $arrowRight word %l"><block var="Password_Container"/></custom-block><l>12</l></block></script></block><block s="doIf"><block s="reportAnd"><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="password_options"/></block><l>no</l></block><block s="reportEquals"><block s="reportListItem"><l>2</l><block var="password_options"/></block><l>yes</l></block></block><block s="reportEquals"><block s="reportListItem"><l>3</l><block var="password_options"/></block><l>no</l></block></block><script><block s="doRepeat"><block s="reportListItem"><l>4</l><block var="password_options"/></block><script><block s="doAddToList"><block s="reportUnicodeAsLetter"><block s="reportRandom"><l>1</l><l>200</l></block></block><block var="Password_Container"/></block></script></block><block s="write"><custom-block s="list $arrowRight word %l"><block var="Password_Container"/></custom-block><l>12</l></block></script></block><block s="doIf"><block s="reportAnd"><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="password_options"/></block><l>no</l></block><block s="reportEquals"><block s="reportListItem"><l>2</l><block var="password_options"/></block><l>no</l></block></block><block s="reportEquals"><block s="reportListItem"><l>3</l><block var="password_options"/></block><l>yes</l></block></block><script><block s="doRepeat"><block s="reportListItem"><l>4</l><block var="password_options"/></block><script><block s="doAddToList"><block s="reportUnicodeAsLetter"><block s="reportRandom"><l>48</l><l>57</l></block></block><block var="Password_Container"/></block></script></block><block s="write"><custom-block s="list $arrowRight word %l"><block var="Password_Container"/></custom-block><l>12</l></block></script></block><block s="doIf"><block s="reportAnd"><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="password_options"/></block><l>yes</l></block><block s="reportEquals"><block s="reportListItem"><l>2</l><block var="password_options"/></block><l>yes</l></block></block><block s="reportEquals"><block s="reportListItem"><l>3</l><block var="password_options"/></block><l>yes</l></block></block><script><block s="write"><l>Invalid/Conflicting Input</l><l>12</l></block></script></block><block s="doIf"><block s="reportAnd"><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="password_options"/></block><l>no</l></block><block s="reportEquals"><block s="reportListItem"><l>2</l><block var="password_options"/></block><l>yes</l></block></block><block s="reportEquals"><block s="reportListItem"><l>3</l><block var="password_options"/></block><l>yes</l></block></block><script><block s="write"><l>Invalid/Conflicting Input</l><l>12</l></block></script></block><block s="doIf"><block s="reportAnd"><block s="reportAnd"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="password_options"/></block><l>yes</l></block><block s="reportEquals"><block s="reportListItem"><l>2</l><block var="password_options"/></block><l>yes</l></block></block><block s="reportEquals"><block s="reportListItem"><l>3</l><block var="password_options"/></block><l>no</l></block></block><script><block s="write"><l>Invalid/Conflicting Input</l><l>12</l></block></script></block></script><script><block s="write"><l>Invalid/Conflicting Input</l><l>12</l></block></script></block></script><script x="643.6416015625" y="362"><block s="reportAnd"><l/><l/></block></script><script x="829.6416015625" y="361.9999999999999"><block s="reportAnd"><l/><l/></block></script><script x="855" y="398.1666666666665"><block s="reportAnd"><l/><l/></block></script></scripts></sprite><sprite name="Sprite(9)" idx="9" x="127.9296875" y="105.00000000000003" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="42.43200000000004,0,132.6,1" pen="tip" id="596"><costumes><list struct="atomic" id="597"></list></costumes><sounds><list struct="atomic" id="598"></list></sounds><blocks></blocks><variables></variables><scripts><script x="20" y="10"><block s="receiveGo"></block><block s="hide"></block></script><script x="428" y="172.00000000000003"><block s="receiveKey"><l><option>space</option></l></block><block s="hide"></block><block s="doAsk"><l>password length?</l></block><block s="doReplaceInList"><l>4</l><block var="password_options"/><block s="getLastAnswer"></block></block></script></scripts></sprite><watcher scope="Stage" s="reportShown" style="normal" x="10" y="10" color="143,86,227" hidden="true"/><watcher var="holder_1" style="normal" x="10" y="34.000001999999995" color="243,118,29" hidden="true"/><watcher var="holder_2" style="normal" x="10" y="148.00000599999998" color="243,118,29" hidden="true"/><watcher var="holder_3" style="normal" x="10" y="169.00000799999998" color="243,118,29" hidden="true"/><watcher var="holder_4" style="normal" x="10" y="190.00000999999997" color="243,118,29" hidden="true"/><watcher var="Password_Container" style="normal" x="12" y="208.00001199999997" color="243,118,29" extX="80" extY="70" hidden="true"/><watcher scope="Sprite(6)" s="getCostumeIdx" style="normal" x="10" y="211.00001199999997" color="143,86,227" hidden="true"/><watcher var="password_options" style="normal" x="15" y="19.00000399999999" color="243,118,29" extX="80" extY="70" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="all but first letter of %&apos;string&apos;" type="reporter" category="operators"><comment x="0" y="0" w="199" collapsed="false">Takes a text string as input, and reports a new text string containing all but the first character of the input.</comment><header></header><code></code><translations>pt:_ sem o primeiro caractere&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>result</l><l>i</l></list></block><block s="doIf"><block s="reportIsA"><block var="string"/><l><option>list</option></l></block><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="all but first letter of %txt"><l></l></custom-block></autolambda><list></list></block><block var="string"/></block></block></script></block><block s="doWarp"><script><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="string"/></block><l>0</l></block><script><custom-block s="error %txt"><l>All but first of empty word.</l></custom-block></script></block><block s="doSetVar"><l>result</l><l></l></block><block s="doSetVar"><l>i</l><l>2</l></block><block s="doUntil"><block s="reportGreaterThan"><block var="i"/><block s="reportStringSize"><block var="string"/></block></block><script><block s="doSetVar"><l>result</l><block s="reportJoinWords"><list><block var="result"/><block s="reportLetter"><block var="i"/><block var="string"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doReport"><block var="result"/></block></script></block></script></block-definition><block-definition s="all but first word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="223.000001" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing all but the first word, with one space between words and no spaces at the beginning or end. (Note: consider using SENTENCE-&gt;LIST and processing the resulting list instead of doing recursion on sentences in text string form.  List operations are faster.)</comment><header></header><code></code><translations>pt:_ sem a primeira palavra&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>bf</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>bf</l><l></l></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doIf"><block s="reportIsA"><block var="sentence"/><l><option>list</option></l></block><script><block s="doIfElse"><block s="reportListIsEmpty"><block var="sentence"/></block><script><custom-block s="error %txt"><l>All but first of empty sentence.</l></custom-block></script><script><block s="doReport"><block s="reportCDR"><block var="sentence"/></block></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><custom-block s="error %txt"><l>All but first of empty sentence.</l></custom-block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><custom-block s="error %txt"><l>All but first of empty sentence.</l></custom-block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportGreaterThan"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><script><block s="doSetVar"><l>bf</l><block s="reportJoinWords"><list><block var="bf"/><block s="reportLetter"><block var="index"/><block var="sentence"/></block></list></block></block><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doReport"><block var="bf"/></block></script></block></script></block-definition><block-definition s="all but last letter of %&apos;string&apos;" type="reporter" category="operators"><comment x="0" y="0" w="218" collapsed="false">Takes a text string as input, and reports a new text string containing all but the last letter of the input.</comment><header></header><code></code><translations>pt:_ sem o último caractere&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>result</l><l>i</l></list></block><block s="doIf"><block s="reportIsA"><block var="string"/><l><option>list</option></l></block><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="all but last letter of %txt"><l></l></custom-block></autolambda><list></list></block><block var="string"/></block></block></script></block><block s="doWarp"><script><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="string"/></block><l>0</l></block><script><custom-block s="error %txt"><l>All but last of empty word.</l></custom-block></script></block><block s="doSetVar"><l>result</l><l></l></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportEquals"><block var="i"/><block s="reportStringSize"><block var="string"/></block></block><script><block s="doSetVar"><l>result</l><block s="reportJoinWords"><list><block var="result"/><block s="reportLetter"><block var="i"/><block var="string"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doReport"><block var="result"/></block></script></block></script></block-definition><block-definition s="all but last word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="211.99999999999997" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing all but the last word, with one space between words and no spaces at the beginning or end.  (Note: consider using SENTENCE-&gt;LIST and processing the resulting list instead of doing recursion on sentences in text string form.  List operations are faster.)</comment><header></header><code></code><translations>pt:_ sem a última palavra&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>bl</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>bl</l><l></l></block><block s="doSetVar"><l>index</l><block s="reportStringSize"><block var="sentence"/></block></block><block s="doIf"><block s="reportIsA"><block var="sentence"/><l><option>list</option></l></block><script><block s="doIfElse"><block s="reportListIsEmpty"><block var="sentence"/></block><script><custom-block s="error %txt"><l>All but last of empty sentence.</l></custom-block></script><script><block s="doReport"><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportLessThan"><block var="index"/><block s="reportListLength"><block var="sentence"/></block></block></autolambda><list><l>value</l><l>index</l></list></block><block var="sentence"/></block></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><custom-block s="error %txt"><l>All but last of empty sentence.</l></custom-block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><custom-block s="error %txt"><l>All but last of empty sentence.</l></custom-block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="index"/><l>1</l></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportLessThan"><block var="index"/><l>1</l></block><script><block s="doSetVar"><l>bl</l><block s="reportJoinWords"><list><block s="reportLetter"><block var="index"/><block var="sentence"/></block><block var="bl"/></list></block></block><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doReport"><block var="bl"/></block></script></block></script></block-definition><block-definition s="first word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="236" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing only the first word, with no spaces before or after it.</comment><header></header><code></code><translations>pt:a primeira palavra de _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>first</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>first</l><l></l></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><custom-block s="error %txt"><l>First of empty sentence.</l></custom-block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><custom-block s="error %txt"><l>First of empty sentence.</l></custom-block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>first</l><block s="reportJoinWords"><list><block var="first"/><block s="reportLetter"><block var="index"/><block var="sentence"/></block></list></block></block><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>first</l><block s="reportJoinWords"><list><block var="first"/><block s="reportLetter"><block var="index"/><block var="sentence"/></block></list></block></block></script></block><block s="doReport"><block var="first"/></block></script></block></script></block-definition><block-definition s="last letter of %&apos;word&apos;" type="reporter" category="operators"><comment x="0" y="0" w="260" collapsed="false">Takes a text string as input, and reports the last character in the string.</comment><header></header><code></code><translations>pt:o último caractere de _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doIf"><block s="reportIsA"><block var="word"/><l><option>list</option></l></block><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="last letter of %txt"><l></l></custom-block></autolambda><list></list></block><block var="word"/></block></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="word"/></block><l>0</l></block><script><custom-block s="error %txt"><l>Last of empty word.</l></custom-block></script></block><block s="doReport"><block s="reportLetter"><block s="reportStringSize"><block var="word"/></block><block var="word"/></block></block></script></block-definition><block-definition s="last word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="262" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing only the last word of the input, with no spaces before or after it.</comment><header></header><code></code><translations>pt:a última palavra de _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>last</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>last</l><l></l></block><block s="doIf"><block s="reportIsA"><block var="sentence"/><l><option>list</option></l></block><script><block s="doIfElse"><block s="reportListIsEmpty"><block var="sentence"/></block><script><custom-block s="error %txt"><l>Last of empty sentence.</l></custom-block></script><script><block s="doReport"><block s="reportListItem"><l><option>last</option></l><block var="sentence"/></block></block></script></block></script></block><block s="doSetVar"><l>index</l><block s="reportStringSize"><block var="sentence"/></block></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><custom-block s="error %txt"><l>Last of empty sentence.</l></custom-block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><custom-block s="error %txt"><l>Last of empty sentence.</l></custom-block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>last</l><block s="reportJoinWords"><list><block s="reportLetter"><block var="index"/><block var="sentence"/></block><block var="last"/></list></block></block><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>last</l><block s="reportJoinWords"><list><block s="reportLetter"><block var="index"/><block var="sentence"/></block><block var="last"/></list></block></block></script></block><block s="doReport"><block var="last"/></block></script></block></script></block-definition><block-definition s="empty word? %&apos;word&apos;" type="predicate" category="operators"><comment x="0" y="0" w="208" collapsed="false">Takes a text string as input, and reports TRUE if the string has no characters in it of any kind, otherwise false.</comment><header></header><code></code><translations>pt:a palavra _ está vazia&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doIf"><block s="reportIsA"><block var="word"/><l><option>list</option></l></block><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="empty word? %txt"><l></l></custom-block></autolambda><list></list></block><block var="word"/></block></block></script></block><block s="doReport"><block s="reportEquals"><block s="reportStringSize"><block var="word"/></block><l>0</l></block></block></script></block-definition><block-definition s="empty sentence? %&apos;sentence&apos;" type="predicate" category="operators"><comment x="0" y="0" w="221" collapsed="false">Takes a text string as input, and reports TRUE if the input contains no characters other than spaces (therefore, no words when the string is considered as a sentence), otherwise FALSE.</comment><header></header><code></code><translations>pt:a frase _ está vazia&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l></list></block><block s="doIf"><block s="reportIsA"><block var="sentence"/><l><option>list</option></l></block><script><block s="doReport"><block s="reportListIsEmpty"><block var="sentence"/></block></block></script></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doReport"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><comment x="0" y="0" w="230.66666666666666" collapsed="false">Like JOIN, takes any number of words (text strings) and reports a sentence with its inputs concatenated, but inserts a blank space between the inputs.&#xD;Consider using SENTENCE (Lists palette) instead.</comment><header></header><code></code><translations>de:füge Wörter zusammen _&#xD;ca:uneix les paraules _&#xD;es:unir las palabras _&#xD;fr:fusionne les mots _&#xD;pt:uma frase com as palavras _&#xD;</translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doIf"><block s="reportListIsEmpty"><block s="reportCDR"><block var="words"/></block></block><script><block s="doIfElse"><block s="reportIsA"><block s="reportListItem"><l>1</l><block var="words"/></block><l><option>list</option></l></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportListItem"><l>1</l><block var="words"/></block></custom-block></block></script><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script></block></script></block><block s="doIf"><block s="reportIsA"><block s="reportListItem"><l>1</l><block var="words"/></block><l><option>list</option></l></block><script><block s="doIfElse"><block s="reportListIsEmpty"><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><script><block s="doReport"><block s="reportJoinWords"><list><custom-block s="join words %mult%txt"><block s="reportListItem"><l>1</l><block var="words"/></block></custom-block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block></script></block><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 %&apos;data&apos;" type="reporter" category="operators"><comment x="0" y="0" w="165.33333333333334" collapsed="false">Takes a sentence in list form and reports the sentence as a text string.</comment><header></header><code></code><translations>de:Liste $arrowRight Satz _&#xD;ca:llista $arrowRight frase _&#xD;es:lista $arrowRight frase _&#xD;fr:liste $arrowRight phrase _&#xD;pt:uma frase com as palavras em _&#xD;</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 %&apos;text&apos;" type="reporter" category="operators"><comment x="0" y="0" w="196" collapsed="false">Takes a sentence in text string form and reports the sentence as a list of its words.</comment><header></header><code></code><translations>de:Satz $arrowRight Liste _&#xD;ca:frase $arrowRight llista _&#xD;es:frase $arrowRight lista _&#xD;fr:phrase $arrowRight liste _&#xD;pt:uma lista com as palavras da frase _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportNot"><block s="reportEquals"><block s="reportStringSize"><l></l></block><l>0</l></block></block></autolambda><list></list></block><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><comment x="0" y="0" w="146.42857142857144" collapsed="false">report a list in which each item is one letter from the input word</comment><header></header><code></code><translations>de:Wort $arrowRight Liste _&#xD;ca:paraula $arrowRight llista _&#xD;es:palabra $arrowRight lista _&#xD;fr:mot $arrowRight liste _&#xD;pt:uma lista com os caracteres da palavra _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doIf"><block s="reportIsA"><block var="word"/><l><option>list</option></l></block><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="word $arrowRight list %txt"><l></l></custom-block></autolambda><list></list></block><block var="word"/></block></block></script></block><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><comment x="0" y="0" w="158.57142857142858" collapsed="false">join all the items of the input list&#xD;into a single word, and report it</comment><header></header><code></code><translations>de:Liste $arrowRight Wort _&#xD;ca:llista $arrowRight paraula _&#xD;es:lista $arrowRight palabra _&#xD;fr:liste $arrowRight mot _&#xD;pt:uma palavra com os caracteres em _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doIf"><block s="reportListIsEmpty"><block var="list"/></block><script><block s="doReport"><block var="list"/></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportFindFirst"><block s="reifyPredicate"><autolambda><block s="reportIsA"><l></l><l><option>list</option></l></block></autolambda><list></list></block><block var="list"/></block><l></l></block><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportIfElse"><block s="reportIsA"><l></l><l><option>list</option></l></block><block s="reportNewList"><list><custom-block s="list $arrowRight word %l"><l/></custom-block></list></block><l></l></block></autolambda><list></list></block><block var="list"/></block></block></script></block-definition><block-definition s="sentence %&apos;phrase&apos;" type="reporter" category="lists"><comment x="0" y="0" w="302.6666666666667" collapsed="false">SENTENCE is the main constructor for sentences, represented&#xD;as lists of words.  It takes zero or more inputs, each of which can&#xD;be either a list or a text string.  If a list, the input is assumed to be&#xD;a list of words.  If a text string, it is converted to a list of words using&#xD;SENTENCE→LIST.  Then all the lists of words are appended to form a new list of words.&#xD;&#xD;If the inputs are lists of lists rather than lists of words, SENTENCE,&#xD;like APPEND, does only one level of flattening, reporting a list of&#xD;all the items of all the input lists.</comment><header></header><code></code><translations></translations><inputs><input type="%mult%s"></input></inputs><script><block s="doIf"><block s="reportListIsEmpty"><block var="phrase"/></block><script><block s="doReport"><block s="reportNewList"><list></list><comment w="224.66666666666666" collapsed="true">Workaround for stupid append misfeature.</comment></block></block></script></block><block s="doReport"><block s="reportConcatenatedLists"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportIfElse"><block s="reportIsA"><l></l><l><option>list</option></l></block><l></l><custom-block s="sentence $arrowRight list %txt"><l></l></custom-block></block></autolambda><list></list></block><block var="phrase"/></block></block></block></script></block-definition><block-definition s="error %&apos;msg&apos;" type="command" category="control"><header></header><code></code><translations>pt:lança o erro _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>msg</l></list><l>throw new Error(msg);</l></block><list><block var="msg"/></list></block></script></block-definition><block-definition s="printable %&apos;data&apos;" type="reporter" category="lists"><comment x="0" y="0" w="188.66666666666666" collapsed="false">Takes a (possibly deep) list as input,&#xD;and reports a human-readable text form &#xD;of the list (namely, Lisp notation).</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doIf"><block s="reportNot"><block s="reportIsA"><block var="data"/><l><option>list</option></l></block></block><script><block s="doReport"><block var="data"/></block></script></block><block s="doIf"><block s="reportListIsEmpty"><block var="data"/></block><script><block s="doReport"><l>()</l></block></script></block><block s="doReport"><block s="reportJoinWords"><list><l>(</l><block s="reportCombine"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="printable %l"><l/></custom-block></autolambda><list></list></block><block var="data"/></block><block s="reifyReporter"><autolambda><block s="reportJoinWords"><list><l></l><l> </l><l></l></list></block></autolambda><list></list></block></block><l>)</l></list></block></block></script></block-definition></blocks><variables><variable name="holder_1"><l>0</l></variable><variable name="password_options"><list struct="atomic" id="1861">no,no,no</list></variable><variable name="holder_2"><l>0</l></variable><variable name="holder_3"><l>0</l></variable><variable name="holder_4"><l>0</l></variable><variable name="Password_Container"><list struct="atomic" id="1862"></list></variable></variables></project><media name="U2_PasswordGen" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>