<snapdata remixID="9219121"><project name="U5L1 - List generator blocks" app="Snap! 5.4, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAANv0lEQVR4Xu2dCVRV1RrH/xe4zLMMIvCkZTlm+lqJ5bByoleZmEM0OBL6VFJEnFIjeDb4csjspbmwVxHPISlXooJlTk9FTRGnzBxaqb0cUEQNkPmtb9s5crsKZ9sG8a5vr+VS4DvfuefHz33PPvvb+5qqqqqqwI0J3CUCJhbwLpHn0woCLCCLcFcJsIB3Ff+dnzw3Nxdbtmy58wT1dKSXlxe6d++O++6775ZnZAHr6Reh8jRZWVl44IEHQLfvJpOp3v4ODvTDe882g7eTsavpmzAbRWGPi9e3du1aTJgwwepAFtAYywYTtXv3bri7uwvxtKaJWNdf53w0Df3MuRIsTDg9LEv/D9K6dWsWUIJegwxNTExE//79hYB5eXkYOnQoRo0ahb59+2Lz5s147bXXxM927NiB8vJyREREICwsDLGxsbh69SqSkpIwefJkREZGWsS//fbboNwbNmxAVFQU4uLisHr1ahw5ckR8j3IeXDIJgya9CdibgeuFgNkJxYufg8vYDKD4qvgaZSX69wETTry4Whewffv2LGCDtEriRS1YsACPPvqoEOL777+Hi4sLTp06JTI0atQIbm5uCAwMRJMmTZCWloauXbuiefPmqKioEEL16NEDOTk5yM/Pt4j/8ccf0aJFC/GzsWPHYsmSJejSpQtCQ0Nx9uxZXL9+HUdTp2PQ1Hdo7AqUFgFVlYDZBSUr4uE08J0bX5vsxN/FHw0WcUcGpOsChoeHs4ASv+sGGXrhwgWQLHej/bxyJvq5SpzbZIfc3mn6S6X/DH9sfA94N36Tf/KcKSkpaNasmciiDUK0lHX5dUBAANq2bWv41f/66684evQoKisrRa98q2NZQMM4ObAuCLCAdUGVcxomwAIaRsWBdUGABawLqpzTMAEW0DAqDqwLAlIC0hQQze3Rs6f6bPSkv6CgQDz/cnV1rc9T87nqmIBhAUm+W02l1PHrs0hfWlqK4OBglrA+odfxuQwLSFMy1PPRc6Zt27aJJ+x79uxBamoqXn/9dURHR4sJ55EjR4qpInpYOnXqVJA0KifNf/rpJ/Ts2bOOsXD6+iJgWED6xWsPPqk3fOyxx3Ds2DE4ODgIyegJfZ8+fbB//3507NgR8+bNE9UPNB9Zvej6zz4opTnOIUOG1BcfPk8dEzAs4MmTJ/WX4ujoCDs7O/GEu7pcZWVlsLe3F9+nGJKN5hBVNhKQJuC52QYBwwKeOHFCfyulKZnDud+hpLi4zim4eXjCJ6CJPuVEAg4fPrzOz8snqB8ChgWkt1ut5SRGoHfTKmzxeRq+jzwDN79gpa+2pPAaTn/3NZ46f2Mi+8q4bBQVFYl/k4B0v8nNNggYFpAGFdpgouK97jh5/wtoOyDuthW5RcdzseGDN2CqrKiRVGjjAHRI+gR0j6nld3K6UXKbd/Iguh14AwXjslFYWCh+TgLGxMTYBn2+CuOLkn744YebuN7viYrRa+Hq4W1RjbFr1y4xOCFRDkT/FW287A0h9kw5IgYxVMtGg5bly5eLeraHH34YgatGAGPW4LffftN7wBEjRhjKy0ENn4DhHpAew2jN9K9ecJy0zerxypo1a9CvXz/QYOTMmEcQ7GKnH9P03c24ujUdl1cvsqLivvgwLl68KASkHCRxcXGxeN7nnjER7n9faiEgPerhZhsEDAt4+PBhccU0srX7IAIOCVutCMyZM0e8Pfr6+uKX2A4WAgbGvgvnluE4FdfF6ji3Dw/h0qVLoJVeVH3r4+MjYtq1awePtZPgPnIprl27pveAVILOzTYIGBbw0KFD+hU7LPob7OI3WxGgRzAkKL2Nnh3bEU2q9YA14XJddFCUiFMPmJ6eDm9vbxH+0EMPwWvdFLiN/I+FgKNHj7YN+nwVxu8BDx48qOMyf/gkELexRnzB5nKYSwtrRVxpZ48z8NCfF27duhVms1nvAb0yp8BthKWAY8aMqTUvB9wbBAz3gAcOHNDv+RwXP4XKsRv0t+RbzXRsnzsJLX7ZCfubqwdvScTF0RG+7+8SPaCzs7O4B/T09NR7QO+sV+E2Ik30gNoo+JVXXrk36PKrrJWAYQHp/kxrzim9UR77tZWAGRkZ6NChA4KCgnB+Qlf8xfXmIMS13eNwaBSEq5tWWL0ox/f3iSWD2lswrXulRmsIfL+eBpeXP7N4C6ZVW9xsg4BhAfft26f3gC5LnkHZmPVWo+C9e/eiW7duQpb8SY9bDEJC/5mJov1bcGnFbCty5gU54hhNQBr90r3kgw8+iEbfTIdrTJoQVOsBac0qN9sgYFhAkktrbv+ORMmoTCsC69evF2tJqQe7PLmbhYC+A+LhGNoc596LtTrOfv4e8aCZjlu5cqVeb0g9oN83M+AS8xmuXLkijqMH0ePHj7cN+nwVxgchVHqlNfeP+6J45Noa8VUkPQUvU5khxKZ5u8VzP60HpHtBatQD+n+bCJeXUy0EjI+PN5SXgxo+AcM9IO1JojXPT/uhMCajxqtr06YNjuzPqbVgwcXNHRW01cPvjWoNtUYCBmxMhHN0qqiI1nrAhISEhk+WX6EhAoYFpGk2rXml9se16K/El7er79s7sQ96eJeh2h46t39Bc3aipKRE9ICZmZmivpAaDWg81022EnDixImGLo6DGj4BwwLu3LlTH3R4fzYAV4atsro6qv2jwYS/vz+KE5+0HIS8lQGYHXFmypNWx1XOzhbSkYC0mp7yUD0hFSU4rxoPp+hPRQ+oDUJocx1utkHAsIDZ2dm6gD5pA1Ew9EurUfD58+fFPDCt2yhJetpCwJB/fAGTgyPOzIi0Ilfxzg5xHO3gNGvWLFHUqvWsLl/Fw2m4pYBTpkyxDfp8FcYHIdu3b9dxNVoahfzB6Vb4qIeieeDLly+jNLm3hYDmxmEwmexQevZGaX/1VjZrm9i9iUbBNM1GIlNLTk5GWPYsOA7/ROSkRqNgWmvCzTYIGO4BaXCg1ev5LXseF1/6vEYCIVlzUXb45oDidsH2Xn4oiF8uRrnU89G94ODBgzFjxgxRjuWWkQDHYTcE1N6Cp02bZhv0+SqM94A0R6u1gBUv4sILy8V+c507dxb3ah4eHhY4/Uou4duFb9ZakBoS6I+gmDf0mQ5KQvmoJ6UNGL0zp8I87GMxVaf1gNOnT+dfnY0QMNwDVt8QO/Dzl3AuaikaN24sBge0gyYNHgYOHCjeSmkAUZD8rOGCVMzdJQYe2iCE5oJpNEyjYJ/1r8I89KaAdCtAu4Bysw0ChgXctGmTfsVB6YNx+tlPbky55efj9OnTop6Pqqbnz58vps0q3+yr3wM6+IfAwcsPVRXlaDzhQ5yKs9yoUKsHJAHpLZh61ieeeEK87Qasn4SqIakiv9YD0lay3GyDgGEBN268WX7V5Ish2PXITIQ2DRPbvy5btkzMWtC6Dtq9vWnTpjg/vpMuoMnODk73t4fvcwnIS3kVZXm/WNDTihGOHz8O+tOrVy/Rq7Zq1Qqdsyfify99aSEgLYTnZhsEDAu4bt06fa1v8JdD4eTujf+2SoCru6fYL0bbtZ0GElSQ6jT3ecMFqdeSNogaQPpz7tw58UiG1oCE5CxC6/JjOP7CaiEgDUKot+VFSbYhH12FYQEXLlwoejcSrUXWKPiay1FeZYe8SjcUVzkIIlrpH3343P1RyTB5BNVOqqwQPy+fCq/fawDpgCuXLsDfvgjOpnJx/NHnVumDENqfJiQkpPa8HHFPEDAsIO12QGs+6BNv6EEzbclRU9u/ONlwQarr7C1i3S8VIdDipOq7b2k7Y9FaEVqs1LJly3sCLL9IYwQMC2gsHUcxATkCLKAcL45WTIAFVAyU08kRYAHleHG0YgIsoGKgnE6OAAsox4ujFRNgARUD5XRyBFhAOV4crZgAC6gYKKeTI8ACyvHiaMUEWEDFQDmdHAEW8Da86NPIqTKHPmFcq/SRQ8vRRgiwgDVQos89oaIL2j44KipKfEAO1T1yU0eABayFZWRkpFgsVb1R5Q59VklERAToIyu43TkBFrAWdrQfNZWI/bHRKr5OnTqBNsuk8jRud0aABayBW0pKCuhjyahRlTfVQoaHh2PQoEF8X3hnvlkdxQLWMAiZOXOmEG7cuHFiOQI39QRYQPVMOaMEARZQAhaHqifAAqpnyhklCLCAErA4VD0BFlA9U84oQYAFlIDFoeoJsIDqmXJGCQIsoAQsDlVPgAVUz5QzShBgASVgcah6AiygeqacUYIACygBi0PVE2AB1TPljBIEWEAJWByqngALqJ4pZ5QgwAJKwOJQ9QRYQPVMOaMEARZQAhaHqifAAqpnyhklCLCAErA4VD0BFlA9U84oQYAFlIDFoeoJsIDqmXJGCQIsoAQsDlVPgAVUz5QzShBgASVgcah6AiygeqacUYIACygBi0PVE2AB1TPljBIEWEAJWByqngALqJ4pZ5QgwAJKwOJQ9QRYQPVMOaMEARZQAhaHqifAAqpnyhklCLCAErA4VD0BFlA9U84oQYAFlIDFoeoJsIDqmXJGCQIsoAQsDlVPgAVUz5QzShBgASVgcah6AiygeqacUYIACygBi0PVE2AB1TPljBIEWEAJWByqngALqJ4pZ5QgwAJKwOJQ9QRYQPVMOaMEARZQAhaHqifAAqpnyhklCLCAErA4VD0BFlA9U84oQYAFlIDFoeoJsIDqmXJGCQIsoAQsDlVPgAVUz5QzShD4P0zFCwIU2qWZAAAAAElFTkSuQmCC</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="Sprite" idx="1" x="1.0564636631188478" y="-0.5801222549241629" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,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="20" y="20"><block s="doSetVar"><l>List #1</l><custom-block s="Unsorted list of %s numbers"><l>20</l></custom-block></block></script><script x="20" y="63"><block s="doSetVar"><l>List #1</l><custom-block s="Sorted list of %s numbers repeats %b"><l>100</l><l><bool>false</bool></l></custom-block></block></script><script x="20" y="106"><custom-block s="Linear search for %s in list %l"><l>42</l><block var="List #1"/></custom-block></script><script x="20" y="140"><custom-block s="Binary search for %s in sorted list %l"><l>27</l><block var="List #1"/></custom-block></script><script x="20" y="174"><custom-block s="Are items in list %l distinct?"><block var="List #1"/></custom-block></script><script x="20" y="208"><custom-block s="Are items on sorted list %l distinct?"><block var="List #1"/></custom-block></script><script x="20" y="242"><custom-block s="time function %repRing"><block s="reifyReporter"><script></script><list></list></block></custom-block></script><script x="20" y="277"><custom-block s="Sum of numbers from 1 to %s #1"><l>400</l></custom-block></script><script x="20" y="310"><custom-block s="Sum of numbers from 1 to %s #2"><l>400</l></custom-block></script><script x="20" y="343"><custom-block s="Sum of numbers from 1 to %s #3"><l>100</l></custom-block></script><script x="20" y="376"><custom-block s="Find item %s in sorted list with repeats"><l></l></custom-block></script></scripts></sprite><watcher var="counter" style="normal" x="14.378255208331439" y="452.91504193815103" color="243,118,29" hidden="true"/><watcher var="sum of numbers" style="normal" x="325" y="10" color="243,118,29"/><watcher var="List #1" style="normal" x="29.28583592986388" y="45.23262043316231" color="243,118,29" extX="80" extY="70"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Unsorted list of %&apos;n&apos; numbers" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>List</l></list></block><block s="doSetVar"><l>List</l><block s="reportNewList"><list></list></block></block><block s="doRepeat"><block var="n"/><script><block s="doAddToList"><block s="reportRandom"><l>1</l><block var="n"/></block><block var="List"/></block></script></block><block s="doReport"><block var="List"/></block></script></block-definition><block-definition s="Sorted list of %&apos;n&apos; numbers repeats %&apos;repeat&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%b"></input></inputs><script><block s="doDeclareVariables"><list><l>Output</l><l>item</l><l>Start</l></list></block><block s="doIfElse"><block var="repeat"/><script><block s="doSetVar"><l>Start</l><l>0</l></block></script><script><block s="doSetVar"><l>Start</l><l>1</l></block></script></block><block s="doSetVar"><l>Output</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>item</l><l>1</l></block><block s="doRepeat"><block var="n"/><script><block s="doChangeVar"><l>item</l><block s="reportRandom"><block var="Start"/><l>4</l></block></block><block s="doAddToList"><block var="item"/><block var="Output"/></block></script></block><block s="doReport"><block var="Output"/></block></script></block-definition><block-definition s="label %&apos;text&apos; of size %&apos;size&apos;" type="command" category="pen"><comment x="0" y="0" w="90" collapsed="false">LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment><header></header><code></code><translations></translations><inputs><input type="%txt">Hello!</input><input type="%n">12</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>text</l><l>size</l></list><l>var stage = this.parentThatIsA(StageMorph),&#xD;    context = stage.penTrails().getContext(&apos;2d&apos;),&#xD;    rotation = radians(this.direction() - 90),&#xD;    trans = new Point(&#xD;      this.center().x - stage.left(),&#xD;      this.center().y - stage.top()&#xD;    ),&#xD;    isWarped = this.Warped,&#xD;    len,&#xD;    pos;&#xD;&#xD;if (isWarped) {endWarp(); }&#xD;context.save();&#xD;context.font = size + &apos;px monospace&apos;;&#xD;context.textAlign = &apos;left&apos;;&#xD;context.textBaseline = &apos;alphabetic&apos;;&#xD;context.fillStyle = this.color.toString();&#xD;len = context.measureText(text).width;&#xD;trans = trans.multiplyBy(1 / stage.scale);&#xD;context.translate(trans.x, trans.y);&#xD;context.rotate(rotation);&#xD;context.fillText(text, 0, 0);&#xD;context.translate(-trans.x, -trans.y);&#xD;context.restore();&#xD;pos = new Point(&#xD;  len * Math.sin(radians(this.direction())),&#xD;  len * Math.cos(radians(this.direction())));&#xD;pos = pos.add(new Point(this.xPosition(), this.yPosition()));&#xD;this.gotoXY(pos.x, pos.y, false);&#xD;this.changed();&#xD;if (isWarped) {this.startWarp(); }&#xD;stage.changed();</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="map %&apos;function&apos; over %&apos;lists&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%mult%l"></input></inputs><script><block s="doWarp"><script><block s="doDeclareVariables"><list><l>mapone</l><l>mapmany</l></list></block><block s="doSetVar"><l>mapone</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="evaluate"><block var="mapone"/><list><block s="reportCDR"><block var="data"/></block></list></block></block></block></script><list><l>data</l></list></block></block><block s="doSetVar"><l>mapmany</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportListItem"><l>1</l><block var="data lists"/></block></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></block><block s="evaluate"><block var="mapmany"/><list><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportCDR"><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></list></block></block></block></script><list><l>data lists</l></list></block></block><block s="doIfElse"><custom-block s="empty? %l"><block s="reportCDR"><block var="lists"/></block></custom-block><script><block s="doReport"><block s="evaluate"><block var="mapone"/><list><block s="reportListItem"><l>1</l><block var="lists"/></block></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="mapmany"/><list><block var="lists"/></list></block></block></script></block></script></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block></block></script></block-definition><block-definition s="keep items such that %&apos;pred&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doIfElse"><block s="evaluate"><block var="pred"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></script></block></script></block></script></block-definition><block-definition s="combine with %&apos;function&apos; items of %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="data"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="data"/></block></block></script></block><block s="doReport"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="combine with %repRing items of %l"><block var="function"/><block s="reportCDR"><block var="data"/></block></custom-block></list></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doReport"><block s="evaluate"><block var="true"/><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="false"/><list></list></block></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportGreaterThan"><block var="start"/><block var="end"/></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportLessThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportGreaterThan"><block var="i"/><block var="end"/></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="words"/></block></custom-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></script><scripts><script x="229.000003" y="196.77778077777774"><block s="reportJoinWords"><list><l></l><l></l></list></block></script></scripts></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doRun"><block var="action"/><list></list></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input></inputs><script><block s="doRun"><block var="cont"/><list></list></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;value&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doReport"><block s="evaluate"><block var="value"/><list></list></block></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;tag&apos; %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input><input type="%s"></input></inputs><script><block s="doRun"><block var="tag"/><list><block var="value"/></list></block></script></block-definition><block-definition s="for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doUntil"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block></script></block-definition><block-definition s="tell %&apos;sprite&apos; to %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%cs"></input></inputs><script><block s="doRun"><block s="reportAttributeOf"><block var="action"/><block var="sprite"/></block><list></list></block></script></block-definition><block-definition s="ask %&apos;sprite&apos; for %&apos;expression&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%repRing"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportAttributeOf"><block var="expression"/><block var="sprite"/></block><list></list></block></block></script></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block></script></block-definition><block-definition s="string %&apos;big&apos; contains %&apos;small&apos; ?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%txt"></input></inputs><script><block s="doIfElse"><block s="reportLessThan"><block s="evaluate"><block s="reportJSFunction"><list><l>big</l><l>small</l></list><l>return big.toLowerCase().indexOf(small.toLowerCase());</l></block><list><block var="big"/><block var="small"/></list></block><l>0</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block-definition><block-definition s="Linear search for %&apos;number&apos; in list %&apos;list&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%l"></input></inputs><script><block s="doSetVar"><l>counter</l><l>0</l></block><block s="doForEach"><l>item</l><block var="list"/><script><block s="doChangeVar"><l>counter</l><l>1</l></block><block s="doIf"><block s="reportEquals"><block var="number"/><block var="item"/></block><script><block s="doReport"><block var="counter"/></block></script></block></script></block><block s="doReport"><l>This item is not in the list.</l></block></script></block-definition><block-definition s="Binary search for %&apos;number&apos; in sorted list %&apos;list&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>right</l><l>left</l><l>mid</l></list></block><block s="doSetVar"><l>right</l><block s="reportListLength"><block var="list"/></block></block><block s="doSetVar"><l>left</l><l>1</l></block><block s="doUntil"><block s="reportLessThan"><block var="right"/><block var="left"/></block><script><block s="doSetVar"><l>mid</l><block s="reportSum"><block s="reportMonadic"><l><option>floor</option></l><block s="reportQuotient"><block s="reportDifference"><block var="right"/><block var="left"/></block><l>2</l></block></block><block var="left"/></block></block><block s="doIf"><block s="reportEquals"><block s="reportListItem"><block var="mid"/><block var="list"/></block><block var="number"/></block><script><block s="doUntil"><block s="reportNot"><block s="reportEquals"><block s="reportListItem"><block var="mid"/><block var="list"/></block><block var="number"/></block></block><script><block s="doChangeVar"><l>mid</l><l>-1</l></block></script></block><block s="doReport"><block s="reportSum"><block var="mid"/><l>1</l></block></block></script><comment w="90" collapsed="false">Bonus included.</comment></block><block s="doIfElse"><block s="reportGreaterThan"><block s="reportListItem"><block var="mid"/><block var="list"/></block><block var="number"/></block><script><block s="doSetVar"><l>right</l><block s="reportDifference"><block var="mid"/><l>1</l></block></block></script><script><block s="doSetVar"><l>left</l><block s="reportSum"><block var="mid"/><l>1</l></block></block></script></block></script></block><block s="doReport"><l>this number is not in the list.</l></block></script></block-definition><block-definition s="Are items in list %&apos;list&apos; distinct?" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doFor"><l>a</l><l>1</l><block s="reportListLength"><block var="list"/></block><script><block s="doIf"><block s="reportLessThan"><block s="reportSum"><block var="a"/><l>1</l></block><block s="reportListLength"><block var="list"/></block></block><script><block s="doFor"><l>b</l><block s="reportSum"><block var="a"/><l>1</l></block><block s="reportListLength"><block var="list"/></block><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><block var="a"/><block var="list"/></block><block s="reportListItem"><block var="b"/><block var="list"/></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block></script></block></script></block><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block-definition><block-definition s="Are the items of sorted list %&apos;y&apos; distinct?" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><block s="reportDifference"><block s="reportListLength"><block var="y"/></block><l>1</l></block><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><block var="i"/><block var="y"/></block><block s="reportListItem"><block s="reportSum"><block var="i"/><l>1</l></block><block var="y"/></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></custom-block><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block-definition><block-definition s="Are items on sorted list %&apos;list&apos; distinct?" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><block s="reportDifference"><block s="reportListLength"><block var="list"/></block><l>1</l></block><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><block var="i"/><block var="list"/></block><block s="reportListItem"><block s="reportSum"><block var="i"/><l>1</l></block><block var="list"/></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></custom-block><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block-definition><block-definition s="Sum of numbers from 1 to %&apos;input&apos; #1" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doSetVar"><l>sum of numbers</l><l>0</l></block><block s="doFor"><l>i</l><l>1</l><block var="input"/><script><block s="doChangeVar"><l>sum of numbers</l><block var="i"/></block></script></block><block s="doReport"><block var="sum of numbers"/></block></script></block-definition><block-definition s="Sum of numbers from 1 to %&apos;input&apos; #2" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doSetVar"><l>sum of numbers</l><block s="reportNewList"><list></list></block></block><block s="doForEach"><l>item</l><block s="reportNumbers"><l>1</l><block var="input"/></block><script><block s="doChangeVar"><l>sum of numbers</l><block s="reportListItem"><block var="item"/><block s="reportNumbers"><l>1</l><block var="input"/></block></block></block></script></block><block s="doReport"><block var="sum of numbers"/></block></script></block-definition><block-definition s="Sum of numbers from 1 to %&apos;input&apos; #3" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportQuotient"><block s="reportProduct"><block s="reportSum"><l>1</l><block var="input"/></block><block var="input"/></block><l>2</l></block></block></script></block-definition><block-definition s="Find item %&apos;input&apos; in sorted list with repeats" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportRound"><block s="reportQuotient"><block var="input"/><l>2</l></block></block></block></script></block-definition><block-definition s="time function %&apos;function&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input></inputs><script><block s="doDeclareVariables"><list><l>start time</l></list></block><block s="doSetVar"><l>start time</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><custom-block s="ignore %s"><block s="evaluate"><block var="function"/><list></list></block></custom-block><block s="doReport"><block s="reportDifference"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block var="start time"/></block></block></script></block-definition><block-definition s="ignore %&apos;result&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition></blocks><variables><variable name="List #1"><list struct="atomic" id="1064">5,6,8,12,14,18,19,23,27,29,32,35,38,42,43,46,47,51,52,55,56,57,61,63,65,68,69,72,74,76,80,83,86,88,90,92,96,97,100,104,108,110,111,114,116,118,119,122,126,129,131,132,134,138,141,144,148,152,153,155,159,163,165,168,172,174,175,178,182,185,189,193,197,198,201,203,204,208,211,213,217,218,220,224,226,228,232,235,237,239,240,241,245,248,249,253,256,258,261,263</list></variable><variable name="counter"><l>10</l></variable><variable name="sum of numbers"><l>80200</l></variable></variables></project><media name="U5L1 - List generator blocks" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>