<?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" xmlns="http://ns.adobe.com/fxg/2008">
  <Group scaleGridLeft="6.75" scaleGridRight="20.25" scaleGridTop="20.25" scaleGridBottom="6.75">
    <Path alpha="1" winding="nonZero" data="M27 13.5C27 20.9556 20.9561 27 13.5 27 6.04395 27 0 20.9556 0 13.5 0 6.04395 6.04395 0 13.5 0 20.9561 0 27 6.04395 27 13.5Z">
   	  <!--dropshadow-->
      <filters>
          <DropShadowFilter distance="5" alpha=".4" strength=".33" angle="90" blurX="5" blurY="5"/>
      </filters>
      <!--outer border-->  
      <stroke>
    	<LinearGradientStroke rotation ="90" weight=".2">
           <GradientEntry color="#b6b6b6" ratio="0" alpha=".2"/>
           <GradientEntry color="#b6b6b6" ratio=".50" alpha=".6"/>
           <GradientEntry color="#b6b6b6" ratio="1" alpha=".8"/>
         </LinearGradientStroke>
	  </stroke> 
	  <!--solid fill-->
      <fill>
        <SolidColor color="#ffffff"/>
      </fill>
    </Path>
  </Group>
</Graphic>