<?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 flm:originalName="TabBar/TabBar$tab_skin" version="2.0" afx:className="TabBar$tab_skin" afx:baseClassName="flash.display.Sprite" xmlns:afx="http://ns.apache.org/flex/2012" xmlns:flm="http://ns.adobe.com/flame/2008" xmlns="http://ns.adobe.com/fxg/2008">
  <Group>
    <Group aaa:type="layer" aaa:userLabel="fill" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt">
      <Path data="M50.1 1.9Q51 2.75 51 4L51 22 1 22 1 4Q1 2.75 1.85 1.9 2.75 1 4 1L48 1Q49.25 1 50.1 1.9">
        <fill>
          <LinearGradient x="25" y="5.0625" scaleX="15.975" rotation="90">
            <GradientEntry ratio="0" color="#CCCD7A"/>
            <GradientEntry ratio="1" color="#A8A967"/>
          </LinearGradient>
        </fill>
      </Path>
    </Group>
    <Group aaa:type="layer" aaa:userLabel="HHighlights" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt">
      <Path data="M50 2 2 2 2 1 50 1 50 2">
        <fill>
          <SolidColor color="#FFFFFF" alpha="0.3019608"/>
        </fill>
      </Path>
    </Group>
    <Group aaa:type="layer" aaa:userLabel="VHighlights" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt">
      <Path data="M51 22 50 22 50 2 51 2 51 22">
        <fill>
          <SolidColor color="#B3B3B3" alpha="0.50196081"/>
        </fill>
      </Path>
      <Path data="M2 22 1 22 1 2 2 2 2 22">
        <fill>
          <SolidColor color="#FFFFFF" alpha="0.3019608"/>
        </fill>
      </Path>
    </Group>
    <Group aaa:type="layer" aaa:userLabel="Hline" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt">
      <Path data="M52 22 0 22 0 21 52 21 52 22">
        <fill>
          <SolidColor color="#8C8D73"/>
        </fill>
      </Path>
    </Group>
    <Group aaa:type="layer" aaa:userLabel="border" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt">
      <Path data="M51 3.95Q51 2.7 50.1 1.85 49.25 0.95 48 0.95L4 0.95Q2.75 0.95 1.85 1.85 1 2.7 1 3.95L1 22 0 22 0 4Q0 2.3 1.15 1.15 2.3 0 4 0L48 0Q49.65 0 50.85 1.15 52 2.3 52 4L52 22 51 22 51 3.95">
        <fill>
          <LinearGradient x="31" y="3.9625" scaleX="22.475" rotation="90">
            <GradientEntry ratio="0" color="#AAAB8B"/>
            <GradientEntry ratio="1" color="#82826B"/>
          </LinearGradient>
        </fill>
      </Path>
    </Group>
    <Group aaa:type="layer" aaa:userLabel="transitions" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt"/>
    <Group aaa:type="layer" aaa:userLabel="states" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt"/>
  </Group>
</Graphic>