<snapdata remixID="9314228"><project name="U4L5.2 Cybersecurity: Caesar Cipher" app="Snap! 5.4, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="true" codify="false" inheritance="true" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAOhUlEQVR4Xu3VwQkAAAjEMN1/abewn7jAQRC64wgQIECAAIF3gX1fNEiAAAECBAiMAHsCAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQIHLFxAWmhEwHPAAAAAElFTkSuQmCC</pentrails><costumes><list struct="atomic" id="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><sprite name="encrypt" idx="1" x="-6" y="94" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="8"><costumes><list id="9"><item><costume name="Screen Shot 2020-03-12 at 12" center-x="143.5" center-y="43" image="data:image/png;base64,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" id="10"/></item></list></costumes><sounds><list struct="atomic" id="11"></list></sounds><blocks></blocks><variables></variables><scripts><script x="47" y="445"><block s="receiveGo"></block><block s="bubble"><l></l></block><block s="doSetVar"><l>word list</l><l>0</l></block><block s="doSetVar"><l>word</l><l>0</l></block><block s="doSetVar"><l>encrypted word</l><l>0</l></block><block s="doSetVar"><l>shift</l><l>0</l></block></script><script x="37" y="30"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doSetVar"><l>word list</l><l>0</l></block><block s="doSetVar"><l>word</l><l>0</l></block><block s="doSetVar"><l>encrypted word</l><l>0</l></block><block s="doSetVar"><l>shift</l><l>0</l></block><block s="doAsk"><l>What do you want to encrypt?</l></block><block s="doSetVar"><l>word</l><block s="getLastAnswer"></block></block><block s="doSetVar"><l>word list</l><custom-block s="word $arrowRight list %txt"><block var="word"/></custom-block></block><block s="doSetVar"><l>encrypted word</l><block s="reportNewList"><list></list></block></block><block s="doAsk"><l>By a key of?</l></block><block s="doSetVar"><l>shift</l><block s="getLastAnswer"></block></block><block s="doForEach"><l>letter</l><block var="word list"/><script><block s="doAddToList"><custom-block s="shift letter: %s by shift %s"><block var="letter"/><block var="shift"/></custom-block><block var="encrypted word"/></block></script></block><block s="bubble"><custom-block s="list $arrowRight word %l"><block var="encrypted word"/></custom-block></block></script></scripts></sprite><sprite name="decrypt" idx="2" x="-6" y="-59" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="27.539999999999903,0,137.70000000000002,1" pen="tip" id="82"><costumes><list id="83"><item><costume name="Screen Shot 2020-03-12 at 12" center-x="143.5" center-y="43" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAR8AAABWCAYAAAD2d5JdAAAS8klEQVR4Xu1deXhURbb/JSwBYtgl7Jt5BCGAAdlXZReBp47LICIgiMrMm/H5Hs4MM6PD0/fe6Pg5iz42ZZOn4iACQiBICBDAQFgTloQJJEDIYiAQSEL2zHc605nuzu2+Vber+3bSp74v/+SeqjrnV1W/ruXUqQAAVeDECDACjICXEQhg8vEy4lwdI8AIWBBg8uGOwAgwAqYgwORjCuxcKSPACDD5cB9gBBgBUxBg8jEFdq6UEWAEmHy4DzACjIApCDD5mAI7V8oIMAJMPtwHGAFGwBQEmHxMgZ0rZQQYASYf7gOMACNgCgJMPqbAzpUyAowAkw/3AUaAETAFASYfU2DnShkBRoDJp470gUZNGqJZyyaWv4DAKhTmlaDg5j1UlFXUEQtYTUbAHgHTyef+7i0QEBio2y5VVVWw/FVW/1WUV6GspBwVpZUoKy5HZUWlbhl6AjSw72vdVE9M+ntxQSnu/FAola9dz1YIG9EJYcM7IKRtM6d5KyuqUJRfjLs5RUg5lIGUuAyUl5RL1SVjd2VlpQV/CsRCmJeVVKC8rALlJZXS9VqVbNutBQIb6PcBq3zh7WIU5t2rZSMRdKuOIVK2512/a9G7Rfv7ENSskVReEiYM6AegvKy6HxbfLZUqQ7T/SxXqQriqshK56fmqinOrHFPJp03X5nju/UfcMsCamQYhkVFhXjFuZxYgNy0fV05mSwE9/VfD0XVAOyX62BZy724p1izYpV9uABAxoTuGzepjaCBUD4YqpB65jjNRl/HD5Vv6dQJQaTcNxKL8EtzJuYe8a/lIPpDhUo+mzYMwf/UUIT2tQukns7Hz90dr5YmY2B1jFwyQKmvfitO4EHsFr2x8HA0aNZDK60y4pKgMt64VIDP5JtJPZCMr5aamqMr+L6P4l/8Zi5tX78hk8YhsvSEfZ+jkZxcgcVcazsde1f1lnrF0BLr0v1850CLk075XK0xYPNDyC6wqXYzLQMzyU7qzQk/ZbbUjL+MuTmy5iIuHMzRNm//JVDQNaSxsNs181i2KriU/8SeD0Gt0Z+FySHDjv+1Ffk4hXv18BgIb0HBQn+7eKMKp7ZeQtOeyXeg+Jh8TIxl6E3zqANuWHbF0NGfJU4NQj3weGNoRU/59sPpeD4AG/rb/OoKi28Vet9uxwsRdlxG3LqmWHo8uisSDj3aVsn/F7B219rte+MsENG8XLFyOLYl5knysCmWn3MKO975HSUGZ5V/e7P+2oPDMxwTwaUnyzdtxyL6ovRwxg3x6DO6Ix/7DM8Rj7XClxeX4asl+p8TrKbu1WECLgLoPCsW0JcOESYMEN/86Djl/y6vJQ0smWjrJpKTdl3FwbTUZeoN8qB7a+/v/n++zzEaZfPxk5mPtlDQL2bD4O80lmKcGobOZT6uO92HWh+Nlxoth2azkPGx5K04zv6fsdqbs/lWncS7mSs3nhkENsWjDNCnbDn6aiKQ9aTV5OoS3wZPLRkmVsfV3h3H9/A2vkg9VdurbSziy8SyTj5kxnM1i/nN7r2D/6tO1OqqnBqEz8nny7VHo8GAbqQHjjnDUHxKQlpDpNbud6UozsTULdtstm55aNgbtw1sJm5e8/xpilp+skX/o8TCMfKGvcH6aBa+Y/W31yZ0XZz5UF9W9el4UWoQ2U3bgImw4AF52mbDssjYQNf7KOTtQWW5/PO9N8uk6IBTTfyW31JDpYFqyFhJcuKvWXNdTdrvSd/eHCbgU/08ilCUP2sv64o19NVVMeX0wHhjWURii9BM52PlefI28t5Zd1gr3fnQSN67kM/kIt5hiQbNmPmRG1PvHkHY8y84iTw1CrZnP1DeGoOeQDooR1S9u89KDyEm13/PylN2utEmNz0T0hwk1Ii07hOD5Pz6qb8A/JOgHZPms7TXyLy6fJOWjFfPxKSQfvGoa+dDxPrlDqHI1EQaOZz7VUJlJPmd2XsKhDWfNIZ8A4JXP5P1KaMBte+ewZcOc/IFGz+sn0+csskc3JeP4lhSv2O1KOS1Clj1yX//aHouXd4NGgXhl43QpLD55Karm1IkyenvmQydf+z85zeQj1WoKhY2Sz7XEXBxan4ROfdpi1Nx+hvwzaNZDsx/b5KkZgONAa905BD/+QPxX3qrjhX1XsW/lqRqVjTjGXT6WhV0fqLF767LDICfBoc+Gg2Yusmn5rG/tfJBkj9x3/O9RXDmVjdCwVvjRu2OEq6flzqYl++3kjZAPOVRuXhqHtt1bYMgz4S490R2VI0fM7e8cYfIRbjXFgkbJx3azMWJSD4x9qb+0ZvTL8/VvDyohH3LmoysUztKdH4pwJupSzecu/dthxtLh0jof+DQRZ21OeJ75/TiQe75Mup1113LUq4J0P124C8V3ShF0XyPMXzVV+kfg89djcCuzoEaVbgPb4/E3hwqbE//lBZz45iL6Te6JMfPFZ4FHN13A8S0X3SYfWz+h4NZNMXf5JGHdibjWLIzGkKfDERCo7dzYqW9by+pANhG5Zp7X9qqmDfZjf01B6b1qXyMzU530cLYlHyNTbgKcOj11fpWDULQhe4/pivGLI0XFa+Qc96lm/mYkOke0lSqHTppWv7hTud0zfj0CXfrJeYe766tDG9a0cS07Y6KNatqwtk1GZj6OntYyPwaOe1ZajdhvUg+MMfDDar0yItUxTBCu8+RDmBnpOOTxTP4+ZpCP7MmOVcft736Pa4k/1Kg87c2h6D6wvXS3+fjZbcrtliUAUoA8rzPO5trpInPkTldnNv4sBs++Nw50OVUkOXN7MNKHHMlHtj0c28FRfyYfkRY1KKNi2UVVG9n7oDX32pd3Kx+EIlAMebo3Bv8oXETUToacBMlZ0Jomvz4YYRLHy9Z8q17cabmBbU1G97qsyy4qZ9ScCAyY9oCUTVonjjLEbJ09yLT/+X1XEWuzb2ZVWAX5jH8tEr3Hil8T+fi5bS5dfJl8pLqTnLAq8lmw9jHpW+Bav4AqBqEIAsOe64NBT/yLiKidjOMx+eSfPWwJuyGb1ry8G/fyS3ySfOhi7ew/iXt9k8OczHH1t/8dj6tncmpBpoR8Xh2I3uO6CDcHuQoQgTpLTD7CUMoLqiIf2SNa0pTCHnwyL8qUmc+I2RGInC43SyBFVZHPulf32MXDUUG6Y18agIhJ3aU6wbZ3jiAjyX7ZRQXMWzUFzVoECZV1/JuLePiJXkKyzpxLKTOTjxCESoXqxZ6PEfLx1MarSOuMntsP/af2FBH1yMzHGkZC5bLLiNOk4zLSqs8jiyLRR/CWO53eiR7zk4vG9nePaOKuhHwkl10886mDF0sd7/XUNfIZO78/Iib3MI186KidBq1K8nn63TFoFyZ+N4vqps1i2jR2TN0iQ/H4L9RfPXG80GpbrwrykSVgJh8mH6WDUIRRjCxRVC67VJNPyP3NMOejiSKm28k4OhlaPxoJjyFSueNel2rykTmpo7qd2W/Vi/d8RFrVoIyZez4ql10UF6a40LnT1tnv0lF065/BvOoL+ZCTX1BwY/QZ31V6w1/rtNG2Gz35u9Ho0Lu1wZ5VO5uWc6VK8iFHQTr4aNykobDOfNTOMx+3Zz56vc0xlEV9IR89u119p4uV5AznLD00LQwj54iHyNDThTamj355wamYu8uugTN7YfisB/XUqPnOToYAbzjbdBejpz56PY7JpzZCejFlWoQGY/afJ+hBK/z9q18cQG7abaXkQwRCflctOwUjuGUTYV1IUOu01bEAXnZJQSonXF+WXXpWe4p86O5PR8lgZHS3hyLp2b735SnSdYbLofVn7e66OZOTOXJ31QZaS2xHeSMzH712d/Vdy8OeyccdRCXzMvnIAaYVi0euBG1pb5EP3aeKW5tU60qFMxseWfgQ+kzo5raJdPH3u49OuCzH2+RzLSnXcqvdVeKZj9tN77wAJh85cOsq+ZA3+e4PjiHzgvZNa2codH0oFNN/6f6Ru9Y1DrNnPoc3nMPpnalMPnJDQJ00k48clnWVfKxW5qTmIer9BJfP+NgiYjRigSOqK+fs1H2zzdszH62b9bzskhsPbkkz+cjBV9fJh6ylvaaty75H9kWxWZC7QfazLtzElrcP6QLtTfLJvXwbX/3ygK5OvOzShci4AJOPHHb1gXzIYjrp2fCTvSgt1H/XfMBjD2DUixFyQNlI0x5T4u7Luvm9RT5k+1dvHrC836WXmHz0EHLjO5OPHHi+Rj77V5+xOBcOeqqXlHMdWe3s9VJHRNw9crfGedZD2hvkQxvu9Ma8CPGQvkw+eq3mxvf6Qj50P6mspMIpEjH/dwo30vNrvqtyMnQDerusRk+7rPF8mrVsgnkrJ0upQ8uvFS/sEHJxNXrkLnKcbVXaU+RDvkD0MGFy7FWnb9U7A47JR6pLyQnXF/KxDaolgoAq8hnyTG/0nSAXxqKqqsoSPF11PB+KwUOxeGTS2lei7a6dOMs7bsEA9J0oZyeVdXpHKg5/dk5IJaPkY/v2GPlQ3btTgqI7pSi+W4rbmQWWEz56GtlIYvIxgppgHiYfQaD+IaYqno/qi6WknmwIUcpDJEjBzvWS0QcWv/7NIeGNbSPk4xhGVc8O2e9MPrKIScgz+UiApTCYmCfIZ+JPB6HXqM5SBm156zCykqvfSneVjBy5W+5OPb9daFlHdTP56LWC+u98t8sGU3f3PkSbZ8z8/uhnYjyfz366127TU4XdRpZGziIZauEoSw7OAsU7ayPZ8qkcnvmI9nhtOSYfE8jHSLB1UlPVssvxBEgF+Rixyfron0gXliUHJp8rIrCaKlMvyMdIAHmV8XxkN5yHz+qLgTPDpBteFfmsXRRt52VsFvnsfC8e6SdqB3PnmU81ArznIz1ExDOo2vOReTrFqp2Z5EPP5tDzObKpFvkYfDpn9fxddg5+ZpGPyJ0rK0Y88xHvLfxooABWqshn8aaZArXZi5j5ekX/KT0xep74875WzR0Drk9bMgzdB4VK2+74XpRp5POHBKQlZArpz+QjBJNFiMlHACsV5NMwqCEWbZgmUJu9iJnvdoUN74TJP39YWmfHF0uNPFGsFUGPyYdPu6Q7o4IMdX7Pp13PVnj6f8ZIQ6F1UqFiEIoo0qlPW/zrWyNFRO1kHIOSyQYsp8I89VKrkQ1nR3tcAcIzH/HuwjMfAaxUzHxk3niyVcn6zrft/4ySD93ZKbd5fljL9GtJNxD/5XnLp+DWTTF3+SQBhOxF4tadReKuSzX/nLtysnT4TgprsXlpnF3BRu12+7lkXna57AO84Sw9RMQzGCUf+vU+E3UJPQe3R2iYsRcOtMIaGB2EIhY71if7S051pB65jug/HbdU16hJQ7y8Xn65qRW43ajdTD7FWLcoWqT5Dckw+RiCTSyTUfIRK921VPrJbMsNYxUzHxF9HMmH3hcn+2UTzX7yMu7g4SfC0alvG9nsiF11Gudj7H1AmHx4z0e6IynIUCf3fBTYjaToNBxck2ga+Qx/vi8GzpD39XHX9vWLv0PBjSIldvPMh2c+7vRHvyWf2BWncT5WzQxApAEcZz6tO4fgxx88KpJVmYyzCHo88+GZj7JOJlGQ35KPo5cvYWZ0EIrgrTXwJyweiPAxXUSyK5H5/PUY3Mqs/Ta6Ubt55sMzH3c6pl+SD7n0k2u/YzI6CEUaQIt8mjYPwtwVkxHYgJrBsylhcwqO/TVZsxKjdjP5MPm402v9jnwogt4Xb8QiP6d2DF2jg1CkAZwteSgY2LiFA0SKMCxDp2T0bhU5GGolo3Yz+TD5GO6UqKPPJRs1mAbflrcOIedveUoHoYg+rl4soPeppi0Z6pEZUPwXyTixNcWlikw+vOcj0odVy/jFzIdIJ+XgVcRvSnYZttPoIBRpFL3nUihQ+szfjkBI22YixenK0PUR2lRPO56lK2vUbp758MxHt3O5EDCVfCjmL8X+VZWIZMrLKlBaVIb8rCLkZxUg41wuLh3LQmW5fhzdqW8MQc8hHVSpY1fO9XM3sXWZ6/ejAgID0C2yHSIm9kC3SPkLo1Rhbno+jn+dgrSEbFC8ZpFk1G7b2/EUT3rwU+Ei1dXIyAQTkw2bUpB3D+tf3SOsj2z5VLCWl7xwhQKCvcd2xfjXIgUk7UWi/3gcqd9fl87n7Qymko+3ja1L9TUObozwkZ3QPrw1Qto0RXCbJmjSPMjuiRqa3RTkFiE/uxD5OUVIjb9u90pGXbKXdfU/BJh86libBwQEWK5WlBaXCccnrmMmsrp+ggCTj580NJvJCPgaAkw+vtYirA8j4CcIMPn4SUOzmYyAryHA5ONrLcL6MAJ+ggCTj580NJvJCPgaAkw+vtYirA8j4CcIMPn4SUOzmYyAryHA5ONrLcL6MAJ+ggCTj580NJvJCPgaAkw+vtYirA8j4CcIMPn4SUOzmYyAryHA5ONrLcL6MAJ+ggCTj580NJvJCPgaAkw+vtYirA8j4CcIMPn4SUOzmYyAryHA5ONrLcL6MAJ+ggCTj580NJvJCPgaAn8HQ6HstfGUzKkAAAAASUVORK5CYII=" id="84"/></item></list></costumes><sounds><list struct="atomic" id="85"></list></sounds><blocks></blocks><variables></variables><scripts><script x="28" y="25"><block s="receiveGo"></block><block s="bubble"><l></l></block><block s="doSetVar"><l>word list</l><l>0</l></block><block s="doSetVar"><l>word</l><l>0</l></block><block s="doSetVar"><l>encrypted word</l><l>0</l></block><block s="doSetVar"><l>shift</l><l>0</l></block></script><script x="26" y="184"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doSetVar"><l>word list</l><l>0</l></block><block s="doSetVar"><l>word</l><l>0</l></block><block s="doSetVar"><l>decrypted word</l><l>0</l></block><block s="doSetVar"><l>shift</l><l>0</l></block><block s="doAsk"><l>What do you want to decrypt?</l></block><block s="doSetVar"><l>word</l><block s="getLastAnswer"></block></block><block s="doSetVar"><l>word list</l><custom-block s="word $arrowRight list %txt"><block var="word"/></custom-block></block><block s="doSetVar"><l>decrypted word</l><block s="reportNewList"><list></list></block></block><block s="doAsk"><l>What is the key?</l></block><block s="doSetVar"><l>shift</l><block s="getLastAnswer"></block></block><block s="doForEach"><l>letter</l><block var="word list"/><script><block s="doAddToList"><custom-block s="decrypt shift letter: %s by shift: %s"><block var="letter"/><block var="shift"/></custom-block><block var="decrypted word"/></block></script></block><block s="bubble"><custom-block s="list $arrowRight word %l"><block var="decrypted word"/></custom-block></block></script></scripts></sprite><watcher var="letter" style="normal" x="7.833333333333371" y="7.833333333333336" color="243,118,29" hidden="true"/><watcher var="shift" style="normal" x="7.833333333333371" y="24.2833349" color="243,118,29" hidden="true"/><watcher var="word" style="normal" x="7.833333333333371" y="40.733336466666685" color="243,118,29" hidden="true"/><watcher var="word list" style="normal" x="7.833333333333371" y="57.18333803333333" color="243,118,29" hidden="true"/><watcher var="encrypted word" style="normal" x="7.833333333333371" y="73.63333959999999" color="243,118,29" hidden="true"/><watcher var="decrypted word" style="normal" x="10" y="10" color="243,118,29" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="shift letter: %&apos;letter&apos; by shift %&apos;shift&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportUnicodeAsLetter"><block s="reportSum"><block s="reportUnicode"><block var="letter"/></block><block var="shift"/></block></block></block></script></block-definition><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="doWarp"><script><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="string"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportSum"><l>0</l><l>0</l></block></block></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="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></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="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></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="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="doWarp"><script><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="string"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportSum"><l>0</l><l>0</l></block></block></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="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></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"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></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><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></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="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></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="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="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="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><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></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"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></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="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="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"><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="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="words"/></block><block s="reportCDR"><block s="reportCDR"><block var="words"/></block></block></block></custom-block></block></script></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="words"/></block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><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"><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="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></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="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="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block-definition><block-definition s="decrypt shift letter: %&apos;letter&apos; by shift: %&apos;shift&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportUnicodeAsLetter"><block s="reportDifference"><block s="reportUnicode"><block var="letter"/></block><block var="shift"/></block></block></block></script></block-definition></blocks><variables><variable name="letter"><l>ifmmp</l></variable><variable name="shift"><l>1</l></variable><variable name="word"><l>nz!obnf!jt!fmmb</l></variable><variable name="word list"><list struct="atomic" id="1074">n,z,!,o,b,n,f,!,j,t,!,f,m,m,b</list></variable><variable name="encrypted word"><list struct="atomic" id="1075">n,z,!,o,b,n,f,!,j,t,!,f,m,m,b</list></variable><variable name="decrypted word"><list struct="atomic" id="1076">m,y, ,n,a,m,e, ,i,s, ,e,l,l,a</list></variable></variables></project><media name="U4L5.2 Cybersecurity: Caesar Cipher" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>