<?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="Glyphs/DividedBox/DividedBox_verticalCursor" version="2.0" afx:className="DividedBox_verticalCursor" 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="outline" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt">
      <Group>
        <Path data="M12 11.525 11.55 11.525 6 17 0.45 11.525 0 11.525 0 5.575 0.375 5.575 5.95 -0.025 11.525 5.575 12 5.575 12 11.525">
          <fill>
            <SolidColor color="#FFFFFF"/>
          </fill>
        </Path>
      </Group>
    </Group>
    <Group aaa:type="layer" aaa:userLabel="icon" xmlns:aaa="http://ns.adobe.com/fxg/2008/dt">
      <Group>
        <Path rotation="270" x="4.95" y="10" data="M3 -3.95 3 0.05 5 0.05 5 -1.95 8 1.05 5 4.05 5 2.05 3 2.05 3 6.05 2 6.05 2 -3.95 3 -3.95M1 -3.95 1 6.05 0 6.05 0 2.05 -2 2.05 -2 4.05 -5 1.05 -2 -1.95 -2 0.05 0 0.05 0 -3.95 1 -3.95">
          <fill>
            <SolidColor/>
          </fill>
        </Path>
      </Group>
    </Group>
  </Group>
</Graphic>