<snapdata remixID="8818851"><project name='U2L4-MathTools' app='Snap! 5.1, http://snap.berkeley.edu' version='1'>
  <notes>Would not let me get the share link from home.</notes>
  <thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAHYSURBVHhe7dcxblpBFEDRIRI1W2A3bME0iAKWwXZgJV4LDRUIUTo2oXBhO0ri6DbnNDN69f1/ZiYvrwZEfjxWSAiQlABJCZCUAEkJkJQASQmQlABJCZCUAEkJkJQASQmQlABJCZCUAEkJkJQASQmQlABJCZCUAEkJkJQASQmQlABJCZCUAEkJkJQASQmQlABJCZCUAEkJkJQASQmQlABJCZCUAEkJkJQASQmQlABJCZCUAEkJkJQASQmQlABJCZCUAEkJkJQASQmQ1OTl1WPPO4fDYZzP57FYLMZ8Pn9M+W4C/MT1eh3b7XbcbrdxPB7HarW6z99m0+n0vuffCfALz8/PY7fbjdls9pj88hbler2+75+enu4rf8cd8Dc++j4nk8mHc/6cP+An3h/Bp9NpLJfLe3ibzcYR/I0E+In9fj8ul4tHyH8mQFLugKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESGiMn0PVT8vsbwM5AAAAAElFTkSuQmCC</thumbnail>
  <stage inheritance='true' id='1' volume='100' height='360' tempo='60' lines='round' width='480' name='Stage' sublistIDs='false' threadsafe='false' codify='false' color='255,255,255,1' scheduled='false' pan='0' ternary='false' costume='0'>
    <pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAK1SURBVHhe7cExAQAAAMKg9U9tDB8gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIsajf4AAXBXLv8AAAAASUVORK5CYII=</pentrails>
    <costumes>
      <list struct='atomic' id='2'/>
    </costumes>
    <sounds>
      <list struct='atomic' id='3'/>
    </sounds>
    <variables/>
    <blocks/>
    <scripts/>
    <sprites>
      <sprite x='0' pen='tip' id='8' y='0' name='Sprite' idx='1' volume='100' rotation='1' scale='1' heading='90' draggable='true' color='80,80,80,1' pan='0' costume='0'>
        <costumes>
          <list struct='atomic' id='9'/>
        </costumes>
        <sounds>
          <list struct='atomic' id='10'/>
        </sounds>
        <blocks/>
        <variables/>
        <scripts>
          <script x='34' y='14'>
            <custom-block s='Is %s divisible by %s ?'>
              <l>10</l>
              <l>2</l>
            </custom-block>
          </script>
          <script x='58' y='56'>
            <custom-block s='Even? %s'>
              <l>6</l>
            </custom-block>
          </script>
          <script x='61' y='101'>
            <custom-block s='Odd %s'>
              <l>5</l>
            </custom-block>
          </script>
          <script x='19' y='142'>
            <custom-block s='Number of divisors %s'>
              <l/>
            </custom-block>
          </script>
          <script x='24' y='177'>
            <custom-block s='Maximum of %s and %s'>
              <l>-5</l>
              <l>-2</l>
            </custom-block>
          </script>
          <script x='29' y='206'>
            <custom-block s='Minimum of %s and %s'>
              <l>-5</l>
              <l>3</l>
            </custom-block>
          </script>
          <script x='10' y='245'>
            <custom-block s='Maximum of list %l'>
              <block s='reportNewList'>
                <list>
                  <l>5</l>
                  <l>1</l>
                  <l>9</l>
                </list>
              </block>
            </custom-block>
          </script>
          <script x='20' y='300'>
            <custom-block s='Minimum of list %l'>
              <block s='reportNewList'>
                <list>
                  <l>5</l>
                  <l>1</l>
                  <l>9</l>
                </list>
              </block>
            </custom-block>
          </script>
          <script x='34' y='351'>
            <custom-block s='Sum of list %l'>
              <block s='reportNewList'>
                <list>
                  <l>5</l>
                  <l>1</l>
                  <l>9</l>
                </list>
              </block>
            </custom-block>
          </script>
          <script x='18' y='393'>
            <custom-block s='Average of list %l'>
              <block s='reportNewList'>
                <list>
                  <l>5</l>
                  <l>1</l>
                  <l>9</l>
                </list>
              </block>
            </custom-block>
          </script>
        </scripts>
      </sprite>
    </sprites>
  </stage>
  <hidden/>
  <headers/>
  <code/>
  <blocks>
    <block-definition s='Is %&apos;a&apos; divisible by %&apos;b&apos; ?' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block s='reportEquals'>
            <block s='reportModulus'>
              <block var='a'/>
              <block var='b'/>
            </block>
            <l>0</l>
          </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='Even? %&apos;number&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block s='reportEquals'>
            <block s='reportModulus'>
              <block var='number'/>
              <l>2</l>
            </block>
            <l>0</l>
          </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='%&apos;A&apos; ≤ %&apos;B&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doIf'>
          <block s='reportLessThan'>
            <block var='A'/>
            <block var='B'/>
          </block>
          <script>
            <block s='doReport'>
              <block s='reportBoolean'>
                <l>
                  <bool>true</bool>
                </l>
              </block>
            </block>
          </script>
        </block>
        <block s='doIfElse'>
          <block s='reportLessThan'>
            <block var='B'/>
            <block var='A'/>
          </block>
          <script>
            <block s='doReport'>
              <block s='reportBoolean'>
                <l>
                  <bool>false</bool>
                </l>
              </block>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block s='reportBoolean'>
                <l>
                  <bool>true</bool>
                </l>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='Is %&apos;inputvalue&apos; between %&apos;lowerbound&apos; and %&apos;upperbound?&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block s='reportAnd'>
            <block s='reportGreaterThan'>
              <block var='inputvalue'/>
              <block var='lowerbound'/>
            </block>
            <block s='reportLessThan'>
              <block var='inputvalue'/>
              <block var='upperbound?'/>
            </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='%&apos;A&apos; ≥ %&apos;B&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportOr'>
            <block s='reportGreaterThan'>
              <block var='A'/>
              <block var='B'/>
            </block>
            <block s='reportEquals'>
              <block var='A'/>
              <block var='B'/>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='Odd %&apos;number&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block s='reportEquals'>
            <block s='reportModulus'>
              <block var='number'/>
              <l>2</l>
            </block>
            <l>0</l>
          </block>
          <script>
            <block s='doReport'>
              <block s='reportBoolean'>
                <l>
                  <bool>false</bool>
                </l>
              </block>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block s='reportBoolean'>
                <l>
                  <bool>true</bool>
                </l>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='Number of divisors %&apos;number&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportListLength'>
            <block s='reportKeep'>
              <block s='reifyPredicate'>
                <autolambda>
                  <custom-block s='Is %s divisible by %s ?'>
                    <block var='number'/>
                    <l/>
                  </custom-block>
                </autolambda>
                <list/>
              </block>
              <block s='reportNumbers'>
                <l>1</l>
                <block var='number'/>
              </block>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='Maximum of %&apos;a&apos; and %&apos;b&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block s='reportGreaterThan'>
            <block var='a'/>
            <block var='b'/>
          </block>
          <script>
            <block s='doReport'>
              <block var='a'/>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block var='b'/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='Minimum of %&apos;a&apos; and %&apos;b&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%s'/>
      </inputs>
      <script>
        <block s='doIfElse'>
          <block s='reportGreaterThan'>
            <block var='a'/>
            <block var='b'/>
          </block>
          <script>
            <block s='doReport'>
              <block var='b'/>
            </block>
          </script>
          <script>
            <block s='doReport'>
              <block var='a'/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='Maximum of list %&apos;list&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportCombine'>
            <block var='list'/>
            <block s='reifyReporter'>
              <autolambda>
                <custom-block s='Maximum of %s and %s'>
                  <l/>
                  <l/>
                </custom-block>
              </autolambda>
              <list/>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='Minimum of list %&apos;list&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportCombine'>
            <block var='list'/>
            <block s='reifyReporter'>
              <autolambda>
                <custom-block s='Minimum of %s and %s'>
                  <l/>
                  <l/>
                </custom-block>
              </autolambda>
              <list/>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='Sum of list %&apos;list&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportCombine'>
            <block var='list'/>
            <block s='reifyReporter'>
              <autolambda>
                <block s='reportSum'>
                  <l/>
                  <l/>
                </block>
              </autolambda>
              <list/>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='Average of list %&apos;list&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='reportQuotient'>
            <custom-block s='Sum of list %l'>
              <block var='list'/>
            </custom-block>
            <block s='reportListLength'>
              <block var='list'/>
            </block>
          </block>
        </block>
      </script>
    </block-definition>
  </blocks>
  <variables/>
</project><media name="U2L4-MathTools" app="Snap! 5.1, http://snap.berkeley.edu" version="1"></media></snapdata>