<snapdata remixID="10250492"><project name="U5L2p2-Simulation-Covid" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAFUUlEQVR4Xu3dz0tldRjH8c/V0VkIuWiURg1/4I9ELaQ0zUmRCC1c1aplkajQfqpFIbQNwoVu+gvCZYQGIqikoSjaQk2FFLQUQZGE5DreOCeCYIK5POeBL1ffdyXMfZ7v8DrvOXeOLkxlMpmMeCEQSCBFgIHkOTYWIEBCCCpAgEH5OZwAaSCoAAEG5edwAqSBoAIEGJSfwwmQBoIKEGBQfg4nQBoIKkCAQfk5nABpIKgAAQbl53ACpIGgAgQYlJ/DCZAGggoQYFB+DidAGggqQIBB+TmcAGkgqAABBuXncAKkgaACBBiUn8MJkAaCChBgUH4OJ0AaCCpAgEH5OZwAaSCoAAEG5edwAqSBoAIEGJSfwwmQBoIKEGBQfg4nQBoIKkCAQfk5nABpIKgAAQbl53ACpIGgAgQYlJ/DCZAGggoQYFB+DidAGggqQIAO/Dc3N9rd3dXh4WHW21KplCorK1VdXZ31zG18IwEmvKpHR0fa3t6OYyopKcl6W/Qr+k5PT7W/v6/29nYVFRVlPXub3kiACa7m9fW15ufn1d3drfz8fNOmq6srLS0tqaenxzSf60MEmOAKbm1tKYqwubk5wRbFAXZ0dCTakavDBJjgys3Ozqqqqirx/+M2NzfV2NiY4G+Su6MEmODa/RvgxcWFhoeHtbi4qLy8vPjr8fHxePPIyIg2NjY0Njam6MFjb29Po6Ojqqio0NTUVPweAkxwEe7y6H/vgFFoExMTMUdbW5uWl5fjrxsaGtTS0qLJyUkdHBxoenpag4OD6u/vJ0B+X3Cyfz7/F2BxcbFqa2s1MzMTL6+rq9Pl5aV2dnY0MDCgoaGh+A5JgP/Y8xGcoMHoLhcFV19fn2CLtLa2ptbW1kQ7cnWYABNcuZOTE0VPwtG3YZK8ojtpb29vkhU5O0uACS/dysqK0um0Ojs7TZsWFhZUVlammpoa03yuDxGgwxWMHi6ip9voFd3Joqfi1dVVRT/teNarqalJpaWlz3rbrf1zAnS6tOvr63FIx8fHOj8/V1dXlwoKCpy23941BJjg2n7/S0avVUolRTeam5uLvwdYXl4ePwXzyk6AALNzeupd0YfrW1/dqO+VtPpe3NTZ2Vl81yssLDRuvJtjBGi87t/8eK0ffv5TDx/k67N3M3qp8jnjprs9RoDG6//ht2n99vs9VT98oo+6pUf194yb7vYYARqv/+ff/aWffr2vxvK0Pu5J6dUaHjgslARoUZP0JCO9+emh+tof6Mv37xu3MEaAxgaih5A3Hu/rnddf0BfvEaCRkZ8FW+GiAD/4+g89evl5ffI2H79WR+6AVjnmXAQI0IWRJVYBArTKMeciQIAujCyxChCgVY45FwECdGFkiVWAAK1yzLkIEKALI0usAgRolWPORYAAXRhZYhUgQKsccy4CBOjCyBKrAAFa5ZhzESBAF0aWWAUI0CrHnIsAAbowssQqQIBWOeZcBAjQhZElVgECtMox5yJAgC6MLLEKEKBVjjkXAQJ0YWSJVYAArXLMuQgQoAsjS6wCBGiVY85FgABdGFliFSBAqxxzLgIE6MLIEqsAAVrlmHMRIEAXRpZYBQjQKseciwABujCyxCpAgFY55lwECNCFkSVWAQK0yjHnIkCALowssQoQoFWOORcBAnRhZIlVgACtcsy5CBCgCyNLrAIEaJVjzkWAAF0YWWIVIECrHHMuAgTowsgSqwABWuWYcxEgQBdGllgFCNAqx5yLAAG6MLLEKkCAVjnmXAQI0IWRJVYBArTKMeciQIAujCyxChCgVY45FwECdGFkiVWAAK1yzLkIEKALI0usAn8Dg+K8tzBW7DQAAAAASUVORK5CYII=</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,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="-0.9999999999997726" y="-0.9999999999999716" heading="90" scale="0.5" volume="100" pan="0" rotation="0" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="8"><costumes><list id="9"><item><costume name="well" center-x="12" center-y="26" image="data:image/png;base64,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" id="10"/></item><item><costume name="sick" center-x="12" center-y="26" image="data:image/png;base64,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" id="11"/></item></list></costumes><sounds><list struct="atomic" id="12"></list></sounds><blocks></blocks><variables><variable name="infected?"><bool>false</bool></variable></variables><scripts><comment x="20" y="10" w="392.6666666666667" collapsed="false">5.2.2.1:  The most obvious hypothesis is that a larger population takes longer for everyone to get sick, supposing the rate of infection doesn&apos;t change.  But in fact the rate of infection /does/ change for a larger population in the same area, which is why low-density businesses such as hairdressers could reopen sooner than high-density ones such as churches.&#xD;&#xD;5.2.2.2.  If the space gets bigger without increasing the population, the infection rate will probably go down.</comment><script x="20" y="1191"><custom-block s="average time for disease spread with population size: %n"><l>100</l><comment w="53.333333333333336" collapsed="true">5.2.2.5</comment></custom-block></script><comment x="20" y="1221.3333333333333" w="395.3333333333333" collapsed="false">Note the technique of mapping over the numbers from 1 to 10, without actually using the selected number, to call the simulator ten times.  It&apos;ll make us very happy if your students can write this HOF-based solution readily by this point in the course, although it&apos;s also fine if they remember that they have an AVERAGE block in their math block library.</comment><comment x="20" y="1306.6666666666667" w="390.6666666666667" collapsed="false">5.2.2.6:  Students will get different numbers depending on the speed of their computers. We get 10.76, 4.78, 2.94, and 1.60 seconds.  The effect of population density on the rate of infection turns out to be more important than the fact that more people means more infections needed to include everyone.  It&apos;s tempting to say that time ≈ 450/size, but if you multiply it out, the speedup for larger populations is a bit greater than that formula would imply.&#xD;&#xD;5.2.2.7:  The best way to investigate such questions is to reprogram the simulation and see how varying various parameters affects the result.  If only some encounters lead to infection, does everyone still eventually get sick?  What if people recover after five cycles?  What if some fraction of the population is naturally immune?  And so on.</comment><script x="20" y="148"><custom-block s="simulate disease, population: %n percent infected: %n speed: %n"><l>100</l><l>5</l><l>2</l><comment w="53.333333333333336" collapsed="true">5.2.2.3</comment></custom-block></script><script x="22" y="182.66666666666669"><block s="receiveOnClone"><comment w="53.333333333333336" collapsed="true">5.2.2.3</comment></block><custom-block s="initialize clone"></custom-block><block s="doWaitUntil"><block var="running"/></block><block s="doUntil"><block s="reportEquals"><block var="number infected"/><block var="population"/></block><script><block s="forward"><block var="speed"/></block><block s="bounceOffEdge"></block><block s="doWarp"><script><block s="doIf"><custom-block s="touching infected person?"></custom-block><script><block s="doIf"><block s="reportNot"><block var="infected?"/></block><script><block s="doChangeVar"><l>number infected</l><l>1</l></block></script></block><block s="doSetVar"><l>infected?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSwitchToCostume"><l>sick</l></block></script></block></script></block></script></block></script><script x="23" y="501"><block s="receiveMessage"><l>vanish</l><comment w="53.333333333333336" collapsed="true">5.2.2.3</comment></block><block s="removeClone"></block></script><script x="26.333333333333343" y="569"><block s="receiveGo"><comment w="53.333333333333336" collapsed="true">5.2.2.3</comment></block><block s="bubble"><l></l></block><block s="bubble"><custom-block s="simulate disease, population: %n percent infected: %n speed: %n"><l>100</l><l>5</l><l>2</l></custom-block></block><block s="show"></block></script><comment x="22.666666666666657" y="690.3333333333334" w="395.3333333333333" collapsed="false">There are many ways to program this, of course, and our solution isn&apos;t necessarily the most elegant possible.  Bugs in our first version:&#xD;&#xD;The clones don&apos;t automatically disappear when the block reports the elapsed time.  If this were a command instead of a reporter, it could just end with a STOP ALL, which would delete all the clones at once.  Instead a WARP is required to avoid seeing them disappear one by one.&#xD;&#xD;The first version of this block got faster as more clones were infected, because only healthy clones have to detect having touched an infected one.  To fix that, this version redundantly checks neighbors for infection even for clones that are already infected.&#xD;&#xD;It took a while to figure out that in this visual simulation, the effective population density (which is what determines the speed at which the entire population becomes infected) depends on the size of the sprite&apos;s costume!  This version sets the sprite size to 50%, which gives a much more reasonable spread of times than full-size sprites.&#xD;&#xD;This isn&apos;t a bug, but note the use of MY NEIGHBORS, so that only nearby clones are tested for touching.&#xD;&#xD;Also note that INFECTED? is an instance (for this sprite only) variable, so that each clone has its own version. &#xD; </comment><comment x="20.666666666666657" y="1014.3333333333333" w="394.6666666666667" collapsed="false">5.2.2.4:  The most obviously unrealistic assumption is that an infected person remains infected forever, neither dying nor getting well.  This makes our simulation useless in a real situation; one of the big unanswered questions as we write this is the death rate among people who get infected.  Most likely there are many people who get infected but have no symptoms or easily managed (mild) symptoms and so don&apos;t show up at the hospital for treatment.  As a result, we know only the rate at which people with serious symptoms die.  Another very important simplifying assumption is that everyone who comes in contact with an infected person is infected.  In reality, not only is there a less-than-100% rate, but the rate differs in different populations; old people, for example, are more at risk.  More answers are possible.</comment></scripts></sprite><watcher scope="Sprite" var="infected?" style="normal" x="9.999999999999545" y="10.000000000000007" color="243,118,29" hidden="true"/><watcher var="number infected" style="normal" x="9.999999999999545" y="40.000001999999995" color="243,118,29" hidden="true"/><watcher var="running" style="normal" x="9.999999999999545" y="160.00000999999995" color="243,118,29" hidden="true"/><watcher var="start time" style="normal" x="9.999999999999545" y="190.00001199999994" color="243,118,29" hidden="true"/><watcher var="elapsed time" style="normal" x="9.999999999999545" y="220.00001400000002" color="243,118,29" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="simulate disease, population: %&apos;population&apos; percent infected: %&apos;percent initially infected&apos; speed: %&apos;speed&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input></inputs><script><custom-block s="initialize simulation %n %n %n"><block var="population"/><block var="percent initially infected"/><block var="speed"/></custom-block><block s="show"></block><block s="doRepeat"><block var="population"/><script><block s="createClone"><l><option>myself</option></l></block></script></block><block s="hide"></block><block s="doSetVar"><l>start time</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="doSetVar"><l>running</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doWaitUntil"><block s="reportEquals"><block var="number infected"/><block var="population"/></block></block><block s="doSetVar"><l>elapsed time</l><block s="reportQuotient"><block s="reportDifference"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block var="start time"/></block><l>1000</l></block></block><block s="doBroadcast"><l>vanish</l></block><block s="doReport"><block var="elapsed time"/></block></script></block-definition><block-definition s="average time for disease spread with population size: %&apos;size&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input></inputs><script><block s="bubble"><l></l></block><block s="doReport"><block s="reportQuotient"><block s="reportCombine"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="simulate disease, population: %n percent infected: %n speed: %n"><block var="size"/><l>10</l><l>2</l></custom-block></autolambda><list></list></block><block s="reportNumbers"><l>1</l><l>10</l></block></block><block s="reifyReporter"><autolambda><block s="reportSum"><l></l><l></l></block></autolambda><list></list></block></block><l>10</l></block></block></script></block-definition><block-definition s="initialize clone" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportLessThan"><block var="number infected"/><block s="reportProduct"><block var="population"/><block s="reportQuotient"><block var="percent initially infected"/><l>100</l></block></block></block><script><block s="doChangeVar"><l>number infected</l><l>1</l></block><block s="doSetVar"><l>infected?</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSwitchToCostume"><l>sick</l></block></script></block><block s="doGotoObject"><l><option>random position</option></l></block><block s="doFaceTowards"><l><option>random position</option></l></block></script></block-definition><block-definition s="touching infected person?" type="predicate" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doForEach"><l>item</l><block s="reportGet"><l><option>neighbors</option></l></block><script><block s="doIf"><block s="reportAnd"><block s="reportNot"><block var="infected?"/></block><block s="reportAnd"><block s="reportTouchingObject"><block var="item"/></block><block s="reportAskFor"><block var="item"/><block s="reifyReporter"><autolambda><block var="infected?"/></autolambda><list></list></block><list></list></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition><block-definition s="initialize simulation %&apos;pop&apos; %&apos;inf&apos; %&apos;sp&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input></inputs><script><block s="doSetVar"><l>population</l><block var="pop"/><comment w="216.66666666666666" collapsed="true">Make global so &quot;when I start&quot; can use it.</comment></block><block s="doSetVar"><l>percent initially infected</l><block var="inf"/></block><block s="doSetVar"><l>speed</l><block var="sp"/></block><block s="doSetVar"><l>infected?</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doSetVar"><l>running</l><block s="reportBoolean"><l><bool>false</bool></l></block></block><block s="doSetVar"><l>number infected</l><l>0</l></block><block s="doSwitchToCostume"><l>well</l></block><block s="setScale"><l>50</l></block></script></block-definition></blocks><variables><variable name="number infected"><l>100</l></variable><variable name="running"><bool>true</bool></variable><variable name="start time"><l>1616100959235</l></variable><variable name="elapsed time"><l>12.931</l></variable><variable name="population"><l>100</l></variable><variable name="percent initially infected"><l>5</l></variable><variable name="speed"><l>2</l></variable></variables></project><media name="U5L2p2-Simulation-Covid" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>