<snapdata remixID="12195111"><project name="Better Timer Blocks" app="Snap! 8.1, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAABO1JREFUeF7t2TFIXXcUx/HzQERpRVyktgbz1OLmVoKIqGTJUKhEi+3SwUUcOyh1EAoVkqXq0EmKg9ipWxHiIogKrYiIQwXFJSASpGktlIhS+sq7rTd5ea2G3zvllNxvlqDcc/6+z/tyLz5zhUKhYPxDIEggR4BB8hybCBAgIYQK/GOAu7u7tra2ZsWncy6XS3/ASr+uqqqy3t5e6+zsDH3RHP7/ESgLcGVlxdrb21/5J/z6i0/t3Z+/v/H6W3fuWetHnyfX7ezs2PDw8I0zXPD6C5QEuLW1ZXV1demd7/z83Gpra9Ovr+6AL/7/5MFdu/NOdYlUrv4tK/z6pEzv8SePkjtqcb6+vt6am5tff2Fe4bUCJQFOTU3Z4OBgMjA/P29jY2NWvCMuLi5aQ0ODDQ0N2dLSku3v79vm5mZy3S9f3rP33n4e4JsPH9sfp0f2bOZu2cFHH3+Xfq8Y++joKG9PxgVKApybm7Ourq6E5ODgwFpaWmx7e9tqamqsqanJlpeXraOjw6anp211dTW57tlXH5QE+MbkD1a8A/722e0y2h/vf5t+7/j4OI094+9Bpl9+SYCnp6d2eHiYPnKrq6vt8vKy5BFcfCQXH81Xj9Lf5z8sCfA6zd33v0nnenp6Mg3Pi/9LoOyXkOKjt62t7ZV98vm8tebzN17/09Ontre3l1x3dnbG3e9GsWxc8K+fA/5XfyB58WOdbBDzKq8T4INo+ggVIMBQfg4nQBoIFSDAUH4OJ0AaCBUgwFB+DidAGggVIMBQfg4nQBoIFSDAUH4OJ0AaCBUgwFB+DidAGggVIMBQfg4nQBoIFSDAUH4OJ0AaCBUgwFB+DidAGggVIMBQfg4nQBoIFSDAUH4OJ0AaCBUgwFB+DidAGggVIMBQfg4nQBoIFSDAUH4OJ0AaCBUgwFB+DidAGggVIMBQfg4nQBoIFSDAUH4OJ0AaCBUgwFB+DidAGggVIMBQfg4nQBoIFSDAUH4OJ0AaCBUgwFB+DidAGggVIMBQfg4nQBoIFSDAUH4OJ0CxgZGREVtYWBCnGbsSIECxhdnZWVtfX0+mLy4urL+/38bHx8Vt2R0jwAre++7ubmtsbCzbcHJyYpOTkzYwMFDB9myMEmAF7zMBVoD39ygBioYzMzO2sbGRPoL7+vpsYmJC3JbdMQIU33t+CRHhXhojQB9HtogCBCjCMeYjQIA+jmwRBQhQhGPMR4AAfRzZIgoQoAjHmI8AAfo4skUUIEARjjEfAQL0cWSLKECAIhxjPgIE6OPIFlGAAEU4xnwECNDHkS2iAAGKcIz5CBCgjyNbRAECFOEY8xEgQB9HtogCBCjCMeYjQIA+jmwRBQhQhGPMR4AAfRzZIgoQoAjHmI8AAfo4skUUIEARjjEfAQL0cWSLKECAIhxjPgIE6OPIFlGAAEU4xnwECNDHkS2iAAGKcIz5CBCgjyNbRAECFOEY8xEgQB9HtogCBCjCMeYjQIA+jmwRBQhQhGPMR4AAfRzZIgoQoAjHmI8AAfo4skUUIEARjjEfAQL0cWSLKECAIhxjPgIE6OPIFlGAAEU4xnwECNDHkS2iAAGKcIz5CBCgjyNbRAECFOEY8xEgQB9HtogCBCjCMeYjQIA+jmwRBQhQhGPMR4AAfRzZIgoQoAjHmI8AAfo4skUUIEARjjEfAQL0cWSLKPAnnPWnt3UUDP0AAAAASUVORK5CYII=</thumbnail><scenes select="1"><scene name="Better Timer Blocks"><notes></notes><hidden> reportJSFunction</hidden><headers></headers><code></code><blocks><block-definition s="ignore %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="%&apos;option&apos; timer" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">reset<options>pause&#xD;resume&#xD;reset&#xD;stop</options></input></inputs><script><block s="doDeclareVariables"><list><l>procedure</l></list></block><block s="doSetVar"><l>procedure</l><block s="reportIfElse"><block s="reportIsIdentical"><block s="reportObject"><l><option>myself</option></l></block><block s="reportObject"><l>Stage</l></block></block><block var="timer procedure"/><block s="reportAttributeOf"><l>timer procedure</l><l>Stage</l></block></block></block><block s="doIf"><block s="reportIsA"><block var="procedure"/><l><option>command</option></l></block><script><custom-block s="ignore %s"><block s="evaluate"><block var="procedure"/><list><block s="reportJoinWords"><list><block s="reportListItem"><block s="reportListIndex"><block var="option"/><block s="reportNewList"><list><l>pause</l><l>resume</l><l>reset</l><l>stop</l></list></block></block><block s="reportNewList"><list><l>pause</l><l>resume</l><l>start</l><l>stop</l></list></block></block><l> now</l></list></block></list></block></custom-block></script></block></script></block-definition><block-definition s="%&apos;option&apos; timer $nl in %&apos;secs&apos; seconds" type="command" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true">change<options>change&#xD;set</options></input><input type="%n">5</input></inputs><script><block s="doDeclareVariables"><list><l>procedure</l></list></block><block s="doSetVar"><l>procedure</l><block s="reportIfElse"><block s="reportIsIdentical"><block s="reportObject"><l><option>myself</option></l></block><block s="reportObject"><l>Stage</l></block></block><block var="timer procedure"/><block s="reportAttributeOf"><l>timer procedure</l><l>Stage</l></block></block></block><block s="doIf"><block s="reportIsA"><block var="procedure"/><l><option>command</option></l></block><script><custom-block s="ignore %s"><block s="evaluate"><block var="procedure"/><list><block s="reportJoinWords"><list><block var="option"/><l> timer</l></list></block><block s="reportNewList"><list><block var="secs"/></list></block></list></block></custom-block></script></block></script></block-definition></blocks><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="115"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==</pentrails><costumes><list struct="atomic" id="116"></list></costumes><sounds><list struct="atomic" id="117"></list></sounds><variables><variable name="timer procedure" transient="true"/></variables><blocks><block-definition s="new timer ring" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>state</l><l>start time</l><l>pause time</l><l>resume time</l></list></block><block s="doSetVar"><l>start time</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="doSetVar"><l>pause time</l><block var="start time"/></block><block s="doSetVar"><l>resume time</l><block var="pause time"/></block><block s="doSetVar"><l>state</l><l>paused</l></block><block s="doReport"><block s="reifyScript"><script><block s="doDeclareVariables"><list><l>current time</l></list></block><block s="doSetVar"><l>current time</l><block s="reportIfElse"><block s="reportIsIdentical"><block var="state"/><l>paused</l></block><block s="reportDifference"><block var="pause time"/><block var="resume time"/></block><block s="reportDifference"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block var="resume time"/></block></block></block><block s="doIf"><block s="reportIsIdentical"><block var="message"/><l>start now</l></block><script><block s="doSetVar"><l>start time</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="doSetVar"><l>pause time</l><block var="start time"/></block><block s="doSetVar"><l>resume time</l><block var="pause time"/></block><block s="doSetVar"><l>resume time</l><block s="reportVariadicSum"><list><block s="reportDifference"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block var="pause time"/></block><block var="resume time"/></list></block></block><block s="doSetVar"><l>state</l><l>running</l></block></script></block><block s="doIf"><block s="reportIsIdentical"><block var="message"/><l>pause now</l></block><script><block s="doIf"><block s="reportIsIdentical"><block var="state"/><l>running</l></block><script><block s="doSetVar"><l>pause time</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="doSetVar"><l>state</l><l>paused</l></block></script></block></script></block><block s="doIf"><block s="reportIsIdentical"><block var="message"/><l>resume now</l></block><script><block s="doIf"><block s="reportIsIdentical"><block var="state"/><l>paused</l></block><script><block s="doSetVar"><l>resume time</l><block s="reportVariadicSum"><list><block s="reportDifference"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block var="pause time"/></block><block var="resume time"/></list></block></block><block s="doSetVar"><l>state</l><l>running</l></block></script></block></script></block><block s="doIf"><block s="reportIsIdentical"><block var="message"/><l>stop now</l></block><script><block s="doSetVar"><l>start time</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="doSetVar"><l>pause time</l><block var="start time"/></block><block s="doSetVar"><l>resume time</l><block var="pause time"/></block><block s="doSetVar"><l>state</l><l>paused</l></block></script></block><block s="doIf"><block s="reportIsIdentical"><block var="message"/><l>change timer</l></block><script><block s="doIf"><block s="reportIsA"><block var="inputs"/><l><option>list</option></l></block><script><block s="doIf"><block s="reportNot"><block s="reportListIsEmpty"><block var="inputs"/></block></block><script><block s="doIfElse"><block s="reportGreaterThan"><block s="reportVariadicSum"><list><block var="current time"/><block s="reportVariadicProduct"><list><block s="reportListItem"><l>1</l><block var="inputs"/></block><l>1000</l></list></block></list></block><l>0</l></block><script><block s="doSetVar"><l>resume time</l><block s="reportDifference"><block var="resume time"/><block s="reportVariadicProduct"><list><block s="reportRound"><block s="reportVariadicProduct"><list><block s="reportMonadic"><l><option>abs</option></l><block s="reportListItem"><l>1</l><block var="inputs"/></block></block><l>1000</l></list></block></block><block s="reportMonadic"><l><option>sign</option></l><block s="reportListItem"><l>1</l><block var="inputs"/></block></block></list></block></block></block></script><script><block s="doSetVar"><l>pause time</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="doSetVar"><l>resume time</l><block var="pause time"/></block></script></block><block s="doSetVar"><l>current time</l><block s="reportIfElse"><block s="reportIsIdentical"><block var="state"/><l>paused</l></block><block s="reportDifference"><block var="pause time"/><block var="resume time"/></block><block s="reportDifference"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block var="resume time"/></block></block></block></script></block></script></block></script></block><block s="doIf"><block s="reportIsIdentical"><block var="message"/><l>set timer</l></block><script><block s="doIf"><block s="reportIsA"><block var="inputs"/><l><option>list</option></l></block><script><block s="doIf"><block s="reportNot"><block s="reportListIsEmpty"><block var="inputs"/></block></block><script><block s="doSetVar"><l>pause time</l><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="doSetVar"><l>resume time</l><block s="reportDifference"><block var="pause time"/><block s="reportVariadicMax"><list><l>0</l><block s="reportVariadicProduct"><list><block s="reportRound"><block s="reportVariadicProduct"><list><block s="reportMonadic"><l><option>abs</option></l><block s="reportListItem"><l>1</l><block var="inputs"/></block></block><l>1000</l></list></block></block><block s="reportMonadic"><l><option>sign</option></l><block s="reportListItem"><l>1</l><block var="inputs"/></block></block></list></block></list></block></block></block><block s="doSetVar"><l>current time</l><block s="reportIfElse"><block s="reportIsIdentical"><block var="state"/><l>paused</l></block><block s="reportDifference"><block var="pause time"/><block var="resume time"/></block><block s="reportDifference"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block var="resume time"/></block></block></block></script></block></script></block></script></block><block s="doIf"><block s="reportIsIdentical"><block var="message"/><l>to string</l></block><script><block s="doReport"><block s="reportJoinWords"><list><l>Timer </l><block var="state"/><l> with </l><block var="current time"/><l> milliseconds from the start.</l></list></block></block></script></block><block s="doIf"><block s="reportIsIdentical"><block var="message"/><l>to crono string</l></block><script><block s="doIf"><block s="reportIsA"><block var="inputs"/><l><option>list</option></l></block><script><block s="doIf"><block s="reportNot"><block s="reportListIsEmpty"><block var="inputs"/></block></block><script><block s="doSetVar"><l>current time</l><block s="reportQuotient"><block s="reportListItem"><l>1</l><block var="inputs"/></block><l>1</l></block></block></script></block></script></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportIfElse"><block s="reportLessThan"><block s="reportModulus"><block s="reportQuotient"><block var="current time"/><l>3600</l></block><l>24</l></block><l>10</l></block><l>0</l><l></l></block><block s="reportQuotient"><block s="reportListItem"><l>1</l><block s="reportTextSplit"><block s="reportModulus"><block s="reportQuotient"><block var="current time"/><l>3600</l></block><l>24</l></block><l>.</l></block></block><l>1</l></block><l>H </l><block s="reportIfElse"><block s="reportLessThan"><block s="reportModulus"><block s="reportQuotient"><block var="current time"/><l>60</l></block><l>60</l></block><l>10</l></block><l>0</l><l></l></block><block s="reportQuotient"><block s="reportListItem"><l>1</l><block s="reportTextSplit"><block s="reportModulus"><block s="reportQuotient"><block var="current time"/><l>60</l></block><l>60</l></block><l>.</l></block></block><l>1</l></block><l>M </l><block s="reportIfElse"><block s="reportLessThan"><block s="reportModulus"><block var="current time"/><l>60</l></block><l>10</l></block><l>0</l><l></l></block><block s="reportQuotient"><block s="reportListItem"><l>1</l><block s="reportTextSplit"><block s="reportModulus"><block var="current time"/><l>60</l></block><l>.</l></block></block><l>1</l></block><l>S </l><block s="reportIfElse"><block s="reportLessThan"><block s="reportModulus"><block s="reportVariadicProduct"><list><block var="current time"/><l>1000</l></list></block><l>1000</l></block><l>100</l></block><l>0</l><l></l></block><block s="reportIfElse"><block s="reportLessThan"><block s="reportModulus"><block s="reportVariadicProduct"><list><block var="current time"/><l>1000</l></list></block><l>1000</l></block><l>10</l></block><l>0</l><l></l></block><block s="reportQuotient"><block s="reportListItem"><l>1</l><block s="reportTextSplit"><block s="reportModulus"><block s="reportVariadicProduct"><list><block var="current time"/><l>1000</l></list></block><l>1000</l></block><l>.</l></block></block><l>1</l></block><l>MS</l></list></block></block></script></block><block s="doReport"><block var="current time"/></block></script><list><l>message</l><l>inputs</l></list></block></block></script></block-definition><block-definition s="update timer" type="command" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportNot"><block s="reportIsA"><block var="timer procedure"/><l><option>command</option></l></block></block><script><block s="doSetVar"><l>timer procedure</l><custom-block s="new timer ring" scope="local"></custom-block></block></script></block><block s="doSetVar"><l>timer</l><block s="reportQuotient"><block s="evaluate"><block var="timer procedure"/><list><l>get time</l></list></block><l>1000</l></block></block></script></block-definition></blocks><scripts><script x="20" y="20"><block s="receiveCondition"><l><bool>true</bool></l></block><custom-block s="update timer" scope="local"></custom-block></script><script x="20" y="86.83333333333334"><block s="receiveGo"></block><custom-block s="%s timer"><l>reset</l></custom-block></script><script x="20" y="161.83333333333337"><block s="receiveInteraction"><l><option>stopped</option></l></block><custom-block s="%s timer"><l>stop</l></custom-block></script></scripts><sprites select="1"><sprite name="Sprite" idx="1" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="middle" id="692"><costumes><list struct="atomic" id="693"></list></costumes><sounds><list struct="atomic" id="694"></list></sounds><blocks></blocks><variables></variables><scripts><comment x="20" y="20" w="311" collapsed="false">In Super-Snap! we have these sensing blocks, these blocks modifies the timer ring&apos;s properties in the normal Snap!, but in Super-Snap! are primitives and I made too much effort on upgrading my Super-Snap! mod everyday. Try these custom blocks and use them, I&apos;m happy! :-)</comment><script x="20" y="110"><custom-block s="%s timer"><l>reset</l></custom-block></script><script x="20" y="150"><custom-block s="%s timer %br in %n seconds"><l>change</l><l>5</l></custom-block></script><comment x="20" y="204" w="367" collapsed="true">This variable block with the name &quot;timer&quot; is the value of the timer ring. :-)</comment><script x="20" y="236"><block var="timer"/></script></scripts></sprite><watcher var="timer" style="normal" x="10" y="10" color="243,118,29"/><watcher scope="Stage" var="timer procedure" style="normal" x="10" y="31.000001999999995" color="243,118,29" hidden="true"/></sprites></stage><variables><variable name="timer" transient="true"/></variables></scene></scenes></project><media name="Better Timer Blocks" app="Snap! 8.1, https://snap.berkeley.edu" version="2"></media></snapdata>