<snapdata remixID="10233498"><project name="Lab 3.3 - Let Me Check My Calendar " app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAACe0lEQVR4Xu3XPYrCUABG0Wf2ki7LCQjZQRZn53Zs3YOFZGCKgWF+Si/ISamBD+87RHI6juMYLgWiAicAo/JmPwsACEJaAMA0v3EAGUgLAJjmNw4gA2kBANP8xgFkIC0AYJrfOIAMpAUATPMbB5CBtACAaX7jADKQFgAwzW8cQAbSAgCm+Y0DyEBaAMA0v3EAGUgLAJjmNw4gA2kBANP8xgFkIC0AYJrfOIAMpAUATPMbB5CBtACAaX7jADKQFgAwzW8cQAbSAgCm+Y0DyEBaAMA0v3EAGUgLAJjmNw4gA2kBANP8xgFkIC0AYJrfOIAMpAUATPMbB5CBtACAaX7jADKQFgAwzW8cQAbSAgCm+Y0DyEBaAMA0v3EAGUgLAJjmNw4gA2kBANP8xgFkIC0A4C/5z+fzuN/vY9/3sW1bekDvPg7gHye8LMuY5/nr29vtNi6Xy7fP3h3HK34fgP9UXtd1PJ/PH3dM0zQej8e4Xq+vOKO33gAQwBQ4gP6CAUwLeAlJ83sCpvmNA8hAWgDANL9xABlICwCY5jcOIANpAQDT/MYBZCAtAGCa3ziADKQFAEzzGweQgbQAgGl+4wAykBYAMM1vHEAG0gIApvmNA8hAWgDANL9xABlICwCY5jcOIANpAQDT/MYBZCAtAGCa3ziADKQFAEzzGweQgbQAgGl+4wAykBYAMM1vHEAG0gIApvmNA8hAWgDANL9xABlICwCY5jcOIANpAQDT/MYBZCAtAGCa3ziADKQFAEzzGweQgbQAgGl+4wAykBYAMM1vHEAG0gIApvmNA8hAWgDANL9xABlICwCY5jcOIANpAQDT/MYBZCAtAGCa3/gHw9gIt68MoPMAAAAASUVORK5CYII=</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" y="0" heading="90" scale="1.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><comment x="11.235955056179762" y="11.235955056179776" w="287.191011235955" collapsed="false">Try some different parameters on the custom reporters below and check what they report to understand how they behave!</comment><script x="11.235955056179762" y="97.19101123595505"><custom-block s="name of day %s"><l></l></custom-block></script><script x="11.235955056179762" y="123.59550561797752"><custom-block s="days in month %s leap year? %b"><l>2</l><custom-block s="is a leap year? %s"><l>2024</l></custom-block></custom-block></script><script x="11" y="188.8333333333333"><custom-block s="Does this day exist? %n %n %n"><l>29</l><l>2</l><l>2021</l></custom-block></script><script x="13" y="158.66666666666666"><custom-block s="is a leap year? %s"><l>2021</l></custom-block></script><script x="18" y="227.66666666666666"><custom-block s="Day in year Year %n Day %n"><l>2020</l><l>52</l></custom-block></script><script x="12" y="71.66666666666666"><custom-block s="name of month %s"><l></l></custom-block></script></scripts></sprite><sprite name="mistakes that I spent way too long on" idx="2" x="-149" y="-125" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="153.357,0,247.35,1" pen="tip" id="32"><costumes><list struct="atomic" id="33"></list></costumes><sounds><list struct="atomic" id="34"></list></sounds><blocks></blocks><variables></variables><scripts><script x="83.66666666666663" y="10"><block s="receiveKey"><l><option>any key</option></l></block><block s="hide"></block><block s="doIf"><block s="reportOr"><block s="reportOr"><block s="reportLessThan"><custom-block s="name of day %s"><block var="day"/></custom-block><block s="reportOr"><block s="reportEquals"><custom-block s="name of month %s"><block var="month"/></custom-block><l>11</l></block><block s="reportOr"><block s="reportEquals"><custom-block s="name of month %s"><block var="month"/></custom-block><l></l></block><block s="reportOr"><block s="reportEquals"><custom-block s="name of month %s"><block var="month"/></custom-block><l>6</l></block><block s="reportEquals"><custom-block s="name of month %s"><block var="month"/></custom-block><l>9</l></block></block></block></block></block><block s="reportAnd"><block s="reportEquals"><custom-block s="name of month %s"><block var="month"/></custom-block><l>2</l></block><block s="reportOr"><block s="reportAnd"><block s="reportEquals"><block s="reportBoolean"><l><bool>true</bool></l></block><custom-block s="is a leap year? %s"><l>2021</l></custom-block></block><block s="reportLessThan"><custom-block s="name of day %s"><block var="day"/></custom-block><l>30</l></block></block><block s="reportAnd"><block s="reportEquals"><block s="reportBoolean"><l><bool>false</bool></l></block><custom-block s="is a leap year? %s"><l>2021</l></custom-block></block><block s="reportLessThan"><custom-block s="name of day %s"><block var="day"/></custom-block><l>29</l></block></block></block></block></block><block s="reportAnd"><block s="reportOr"><block s="reportEquals"><custom-block s="name of month %s"><block var="month"/></custom-block><l>1</l></block><block s="reportOr"><block s="reportEquals"><custom-block s="name of month %s"><l></l></custom-block><l>3</l></block><block s="reportOr"><block s="reportOr"><block s="reportEquals"><custom-block s="name of month %s"><l></l></custom-block><l>5</l></block><block s="reportEquals"><custom-block s="name of month %s"><l></l></custom-block><l>7</l></block></block><block s="reportOr"><block s="reportEquals"><custom-block s="name of month %s"><l></l></custom-block><l>8</l></block><block s="reportOr"><block s="reportEquals"><custom-block s="name of month %s"><l></l></custom-block><l>10</l></block><block s="reportEquals"><custom-block s="name of month %s"><l></l></custom-block><l>12</l></block></block></block></block></block></block><block s="reportLessThan"><custom-block s="name of day %s"><l></l></custom-block><l>31</l></block></block></block><script><block s="doPauseAll"></block></script></block><block s="doPauseAll"></block></script></scripts></sprite></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="name of month %&apos;month index&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportListItem"><block var="month index"/><block s="reportNewList"><list><l>January</l><l>February</l><l>March</l><l>April</l><l>May</l><l>June</l><l>July</l><l>August</l><l>September</l><l>October</l><l>November</l><l>December</l></list></block></block></block></script></block-definition><block-definition s="name of day %&apos;day index&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportListItem"><block var="day index"/><block s="reportNewList"><list><l>Sunday</l><l>Monday</l><l>Tuesday</l><l>Wednesday</l><l>Thursday</l><l>Friday</l><l>Saturday</l></list></block></block></block></script></block-definition><block-definition s="days in month %&apos;month index&apos; leap year? %&apos;leapYear&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%b">false</input></inputs><script><block s="doIfElse"><block s="reportAnd"><block s="reportEquals"><block var="month index"/><l>2</l></block><block var="leapYear"/></block><script><block s="doReport"><l>29</l></block></script><script><block s="doReport"><block s="reportListItem"><block var="month index"/><block s="reportNewList"><list><l>31</l><l>28</l><l>31</l><l>30</l><l>31</l><l>30</l><l>31</l><l>31</l><l>30</l><l>31</l><l>30</l><l>31</l></list></block></block></block></script></block></script></block-definition><block-definition s="is a leap year? %&apos;year#&apos;" type="predicate" category="other"><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="year#"/><l>4</l></block><l>0</l></block><block s="reportNot"><block s="reportEquals"><l>0</l><block s="reportModulus"><block var="year#"/><l>100</l></block></block></block></block><block s="reportEquals"><l>0</l><block s="reportModulus"><block var="year#"/><l>400</l></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block-definition><block-definition s="Does this day exist? %&apos;day&apos; %&apos;month&apos; %&apos;year&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input></inputs><script><block s="doIfElse"><block s="reportAnd"><block s="reportLessThan"><l>0</l><block var="day"/></block><block s="reportOr"><block s="reportEquals"><block var="day"/><custom-block s="days in month %s leap year? %b"><block var="month"/><custom-block s="is a leap year? %s"><block var="year"/></custom-block></custom-block></block><block s="reportLessThan"><block var="day"/><custom-block s="days in month %s leap year? %b"><block var="month"/><custom-block s="is a leap year? %s"><block var="year"/></custom-block></custom-block></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script><scripts><script x="601.4033203125005" y="523.1666666666665"><block s="reportBoolean"><l><bool>false</bool></l></block></script></scripts></block-definition><block-definition s="Day in year Year %&apos;year&apos; Day %&apos;day&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doIfElse"><block s="reportAnd"><block s="reportOr"><block s="reportLessThan"><block var="day"/><l>366</l></block><block s="reportEquals"><block var="day"/><l>366</l></block></block><block s="reportOr"><block s="reportGreaterThan"><block var="day"/><l>1</l></block><block s="reportEquals"><block var="day"/><l>1</l></block></block></block><script><block s="doIfElse"><block s="reportAnd"><block s="reportEquals"><block var="day"/><l>366</l></block><block s="reportNot"><custom-block s="is a leap year? %s"><block var="year"/></custom-block></block></block><script><block s="doSayFor"><block s="reportJoinWords"><list><block var="year"/><l> does not have 366 days</l></list></block><l>2</l></block></script><script><block s="doDeclareVariables"><list><l>month</l></list></block><block s="doSetVar"><l>month</l><l>1</l></block><block s="doUntil"><block s="reportOr"><block s="reportLessThan"><block var="day"/><custom-block s="days in month %s leap year? %b"><block var="month"/><custom-block s="is a leap year? %s"><block var="year"/></custom-block></custom-block></block><block s="reportEquals"><block var="day"/><custom-block s="days in month %s leap year? %b"><block var="month"/><custom-block s="is a leap year? %s"><block var="year"/></custom-block></custom-block></block></block><script><block s="doSetVar"><l>day</l><block s="reportDifference"><block var="day"/><custom-block s="days in month %s leap year? %b"><block var="month"/><custom-block s="is a leap year? %s"><block var="year"/></custom-block></custom-block></block></block><block s="doChangeVar"><l>month</l><l>1</l></block></script></block><block s="doSayFor"><block s="reportJoinWords"><list><custom-block s="name of month %s"><block var="month"/></custom-block><block var="day"/></list></block><l>2</l></block></script></block></script><script><block s="doSayFor"><l>error. must be a number between 1 and 366</l><l>2</l></block></script></block></script></block-definition></blocks><variables></variables></project><media name="Lab 3.3 - Let Me Check My Calendar " app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>