<?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.
-->
  <TextFlow version="2.0.0" xmlns="http://ns.adobe.com/textLayout/2008" paddingLeft="4" paddingTop="4">
	<p>BEFORE</p>
	<list paddingRight="24" paddingLeft="24" listStyleType="none"><li>none item</li><li>another</li></list>
	<list paddingRight="24" paddingLeft="24" listStyleType="disc"><li>disc item</li><li>another</li></list>
	<list paddingRight="24" paddingLeft="24" listStyleType="circle"><li>circle item</li><li>another</li></list>
	<list paddingRight="24" paddingLeft="24" listStyleType="square"><li>square item</li><li>another</li></list>
	<list paddingRight="24" paddingLeft="24" listStyleType="box"><li>box item</li><li>another</li></list>
	<list paddingRight="24" paddingLeft="24" listStyleType="check"><li>check item</li><li>another</li></list>
	<list paddingRight="24" paddingLeft="24" listStyleType="diamond"><li>diamond item</li><li>another</li></list>
	<list paddingRight="24" paddingLeft="24" listStyleType="hyphen"><li>hyphen item</li><li>another</li></list>
	<p>AFTER</p>
  </TextFlow>
