<?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="HScrollBar/HScrollBar_thumbIcon" version="2.0" afx:className="HScrollBar_thumbIcon" 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="shadows" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt">
      <Path data="M4 11Q3 11 3 10 3 9 4 9 5 9 5 10 5 10.4 4.7 10.7 4.4 11 4 11M1 11Q2 11 2 12 2 12.4 1.7 12.7 1.4 13 1 13 0 13 0 12 0 11 1 11M1 7Q2 7 2 8 2 8.4 1.7 8.7 1.4 9 1 9 0 9 0 8 0 7 1 7M3 6Q3 5 4 5 5 5 5 6 5 6.4 4.7 6.7 4.4 7 4 7 3 7 3 6M1 5Q0 5 0 4 0&#xA; 3 1 3 2 3 2 4 2 4.4 1.7 4.7 1.4 5 1 5M4 3Q3 3 3 2 3 1 4 1 5 1 5 2 5 2.4 4.7 2.7 4.4 3 4 3">
        <fill>
          <SolidColor color="#86866E"/>
        </fill>
      </Path>
    </Group>
    <Group aaa:type="layer" aaa:userLabel="highlights" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt">
      <Path data="M1 12Q0 12 0 11 0 10 1 10 2 10 2 11 2 11.4 1.7 11.7 1.4 12 1 12M1 8Q0 8 0 7 0 6 1 6 2 6 2 7 2 7.4 1.7 7.7 1.4 8 1 8M4 8Q5 8 5 9 5 9.4 4.7 9.7 4.4 10 4 10 3 10 3 9 3 8 4 8M4 6Q3 6 3 5 3 4 4 4 5 4 5 5 5 5.4 4.7 5.7 4.4 6 4 6M0 3Q0 2 1 2 2 2 2&#xA; 3 2 3.4 1.7 3.7 1.4 4 1 4 0 4 0 3M3 1Q3 0 4 0 5 0 5 1 5 1.4 4.7 1.7 4.4 2 4 2 3 2 3 1">
        <fill>
          <SolidColor color="#D7D8C8"/>
        </fill>
      </Path>
    </Group>
  </Group>
</Graphic>