<?xml version="1.0" encoding="utf-8" ?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->
<Graphic version="2.0" ATE:version="1.0.0" flm:version="1.0.0" d:using="" 
	xmlns="http://ns.adobe.com/fxg/2008" xmlns:ATE="http://ns.adobe.com/ate/2009" xmlns:d="http://ns.adobe.com/fxg/2008/dt" 
	xmlns:flm="http://ns.adobe.com/flame/2008"
	xmlns:afx="http://ns.apache.org/flex/2012" afx:className="DragManager_linkCursor" afx:baseClassName="flash.display.Sprite" >
  <Library>
    <Definition name="Cursors_Cursor" flm:originalName="Cursors/Cursor">
      <Group>
        <Group d:type="layer" d:userLabel="Layer 1">
          <Path data="M265.85 158 266.85 158 266.85 159 265.85 159 265.85 158 264.85 158 264.85 157 263.85 157 263.85 168 264.85 168 264.85 169 263.85 169 263.85 170 262.85 170 262.85 155 263.85 155 263.85 156 264.85 156 264.85 157 265.85 157 265.85 158M267.85 160
 268.85 160 268.85 161 269.85 161 269.85 162 270.85 162 270.85 163 271.85 163 271.85 164 272.85 164 272.85 165 273.85 165 273.85 166 269.85 166 269.85 167 270.85 167 270.85 169 271.85 169 271.85 172 268.85 172 268.85 171 267.85 171 267.85 169
 266.85 169 266.85 167 265.85 167 265.85 168 264.85 168 264.85 167 265.85 167 265.85 166 266.85 166 266.85 167 267.85 167 267.85 169 268.85 169 268.85 171 270.85 171 270.85 169 269.85 169 269.85 167 268.85 167 268.85 165 271.85 165 271.85 164
 270.85 164 270.85 163 269.85 163 269.85 162 268.85 162 268.85 161 267.85 161 267.85 160 266.85 160 266.85 159 267.85 159 267.85 160">
            <fill>
              <SolidColor color="#FFFFFF"/>
            </fill>
          </Path>
          <Path data="M267.85 160 267.85 161 268.85 161 268.85 162 269.85 162 269.85 163 270.85 163 270.85 164 271.85 164 271.85 165 268.85 165 268.85 167 269.85 167 269.85 169 270.85 169 270.85 171 268.85 171 268.85 169 267.85 169 267.85 167 266.85 167 266.85 166
 265.85 166 265.85 167 264.85 167 264.85 168 263.85 168 263.85 157 264.85 157 264.85 158 265.85 158 265.85 159 266.85 159 266.85 160 267.85 160">
            <fill>
              <SolidColor/>
            </fill>
          </Path>
        </Group>
      </Group>
    </Definition>
  </Library>
        <Group d:type="layer" d:userLabel="Layer 1">
          <Group>
            <Path data="M16.525 17.975Q13.80625 17.972852 11.9 16.075 10.014648 14.18125 10.025 11.475 10.014648 8.7685547 11.9 6.875 13.80625 4.9769531 16.525 4.975 19.231055 4.9769531 21.125 6.875 23.022852 8.7685547 23.025 11.475 23.022852 14.18125 21.125 16.075
 19.231055 17.972852 16.525 17.975">
              <fill>
                <SolidColor alpha="0.2"/>
              </fill>
            </Path>
          </Group>
          <Group>
            <Path data="M11.75 6.75Q12.55 5.9 13.65 5.45 14.75 5 16 5 18.45 5 20.2 6.75 21.95 8.5 22 11 22 13.45 20.2 15.2 18.45 16.95 16 17 14.75 17 13.65 16.5 12.55 16.05 11.75 15.2 10.9 14.4 10.45 13.3 10 12.2 10 11 10 9.75 10.45 8.65 10.9 7.55 11.75 6.75">
              <fill>
                <RadialGradient x="16" y="11" scaleX="12" scaleY="12">
                  <GradientEntry ratio="0" color="#999999"/>
                  <GradientEntry ratio="1" color="#666666"/>
                </RadialGradient>
              </fill>
            </Path>
          </Group>
          <Group>
            <Path data="M13 8 19 8 19 14 17 12 13 14 15 10 13 8">
              <fill>
                <SolidColor color="#FFFFFF"/>
              </fill>
            </Path>
          </Group>
          <Cursors_Cursor x="-263.85" y="-157"/>
        </Group>
  <Private/>
</Graphic>