<snapdata remixID="8369936"><project name='scratch 3.0 blocks' app='Snap! 5.0, http://snap.berkeley.edu' version='1'>
  <notes>3.0 blocks added into Snap!

The blocks are inside the project btw
</notes>
  <thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAACpklEQVR4Xu3XQaoaQQBF0ep96FyXo+CGnLggxdXoRnTQASFk8POTkEFfaI7jhkfdOtg6zfM8Dx8FogITgFF5s58CAIKQFgAwzW8cQAbSAgCm+Y0DyEBaAMA0v3EAGUgLAJjmNw4gA2kBANP8xgFkIC0AYJrfOIAMpAUATPMbB5CBtACAaX7jADKQFgAwzW8cQAbSAgCm+Y0DyEBaAMA0v3EAGUgLAJjmNw4gA2kBANP8xgFkIC0AYJrfOIAMpAUATPMbB5CBtACAaX7jADKQFgAwzW8cQAbSAgCm+Y0DyEBaAMA0v3EAGUgLAJjmNw4gA2kBANP8xgFkIC0AYJrfOIAMpAUATPMbB5CBtACAaX7jADKQFgAwzW8cQAbSAgCm+Y0DyEBaAMA0v3EAGUgLAPhN/v1+P87n8zidTukFrX0cwD/c8PF4HPM8f554PB7jfr+P7Xa7dhOLng/Av+Q+HA5fnpimabzf73G9Xhe9rDWOAfifAF+v17jdbms0seiZAPzHV/Dz+fy8gjebzaIXtPYxAL+54d1uNy6Xy/jdK3jtKJY8H4BL1rb19ff0/PNvnjgKBAV8AwbRTf4qACANaQEA0/zGAWQgLQBgmt84gAykBQBM8xsHkIG0AIBpfuMAMpAWADDNbxxABtICAKb5jQPIQFoAwDS/cQAZSAsAmOY3DiADaQEA0/zGAWQgLQBgmt84gAykBQBM8xsHkIG0AIBpfuMAMpAWADDNbxxABtICAKb5jQPIQFoAwDS/cQAZSAsAmOY3DiADaQEA0/zGAWQgLQBgmt84gAykBQBM8xsHkIG0AIBpfuMAMpAWADDNbxxABtICAKb5jQPIQFoAwDS/cQAZSAsAmOY3DiADaQEA0/zGAWQgLQBgmt84gAykBQBM8xv/ASteArcSbq6lAAAAAElFTkSuQmCC</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,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'/>
    </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='20' y='20'>
            <custom-block s='glide %n secs to %s'>
              <l>1</l>
              <l/>
            </custom-block>
          </script>
          <script x='20' y='60'>
            <custom-block s='set rotation style to %s'>
              <l>left-right</l>
            </custom-block>
          </script>
          <script x='20' y='100'>
            <custom-block s='next backdrop'/>
          </script>
          <script x='20' y='136'>
            <custom-block s='switch backdrop to %txt'>
              <l/>
            </custom-block>
          </script>
          <script x='20' y='175'>
            <custom-block s='backdrop %s'>
              <l>number</l>
            </custom-block>
          </script>
          <script x='20' y='209'>
            <custom-block s='%txt contains %txt'>
              <l>apple</l>
              <l>a</l>
            </custom-block>
          </script>
          <script x='20' y='242'>
            <custom-block s='set drag mode %s'>
              <l>draggable</l>
            </custom-block>
          </script>
          <script x='20' y='282'>
            <custom-block s='item # of %s in %l'>
              <l/>
              <l/>
            </custom-block>
          </script>
        </scripts>
      </sprite>
    </sprites>
  </stage>
  <hidden/>
  <headers/>
  <code/>
  <blocks>
    <block-definition s='set drag mode %&apos;mode&apos;' category='sensing' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input readonly='true' type='%s'>draggable<options>draggablenot draggable</options>
        </input>
      </inputs>
      <script>
        <block s='doIf'>
          <block s='reportEquals'>
            <block var='mode'/>
            <l>draggable</l>
          </block>
          <script>
            <block s='doRun'>
              <block s='reportJSFunction'>
                <list/>
                <l>this.isDraggable = true</l>
              </block>
              <list/>
            </block>
          </script>
        </block>
        <block s='doIf'>
          <block s='reportEquals'>
            <block var='mode'/>
            <l>not draggable</l>
          </block>
          <script>
            <block s='doRun'>
              <block s='reportJSFunction'>
                <list/>
                <l>this.isDraggable = false</l>
              </block>
              <list/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='%&apos;str&apos; contains %&apos;substr&apos;' category='operators' type='predicate'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%txt'>apple</input>
        <input type='%txt'>a</input>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='evaluate'>
            <block s='reportJSFunction'>
              <list>
                <l>str</l>
                <l>substr</l>
              </list>
              <l>return str.match(substr) !== null</l>
            </block>
            <list>
              <block var='str'/>
              <block var='substr'/>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='glide %&apos;time&apos; secs to %&apos;nm&apos;' category='motion' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%n'>1</input>
        <input readonly='true' type='%s'>
          <options>§_objectsMenu</options>
        </input>
      </inputs>
      <script>
        <block s='doDeclareVariables'>
          <list>
            <l>obj</l>
          </list>
        </block>
        <block s='doSetVar'>
          <l>obj</l>
          <block s='reportObject'>
            <block var='nm'/>
          </block>
        </block>
        <block s='doGlide'>
          <block var='time'/>
          <block s='reportAttributeOf'>
            <l>
              <option>x position</option>
            </l>
            <block var='obj'/>
          </block>
          <block s='reportAttributeOf'>
            <l>
              <option>y position</option>
            </l>
            <block var='obj'/>
          </block>
        </block>
      </script>
    </block-definition>
    <block-definition s='set rotation style to %&apos;style&apos;' category='motion' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input readonly='true' type='%s'>left-right<options>left-rightdon&apos;t rotateall around</options>
        </input>
      </inputs>
      <script>
        <block s='doIf'>
          <block s='reportEquals'>
            <block var='style'/>
            <l>all around</l>
          </block>
          <script>
            <block s='doRun'>
              <block s='reportJSFunction'>
                <list/>
                <l>this.rotationStyle = 1</l>
              </block>
              <list/>
            </block>
          </script>
        </block>
        <block s='doIf'>
          <block s='reportEquals'>
            <block var='style'/>
            <l>left-right</l>
          </block>
          <script>
            <block s='doRun'>
              <block s='reportJSFunction'>
                <list/>
                <l>this.rotationStyle = 2</l>
              </block>
              <list/>
            </block>
          </script>
        </block>
        <block s='doIf'>
          <block s='reportEquals'>
            <block var='style'/>
            <l>don&apos;t rotate</l>
          </block>
          <script>
            <block s='doRun'>
              <block s='reportJSFunction'>
                <list/>
                <l>this.rotationStyle = 0</l>
              </block>
              <list/>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='next backdrop' category='looks' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs/>
      <script>
        <block s='doTellTo'>
          <l>Stage</l>
          <block s='reifyScript'>
            <script>
              <block s='doWearNextCostume'/>
            </script>
            <list/>
          </block>
          <list/>
        </block>
      </script>
    </block-definition>
    <block-definition s='switch backdrop to %&apos;costume&apos;' category='looks' type='command'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%txt'/>
      </inputs>
      <script>
        <block s='doTellTo'>
          <l>Stage</l>
          <block s='reifyScript'>
            <script>
              <block s='doSwitchToCostume'>
                <l/>
              </block>
            </script>
            <list/>
          </block>
          <list>
            <block var='costume'/>
          </list>
        </block>
      </script>
    </block-definition>
    <block-definition s='backdrop %&apos;prop&apos;' category='looks' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input readonly='true' type='%s'>number<options>namenumber</options>
        </input>
      </inputs>
      <script>
        <block s='doIf'>
          <block s='reportEquals'>
            <block var='prop'/>
            <l>name</l>
          </block>
          <script>
            <block s='doReport'>
              <block s='reportAskFor'>
                <l>Stage</l>
                <block s='reifyReporter'>
                  <autolambda>
                    <block s='reportGetImageAttribute'>
                      <l>
                        <option>name</option>
                      </l>
                      <l>
                        <option>current</option>
                      </l>
                    </block>
                  </autolambda>
                  <list/>
                </block>
                <list/>
              </block>
            </block>
          </script>
        </block>
        <block s='doIf'>
          <block s='reportEquals'>
            <block var='prop'/>
            <l>number</l>
          </block>
          <script>
            <block s='doReport'>
              <block s='reportAskFor'>
                <l>Stage</l>
                <block s='reifyReporter'>
                  <autolambda>
                    <block s='getCostumeIdx'/>
                  </autolambda>
                  <list/>
                </block>
                <list/>
              </block>
            </block>
          </script>
        </block>
      </script>
    </block-definition>
    <block-definition s='item # of %&apos;val&apos; in %&apos;list&apos;' category='lists' type='reporter'>
      <header/>
      <code/>
      <translations/>
      <inputs>
        <input type='%s'/>
        <input type='%l'/>
      </inputs>
      <script>
        <block s='doReport'>
          <block s='evaluate'>
            <block s='reportJSFunction'>
              <list>
                <l>v</l>
                <l>l</l>
              </list>
              <l>return l.asArray().indexOf(v) + 1</l>
            </block>
            <list>
              <block var='val'/>
              <block var='list'/>
            </list>
          </block>
        </block>
      </script>
    </block-definition>
  </blocks>
  <variables/>
</project><media name="scratch 3.0 blocks" app="Snap! 5.0, http://snap.berkeley.edu" version="1"></media></snapdata>