<snapdata remixID="9828714"><project name="3.3 calendar" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="true" hyperops="true" codify="false" inheritance="false" 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="-84" y="-9" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="0,156.67199999999994,244.79999999999998,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="213" y="709.8333333333334"><custom-block s="Day Name %s"><l></l></custom-block></script><script x="356" y="793.8333333333334"><custom-block s="Days In %s"><l></l></custom-block></script><script x="87" y="812.8333333333334"><custom-block s="Is a valid date %s %s"><l></l><l></l></custom-block></script><script x="321" y="889.8333333333334"><custom-block s="month name %s"><l></l></custom-block></script><script x="408" y="704.5000000000001"><custom-block s="Day in a year"></custom-block></script><script x="249" y="612.8333333333334"><custom-block s="is a leap year %s"><l>2004</l></custom-block></script></scripts></sprite></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="day name %&apos;day num&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportEquals"><block var="day num"/><l>1</l></block><script><block s="doSayFor"><l>Sunday</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="day num"/><l>2</l></block><script><block s="doSayFor"><l>Monday</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="day num"/><l>3</l></block><script><block s="doSayFor"><l>Tuesday</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="day num"/><l>4</l></block><script><block s="doSayFor"><l>Wednesday</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="day num"/><l>5</l></block><script><block s="doSayFor"><l>Thursday</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="day num"/><l>6</l></block><script><block s="doSayFor"><l>Friday</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="day num"/><l>7</l></block><script><block s="doSayFor"><l>Saturday</l><l>2</l></block></script><script><block s="doSayFor"><block s="reportJoinWords"><list><l>Unknown day number: </l><block var="day num"/></list></block><l>2</l></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="days in %&apos;month name&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>days</l></list></block><block s="doSetVar"><l>days</l><custom-block s="days in reporter %s %s"><block var="month name"/><block s="reportBoolean"><l><bool>false</bool></l></block></custom-block></block><block s="doIfElse"><block s="reportGreaterThan"><block var="days"/><l>0</l></block><script><block s="doSayFor"><block var="days"/><l>2</l></block></script><script><block s="doSayFor"><block s="reportJoinWords"><list><l>Unknown Month Name: </l><block var="month name"/></list></block><l>2</l></block></script></block></script></block-definition><block-definition s="is a valid date %&apos;month name&apos; %&apos;day of month&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doSayFor"><block s="reportAnd"><block s="reportGreaterThan"><block var="day of month"/><l>0</l></block><custom-block s="%s &lt;= %s"><block var="day of month"/><custom-block s="days in reporter %s %s"><block var="month name"/><block s="reportBoolean"><l><bool>false</bool></l></block></custom-block></custom-block></block><l>2</l></block></script></block-definition><block-definition s="day in year %&apos;year&apos; %&apos;day of year&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>month num</l></list></block><block s="doDeclareVariables"><list><l>days in</l></list></block><block s="doSetVar"><l>month num</l><l>1</l></block><block s="doSetVar"><l>days in</l><custom-block s="days in reporter %s %s"><custom-block s="month name reporter %s"><block var="month num"/></custom-block><custom-block s="is a leap year reporter %s"><block var="year"/></custom-block></custom-block></block><block s="doUntil"><block s="reportOr"><block s="reportLessThan"><block var="days in"/><l>0</l></block><custom-block s="%s &lt;= %s"><block var="day of year"/><block var="days in"/></custom-block></block><script><block s="doChangeVar"><l>month num</l><l>1</l></block><block s="doChangeVar"><l>day of year</l><block s="reportDifference"><l>0</l><block var="days in"/></block></block><block s="doSetVar"><l>days in</l><custom-block s="days in reporter %s %s"><custom-block s="month name reporter %s"><block var="month num"/></custom-block><custom-block s="is a leap year reporter %s"><block var="year"/></custom-block></custom-block></block></script></block><block s="doIfElse"><block s="reportLessThan"><block var="days in"/><l>0</l></block><script><block s="doSayFor"><block s="reportJoinWords"><list><l>Error!  Invalid number of days specified: </l><block var="day of year"/></list></block><l>2</l></block></script><script><block s="doSayFor"><block s="reportJoinWords"><list><custom-block s="month name reporter %s"><block var="month num"/></custom-block><l> </l><block var="day of year"/></list></block><l>2</l></block></script></block></script></block-definition><block-definition s="day of week %&apos;month name&apos; %&apos;day of month&apos; %&apos;year&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input><input type="%s"></input></inputs><script><custom-block s="day name %s"><custom-block s="day of week reporter %s %s %s"><block var="month name"/><block var="day of month"/><block var="year"/></custom-block></custom-block></script></block-definition><block-definition s="%&apos;x&apos; is multiple of %&apos;y&apos;" type="predicate" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportEquals"><block s="reportModulus"><block var="x"/><block var="y"/></block><l>0</l></block></block></script></block-definition><block-definition s="days in reporter %&apos;month name&apos; %&apos;is leap year&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportOr"><block s="reportEquals"><block var="month name"/><l>January</l></block><block s="reportOr"><block s="reportEquals"><block var="month name"/><l>March</l></block><block s="reportOr"><block s="reportEquals"><block var="month name"/><l>May</l></block><block s="reportOr"><block s="reportEquals"><block var="month name"/><l>July</l></block><block s="reportOr"><block s="reportEquals"><block var="month name"/><l>August</l></block><block s="reportOr"><block s="reportEquals"><block var="month name"/><l>October</l></block><block s="reportEquals"><block var="month name"/><l>December</l></block></block></block></block></block></block></block><script><block s="doReport"><l>31</l></block></script><script><block s="doIfElse"><block s="reportOr"><block s="reportEquals"><block var="month name"/><l>April</l></block><block s="reportOr"><block s="reportEquals"><block var="month name"/><l>June</l></block><block s="reportOr"><block s="reportEquals"><block var="month name"/><l>September</l></block><block s="reportEquals"><block var="month name"/><l>November</l></block></block></block></block><script><block s="doReport"><l>30</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month name"/><l>February</l></block><script><block s="doIfElse"><block var="is leap year"/><script><block s="doReport"><l>29</l></block></script><script><block s="doReport"><l>28</l></block></script></block></script><script><block s="doReport"><l>-1</l></block></script></block></script></block></script></block></script></block-definition><block-definition s="get answer to %&apos;question&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doAsk"><block var="question"/></block><block s="doReport"><block s="getLastAnswer"></block></block></script></block-definition><block-definition s="is a leap year reporter %&apos;year&apos;" type="predicate" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportOr"><custom-block s="%s is multiple of %s"><block var="year"/><l>400</l></custom-block><block s="reportAnd"><custom-block s="%s is multiple of %s"><block var="year"/><l>4</l></custom-block><block s="reportNot"><custom-block s="%s is multiple of %s"><block var="year"/><l>100</l></custom-block></block></block></block></block></script></block-definition><block-definition s="month name reporter %&apos;month num&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>1</l></block><script><block s="doReport"><l>January</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>2</l></block><script><block s="doReport"><l>February</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>3</l></block><script><block s="doReport"><l>March</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>4</l></block><script><block s="doReport"><l>April</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>5</l></block><script><block s="doReport"><l>May</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>6</l></block><script><block s="doReport"><l>June</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>7</l></block><script><block s="doReport"><l>July</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>8</l></block><script><block s="doReport"><l>August</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>9</l></block><script><block s="doReport"><l>September</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>10</l></block><script><block s="doReport"><l>October</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>11</l></block><script><block s="doReport"><l>November</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="month num"/><l>12</l></block><script><block s="doReport"><l>December</l></block></script><script><block s="doReport"><block s="reportJoinWords"><list><l>Unknown month number: </l><block var="month num"/></list></block></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="month days to add %&apos;month&apos; %&apos;year&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>ndays</l></list></block><block s="doDeclareVariables"><list><l>month num</l></list></block><block s="doSetVar"><l>ndays</l><l>0</l></block><block s="doSetVar"><l>month num</l><l>1</l></block><block s="doUntil"><block s="reportEquals"><custom-block s="month name reporter %s"><block var="month num"/></custom-block><block var="month"/></block><script><block s="doChangeVar"><l>ndays</l><custom-block s="days in reporter %s %s"><custom-block s="month name reporter %s"><block var="month num"/></custom-block><custom-block s="is a leap year reporter %s"><block var="year"/></custom-block></custom-block></block><block s="doChangeVar"><l>month num</l><l>1</l></block></script></block><block s="doReport"><block var="ndays"/></block></script></block-definition><block-definition s="year days to add %&apos;ref_year&apos; %&apos;year&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>incr</l></list></block><block s="doDeclareVariables"><list><l>ndays</l></list></block><block s="doSetVar"><l>ndays</l><l>0</l></block><block s="doIfElse"><block s="reportLessThan"><block var="ref_year"/><block var="year"/></block><script><block s="doSetVar"><l>incr</l><l>1</l></block></script><script><block s="doDeclareVariables"><list><l>tmp</l></list></block><block s="doSetVar"><l>tmp</l><block var="ref_year"/></block><block s="doSetVar"><l>ref_year</l><block var="year"/></block><block s="doSetVar"><l>year</l><block var="tmp"/></block><block s="doSetVar"><l>incr</l><l>-1</l></block></script></block><block s="doUntil"><block s="reportEquals"><block var="ref_year"/><block var="year"/></block><script><block s="doIfElse"><custom-block s="is a leap year reporter %s"><block var="ref_year"/></custom-block><script><block s="doChangeVar"><l>ndays</l><l>366</l></block></script><script><block s="doChangeVar"><l>ndays</l><l>365</l></block></script></block><block s="doChangeVar"><l>ref_year</l><l>1</l></block></script></block><block s="doReport"><block s="reportProduct"><block var="incr"/><block var="ndays"/></block></block></script></block-definition><block-definition s="day of week reporter %&apos;month name&apos; %&apos;day of month&apos; %&apos;year&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportSum"><block s="reportModulus"><block s="reportSum"><l>6</l><block s="reportSum"><custom-block s="year days to add %s %s"><l>2000</l><block var="year"/></custom-block><block s="reportSum"><custom-block s="month days to add %s %s"><block var="month name"/><block var="year"/></custom-block><block s="reportDifference"><block var="day of month"/><l>1</l></block></block></block></block><l>7</l></block><l>1</l></block></block></script></block-definition><block-definition s="%&apos;x&apos; &lt;= %&apos;y&apos;" type="predicate" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportOr"><block s="reportEquals"><block var="x"/><block var="y"/></block><block s="reportLessThan"><block var="x"/><block var="y"/></block></block></block></script></block-definition><block-definition s="is a leap year %&apos;YNumber&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportOr"><block s="reportAnd"><block s="reportEquals"><block s="reportModulus"><block var="YNumber"/><l>4</l></block><l>0</l></block><block s="reportNot"><block s="reportEquals"><block s="reportModulus"><block var="YNumber"/><l>100</l></block><l>0</l></block></block></block><block s="reportEquals"><block s="reportModulus"><block var="YNumber"/><l>400</l></block><l>0</l></block></block><script><block s="doSayFor"><l>That is a leap year</l><l>1</l></block></script><script><block s="doSayFor"><l>that is not a leap year</l><l>1</l></block></script></block></script></block-definition><block-definition s="Day Name %&apos;DInumber&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>1</l></block><script><block s="doSayFor"><l>The day is Monday</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>2</l></block><script><block s="doSayFor"><l>The day is Tuesday</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>3</l></block><script><block s="doSayFor"><l>The day is Wednesday</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>4</l></block><script><block s="doSayFor"><l>The day is Thursday</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>5</l></block><script><block s="doSayFor"><l>The day is Friday</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>6</l></block><script><block s="doSayFor"><l>The day is Saturday</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>7</l></block><script><block s="doSayFor"><l>The day is Sunday</l><l>1</l></block></script></block></script></block-definition><block-definition s="Days In %&apos;DInumber&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>1</l></block><script><block s="doSayFor"><l>The month has 31 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>2</l></block><script><block s="doSayFor"><l>The month has 28 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>3</l></block><script><block s="doSayFor"><l>The month has 31 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>4</l></block><script><block s="doSayFor"><l>The month has 30 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>5</l></block><script><block s="doSayFor"><l>The month has 31 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>6</l></block><script><block s="doSayFor"><l>The month has 30 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>7</l></block><script><block s="doSayFor"><l>The month has 31 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>8</l></block><script><block s="doSayFor"><l>The month has 31 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>9</l></block><script><block s="doSayFor"><l>The month has 30 days</l><l>2</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>10</l></block><script><block s="doSayFor"><l>The month has 31 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>11</l></block><script><block s="doSayFor"><l>The month has 30 days</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="DInumber"/><l>12</l></block><script><block s="doSayFor"><l>The month has 31 days</l><l>1</l></block></script></block></script></block-definition><block-definition s="Is a valid date %&apos;Mnumber&apos; %&apos;DInumber&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doIf"><block s="reportOr"><block s="reportOr"><block s="reportGreaterThan"><block var="Mnumber"/><l>12</l></block><block s="reportLessThan"><block var="Mnumber"/><l>1</l></block></block><block s="reportLessThan"><block var="DInumber"/><l>1</l></block></block><script><block s="doSayFor"><l>The date given is invalid</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>1</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>32</l></block><script><block s="doSayFor"><l>The date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>the date is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>2</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>28</l></block><script><block s="doSayFor"><l>the date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>the date given is invalid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>3</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>32</l></block><script><block s="doSayFor"><l>The date given is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date given is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>4</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>31</l></block><script><block s="doSayFor"><l>The date given is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date given is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>5</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>32</l></block><script><block s="doSayFor"><l>The date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>6</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>31</l></block><script><block s="doSayFor"><l>The date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>7</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>32</l></block><script><block s="doSayFor"><l>The date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>8</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>32</l></block><script><block s="doSayFor"><l>The date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>9</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>31</l></block><script><block s="doSayFor"><l>The date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>10</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>32</l></block><script><block s="doSayFor"><l>The date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>11</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>31</l></block><script><block s="doSayFor"><l>The date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date is not valid</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>12</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="DInumber"/><l>32</l></block><script><block s="doSayFor"><l>The date is valid</l><l>1</l></block></script><script><block s="doSayFor"><l>The date is not valid</l><l>1</l></block></script></block></script></block></script></block-definition><block-definition s="month name %&apos;Mnumber&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>1</l></block><script><block s="doSayFor"><l>It is january</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>2</l></block><script><block s="doSayFor"><l>It is February</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>3</l></block><script><block s="doSayFor"><l>It is March</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>4</l></block><script><block s="doSayFor"><l>It is April</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>5</l></block><script><block s="doSayFor"><l>It is May</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>6</l></block><script><block s="doSayFor"><l>It is June</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>7</l></block><script><block s="doSayFor"><l>It is July</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>8</l></block><script><block s="doSayFor"><l>It is August</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>9</l></block><script><block s="doSayFor"><l>It is September</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>10</l></block><script><block s="doSayFor"><l>It is October</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>11</l></block><script><block s="doSayFor"><l>It is November</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="Mnumber"/><l>12</l></block><script><block s="doSayFor"><l>It is December</l><l>1</l></block></script></block></script></block-definition><block-definition s="day in a year" type="command" category="operators"><header></header><code></code><translations></translations><inputs></inputs></block-definition><block-definition s="Year and date by day number" type="command" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><custom-block s="day in year %s %s"><custom-block s="get answer to %s"><l>Enter a year</l></custom-block><custom-block s="get answer to %s"><l>Enter the day of year</l></custom-block></custom-block></script></block-definition><block-definition s="Day in a year" type="command" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><custom-block s="Year and date by day number"></custom-block></script></block-definition></blocks><variables></variables></project><media name="3.3 calendar" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>