From c824ede99cb449252823876b6224f6ed75e799cd Mon Sep 17 00:00:00 2001 From: Keiron Liddle Date: Thu, 17 May 2001 07:48:06 +0000 Subject: [PATCH] FOP now uses Batik to render svg This is handled for awt - using batik to render to a graphic and pdf. Pdf still requires better image support. The elements and properties are generated from the svgelements.xml document. The version of batik is 17/05/2001 cvs. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@194250 13f79535-47bb-0310-9956-ffa450edef68 --- build.sh | 2 +- build.xml | 14 +- docs/examples/svg/makedoc.sh | 2 +- fop.sh | 2 +- lib/batik.jar | Bin 0 -> 2162477 bytes lib/w3c.jar | Bin 85340 -> 0 bytes src/codegen/elements.dtd | 20 + src/codegen/elements.xsl | 146 + src/codegen/propmaker.xsl | 25 + src/codegen/svgelements.xml | 1355 ++++++++ src/codegen/svgproperties.xml | 259 -- src/org/apache/fop/datatypes/PathData.java | 302 -- src/org/apache/fop/datatypes/StyleData.java | 81 - .../apache/fop/datatypes/TransformData.java | 228 -- src/org/apache/fop/dom/CharacterDataImpl.java | 114 - src/org/apache/fop/dom/ElementImpl.java | 173 -- src/org/apache/fop/dom/NodeImpl.java | 238 -- src/org/apache/fop/dom/NodeListImpl.java | 86 - .../fop/dom/css/CSSPrimitiveValueImpl.java | 116 - .../fop/dom/css/CSSStyleDeclarationImpl.java | 394 --- .../apache/fop/dom/css/CSSStyleRuleImpl.java | 323 -- .../apache/fop/dom/css/CSSStyleSheetImpl.java | 194 -- src/org/apache/fop/dom/css/CSSValueImpl.java | 82 - .../apache/fop/dom/css/CSSValueListImpl.java | 80 - src/org/apache/fop/dom/css/RGBColorImpl.java | 89 - .../dom/stylesheets/StyleSheetListImpl.java | 79 - .../apache/fop/dom/svg/GraphicElement.java | 257 -- src/org/apache/fop/dom/svg/GraphicImpl.java | 76 - .../apache/fop/dom/svg/SVGAElementImpl.java | 81 - .../fop/dom/svg/SVGAltGlyphElementImpl.java | 62 - src/org/apache/fop/dom/svg/SVGAngleImpl.java | 205 -- .../dom/svg/SVGAnimateColorElementImpl.java | 63 - .../fop/dom/svg/SVGAnimateElementImpl.java | 63 - .../dom/svg/SVGAnimateMotionElementImpl.java | 62 - .../svg/SVGAnimateTransformElementImpl.java | 62 - .../dom/svg/SVGAnimatedEnumerationImpl.java | 80 - .../fop/dom/svg/SVGAnimatedLengthImpl.java | 78 - .../dom/svg/SVGAnimatedLengthListImpl.java | 79 - .../fop/dom/svg/SVGAnimatedNumberImpl.java | 84 - .../fop/dom/svg/SVGAnimatedRectImpl.java | 78 - .../fop/dom/svg/SVGAnimatedStringImpl.java | 78 - .../dom/svg/SVGAnimatedTransformListImpl.java | 82 - .../fop/dom/svg/SVGCircleElementImpl.java | 114 - .../fop/dom/svg/SVGClipPathElementImpl.java | 83 - .../fop/dom/svg/SVGCursorElementImpl.java | 86 - .../fop/dom/svg/SVGDefsElementImpl.java | 64 - .../fop/dom/svg/SVGDescElementImpl.java | 64 - .../apache/fop/dom/svg/SVGDocumentImpl.java | 213 -- .../apache/fop/dom/svg/SVGElementImpl.java | 199 -- .../fop/dom/svg/SVGEllipseElementImpl.java | 115 - .../apache/fop/dom/svg/SVGExceptionImpl.java | 68 - .../fop/dom/svg/SVGFilterElementImpl.java | 140 - .../fop/dom/svg/SVGFontElementImpl.java | 64 - .../apache/fop/dom/svg/SVGGElementImpl.java | 75 - .../fop/dom/svg/SVGGlyphElementImpl.java | 62 - .../fop/dom/svg/SVGGradientElementImpl.java | 107 - .../fop/dom/svg/SVGHKernElementImpl.java | 62 - .../fop/dom/svg/SVGImageElementImpl.java | 76 - src/org/apache/fop/dom/svg/SVGLengthImpl.java | 191 -- .../apache/fop/dom/svg/SVGLengthListImpl.java | 197 -- .../fop/dom/svg/SVGLineElementImpl.java | 135 - .../dom/svg/SVGLinearGradientElementImpl.java | 110 - src/org/apache/fop/dom/svg/SVGListImpl.java | 120 - .../fop/dom/svg/SVGMarkerElementImpl.java | 148 - .../fop/dom/svg/SVGMaskElementImpl.java | 97 - src/org/apache/fop/dom/svg/SVGMatrixImpl.java | 235 -- .../dom/svg/SVGMissingGlyphElementImpl.java | 61 - .../fop/dom/svg/SVGPathElementImpl.java | 301 -- .../apache/fop/dom/svg/SVGPathSegImpl.java | 185 -- .../fop/dom/svg/SVGPatternElementImpl.java | 151 - .../fop/dom/svg/SVGPolygonElementImpl.java | 96 - .../fop/dom/svg/SVGPolylineElementImpl.java | 76 - .../dom/svg/SVGRadialGradientElementImpl.java | 119 - .../fop/dom/svg/SVGRectElementImpl.java | 223 -- src/org/apache/fop/dom/svg/SVGRectImpl.java | 111 - .../apache/fop/dom/svg/SVGSVGElementImpl.java | 368 --- .../apache/fop/dom/svg/SVGSetElementImpl.java | 64 - .../fop/dom/svg/SVGStopElementImpl.java | 75 - .../apache/fop/dom/svg/SVGStringListImpl.java | 109 - .../fop/dom/svg/SVGStyleElementImpl.java | 109 - .../fop/dom/svg/SVGSwitchElementImpl.java | 69 - .../fop/dom/svg/SVGSymbolElementImpl.java | 86 - .../fop/dom/svg/SVGTRefElementImpl.java | 154 - .../fop/dom/svg/SVGTSpanElementImpl.java | 95 - .../dom/svg/SVGTextContentElementImpl.java | 120 - .../fop/dom/svg/SVGTextElementImpl.java | 82 - .../fop/dom/svg/SVGTextPathElementImpl.java | 66 - .../fop/dom/svg/SVGTitleElementImpl.java | 63 - .../apache/fop/dom/svg/SVGTransformImpl.java | 121 - .../fop/dom/svg/SVGTransformListImpl.java | 115 - .../fop/dom/svg/SVGURIReferenceImpl.java | 143 - .../apache/fop/dom/svg/SVGUseElementImpl.java | 194 -- .../fop/dom/svg/SVGVKernElementImpl.java | 65 - src/org/apache/fop/fo/SVGTreeBuilder.java | 7 +- src/org/apache/fop/pdf/PDFDocument.java | 2 + src/org/apache/fop/render/PrintRenderer.java | 2 +- src/org/apache/fop/render/Renderer.java | 2 +- .../apache/fop/render/awt/AWTRenderer.java | 679 +--- .../apache/fop/render/mif/MIFRenderer.java | 8 +- .../apache/fop/render/pcl/PCLRenderer.java | 5 +- .../apache/fop/render/pcl/PCLSVGRenderer.java | 1400 --------- .../apache/fop/render/pdf/PDFRenderer.java | 197 +- .../apache/fop/render/pdf/SVGRenderer.java | 2759 ----------------- .../apache/fop/render/txt/TXTRenderer.java | 3 +- .../apache/fop/render/xml/XMLRenderer.java | 2 - src/org/apache/fop/svg/A.java | 127 - src/org/apache/fop/svg/AltGlyph.java | 106 - src/org/apache/fop/svg/Animate.java | 106 - src/org/apache/fop/svg/AnimateColor.java | 106 - src/org/apache/fop/svg/AnimateMotion.java | 106 - src/org/apache/fop/svg/AnimateTransform.java | 106 - src/org/apache/fop/svg/Circle.java | 139 - src/org/apache/fop/svg/ClipPath.java | 142 - src/org/apache/fop/svg/Cursor.java | 105 - src/org/apache/fop/svg/Defs.java | 135 - src/org/apache/fop/svg/Desc.java | 120 - src/org/apache/fop/svg/Ellipse.java | 142 - src/org/apache/fop/svg/Filter.java | 106 - src/org/apache/fop/svg/Font.java | 106 - src/org/apache/fop/svg/G.java | 135 - src/org/apache/fop/svg/Glyph.java | 106 - src/org/apache/fop/svg/GraphicsCreator.java | 5 +- src/org/apache/fop/svg/HKern.java | 105 - src/org/apache/fop/svg/Image.java | 144 - src/org/apache/fop/svg/Line.java | 144 - src/org/apache/fop/svg/LinearGradient.java | 179 -- src/org/apache/fop/svg/Marker.java | 106 - src/org/apache/fop/svg/Mask.java | 131 - src/org/apache/fop/svg/MissingGlyph.java | 105 - .../apache/fop/svg/PDFDocumentGraphics2D.java | 120 + src/org/apache/fop/svg/PDFGraphics2D.java | 780 +++++ src/org/apache/fop/svg/PDFTranscoder.java | 659 ++++ src/org/apache/fop/svg/Path.java | 121 - src/org/apache/fop/svg/Pattern.java | 161 - src/org/apache/fop/svg/Polygon.java | 120 - src/org/apache/fop/svg/Polyline.java | 121 - src/org/apache/fop/svg/RadialGradient.java | 167 - src/org/apache/fop/svg/Rect.java | 154 - src/org/apache/fop/svg/SVG.java | 232 +- src/org/apache/fop/{dom => }/svg/SVGArea.java | 3 +- src/org/apache/fop/svg/SVGD.java | 130 - src/org/apache/fop/svg/SVGDriver.java | 1 - src/org/apache/fop/svg/SVGElementMapping.java | 17 +- .../apache/fop/svg/SVGLengthListProperty.java | 145 - src/org/apache/fop/svg/SVGLengthProperty.java | 143 - src/org/apache/fop/svg/SVGObj.java | 55 +- .../fop/svg/SVGPropertyListMapping.java | 3 +- src/org/apache/fop/svg/SVGStringProperty.java | 6 +- src/org/apache/fop/svg/SVGStyle.java | 132 - src/org/apache/fop/svg/SVGTransform.java | 131 - src/org/apache/fop/svg/Set.java | 106 - src/org/apache/fop/svg/Stop.java | 120 - src/org/apache/fop/svg/Style.java | 125 - src/org/apache/fop/svg/Switch.java | 167 - src/org/apache/fop/svg/Symbol.java | 156 - src/org/apache/fop/svg/TRef.java | 130 - src/org/apache/fop/svg/TSpan.java | 148 - src/org/apache/fop/svg/Text.java | 191 -- src/org/apache/fop/svg/TextElement.java | 2 - src/org/apache/fop/svg/TextPath.java | 124 - src/org/apache/fop/svg/Title.java | 119 - src/org/apache/fop/svg/Use.java | 142 - src/org/apache/fop/svg/VKern.java | 105 - 163 files changed, 3710 insertions(+), 21344 deletions(-) create mode 100644 lib/batik.jar delete mode 100644 lib/w3c.jar create mode 100644 src/codegen/elements.dtd create mode 100644 src/codegen/elements.xsl create mode 100644 src/codegen/propmaker.xsl create mode 100644 src/codegen/svgelements.xml delete mode 100644 src/codegen/svgproperties.xml delete mode 100644 src/org/apache/fop/datatypes/PathData.java delete mode 100644 src/org/apache/fop/datatypes/StyleData.java delete mode 100644 src/org/apache/fop/datatypes/TransformData.java delete mode 100644 src/org/apache/fop/dom/CharacterDataImpl.java delete mode 100644 src/org/apache/fop/dom/ElementImpl.java delete mode 100644 src/org/apache/fop/dom/NodeImpl.java delete mode 100644 src/org/apache/fop/dom/NodeListImpl.java delete mode 100644 src/org/apache/fop/dom/css/CSSPrimitiveValueImpl.java delete mode 100644 src/org/apache/fop/dom/css/CSSStyleDeclarationImpl.java delete mode 100644 src/org/apache/fop/dom/css/CSSStyleRuleImpl.java delete mode 100644 src/org/apache/fop/dom/css/CSSStyleSheetImpl.java delete mode 100644 src/org/apache/fop/dom/css/CSSValueImpl.java delete mode 100644 src/org/apache/fop/dom/css/CSSValueListImpl.java delete mode 100644 src/org/apache/fop/dom/css/RGBColorImpl.java delete mode 100644 src/org/apache/fop/dom/stylesheets/StyleSheetListImpl.java delete mode 100644 src/org/apache/fop/dom/svg/GraphicElement.java delete mode 100644 src/org/apache/fop/dom/svg/GraphicImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAltGlyphElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAngleImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimateColorElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimateElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimateMotionElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimateTransformElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimatedEnumerationImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimatedLengthImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimatedLengthListImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimatedNumberImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimatedRectImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimatedStringImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGAnimatedTransformListImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGCircleElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGClipPathElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGCursorElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGDefsElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGDescElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGDocumentImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGEllipseElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGExceptionImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGFilterElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGFontElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGGElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGGlyphElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGGradientElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGHKernElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGImageElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGLengthImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGLengthListImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGLineElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGLinearGradientElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGListImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGMarkerElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGMaskElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGMatrixImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGMissingGlyphElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGPathElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGPathSegImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGPatternElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGPolygonElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGPolylineElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGRadialGradientElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGRectElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGRectImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGSVGElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGSetElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGStopElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGStringListImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGStyleElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGSwitchElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGSymbolElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGTRefElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGTSpanElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGTextContentElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGTextElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGTextPathElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGTitleElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGTransformImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGTransformListImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGURIReferenceImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGUseElementImpl.java delete mode 100644 src/org/apache/fop/dom/svg/SVGVKernElementImpl.java delete mode 100755 src/org/apache/fop/render/pcl/PCLSVGRenderer.java delete mode 100644 src/org/apache/fop/render/pdf/SVGRenderer.java delete mode 100644 src/org/apache/fop/svg/A.java delete mode 100644 src/org/apache/fop/svg/AltGlyph.java delete mode 100644 src/org/apache/fop/svg/Animate.java delete mode 100644 src/org/apache/fop/svg/AnimateColor.java delete mode 100644 src/org/apache/fop/svg/AnimateMotion.java delete mode 100644 src/org/apache/fop/svg/AnimateTransform.java delete mode 100644 src/org/apache/fop/svg/Circle.java delete mode 100644 src/org/apache/fop/svg/ClipPath.java delete mode 100644 src/org/apache/fop/svg/Cursor.java delete mode 100644 src/org/apache/fop/svg/Defs.java delete mode 100644 src/org/apache/fop/svg/Desc.java delete mode 100644 src/org/apache/fop/svg/Ellipse.java delete mode 100644 src/org/apache/fop/svg/Filter.java delete mode 100644 src/org/apache/fop/svg/Font.java delete mode 100644 src/org/apache/fop/svg/G.java delete mode 100644 src/org/apache/fop/svg/Glyph.java delete mode 100644 src/org/apache/fop/svg/HKern.java delete mode 100644 src/org/apache/fop/svg/Image.java delete mode 100644 src/org/apache/fop/svg/Line.java delete mode 100644 src/org/apache/fop/svg/LinearGradient.java delete mode 100644 src/org/apache/fop/svg/Marker.java delete mode 100644 src/org/apache/fop/svg/Mask.java delete mode 100644 src/org/apache/fop/svg/MissingGlyph.java create mode 100644 src/org/apache/fop/svg/PDFDocumentGraphics2D.java create mode 100644 src/org/apache/fop/svg/PDFGraphics2D.java create mode 100644 src/org/apache/fop/svg/PDFTranscoder.java delete mode 100644 src/org/apache/fop/svg/Path.java delete mode 100644 src/org/apache/fop/svg/Pattern.java delete mode 100644 src/org/apache/fop/svg/Polygon.java delete mode 100644 src/org/apache/fop/svg/Polyline.java delete mode 100644 src/org/apache/fop/svg/RadialGradient.java delete mode 100644 src/org/apache/fop/svg/Rect.java rename src/org/apache/fop/{dom => }/svg/SVGArea.java (98%) delete mode 100644 src/org/apache/fop/svg/SVGD.java delete mode 100644 src/org/apache/fop/svg/SVGLengthListProperty.java delete mode 100644 src/org/apache/fop/svg/SVGLengthProperty.java delete mode 100644 src/org/apache/fop/svg/SVGStyle.java delete mode 100644 src/org/apache/fop/svg/SVGTransform.java delete mode 100644 src/org/apache/fop/svg/Set.java delete mode 100644 src/org/apache/fop/svg/Stop.java delete mode 100644 src/org/apache/fop/svg/Style.java delete mode 100644 src/org/apache/fop/svg/Switch.java delete mode 100644 src/org/apache/fop/svg/Symbol.java delete mode 100644 src/org/apache/fop/svg/TRef.java delete mode 100644 src/org/apache/fop/svg/TSpan.java delete mode 100644 src/org/apache/fop/svg/Text.java delete mode 100644 src/org/apache/fop/svg/TextPath.java delete mode 100644 src/org/apache/fop/svg/Title.java delete mode 100644 src/org/apache/fop/svg/Use.java delete mode 100644 src/org/apache/fop/svg/VKern.java diff --git a/build.sh b/build.sh index f23d25714..9d561f17e 100755 --- a/build.sh +++ b/build.sh @@ -13,7 +13,7 @@ if [ "$JAVA_HOME" = "" ] ; then exit 1 fi LIBDIR=lib -LOCALCLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/classes.zip:$LIBDIR/ant.jar:$LIBDIR/w3c.jar:$LIBDIR/buildtools.jar:$LIBDIR/xerces-1.2.3.jar:$LIBDIR/xalan-2.0.0.jar:$LIBDIR/xalanj1compat.jar:$LIBDIR/bsf.jar:$LIBDIR/jimi-1.0.jar +LOCALCLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/classes.zip:$LIBDIR/ant.jar:$LIBDIR/batik.jar:$LIBDIR/buildtools.jar:$LIBDIR/xerces-1.2.3.jar:$LIBDIR/xalan-2.0.0.jar:$LIBDIR/xalanj1compat.jar:$LIBDIR/bsf.jar:$LIBDIR/jimi-1.0.jar ANT_HOME=$LIBDIR echo diff --git a/build.xml b/build.xml index 47f797953..3a8b57b1b 100644 --- a/build.xml +++ b/build.xml @@ -205,6 +205,7 @@ Sometimes ant gives out this warnings, but the build is finished without any pro + @@ -220,12 +221,16 @@ Sometimes ant gives out this warnings, but the build is finished without any pro + + + + @@ -334,6 +339,7 @@ Sometimes ant gives out this warnings, but the build is finished without any pro + @@ -424,6 +430,10 @@ Sometimes ant gives out this warnings, but the build is finished without any pro + + @@ -438,7 +448,6 @@ Sometimes ant gives out this warnings, but the build is finished without any pro dependent="${propinc.xsl}" outfile="${build.src}/${replacestring}/fo/properties/foenums_${ignore_this}" smart="yes"/> - @@ -460,6 +469,9 @@ Sometimes ant gives out this warnings, but the build is finished without any pro outfile="${build.src}/${replacestring}/fo/properties/extenums_${ignore_this}" smart="yes"/> + + diff --git a/docs/examples/svg/makedoc.sh b/docs/examples/svg/makedoc.sh index f77f7a853..344f61af4 100755 --- a/docs/examples/svg/makedoc.sh +++ b/docs/examples/svg/makedoc.sh @@ -14,7 +14,7 @@ if [ "$JAVA_HOME" = "" ] ; then fi LIBDIR=../../../lib/ -LOCALCLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/classes.zip:$LIBDIR/ant.jar:$LIBDIR/w3c.jar:$LIBDIR/buildtools.jar:$LIBDIR/xerces-1.2.3.jar:$LIBDIR/xalan-2.0.0.jar:$LIBDIR/xalanj1compat.jar:$LIBDIR/bsf.jar:$LIBDIR/jimi-1.0.jar:$LIBDIR/../build/fop.jar +LOCALCLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/classes.zip:$LIBDIR/ant.jar:$LIBDIR/batik.jar:$LIBDIR/buildtools.jar:$LIBDIR/xerces-1.2.3.jar:$LIBDIR/xalan-2.0.0.jar:$LIBDIR/xalanj1compat.jar:$LIBDIR/bsf.jar:$LIBDIR/jimi-1.0.jar:$LIBDIR/../build/fop.jar ANT_HOME=$LIBDIR echo Building with classpath $CLASSPATH:$LOCALCLASSPATH diff --git a/fop.sh b/fop.sh index d91034f75..a80e5d698 100755 --- a/fop.sh +++ b/fop.sh @@ -1,3 +1,3 @@ #!/bin/sh -java -cp fop.jar:lib/w3c.jar:lib/xalan-2.0.0.jar:lib/xerces-1.2.3.jar:lib/jimi-1.0.jar org.apache.fop.apps.Fop "$@" +java -cp build/fop.jar:lib/batik.jar:lib/xalan-2.0.0.jar:lib/xerces-1.2.3.jar:lib/jimi-1.0.jar org.apache.fop.apps.Fop "$@" diff --git a/lib/batik.jar b/lib/batik.jar new file mode 100644 index 0000000000000000000000000000000000000000..90de37c961134f976a37ba9391793d36cb3621f5 GIT binary patch literal 2162477 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�v~JY>=S|h(vOx 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ંp7RimIHuPFM^QmoP0(rID~RzpTP9SCO#f^ zjB*`l_MvX%KIe$EDze&$49b#4YH5uFk2pWm*!1+T%p!6UJudKES)-^J_;mu5??S& z(Fnb;S|;v+YTF#ovgcv$mw;#5@2~t}jvtKy@aKF!sB9NY)2|?ZaOw5s<#r06eAw9?8M_io3SU^%+!2GKJ4H!`5+v8xto>T9gpmn_`QT2u<%%%@DJoH)ew^c#wBVl%I z`FDv(hNyDl5(Xp;-0{KDnu`ZOutnvsk(~+_BymRu8J-$(_Wj@@9qN;TRXg*h{LkS> z7a2+P^EC$9qm&2E`e@CTQ^_GS1Ij^iCIPKz`@V44#%~u@JB4j$#-`;aQ4W}~{JE`u?$?e)(bg`Gny%|JQ&Uak-EmQ#$O#!>RI|zLQIxWNI&ZD}WE1&zZEM+tu~PM@@3g74iKpXgWd@@>vkATQ3<|Fcw-8 zF`*X09V5X=3Q>A=urEZPAcBnqMT&eHWnI4*$$c(ThB3m#inItbScGNjURy93_db^n z%A?Zkq)MkS&V9|Lg>eXe_0=ep3)LjC{ZM)g847xL^?rRwm+@Qd1CFWLX!7?T@?6XN zlZiE&KM@HjrPfxrCOgluuDAg{)VDos3{JahN3S880%k>V=rS-I$6wO6DJUC*z=qPa4VgpnMO5?jVVIW-c*T@hk z;bNs~0unv7VWw*GKUHeN&;cxPdFH3b_w(Y3xDtWTj7#QXPBS&p+MR01y^XJ{Xc`}+ zN^^+=8Ad&J+7}E?s!4In&Ow3`Wy^~ewahc8U-XKnzGDZkw&;g&?LT1Z(2<=L+L3WY zwrjtrQZNc>(HN1cj&maxP_c`oYVfU9F527xJ^EI-JHnZn+uFV46Eyrp%S}0P$R|1N zn@ggt02dWxHyE&%YKzJmUpzWE-@O;Kp-vI$nWT48vR0YpVXLRM&6}+kVyE#M_L|Zy zGqL7UM6Zb-7R7sl;NJ$JXu5?AS*QpDjL%!JLJH-?0gN?G7RjF8qLd7D&)t4Fi=~W3 zdxpmI=jezbfFA2k1NoYevSzq_yD8)MWqBsq;5=dxdc@e-UItOK+QDKj%9JIY;n>lm z7HXT;Zu}7V<=nsdL-c%Y8Qo$MzM0RCT1Qhrn@i1q2g>$U$gtgu3V#n<5}fwVdr+)B z@Oj0zN{RRsGJd++8`dCF7a<)cQ=#$OFFi16V=BdBQYvdR0|X&8&Q>)rfI4ZR8XR|n z&Ug(Eks7bd@|RyV`lTg9WeuoJ#?HtEDeum6;IDsbD3@S^6K_80UxrT=`@fID|I)hP z|Mn&R*UKd<`7d59Ma|C;jK*yvIR~ijMXQdKbS2MAYDnoP1UHYDrcg4>4RB>;j>LDS z7+M*e63__l2j=y~4SHHdIZVGye0{xt1FJPN7!pQs4I|sKL3pgTN5(}XAc7qi)7~LmiarE_i42~|9YxpRgnkul zS$*q|Zkdvepp6P*c)vidHGNd1Z$d5NfPZnIutP5~cE_>Nn+pg(g{8p3F&yhdQo^3+ znxDCc6W>icVHae&kVr8lzZI|Dwr&tyD>$f z+{g5wLmEb-C6+d*4-v|2WzO{DL$HFAgExknF2qIz+8%a@>&jqV} zZ8HDb71nbh_6(r&0 zU(|TX#CMIdMB1xxggsO+i2?FwmeX5P)0Zx<`7XYmSy(G%u3#td{RmfG@Z!&9C|#Au z!%v^FTju{y>=x9wF*LUNR}lMaiO$@jjjMJ=F4>OgSIS0VHJk`DCK5G#a&zdK;TI=P z7ttohi3_T&DTc37URR%8uL##x0;1<>?`G43i0_E0MYcJu&FCJ>d;d(1iOY*g%=!mK6C+u(JEM?BQmXuhK^FyErZe zjcy)eL-y4d>~;Fv4j&nkl?<8Y0~f-r2Zy9U4K*py;pg;GdNifmQD2`im@{s4_1RWU zG{Bi<=BCD<6jsH%9A9raxiG*ZtxT@pmcg)oG+aOVch=k`8F8%3_?%Kc^lf8y9v*kR z1)9}^Vw_x)>AFGRgF;r}7YlX-5=kW<;l-TBkIAEoy&4<_HsF+~Q0X;>onb3UggK_e zR#eO76;4k<$@|`rBa5W8kkyf397ltDDFGvcd743u8LjLJQNs!|%y=f0!B#XA%nu5t z#~Lx+d?;Urh8&k3cy~&!CGM?EKrOL*BU_!78>fIRsTSxE}k^BKt5=_&8(sIu?= z?7^>w@VC5tqD=KaqKxamtq=sQjQ^&|_`3o@LE09H9^N}H(5lXg90pn9H@G#hgnxH> zvoD{yP(dy@{;Y$mLR_=e+32bD*pvVTp8XcsRUZ7Vb?HMlKF?<>$2Rkg>&N^1b0kCN zj(h|-t3~mS2@GX(gYO!>ialwsM&L_eY1UEs@ARu?+YPm0LH1NK`golm2rWw`XonhS z-s{KG9qX7`*a2(P(cHnCH4ks};Yu&Se87rYfZd6LxE=(s$#;dD$lNg}h3nk(99b3CTFvZw?x?m9wFUydK@|&| z5xIpp1C7hPzj;pA|^7R;+tkP7XtieS{Ko4w5ZN8Yh-SRDXYx6>=$`P;&}S zaeZyRU3H+;>R^ZCK0RLu-CU$F=2m%0TI*cnp1NvcqA>;9quQvO6SP#L7KkUu6$ng7 zDKFVu^>c;Rr>~h*MEr_3A7El-7^o}|6eP8*Yh)YnhPc*zi!|?kgI!2;8iHU)?7}in+63-0g3&FtC z5lM#d#R^o|FK2WUjnQ08Le{u8R45zLMlY(Yt)||IF{4WEu*|HwZQhr1S7=mlHzYMS zHg2-k4OR1nz52AXUV3i6Tv+0I98Sg!4>;5)h`?34?g0J|W$zeY_uusUwlN!9O&U8Z zPGj4)&BkoFV%u4VO;s@nl}x0b|YJHRh3S#8=KHk^WGwUD=`MzrswUSgs+51bCM zftRC{M^o@*UUH(457%?xvLBbUUDhW_FJkOt{DO^XyA9sCdcC5#n0f{KO(J$v(1w27 z7X=0e5)Bs*!r~BSBsgGQBwY)wf7=lQoZ1WaQsK}z*nPg}du!+J9t&va?uS8=a_bKj zGb!&el79Y>P!4kpDZWVH@C|+lD3fNo;dlbfGToveUqSs z_>3Isjkta8Iy_?Fx{ixTzQ$`DqCwSl-faTt_FWpk68?<25?g$gLw%>+afY>nk+y=f zw9IER#omz**qZJm{#?L{K1(7az>2$&3syq}e+0{UHT zUQ3;~m6(zv1=H=hB7;hY0PFnGISYwLah2}ZE_O^f2v$G1Gd9y>0lQ#K#32%&xbRDu zvafN0F{Wm}dt-U4xQd@&SnaATkJ~E5yqPxA1*MeCl|FQsn8c_e9ffgprCTs!4>08! zaH*m%cu9TJz(`CTcqj~$#-fxTj!_LQBMAMOnSNi17L_>M zP9f6gvwIQYyyjhw#S57c%vEF;AAXc2ik%d0`0)tJM2Lu>%+9A3Me>AV%-UiMi2GuY zf_2Qfq_wE667_oE; zi_l{5wBN!}55d8-s9-G@)Nr^Za?H!(U?vx(p@JaFQXD$AiR6}|+}4pu=dY&ECTSy) z{0HwLg}AGWQH!#Xn-0cy3PPIl`lfN7nwDs?uR4opV-z!_E*jR1{N2C$shYac_6KEVe~YyMUe~luRsb1XS*)VCg4O9; zF_p0fCd= zTn>DqO!S6Ay#?YvPak0+O!C4*E3z&Iva znlw4FLcA2vX-kdWPZpPw7b3~@SUz8izFpNiyjV9Sj1`t3k;?O zS1c?bkrRMWNOEA}X@bUFFw?51WJFHvM-|ENYr^<|_CtIPEeKO5Uk@ur&7uuh-m6`l zEnb{2PGT)3i?p0OuVBm5O2>>;yd+Uw2rEVzBO7(t!El~$-Sh@GeyPea1z_ZnBPK4u zLRc1dFU}^GM)AL)Pp{pXC%8Su5m4)Zw}?H>Zq_!DxYF3o*)*jV#)qz-dr%@1k~kT5 zt@*^x4)nZ*ddYp>#Qah$P`KX5Qo3H03J+id{Kkm1D4chP;>=QA3-|H7q_^a~-y>Gp z6HvXZUJdM?mGBf(T{9+VZC0PDW}3l6b&B`A*|DTHl3y(&Z!nCDqXrsG(h$?lDagRz zBC4P|QaVHi$0g2xl998bKwgkF)@Q^gfx1^g`wV%w4Aw2VKc7E@I@vg6XT*UzO>)v= zm$q<_4hs*APAZU{%A0p_Z$ z*_EORrhpZ!hq8YMO*HkGH@u7*F=6Qajqiq8(h4R4&fWk);A8OT5Z&fpWKUI& zOiX+mE3cH*mtnWM)txm(zh`wQCySgsp)Z(g`Nk1F&&Lqu49ime9yv6V5Reu}tNA5Z zBHSU>H&Ts$>pS2vT<2`h+%*3*qR*3Z+BcrEN2j=(XaARyx}Rqa+#`ta(TISs8|ueN zkXy>^0g7ad7}YD`H&;GcOb@W79f|dbB72&wL7xxMi+7Us6TX5+R=KP5s0X^N>YZIf z`I4Xu*H(SjP=YnM#3Hl*A_tpolktWy@|iKAH>Mz70L*k6-jM0)np;x|b94qoJO63B zcxiheS9=6`yT6PZMy6Y2U^6*EQQ1f)eo^9wzQMW8N(vuq9b%-0=nHu!!FiR@m(8!# zo)r1BY$DWlsEJK5Kj?U+%nEB+QjJVom5Ic}zFdf!sp^KwdQFzAgJl;5z6)vsSxxo9 z>U4C5s_(HI33_@V8XYYocD=>qQ&GB0VX<?oFg6_Gzy2m5A!~AV;8o>|h z^@Kff&cB;86ucR(;+d=M{2K*HC(PxC3-{?066W9fDSzKd6_%4xwJ>r0XlV;se{{D0 z59O}Hh%A@@vNz)JFh|&nzm~Eza^Cqs{GhM`8k#n0WEP$|2*YDsI{MfwwV9Og^%LKy zI*%6MBXxtF@acUa&+^$ zy22^bPE8PPT9R+sxaUj8o6fP|N!pgFy(M)!Xc7UQKpM!|s*m*vDA0!c+jcoQ#{-J~ zfG1%>DeLPcre1g0n4CCwKYp}z8n?YnBbN8p6SsT#B|R_6b;Lf=YUCN6;w-v}QGrjy z5TBEDgg!!v+&|^S&tIpHP9Noj>0iqU@xPW6|Lf0{H?TFaCjI!W{KLdV$;A5O0`$k0 z?fB)zvYAeh{5ENV)m{F}xSL8x}hU|#@0Bj;5jTtnBk=)TN=LrsUqe3uILOxI} zSIy3dDdY2t{{ZIS3AEsWSBPm3INJCD`Be=ch zB-GT%T+d1mmS>UDgC;HvDfHXdHl*iHSUp8ZlS3Atw`5?B1bHsP0ma1J5}%_`#**T- zglYr(FY1jKJi6r)ugy+h5O}*zTE&LBgvMA-p=8T1jnM>4AI85fZYn z^|3~96zCcIA1q5|>lAm`@bSmTFeW;JCVva5O|4CF%WXHPB6RMtYy7Mux6ceeGLk-} zWB%HN3Z1iyAj6idm5NHX7ws9tui93LTCz_9{ork~w-yQZcf|hyQ%12ngzeF_Ph5Z5 zG&$DHK-s|j&6?3DOf8OnuyNzwJZo}E<(9n%?lpWJJ6~tx-~k4ju9i+K$Gy}h9~!!$ zK5|IfL-QJS5QxLNPW7MSq&HCP!NS)wj58Sc)qX4y9SIvR5L;am#fq=DV-+Q99bab0 z(V6I*>;T;Ro?&pT(R?p_ba3OFRU1g0sIuj4wL$>?7!*BoQGSF?>m=IP>Ny@5AR`QVGYvxtQ4Yeo~{cZYSnIyVq zoAZm8@%z~io~?A((I9FWvc1+wse+WtM0uB@xpRz`OdJ7a8G%bC9?7b_*NhG{QzcR= zZwr-jviRPdFD?@zzNo9bqrzD8rT^o zvhH*D)r=U5hD5Yl=dSrC#P8ebpUf8&&!2M_bA8`^Pt&1pS^ot3mkBd*iyJXb=%2IL z_6S9Bf0rRr5Mfz*t^{r4!ZBa13o29}uyLyqs5(H6x+k zBP2PwS#mG+;8ezBr8kP^BxEThcW(2tn{mf&9&gj%FT`xtB8)PtAC~?o3`1!DmJIqn ze}h+ypE!m)#Zn4T->FvHxu?TXo-ZH@f1 z2K*^FNSz7KbZi+$Yk;ue)2!zfqCS#07}l)UCE|RvtdULiKpTAkFcwqK5$e&T+9z4|Xh4`C3`q-hdM%3zNlP2Z(jJHye$Y&5x;;$z2yn$Z{|OrZ@_7a+ zDlboI$OYe-cKMX!zKn15nkO9*6^w4a=}bt zj>H*i*9i2KZmI*0Zn^{5hSa$B3ODV@y<{z&*u5q#y0ANBEm2Z*Xw*va)Rns?kX6Oz zV%j|kVP8mbWBcp{1J4KRMAGePYfL+>Hd!R`k}{chA(<)m1tNae4)p%< zLOfFqf@#?`#c))sP~6ghbPRmfn8S4U$856Mi8z{2lt_RH2+fUW9(QJLqmGC;(Y(Yq zSsKM_sWp)vC#}*j6yosCqD@CAVzY5oX;w{2)T_51>k!5c7A5KVT#a3q69}y4_itzGL{4&|8E*j|dm^oyGP0nL&Nr@|GLIT{7gEObH#yT6F zIB{hW7H=N{t$vxua2mnSS$q39W}b`WB1s|T!&sK8yVUNMl4V-1!Wswztd7Mb`;?BA z7^@6EQG03i#UC4r>?Ou|gt0hD zNvB4>tfBqD%R0Jw?v`+}m}V+Afa!xF(Wa^y3|cPS=F_(2K-kRojZkoBzV~~XtRS0?+B|pi(4UL?6YP$$YNk>e3}?{RaGE< zj_u%*04n-&{2v1K{j-B}J4e7Pn2>HhVq zS>V0(?LM$8>u!;abL(ryL-i-6H;%qb%F9M|-tIHcXEt%7_V89c6mxh$#{3`tK4)+E z(P>PM7huzPbIC*te;)eU009GrF#7XIoF7Gx=1n52ocOn>%9JIWcTdv_lYY z54v|4-W`tWv7_}Y7HtoE5K*5^;1d%1eGlkDoKca;B7}0yTxWhoaxGeSUMdU2%?sF- zeV@k>K%2|e*2SLebj@6otp*e27{Lz>`VR#>UP0{0 zZe$WzWxjetIj~vaQNKm0wg$_#M(aMKIb$0{aecW?7{b|R!x3TVebu?>DVuJ#@L0CJ z`d6zwbvc0q72?w;w7d;*~Bh2fFjKS}XexZfR4q)WNi zc=6x_2v+Nt9^Rj^Z)v@p?cY}=S8a~narWe>s649uIIua0GujWd6@vn69^LNBOI_EO zk1HIh2n4OLHQ{*R^VvvA+1axez`k{+VYPxxZ(6z9+M5e+ZEQvG_2ATNo`=!#w2v*| zctPo{DTXOgStNrq03)k;;a-beO9A%ZioEH&i#l{BF$I7=5fZcgy2H4n0&i~?9IfSf zLi18kDvq;?dTT1Ew^u})B$*vDfE`x~5IEc(x8`DFupw*Tm!h>KLfp!iCOvq;1OeMv zh~v&HR19VDN;CAsGQJ4%0H*TrMm25fY?f8qx?E2XgT+v~2WOt9SkU>?9vnI2$TY{d z;z4Cy`!$OazH?LCiLzI|1)t2#xngc=WvG(LOn9180%oH?C!fIV*5Er zv$V5ODe_vgxUuKl%I7w?<)`BknG!3#v$MTaQ$Yi=8S9+zTzivfZpeMKw%?7&ZKGa; z)qd)qhLzD;7AEarX3kBYbWk!VO(GKYfhF>xilG+4)q!iU-+ zBOu(X7xQC`N%2=roZx@#hC)h8ss`51|GO8eYW+jbdp{&K5C`P5u8&qI<4MwY*UR_7 zkzkwS!G4yIu{pB=aFQ!gpe>H)54UyYGSFvx?SNXtSe@zAvYqJu1pX1;Fhd20Je6do zIm-BTd)_hi{;+9wbF?+}GXQChQ4qUd8yUQr9@rFsJ=7i%#JJgmNbIgQXb7|Mp&rD( zG~kSQtRYb?BlhxjLbg)B9GpP5-EmvUx|0R zx@g+7?YSQ1-fGO4vemQ>=Zcsa!GM#rLocNs+69c9i=}|;ms;IB&|a)|tJJ0Y@e-wq zZhV)}l3tm5UrLsnFikW?n&yy}rlNXVX`^n!rJf%twRD<9(}N{vOd2TBuC!(~LIR9G zENsyQtQX$%bH_`pCnJ-n3oxH~CCY;fx{VL1UK1}trh~jHY|mZ`iIu;dcbh^e3m_0t zHHS2zYj?-^6YP`S5hA&4?5o(e04^w>upuG)u!)BiW>syp*055Q7{i!wTrs@-10y`) zF82KVl924J0wkpqZYI( z*^3wyMqT4&JAuZ~xT7_YetH&lei)8CHR0ExWa>?Jf?TNMI=(6J>(vkFgm}F4@4C=2EoXn` zZvOPlXD%8l)zt%1w9YZYg6WeV*QkI!E} z@$t-eZ-(K{rdRaF3X0w zpF)Bug6r_&3(CHSU3g9*a|;hQy@CVdqG?Utf z2n$Mt(2&l#lpB1fS*v)bLnYCE`s|ayp@axaZyfJ9*?!wzcQk&n_A*9es6N;p00C#w z&y*m5(#IxhBMsiBx+=33E{E)c#Xu4N`}OIeXC1Khc}JRgNkZSpu=&zh}W zv{*24qdn!NYNW{1w5w9De06rBhKtITx44XN{^(!62ztIMk@a%IaTy3*P&(?myy*WC z9;rl7LpUV~qQa6`W-HVg|7vCwWw6jLz8>s!mvDyqxnCghy)q5Wh0u^+buP!fO zeHO~4U~F#F9J3$8I&ZXA3fK~UZ)*#9PP7(AsHw%_`{T$6l>T{@W-ft81|043G*o|r z4oCIwh4|F!?f6-FpjehzW(K5!fyv{mb~zdTlPBnZDkr?q)o}iFP1u?;BZ$q~Lm*(lRFBYWK;}~h2O;)M zBYqXI?9PkdFu>tTl`t~{FK!51EW0mWu&k({D9EC#UkRL5sz7hQDpo05RIF+wa;%T?(s`nwF$a1@WXp;{RaT5?!1^Ryb7LpOz!=>%ZgZeO99Ml)= z-QF(KyJj-%22DhtcqNO2mU;we4^MVoGT_@p8}u~Mj(TL;e{1*hO-34hLax+*rZMrt zCW76|L**qmQWbbrY4_reC^PW_%iix}ZTF&%kPCLG2%HLZ$c*^?R33O{B5V(C#7D7n z3&?!}6Y9hsOzwRGlyM>tMxuThRgXwdxu7xdN|brV73!ql!2={=rF2rEJ)0J`1SJc3 zagT>+k*$;Oc_Gx)xa$HnZbBlyHS6>$;AA!%fnD_LSTAh6I!6b3LJFpTQCYGz8I7>IZ|4qWA?%D+9{mLH1DwJhLt)6FH?)^rz7osRgd794m{oo5`Gom&(_ z3|LuYZo_9FjP&8cl4OZrh-=bX;1w$S>I9PJ(ANS_J3l5940<)o=7vO5YE#yd;Y`~A zag}!8G5x6Tn8ejml28tau1%>jJm!!9yU&XzlsK2%n9p1QV~t(3LC=LK2ttrLEo@|3 z+A3PfGC-?Mn^TY!R?7DvSMT3-u-_vGrtYJ+?3in9K+xSvZA)s*oZe=j;apB~TI1a| zladw;jjm8tD4B&*C`i=6P1u^L`jxZ~Ebz#BRhTGkkS%ztPAXKxb1`gzzN!`~^`u`X z)nI>|ao7wCM=x#;kt`+k=%^?f^S@M@9{M%+cArp7*QbAt+F7=ZeQ|Wq9Eb+j8GIRE zaB#MZJ9BXyCD6|&es1zbFk}4_AsX=!kax)Nl=Bm%MoU|V_ zjuq^v{Mo&tmaugZ6N*2&rSPV@t|iKyn}fAhV%cmu|CzNxD*Uk|%Ey8G=vb6Her}H} zUQ;_=Q}mG#(?PN)?};a|gQk8XXZO{x@XT#Q2#tti%+*q`3mb*#qTrfE0nd8J@IC7cdxI1 z*UlxF0Md98qpASd3IbM}|yU<_prW_64 z#d>~TxAULjjG?N#yLi0G#dMd}8CAKJn2N*|tm!nbY?PLmvaH!?gT&RaE@kopw2m1v z=cDL6i56@?EiKME{0e}OXbx|kim3tj_4&!PZ$(2>-@&Jj4eA=o*Dy~8bkp#&3&b(E zcD>OzxNQ!H_DDK#CQd-=X*hn6x(JAg>y)25qAtL%nN{7OpIkofy|3bP%3u$oaRWW- zg=d-bawsemLSV`fEkzZyj6Nq;KSP&iXaEd{q;M4oR2Fc%t}u*VLc-ZLk{hEoH*#U? z`%?F+Kl+k6hZuw{*rqNS+fS&OvEV&_a@Y zBC|Eq8MVzRfVw$0qH-G}MUU*-$V_~ZF|^+%pX6fZ#T<25|I6D?I52th0@uV&|JVA~ z?=plJvJ4$l{ZJc@Ll9^qV``?z@<;tqEj{atgbkxyl6qIM0K8iC_XrEoYA)8ihc>4&5M5!BKf zx+2WF#_(rd@;BKFyhj?(bzQhen$?Y)yT(KY9IIofd8OV&d$Ka~P&{u_v1wG<;GP}T zRh#v#Cr+*J*FNS&WP*pJN=N5V7hQw{0;F^$KvTek^fYG%K1iw=~EdR`!G zGwMV$9Ex@TS@V}O2OhQ^C~bf6W^`x=PTSmj)AcZ+X7FGKBGF@{;Y^O8wxB>GL%;=A zoxS#lJ}+b^p92Xggr1vHnwu8N!g?!OtRI7eta5N~_tOMO$W3xRyl6mz`x{|z-L3*R z7R*i%KaVcLIGP{7^gKjTn7)2uF(Ro%Ku&05mpvIH5-ZF!eS?SyA`1h(%QNULgFS4A2RldrNXA?wP$V6NuXKTdaMJXFBE|7-13Ic{Nm{39V|K>J&} zp6dT!qV!)WlIm|QG%;)+ESPlKGQ;-nyb4!T^Tj$#5GJC0w=k^&|q8Zu=Or>A(y|m%>Oo-VqMOAxDv|+zd8EFfACttmSBM*8mgR9(4 zi&!#luhjp(DPN6fH>%&;o8T{dY_Q)y-q%bYc-z}kkBwkpB03n!C=FRxjlN7d>?Y;r zY}^ds#u0%9NsaFoLO3tiHpc@}&wi-&9wu0{y?V{uTAyWH;53pEbF;+|bO4fYV~}O0 zs?(*JQxlhJvy9Y#6T;#tHXeA4-wdW|?4xQHg{e;F4@~m69^(|U4eGQV9~*0C#H#j} z{EAsZvsfFkD(}9tsFY!vYDS?v2nVWSlxYkzh99(ilm3AIIKX8~TbJG@8bER(Vt@te zoMB%QO+?_e_h*9h667zeTB!qFRRtYsdFer9CP&THw(75j4lZFIt6T})i-$j|wid(d z)^A9i2E8Z>_F9wb%oga ztc09k;L!Mc>J36u^Y)8T^A1t~cvT$mvK7FV=GYWV{OEXjRd4DA=I9Gn+I8*%W4{|V z)9i?Yui!v14m(Y`9ID{=Ie=a{K^5V016WUSfcQ#5{;tR><&1%F!(*ju)=mvfeO7P? zq>-<_`9%DR5Hb0m;u@$W7qLg|mkQuO2v4d5u1~syNYp<4atUE_x~5YK@_Gn`( z_m|3ouHdrZISJ~h9=OO;*p*WBvxzrVWZv@Z0-@p@^`;xNR{CqIX!#_{!^_nN*X`Yn zrPKD1b=llho{joiK727H-;E=+0(sH#2r(NCYeZLLE?xSJG9$PYK;q5b#A79aKeVFdyvg$Jz1vDvl;Oo z>o{`>XsDz&adaSSy?C4N3lx*dbf;a|A701i%ofwV*)5faC^mPL4fB3pHQja9XsvK1 zIF~A(Yn&A3!%SVAs;bMC05+=H70Cw9b1jn43_qW?+R4z~AMT#d*P*N+9mmgKp0!% zOuKJVKZ#&Gyt((M)FcB{(e2M^5flv`5^{Z;*7= zoLi1x)&Lr^4T;Jh5Q2hWkTH1H{0Z8^qX^I(5S}j**$#I0RbfWhQ5ZtdC0hef_5_`L zB6l8EHLIq;Da;K+j;>eG7SS>0TuI_@Rqq((Z&`W_Ve3WMN@$>m_TKxhXXR1B0-gbe z^(u8tQ3cL=G4=HBJ9+FE%<+UAd|`A%@&(=>6S)n^g333t^BBeOBXS@2riVZ~Y%t7h zF(4PHq$uX5gIO1Gh9>=+Ru*0II*6D*Zh@~ z(YF%{?SmftJ?__XWglnzxVY=@i_Er(*SD$5pEze zhY|vDrC*R^?Qy1lBPTKjXuvwAU|qKdlGECUil9jG(uS+YPDiOkU4i}4+#BQ4t7O?0 zX(!#K-qJfvP!ldjH4ItWLq|oWBYq$AT8@e7FN8qU!aqq1L4PEp6T~urDb`C-&(P9^ zk)wq(54SD(UK*!(pI>X9o|c7=GL6mVG^Xn8DI#N%;@he&DwltpHf!#LH?aIjWI^7V}-P z>5BA`&;9cTcyU`}uS<$8O#$jRdL9WD8!&?Rm*4n;*6=cbaEMJ$w;&=Bg1mH4 zT@vUo2FWsB#w7)*L_ZQZz$!{5TsB@Sf-DL3eczv^Z~&1ySO>>*8OuRu(8_J2E?X=* zpNa`3Zjaw?*bR-H5*SRzn5Tg`a)8EJgJrh%%8`)I2$?L_o@a>5xmg`CWG_3Y<)$?l z?S)WYQ(9Rl$76ajeqjsTtA$zbTE zy*XMz0!45E>*rrp3>fu-RI4eWNjl>`!Y#^mMa1P*hx9oCy8Xo;EM~rKB(UeGMOuJX zmJ$UYnB`k63_~HBh{#!zP^S?`Q&#B$VvO&*ivcaxq+dU3DZh8VUt@P=Dm0%dFQ!pZ)6rf5KTz zqTlr7Mqw8?h(}h*KSFu^G>Jn=Qz>lbPSYY#loFrl9&f`qXB;YW&Xt)zrqc#MFRC8@fu~A`kRcQyx(<;wo|-U8gv7Y|r5LX-(((OeHr7N9 zf&EJFaf<5C%(@>&2B^&bQ_k80DHwJ>-V5!U3J6O!eXfaFlmHf2x_&7ZVS-9?YHn+) znCwdo0zSX`?e8DOqoC(ctX5sQjTQ9pOwf8P)2e(aLG_~+h{EZx#>CkZxehMJ3@k{5 zITkjQ!H2Y(K7td{ITex9t4lvP8sG7_nhm$Va9P$Kw~Ls*Fp5k8Ri8cl5uj)I&#-Y( za>sb3*I{#IW`AY$!W2rxWnqWxQu8peF-mE&sPG)U9OtOiFFCsXs6NAdYp#y#QwQtd z3;FR`&Xd|_6>?RpSrT*O(O$bd`}lW3j>ged)ijsCf*j2@j^#}~)a8ya#%RUBF|tE0 zx6(Acf)i)alH(QW7LvVX#VRD1H#E}zl|H7~mzuQWH%O0zr)rTEnHis&m)j51AR?1uD(8_Dtcd{*F|kO#~DQ)xm&4rz_Og-_GY{OY4kRIDb|7c2(Wvw|L>gE z=D+ccrT-pa4Q$PvKMphrTNqf|nUVfm=O|!oEd5{K|G$FPMCE_;RnRa6d-a=PC`FMY zaQzJwgbzx0R555sRMfej*hapL?V2vFW7$U;ccK>-4cQ)qwt*@UU()_$9)m7kPiR*bS*jWtRNG!yGh zqKUHi{;oukVkB|j>sdUy5dosyoAd7LJ6L64qm!MG`TyCjNA!YllARlWLMSjdv!3lEYq&M{6 z1M}dJo~~KnX%44~@=S@^;~fI$-cRYF9l|ff>D*f}1>u+aPJ(tK^12xvI#IDTYoCpqJ@;ujL9=Faw70?xidt<` zv;e0SMH@*q)r9)6EHb3i2oX42Q!hyw(h87LJ`coZEWTk972#=0A&RFtTo44Uy;4-2HtpNCC;J`u$!ND=;afK z)6bsi>D2f29-w>?MH+M+uO?ES)9+ZMIVN8dq6}I)_VqyP@qtjjf zG2QrInydeA@N)mT!7G~B*twYe&E`iwm_pd^T% z(@GQ;ecQ&sw3D9uV@LIakvbLZGH&%OI-;K7>iHjZ$z2ozh87xt;P<8XcjxDWN3*FJ ze|&P8dIKxCvKqP|7pL@NfvUsC^ku)y=V8klImb6BmsG|YEqKlf!s+)UiFHD7PsCql z;-xs>kIAmT3hn0F7xZ=CR?@sNi9z@wU_YR9cNvCqDx}4#Dp0-vF{sySs6jRufm*O4 zB2jC-*VG*--Auswc^kC}ag$`q-k9@M%RqylE-n1tYS_C*x*C9d_(mFvK1+q?x!hy( zNJ^?TM+V71tw(AmsURAy6pY(mRQ5!&qk^*XnPC&bTa*;egCHM?tXfw7mrEw-JDsR| z?0xlsFHu4q*4r>c3ix~2z14mwQF|OcOkwf(M%ahg&?;?QVW-GxtOZ_c7538G=tCA6 zJHva7LmC--l=?BmUG126x=AW_y7XzXKuLGo4r*ZJAC}X6Ta6x>(IH$qsL>*yg-EDL zW&~OW6kt;M#da8Dj8D&(gbO{#kUC9?3G){r3B*!yRx$z&#o7$lu^ZLEBr|gz;qP)n zh1gm?0r<&FBFDvgE`pb@$(d})U@{!FlDC8f&8gO%RUb?z_yG+`Klxdo`DXGd4tGUo z8`-=&a%mw7yDdf9R>q(fs;P1yW zwflud`$}46qusl3(?6~$%c6E-c%MYS%WBCw5!_)3WvKoHAHkD2CFc~K|Me4YvFi-h zFgovh`mr=Bq^FP>1snUT-prXXa>r7a?=qOCWeC#Jim(~t$OzeHaUG4NIO3od6k7E3 z+_W+3{%^3unSG#fB`^^w#w&2~1vW{-co*qsyKVD9Jy8{WMT;9^8H=8f2UQv#6RV!5Bdre;oA5WIXCvbdCPIK z!_n;JcIlDmxQ9E*@pwoWlXHEXB--#x6Jtq53BIk7W;hPr#j)^6uMYep&hva!gcJsR z9YTi|H!^R44m=o2#S3?o$hdq-aO}|y&*mzMZ9L8I5t)QL9fnxjOlaL+o*Lp7B98)e z{Z!($C;Vapka0M+?kIn$3Q**zl)sJ$XZ*gJ4jaxHCuAaj4t>UR^UgW2DFGpX4#g%| zL98C9Fyoni>xiCDzH%AM@5j%wYlPL5K5+P3 zHq7nS;%!in7#rsG@*o=Rid&c&Tb5BM$fKb~lITIUuL`xGH)oBkZ+Qz9t+hdjoj1ns zsFKwPW9HXJeh?M{yqc9SXlSM>R>BZv!KD07C!@$MFQ9%9Bqab8kShjWiAaUI(3yw# zp;rvX@QHXz!GDVyfses6OsD94j;FZW?Yg;x3oSkk|8i~{=_Z!BYVF#=8@bhgq^Vnk52Zgef9>{&LnL{?76@%pi(KltHD_#O5y3GuxE) zS$_sY+PRUj?5Prk=OB{+En~4#9?>2!66afV7?UqX9>2Ga+)IZa*oi^yjXmS1H@&za zo|J#AwxRmpiHMSco`) zmK-n)N*O?uwzQ%SPfuAi6b;wnQmD0G>(v1gHXIEVgav5;FKp;Vy7kox&}Tfl_tg6l z5;d{i>HqZOdG=N~9{hAdJAkfCezJ{}V%W)AzH&$Yw;|WvYLxPTUZI${9}B8faWFH> zz$QA)7?=7A^@o?ds2bx`b%Zb7c&1S{<$WldMC$QG>1K>meptS|`nJ8wx9swZA5<2Q zrLW5N)P6TWW$l;J14qy~)Sfo8LCCf46YYxRT(4uaGx}T^33s98rf-CTWW(JX7dhl+ zxJQ+Qt*c{GJ}c@*IfcrAS|GS`5pVG8vc%u^aySyn`=rI{UR{Lc=XZ-8oW9q1l%ajHVZ@rT zc>cE$G>>aNcaKovdYll%vS`;Nm%1rUCBzA+tU7dIQ*>K=8}Gw_m_LWuuG zjA)dy4Us^qqjl8iY&nTFfkg3qq2H zVfPg?Md9T6hB5hJF>az$xGn!4hcD_xn*qJ@w4;4+p=)=@0u;lQ7p%I|;+w+9U zu1`xP>$bAG%<%)lxbDpJ*(JrZ{Sy3Ggw$Zp5XgBa(biTelnJHY@msLe?O&dDt2FU=voRR6KpuB zW_6hOvz5y4MlD7MXjd6yMiWC^A%sVUhsqI1F}Oc!CY`wnM_JNSF&ssUh0rSvqu*Hq zSd(dJvaLC(a8nGhJD0H${1VtoL5fK}i}Yo|`@Eo~IxbJ@1W|!f zm6ycwQ-(Q|Jg<>hk!ME7FybuDi>WNlXO1Sa+c0ILPFjz(8w6%?>9nem62zZ{Vx*TC zQoYGmS(vX{vX7A~^c~A9ixq$L>9f`4HL*%f*>wWu|8RxUw}vBr!cM!F$Xy0|+k=_C z4pZ8c)L=izFl2c{q2;;y{OWz5N>dM{@^_u{zzD_tgSYX(6=pXZyd4aKPt1Xq!qY8E zNAWcQHj8{GzCxfqR9>IN%hwn&G&uAb(i!KQ0ja-ONISR+-a{`fVN~!#bk~wwXpX7q zBUpK!_n)T<(P;UfTnF5^7Nex6?nt=q3|wwRirhgCo6!Dt9w1^Ai z8^bBj``59cp|*mr1g8C_taLan*Y<4s=vD zf8cUzE9q|LtcOLNanTY$0*#kr1v+z$B8jhop1mfFR#_CSD#_4(Fxb@2U1!T)(M?>v zwm0%V)p_!*jc5{WlROl=QEt>NXWxH+?!go)y?ehLp2hlrAe$59mlw=(JyEh7%C$6PdM{E&vvT2R7@zN za-K76N+}^v{hJkfmmkJb=l?_6TL#75Z`s1Z2^!qp-QC^YEx5Zo1Z&*gY24l2-Q9x( zw?+aa5V$<&oT<5U-kGOr?pxJg`_q5@wyeGPTB0waC`0(MGL7?`*4^Kt#a{VD$Hr^1 zkP8TiSEc-3<`o_iUy*W+xtr$4LS0^@|CHp21yi>ru6i)n2@FR)!cttZB!0z}&K_gm zz`0|kHi0|mN*bU&2>i#^SB82bF4qTa4gVIl{|`}L<3pSCZy~Gq7i8Z!dqP`*%F5{C zDZ1ngB^3t*KZAVeFx^TIURrl#uuKQpWk&Lk5LOpp0>6D6AK8^#h2u15PUKw#obXw4 z{kpy1^85ho3_ELkiYRV0jhQn~EQP+xrbY>aWx^Oo3C7|Ny#;53@QR}G1cc5-CUy5} z7V@vITHFYdJMI#7$4=j|1jSnRf7(S8fjqRd83@NcHL<0~8pW(R+HJ$PF_p+Y`MbV= z*|8R95$zPvfp3(;A(zmFj3MA1w+oN7A>3xIp&+Oso<;3|{N)~YL1|)yMRU2z%bm?C zZrD*4ruk35fJcD|wf2#{P7qZje+p>u7m$ii1T|`5*>)ZVzv}TP!&!PXyGa1CGbA?p z$z7lk+X{zRl}8XExKvo`gY zB5UR)$YY~-&q?Q-AZz7w+f(Os#FRRZaYH{+UMOi|!)~;f0_{eoQ~xTX9+~MpcVgu~ z1qs`QiR^W_-ORibpr-)^h0ddPaolZ5D+m#tJ7rJC1(h`O>|)J2AE2t6A8|IR8nKV9 z6p}(8b5`Noxu?GuU1CrCTtsOm8-|V$;?+chAny~k#FoT_$xuH3R3Vh$D*fdLC+nsh zy%l1$6(6;27bGu{ie5ka1kPe3wK3fJQ{o8iLEk?hTk8i7{ugAm{uZ+T4_u{;siT94 zgPFRymz$Wmo!!5m&*{1TH7(L~roW`MHckE}2g?vjN@tHweWcnJG#aaiwG_(RT+z{N z>-}-8T}(XH{EG$z;}w=kicN@}_e%xgWL>cy^)w-O;kxal*LQZ|?bn)PpD6;?-Z4vv zE06qP4ZnQKeSLlZX?GmFcS`*@IA;-sq~pmg5@Tb3R}3SI4^#ZpEm#pUj)8@`@ij(X z?YZ{qZ9|+b_=eZi#VpfVIb2NLl<+TbNdZ`O^`GW#Rh{5+vCJ;^9dx-2=56Me0gOU-M zl-qpy>@n=eTa{9Dv_=r?@U&8IzN?5xNuay7H{n6kMnI*_jJCdN3bu49b@#V8HdvJ? zHTvI~*R`~zqG_GiXnG5$Dw(_p=g%fM0(!<(IO20LmTnmu0YNgFj4Wv6 zP=b=#!llwubyw0Q^PE8kFt-i|3xF5Wk;1)sW*7%DH*$iPCA-4u96O#4m-sAUQi|@}aMy z*xuD9&(c>&I1O);uv|V{>X%)YQ}g=SkFTB_d#&dWt_y|dRAMmXxd#Vsz#Z1nNbsE2fS`KJ z0Dy%#YK)E!ZeQ@;v(j)0X-UU7go^KCid)0Q9z+y15;<$Pqw}jz57MX2t+Vezmq*p+ z0wJ1{l=EoaPW2NM<9hI)70H>sa;2Gha(^MQb@OEIq1UN>h7&3nujeN3ktV+w3(>}O z4mRYAW>sl4$Nh|BL8ODe4 z+7kuE+9Ng~RIW|Gw1x31I)a*`36jH@0?}=pt-Yb=NLpZ z2@(o^Yl?awkz#$#w|m8cdapByt{53(%u#`*&C=E&#oADBuKzVY+e#cBm77wOphhAw z;^4POnqJ_dD@sGJ!^&5#&h!b+d~lQ1*&UZs3cVoIa3nD!CH z8>7-=!5bgXtv8CSSriDb?*f)$-%^H zR>Sgp1HbX$g9wos-ID=tARstn$7fg8aoeSM1 zoaUU$R={DRqQ9E3zIF;B$yc3(7u;^xe`d&_A^B?MK!?JIUiu!9$(}| z&(!){D3J37w>N^x`WY@y*(z7^;>;wB(@I_HXQ;L0rLSp_wz8I0ktCv*WRXI%4v+zt zV^MREa<<5ZExt0ApEb;tP{VSnsPS`DT8?S9r~)pB8a&WBN|mZA8Br~TLxp9RUxEj1 z?S(-tg?*xi)l}abOU_{p#N!umKAX9xx@-k=wd@oh;T8{-kjZ1e58*@Yl&T+?m3p&V z;9N5=x?r9zS%W{hEZN1eDdyYpNvT?62$*qs)&|~_r^bbO3nj`@aaLqKkA0wujj^9j zy*r{GLb*hGIz&KQP1{dq+_SrDede!5 zcL|Z?l2yb{O`sjuuUt@YYm#i6ufg4s%wGX%)ZV*w!FGnkImy|2DFXR8I-{>wPhE$- zb#go$9~&!=YqAehN2Q8yZr) zYD;q&+vm~Jb5UbIC#fw@PAO6OFp16K|71L}td%*Ffm2pwX_vgn;WJ8*Cllw@dOUNW zn5u1SzGjtKadOOxzbK}!?(&ON`kF7W(SJk_%d1qoXC{F6ieli(KVQ8mT2*iSir}T= zaW!r%C0^>bh|yrK!87$TZ4O2@FrE>2E^pGPS~sl(IP=Ckj_7>GTx*Bq7SO-}`Sa^g z(ufX{8GhdwmOYY`o2kOG*Usf3{vG>W{``qKXPLEUE1Qx2N>N=|!l|WVaGyX!?m-WCOS9Ki@`_d3GJwLm6$@u3wWVd<7h2Wx zS*vcULmC1Z>bc3BoqQ;}g@v!c4X+|zegM_UIE0`tl}e@qGp94PW^U@*`q0L}V}dF# z*AY%0J-It{Y|HL(W`+;rPrHXG=EG&TpQ}IWz>X~asp9_Nvv6JMUL=67Vkn?0?CJpt z`iKE6D}qB2mj?tWxlCSh?V1h&9pc`qIZZ76G8i0&Kobzc?na(nHK}&ufepwhk0YxO zL7S#?KzebsnquVa;^NSU`Mmsdw6cw(YW9HOz7kl`Wvw>1&ae9!Lnl?YsZ_2$CAbmD zkLrX%7cpF$lS?pUj7xh*5`MEyv7l_C8D6gF)4Kr*dSF>C+Si8+`AL-uLLg7M_5 z5l2fv%y%A2x}&7?iSeUR8xvc=gZ9sB1BJV#OezAkUYKYnbbI1$NW_oM01V-#fw*r6 z(Q7(*n-LEL1}|teaER$Q9{gHqSuX24HBUjncyo*W!x49ma14z<0H;21SRKpg#eM`f z=SoZ&uyvlFDLknAZBU^LDtbW|^E#t`TG?K+DX7e;W)*U1{s}713 z#6@z^Y>D!neRN>zl7u&*&4xGw0Hd{OndCBIglv7H+@QO(h0+qz{)%jU=h|gGS8RP~ zLHW>)k8YbM%onZQ>^t#htbM)|-%Z}SPVT$>SO-R%n%6dxho~j^n#{2Yo0dO- zO=U)**G%_MTFxtbhsGB)r*(4j*d1^956;$2_MhODfEVtwv)9HC%|hX|VB9!r1K#X0 z{kw2vi2(u@C%=@v&O?%Um4yT7OBv~b4$CZd#SqgR-_X(sxta()0KSs-`5fHyfP9E&hcySof$w;Yfu6O zT@@XkI*ye$!Uw>2#_TE(R;G}?}_*_U~SL46)O(h?}-Ufe_o^&L1qRQp6DhEQF zJby&-*b8R?H|#K>i0zR%BgJ!BW@PptXKeOWHe(yfIGU(M&3eMrG7mGFi3y>p!WJKb zI@O%c#>EWH6KRdc6iNx{8Us%6w*aTtdq&HXGkr+yVX{FyeWGAnQMV%d*=Jo5`0l9Gu4VnM7TvAEK{rVlRi{2GW_AO!6JF{d!uD^hWv>H%Nx%GPT%>ITD(18=A! zM@{p=#pn^^>qrPnE8CdKG7XLl6XQh5iEiE1lg6dGud`=q6K|}BFI2bHBLUz% zugD-ZHmb)vET>pRrbB7pd)x5}{!HMIrKG!6g;BHtUHZIjVa05uNAb=T_MrRK%&~&L zcap*i>1os;UPihMmA4X}hx11F?qYecJ6I1KUQZn9Z^5WDMD?X?Z3#zUTEI7g2TqSA zYpwyRXLxK%zvcKH+4(|66z3oT)hjY+ST6CRRN0b7jwgo= zcRb%YWplKL(236HvMT35&#~1ccMOY-vHr+xf?I85B#s`AC~rB1w8VHpFQ#4 z?L+;&+s?l=+yAX8$iKw&cm3>|=w&t+)6#^ACrKb%u4}?ci`mgDNWnj@!FGr3zvLVY#aKQZ_hdE%?(A%nh8wVhqc>=Zf?ZJX4@!Phu>0k8 zdH7ju0ZC(X+tTU@70uO|QrwQ1Q@zwvrA0r5=?;A6WxXCp6Z-ZH zZN@QGz1>WaxE+5<%pA(hvnkI>ldLU@ZL8yqyC|KFBk&!M z52)~GV^Uz4sQiIch5}Kuz!C;~b$kAYoYRop5yD>u{)npq9AQuXn)eBI ziTwO>tud3}eSQ5}TS9wBrQC%!92TN~2gUs=R{INxm90_FsI8M!?w8@;1!|u1v@ej&wx4BzcBu zyM$saLsUy@51|gtmUrXX15Gopu~sd9=YbDRyH1=++gfi{jJsyC(R0IT@%O3o?)&a+ z<1Ri&FmU7sAD5F$S0}bI{|*SejNp89;O0|g-1QjTkm550(bptiugK0*Xk{zS_Qj7_@l+k3CeD(-{1p&RXX zEcgEYS%4#lHx`O3T-p40%suGlAN;z=VOvf12NKHv772|13ncuc5oxPwM@OHj&35Vu2nYsdYULom^EuL#F>0XW&(Ka9-KqFV|!ynVWTwMF@Ajh zpCbNUE;gBD2f#1po1T~J-(5F5FK@q|=K7RFV%sT<(DII)rN6CQtae`_SJ6b39-m zbYv@=y>IV7Bp|$T0ZEW^kd%2^D5$Azp_LX^;14rur2drFWkuN7Qzp8p*sj~5t8mE* z;o5cO?)5C7+nox!IAG=~tN_qd92ca_PI45)qip$-5vYVGqVObLUYy3?TtvG)B*QP5 zF3Qm4q%Etre_zJnSeXPma92?-v4$T#I;^TM?h9_rH~NU~T3?~0Yk5-tFqczbQZuF@ zqmcXosyCw@vj?hce#Y96#WhKyEiucjkfsCBsI?at0;e_QC+8jPN8{X<=qHPQc%?O8 zsTMb<>Dn5L6$UeA>lnmZ$wU>_DyU$%@`Y0bOpR)H=UuAiPn*MeC%`Z1h(}I0>bH)ROhYTDWbdSVSU6NBu?npci?ju00M< z%Yw*)LF#enk91F^+APH?Nv&Xa_$?wg!U7Tz@#6)T1C**wrp8Dl<*O zFEn1l51e;DyK2?I+b|32v<`NTWLO7Ms( z#px*Vp!tsZ12Avl9YD_-!;a6nV)r3yP{&6Koro)?lOk1+#)+HiVb*+~-Qp|-a48-$ zOt8(!&edxcDaf&Mx@=3T)irTtn+w$lX$e^vXjI~M-a=x+H9oyGx@rrVLS?9PW@LeR zNO9XeXc-VPo|G_vG5qTDwaT&CY6h+d|LK}MM=)xjqEgqn)M*B ztgPOCDOH{5O_6tj{XHci$(AL1t_!h*!qcn(u>=vJWMJD`3isYsJF|@9O8Y82Vc|0b2pSog@Hsz zAr5?(f+)4ox~W||3$;r9bbaXkT3V!;rR+|G}JxIjIE$nP#bf3km9zn^3 zZKiF0Xf&**c~`U5VMMlhzhaRWwhC@>`<#=#Q|GWz(nexc+B{n_&&iP>^gW3`t#PGMZa4@}^;pl8 zkj_y7l}8C=NDSxBC1uuPI$|2$bZ#M2I9q5~{LXetW>wUyQ9*&FsawzoB`h5rY06>IQgAn00Mr0EU;D=p1_8&j%*o zGr}t#$s18p+%MtkagB7~jGMkx8$av72BoTG3Lo3TE(mrL_*W6(OW{lU{jW0;gug2y z1phX5{Ixis=H_kpA9p1GT^X6GVXvkqfgXTK&DCKCuOL^!5M|$h_@&*xMi;O6NMnie z8zNN2vkMyM#Ng5H!>&TmZ4uF*(){Ox=R05=(_u3Na1$r+Tj0?9z89x8Gn5-K+eVY` zV@}hF_v2;9$L;hBk(IbmN~EIr5O;JQv(EySB*Gs`Xrr?Yb2Kd{j?gs){UN-~y_qk& ztj+|E;Z8&1_#x1{EDKR20^7?&3=l(znou}y zh8CxCJ^{Op(H^bD)iE_c8Z}fG8}2Bqci=bw| zlQyebrnZ;xd!1rB(bs&fVW&G)v)ApOtVCb&89~a$EFi=b2WborlUv^lUxJ@`&lOUd zMPG>d=Z>1Er0mCbeyRw-v%l2fFfQH!pcA>I+C?gAGWt;xTxpK&FNx=L%a{2#9Rrl1@oP#HHL;$GgU_y zA+`9H13{0_ZGjn|o6^++Z+yixY6;F74!|EpeHVH||Ana0)?#(%Bst}3(|doZK@0gt z;siBAHwmlAci|Gg{t)W1G%8h4SZmygpW3U61_ctmM^i4u-QGBS^!Y39V_wR<`Btx? zW>eN82M%>%l?1fuVi{~+pQ25dHag>u^QEv=<)z$F=Tj7o~twF*cIC3>XKd%xw?NK zEs9GJYL8TsVwIdPZ`qn>$66OSHw;H_5%q~tHiRQe2!V$eCOJpFPKcSmr1!^nL<3<@Scks5?)Z4Ur*EcHqMI@m4{j>O0p%VBZfxT57|7oIsk&pLy`SitLH)WUMI>b3VJv-mc zN@CLax*RX*;n5@P9qX&qOp=4jX3W>Kd86N>?Xk)^qyv6Y*q$c*GPmgPESPHa#$Syt zR;RT#C(Tm&sC$^Ep*{yq1X3&+n2xu)9^vx@b@cBSxs7ci{P39bo}#U*U$L04_p!yS zUQ1%C>CgtQAC>$un8zT$w)NEJHi_iu1^X5W{p%7Bwk|lr((1*l(e=p7qc=qwH0;r60`a^TQvVSTLyLe zzhDv2`oUAj1#81;s+VhQiSj7>NkldalUgqq@4@t5rM4JwUytu#PR_B4$iMC(gQRdQ z_2`zx#h5yBEx%r8ZftD4{I$0xt}+-EX}m4lKkNoBv(5Rj!^@Gy!V+CA`Sg&q6jvSe z0!@fJ&W2D?ir^Xz9ffdJLuHS*?Y%?~k z*;5o{dAWjamBRCnWbIJ>U_yDWPbE!CwOW+cVzN!DF^>?l+CG_B^})?&z(VE2aMvo3 zEZF|K-K;@$B(Z_(QR<Ov<($hW$Rd-rC4dJP_i9G5yC62=$Pn^ z=vB%jqEXA}9M6thNLS~LTbGJ7&(yu&`ef?Klb$~brrb`qCYYFzz8vOcy8h~AJDI+$ z`z{nP7|&xi6k)^~D!8q}Tw>IT$7T%q1wQ$u7X7KXok@Z}lp1w08^IKl2Fexg7=xbK zEwXZd6ce4_2=>@LIve4<)ZCfM_Pln=05FnsrOw_{nqH|-cRu)By%J_@liCUFaqUq1 zGDaC_ep+e}=?!ZQP~Klh)nJT4RjI~KBVk35yR{{w*kyxk^vGm;I6{c-s~|$}XsW_e zuwIZGtgqqse6&CLmX1St*rD_rSbK&DycKi!Y`+4plWvPluU~(m80m;k7Mw_j-TlktJ`OY-pF&b9E8|&39u_C-rvFv&mtQ6AW zpBqnA7{!WoSwJDYwcA}NciomMwnOcI>0Z13NH#lEbDXCxBwTf|tYI~JE*b1y!mmXS zkDVG_4Qhv)(E#IO(^8$60t>xedM@iX3`V%^9~1*qH8kP}kyU;O0x!j$zfe?MlC30N zwJdzjfb+2X=I&FiF-Z=`?kXj^OrQ9WC7-I%#J-5bpEmMChau4@AVj`9(3GBXNPS}V zsdamoMivVY^ywhOF8PCfRcd`hMxdA%L}A%CH>Ckf6M=b3@?27ch z%LDGau!qw*TVPlAs^C_ZR0iTenUwb%5wDB{xd`hjI-AnZhi;0`aY3esP=%%y@a0N6 zX4~TK45x|-ZH+Q-4UkWn0(vBZF%m4gyk-TJbJ4#3X=9P*m93)2Wcl>#dz7fy9`avL zhKiV6^;rQPN{eN;(xmq&H=$7bjd2I9Z>;*%G!J^Cs5Jd>2Hu{aQ;36;_ z!IV~*z80H6_e)9vfo~g6!}OFa*_0NBF*+-7AsCga9mT4tmHMvJB#ik5Dced~)Tr=NtCvjFq48%jR$K%4qQQocg9)AM zL}#XJG^MBLG8l4x>U|Q?UCx#H1IUswX7(zwT1r&iVC9XHu@;Xhd>N}NnJvy(L=-(P zMA204Q|x8Zm#vwFIFXeIYZ3utTl#6)$76idW58p@(76>eOCesvUg`7zuPE@tJjvL& z!;dvx%skCxV6iTC)1VVG9`#tkVk(ch3U$^wMVTdYiGoe<&1Yx+3J;br@K7lGUTo0<*ypSX4xZeZn2$-#P-PlbABjto~e<55MD*pV>^B z)gRSzDQ%^h@6TLozr50pV~a_O&_GrZw?5z?7vEadkl-^fzX|6s2;IO>zmEbHf57tj z!&Dhu2{kImjAN^lV2zx=WbaF!CI}%f6_gV^z*xo7XU=SAh$4VdU*8^^*OzF4*XX-ZcEPKV6 zglkPFg4HjaGnez|`sW1ZKiRM{lwTS{wa~kx*3j`sSfJ{nj}Y;-K&4L43{Z}T1i_9z z3Mi9}yS$;zRkjU`xiM!W6!g7SMgp}|&C~c1B@{V+Fgv;zs${L!1nMBdT`XKdWe`am zTa?aA2bbJ{6gO}WdRzMRw~&!SUn!j6s0>v8o*GpCzUya0>SxqkIK|JC)^2FQTGrOI z#UB#=zriCWoiEz7IF>Ukc-D*pYNflZB{=9}5v!uLvutd0Ieovl&%wekVKI`Sd7N6S zD5@P|_|6DWCSx$(w0=~4j=sN1(7=E{&r8-B+mPEZzF-;jxtu3AO08(fU) zOvt3QZs+@%!?k?QSu$i<(uSX@Xpy##3&I4DU;0zCTv-~KPblqez49>|2&TUFg_s9q zv_u7|95wP7nN3#h@R+W1zE}$OB++{EiP!P|$e7iN9WR*piq!?xP7`8w7?aB9Uk|rz z(1N96n1a>^|H}-?Q=T<17m(4Z5;VvdUP|@5nOls^ioe1W#m03es`Sd^H0KM>Oh?vZKm0X&ph`EYt8_cXvHB(~hWiLFkp*Vl73+K}E*<*fyn+KP)9|7D-zm znrug%XRyz~OVlz-x)EG+jq>_QH3J!9i+Z`F8l*t8$6s*4y_41wwa@i(29sEx!>Yft z48K6)N>D4%K!*A&!O4Z4KU|;qZ&;6}%nw|kEZ_SeNjww4-@@R6ur@(lowvvy2ZooU z-j@SVAjEz!QiNof@bT!Ol(Fx`zqn;l;~&9u$Z=?B2O(*m)1qz(Qum~2N0iuM`Vx@) zRB-}|Tyl!wUS(3-g` zY0=m#PCY@odnHH8l|JYL=`CH=a@5Ph5_dg%&jpb=buI>dPoI^K@}$R7NVDs-w)fFGO)IZ zC;Ph{C)-UuPus2zZ*NbJ1V4&!1K~bwDEad+6JRD{8BS5YNHD!58F14Yp_#-io(w7y zMtviFz%u?+3D4(+07oq$v;@4Jhw`!`a0Z(r-VY|3A2f?D{$`485(U@*pm5@QF1?|F z=Z&~tUU-8s?R`v4ZoPE+b#u_`q3b|isaO6A{XX5-gLrlUOJQo$;Y<9p?M|BgA5u#F zd|v5ezSH}z{QsDukcJO>$RukZnIxA^L?+PU0PLJVq2vs-RX=5xmRkf=)D}39DC}pF zKVP>Vli6S8D%jWHw^JgGkQlJZ%dmBkbI_cGykR>l*_M-B+L?*Rk@Mk_+QaaQBBC^6 zT&Ks$h-fUD3`ArqH)|t?LkY;#Xr=O~uWuJuln)?n%qK^d>pR|BrSt78k003^3!uQu zI@4@Y!T6G^;natj$WUZ#q^-=8TC2({CPWRkBlaKj3?pN^kebAm-+h%({khHy&z6Ky z=-)|VdzG{y6&-3viKZ)kLs7R=X_CQ8A{&=_EIv;ryYJ=q4+GfIM)z6mBQP{lnKEl8-1^VJn=q&XJPYo2U=dT3`1^2!gX;;iHq zRwn)t_N4)-OvN}TO+iGU-z~~&lmaQ5^2-htj(;evDL&>x=pTN;FSjI&(Xhr$6s=_T zw57Ds&#*+%&yczJ9<%S=R3`##KWXCU#Qox!xR+-Q=N{xJ4&?ksNW9`Zs0zVi`Fk;M z5qnGUDYvHuQDEjrsK4Jne;r0fh$q^pNA8l~kK#qq0-?p{OS}dvqG&nCj=7_7Ic1_6 z{T6Z6wi}>F%p8!^AcB)4GXqEnO#)buvX7k)FRk!O$}6ZO#V;Gik280S5eGLOCQ z?PWh1^T1jd&nR=v4z&_6m~)0_dD}UvAcWY3<~AnxSpNui6{#_uUQJ)5XE;oWjuMaF zrCaF0@atgg+%Baj_D9N)OuumZiNx6&j~%f0+_KBPpRd(RMch#XCi!QRT`*$ztcRnze(8 z9eGWthIgJ^1o87Xb4$sDE*pZXF3XwdBeq2_W2?V84|-y6L^bMz3zJ+SrAH~9%X|}^ zbm7n?tQ<&24ap) z{L72KfjK{iv?HaI(+#wSDi0p)-L1ufg|S!(?PWbqC*jq#1=Zda}VoL&yI;iYbHt36fwA2 z(a@6$5H2=7&tp%jYMU(Z%USEEiSp<%^jY*s>RCUC6{wI1y$y;!n11d_T{HT!1xy@s z=9fXf10ydOB97#2=F8JsnqJVKUS0@<;%PdN)wKV-e)z~8<`2&3)8gudKoECIE7hDJ zuK9H)ioQOA$~vZCX+u})l-W=7ch#sBw!{XtrbdZV{-2I4<<3A-Oyo=mMHTuonlv`; zpeAu(__v}fX6FpOtwrsn+|kYJL1%vEIQM<_RZl}H3Sc|1#HMI0J2-w{GXHJ*Bs5=6 z2Hq)-KBvsC{TpJt^e@-Qc9>gk?-hlLavdYe|O8)JU(Taw*5C=LoZhX>&JmPmd zAy1vJ;8OxCTqy04dx+|#4Urw(aWh=?dzDGZ~H_xoj2j|0Y_U{!I&v_itM*2`{(5%;(IcT&&GRjV;9- z9bDa9jIABqT>qKY+!Ll02ZhlA?_jb}7Y3l6x0mVr#YlTcW z!L;bn;V|SqF`PLPaW3BIo9#DOi&?*bowpcc}25 zVuMvJ*f`gE;ZWSx@GflY@?GO${GKFwnA)R;>!M8KW#8H1`$bQH&T?K5We&qJ3TK+y z0O$;HUxs=tM2x!mnH_P(I<0eZ&G2i{GHf+)qq3u$#kR$aamf1LmdksrfM=p1lU0u~|6 zj1n2TQqgfdX(U!_O2<1&^x-br+W3`MBIw)}Xn)oLLwPl*SU7T8B<74(%DXa2Z#dP~ z`yfUuVC|BP!l5r!J+clEEPDUJp(j;;Pj>yFPWk=|b^7n0_V3FSg%5!%7jFee2WvM+ z7jl+=_0Q`6RMuGnzhKm(E~g$(ZvlLeOX}){EY`}XsLaq2ly3{xe9aJB8y23M0Igf7 zSNs2z*Rg_NDXq`WWqX>;CV7%89_H89Wy&-bs@2~ zTV_>_bZ6&C6da;eLPu?3`d2#A11!|R68^^lpIL9tq z;oUO=y9;?%@FhK-w<%hsMA0RkIfz0L#g!~E?pNuen$$mn*l8_0^#tOZu$l*>)>9}i zpF7ag6@;VIK;{vE4-zmWD{u`1?h_m|u9|5t}F_FoHW zvujCLtzfDJ3VkT3B*HTS8YN#;DpXZ9WLLU8KRhL3W4m`l@l{^Jxrx8P1bh;zJilzk zs9YBF%edti>dU-+zCM{@h*}?$BQmd6R~f8~=Oy&jegdTc4@PM>c#YQ2aQF@m)WuCF z#P*jzE9FN0qSokUq8gojk)*S<%Lejh*m9*QN|1vTQC{pJQOXSD#TYX}r#HD%4O zDT<=jeG$yFUr>0=A1tl=aQG6%09rG<4Ho&thb9 zfuqTpi)6c>(JU)^`nFBj=mK~g88OANr_rdW5W-M;E+2ze_7N3Y5WeZo>5}(_+F`)f z4VFEFNo1pAjla~;)vsPtz+wH${bm=&@1*!hLilIDZx-X*B1hDdywF(hQvPp|F5Ow3 z(d5@qKoo~v!2|qXA3NNc1UcX%FnRoKU=sS4&s8({7~!A`ETu6TV8X#h z{e-B9ZVqGZ1qriLu3MR?A^^qn%dX~;TG_I9bZ7$y%HKyIZ4W|(`iacDyPi>EkXQUO z*gPNeeCK9*o-W$v3=<>>wny00;GF99`!)1k8-gzwW!v`;C>?m(uZ&_z9A9YfZrIeb zDKDK-A`}hpTIu9Qp1%R-d6!z5YR;9vg-7KPvDj%)#wq&` zB-m!uno)D6rp+B1>j9(+1*E@X`V^g>WKX4zOgKph=R~mmbMG)O1Q8iy8Q;!lU35caXNYqWp$koOp9`8Y zDc;mJws(H09+b{?lex-jhaiqV5dlm&^`0q8TomYCi?fsd`SviQnPkIBsou|w0m}dr z3WGIHWgnD}TAundkd%4)saPN-NO_a+rx;DSKvUp)S8Al?M4vbX58u0lSw`e=gWZS< zF^A5G;o+U?SuG9=w*dy!GH&&Ps60dgi_B<{6ZAy7NSuXP+9glpq?sk`&L&m;=CPES zU~vvBaC~p2 z(kycvge)p?lwr{+@#)xcbVeB_UOFP!RD&6kQTxT<8q|iy+$F@MF_xgp;H3<6?jj>$ zt79id_WLcBzzF{ns0r94jEuU^@IA=)+D7dKMhI%aOri8Y1E9`eXMMP2v2+|vic8mD zS;iZ?2T@aq$v@IYl8_jT4 zP6)Q{@I4FRsVGR?77N4FP{A9X@lby>o4R~P*=hVG+LCi}U6{y}C>duy^81bSskOs} z6f^M0QtFiA3Im8o4&S+c%EM))-MC!ZNOh2eWi7^CiSI=BxLRd7R-x=Xa>WvgWGwFL zdT;|Vev6W8%XcZx;8uShnu2jrWOg0nS_5(u_2XFD#Y=ARTi+#Fu7`oCS{p4P4{bA^ zuK7-5wC-b}@qJP#5NWacFl*bsW86t&WXmgj-vHxgA2)=Aq+`v^paNS$R(}2j!5afA zgO)o@106~ysKf+A&SalgOa{~lXijk($CveAyrv2o?UZ*GyE>)bu|sO9Rh#+ik42=OF7w7;SD9u`&MWa9U|Keg{vp|E;&Cb=h&DCe?PudX~BwoQP4Gm~buE z{o2Jf?fYIyT3D!x&20_eeQz&fg3Xg<8Ofre_e?{FLN02l>pK)q^dA^N#Kkz_{i=ho z5G&kHQ9o2bKl2$UWh;5Zp)_r8a*|8uY|TMb8;J<-QX)0RU86=}ur!X37d5!hjN%F> zP1P;ItzKu6h_k_X-Cghr%g=<(9k$@aI7}S*WmKI9b89 z^G-aU%z7|AXm^;n7#h6Ie~VlNNJgM%xp0;Tg+rJkH{MFlYhH$uB9{*ue zo3JEGq=IB&bcK;tm>{H(j4vFg2GU$;Q+KnLB4v3s@X7N}#rsr`E(+q(%SwxLy_O&* z`CF<-5bldY&fJo7RJ|KMtxq6FS4b?s zwm6cO$}lI#k!Wia+eL4`Z%14W2%>8!%p)KUgd{ZB90DTL@l#qQ2C@4MT!JGMXF)#g z=mi53ltB^vX)Oy*P1l0EQ!5_qY9pcl}t+CUoQy@SeF~%Eo%io?Y z`y6YFD~CK{by{83RH?m)N9dH`9Kw-A(fDf?$W^G28&8Fy8%{VL=-3oWbjx&` zZ=tK}<=7aS?Ju%*Hulq$*6L)-!D92S)Az=FGc!5I`?QYQxJUL`Dg>V!ewi`<1GnA` zP|ydQ8_e-hxDo1wum`Y{_DGcifPA0I^PO(r)jP2?Yjg zvbBuscbjp8i4TRWs!=Qf;ywsr;z>L9^vJt&K45@FT-vFYf*!%3;71{w>Y7>TgU8=X z;H}ex$D+A}daK_j8&=Agu~*VU!&!uf{qSfg+c#7jzu>BUlzTptE&iqw@(Gmd8Yv57 z^ax?6=4GEMgTL5L!c3IbVWIrZLDaO(ia4bW;yKJl1r-LAK>I}G6;`yj7PYpwuPnI7 ztnE9Pe6a`SQ*q)cjm!*S@g}GPFvOUH?G_uWRyI}-4zEdq%Sz_X?^%}x*Y?iq*~z3n zD;kku#R9qFXD{!#J#eB0yUekJf9>Br=&di!+Kd!54Xzzu-n4pWw$jrF&mUcJ*#to7BeRagxDDI5kwxfe3aAzr5L0VF&>C!icm z4)N!T^o(sab}VpayDl{mY_xpYw>o{GxKs|>*^`bf4^p?=`K267c3xp-PRiTmtUlM} zj4@c?%p;o@7hSFrTGB#B{=Aqbz=uH;ZbM&dOAubzK>0XtYAa#|Z__&S;#yj$W>UeU zEe1ut$Ip+V|A-0yf)kHA@FDB4an ziXpx*X9#gLGalM8&hy+90$~oaa3+}{#zJR(u$F4hi|U8yAV&DDA$JNNY$EurV5y#a z%I6Q$avl)E7$9Ug8V58`98EL@GkTDuKq4D?anQ&SR4G-~s&bCj_(jJcjP&GspIg=Xk@t5j*#` zA&mS2;-XezG890Gi@+xXNeB#;GL8fpnqsN~-SksrTZ+p_+C~&s$|J-}Rr9SBSA?do zbru9KxYJ_NGDkfK!;wDHUMt!>X*l`NNVMuzAv#IE6L>JNW!w)Y>NLUD(bf|~zQ`kJ zgH;Adkb6Gq{rh8%IVdHZQ##aggm3-&a_7-9&FDyU0!?=Fe5Dw6nVFEjNLhaF!NVKd zF77`Oz}!vqlL)TM64@?2<4Qk0N2P7ABDosAs(Dq@%rR0Qcv}n zq$1w)aGyk}PLx$bmug;Q*71S@1eBYvQcsaTK38+Yjj7sYf8>d4rOZ1)r(=|=ChP_V zvwGUDnm<5mG85LMp)WDP>#ksCyYv@N(oFNskV=(#gO*QT{V_UImp=2Yy6Y=5f$`wy zOUuzDieXf;Q6zFCuyYPejp2Q_TYG;Y^V8Mg66NzBt(AVr8t`TZGcoKD{x}NlaJOj? z7F4@gIMBTCvOpA3sCv@(N_(=W8_iq|wU zk7wr(jO~~xh`+_n;ZR<9KCYT^5Lab?tl$z33<}r*AQgG6eMt-I#bzm9Q6-pzreb1o zgq%|BOM_lZL|QXBos>M6DUe^V_=3C)T`%tN6oc1hVOC z+EYGX8)v|b)dpqbd1)qCB23+VWkhi!s2H!RI8kls_^B$NXJ3 z$k^Q&yB+^&#kl-eFwa2jHjx{~bo~?PV>>Z3`Wrfbpw=>^N1|YO^YZ7)aKVX#I;rLM zWtqowzTRq!l4UfmLB-lR+aH3mg4>VjSZ>j=SnnG*Vqv^Z5EMRXPs^lA8jg;d$E**G zreNq&*A8i3x8ShgbU=^`Qh7~CI*8;Bi^avTb4{%j>;Q4oU~OP-xXZ{sT3frRH6K3Fzg8BlB4zp?1OD_&f z;;IsB#NLYGx5{9)u8Lk0(Os#oz#~fds$;*e$>q}yd)dQpwtgTA zy*W5`-r)|L$ZyuM7HmyGJLv6*o!FkHJpir6#} z#c9ObZ2fR3>J2V_AgxPuV_n#X5M5=0Px@ge6%(*_BjqT*~ z3xXr3P7vd5`FY#YJQ&9~IJh{`f9~9V>3Vc~DI=B6xqa#RIRUAg_@T(x{adNYRAFTm zGu~PF)Uh0T3K7aFFvXr*tyto4a@bLmCWM;HjBx(?smP=lbE&f9AhO~o-yw(DX_<(& z(%K#cA)fTfE*I}|aaFOK)u&?DwCskk-!Xa_Zl1lIWvem}^oMZ@mIvawa_k&(3U_l< zur`ZG8=JJbBU;?zLg(iC#iHdcNq-LznSLzUXhU?gMZAqfZ@#9)agoF;9uCYF5nsX_&X z(>nc2#~y!{hmvT2c(^o8vRuXTx-J;1tg)0sibFqS=-D|w zh^@IAJY89ln^UB;Ip_Te*S;nZUgj=_2eCZVrP^=WazztXbZ=0unW8=nMMKES3)mD5 zxrAf085@#R@Z&$&N{dsUUfnSq*S{Ju`SI%9>#eq!>*)H3bSHnQG~8y<3Xe@3Pd)AF zqZK``96HV&>&Q_{^)-1q24HiDGR_Sl&LHouS!WCS{u~tI^d4 z4N041yw32UCpqX-;q_J`qh5o=cjt+7FK?l3;EZy$v)gJ~|-oFsLSPZy4 zlp|9hp04XS1J+IB@uBqbv^um`2HKa?$iC2+jHQnY*_X|Q!U8B3Mt`_ZY8;~9%T?F< zWVM>NU${<1h8En6tqt-$>K=y%u=olte8DE8xSu%;3HO`bY7~k4iWz5`pmoLJ3XbnL zc-C|QJ7!;wyLfr?{xJN4T(T6~FLm={Qx6#%oGhbGel8?U0nz@V1NW*E-Y+rkXrY27 z!S48=l||Um)15QI)j=a5%oJ!!X_R!~%`Q zqB#FfF;Qk9je|;Py$w-_U->lsxHOSF z+iee{@j6G7C2_}cCHrVpWLEbZU@d;Olf~`<=?mOBbE-6LIs#~3BacSfG_JFcdh(lB zK-n@+3HQ2{6@vkqh&*8@fa(>xC233>9>3&DLNmYlQtkHcuN&Ghr{hJE_wehEp`VMM zss{zR2%HdY4d}OD<&++6DEe%O(uf|ZfZDNNop1&6v75e9+GAAIs#QwXw4i_fO&1+r zVI01+UD^V3A8zAR(}Ii=e#%O3-=i}-9kuiu*NJ?C!54Ec5MP4!1)AxR+sx^_*k!q; z;+3MBAKnPY^%d~^eX^wP*q-@h(vAtehMM(@ed38$i>7qkHV}Y!a?GobyDsgg$JR2s zpzZuIlTL0-a5UjvTwwF4I!9vHu_)80neUq(mI5vZF)iB2l=s;zGW)Z3jlT^cP_M-K4?z!|zCQ3+Ey=!au%c=b2exA404mk4}8O@v0SYzls zU8PccD)lY6nwC(yJu0zgGzcg9pHXWwR9vJKTm?$&fqDa3wK81_w*6>zS<1-2c}7tp zHb%lp1*rb~c47@G84%J(eY%Ql!KdV5S(4bGar1MTpUSt<9?gHk_*tuc;B1D*7n(^p zsN;}6T_0o*=$oU#%AY}M(PHh65G2rEI;yp6_kkm50cFP7NY!TyHR4|1QGf~P(!!CiI(c9 zS8zePM}|F$s2GD{wOa$E)kBrGTtQk5pbtc{>z0(-JcAwSJKh2ZR~;KFLvW15oWw|C zhXd4h)%f&`O80Cro>HaASW!DEsJ7qi$+F8r2wS}p>9go6Ccz}kvr>sHGgMgD384$AG_HeC?;yO6J7PaV^(96zfa2Z{}247YUcQtXP|EB zY-Viw@1dOfni{?a&fB?6J>qB}mGUp;(EKu_3abudMv}#$St{qUfKtpVIi8+HQ|<=u z*}mJst6A(zzJe4dACBEbHw;_fU$I>e++bKRHJHNBA~oO(F(3cU%b#|mDfcPjx94X> zvXPxTo;Ft0un1Vanb0tdQCeqt+H2XXTCz9_5Dk&swi5u)qpv3s-VreTy(b)9sHjpZ zd27z;#{fHwA}s@s$6`+!%;!~&oy8)UszOpjw+hZBwAfotieYBm)Jh+N)#T@v^Ks+) zKPR!yzkcD;(Wf;0$UzP*bhtb9Q{ajE`u%s-Qf}OGETa@B!9>a*Dg3lKRK}JljI*AW z^YBqGS5c3KMX^u{G+A+uifHt%CJOVu9`*d+#i2%88Uq&VZCY3+Kd+C|P&JnHG977) zP6^eHc^>0g9f7+Hkpy9mD8mLVndC7mIKxoG6jT6tryu<{FvYy)EOJ*tK~>{y zMwW_$J&1Uc`VPDf3zgTABh1>fe&n{+t@ela>hbWceF&4%r75B00(gVxgB?exSad0u zh&d+6%+4JlfZ=hT=_`Z--V2GEKrLRw&yt@nFP@`fF|xI4Wa>P;ni#BS-3Vh5$E-n$ zHd$Dl<8FIrk<<(s&TB$Kt(jG{vM&x0M*=CK>&9*Mkj(}OA!=Iyi5fT+wHR37=nH53 zLA}|hqgeX$BF@{n{c{-9qPP@paKQ^wJQtscZp;TxU2wnnQw0C#OX(y~{KF@X8<=Gn zGV?8%d~^>*||qX&}&zwWfWi4W_mm~#pTSQs0DBKMZYj=-x4y#&+FSRf{PbvCD%T9#rZVI7<&g^2<^BcVe z_sFjDXZ+4@+3PiPXZ|E51%<{VUukN;+?Ep$!y9z&4Ljjg{oC}4mD|KW^qys>{g;x! z|1rzX_}`x{{yo30W#K)iiQ&iWL?)#ILlw<3MgzTunyEq)pJbLG7EWsVTUFLfkK&_* zGh@1l)zi1;Z_I7?M2%*vdG=4YF8(t95;@uQqp=Oq1t@&(Kk{y}ooZemF7LaQLp9f{ zfiLPW^j{HUmuBe?27}4Cc0$6dJfwSM&%$xJd2T#&9zhXl;Ee@~@Oro~%R1p3F=hS2#vF$l>ALRQ9+G#yoQ}aDp`fxmz0g{v|qN_S{H#8&LdcqN1A;V9Ypo{E`Sz= zUfkQ%U{g;s6CT^u;|52M4LGnZQkH*x;I{Xdgvn8&kS< ziy{r*mKY({uSdm{r;E9jW+P$>0tM8Zcnq#B>?!4;-k5VEg`Z60FTbnXts1c6UYv8y z_8aq3QcET|>i?W?i2da#`F@K<;^o&X#um0BOx~rabEGUsj?u1GDe}ew$7$Siqwv~f zd8(Sela6M%C1bgn;VBER)!NEev*w;qKS1tn>dG`Y@+|OlI>Q${;oM91#Dr0-#GgID*_hhgm3P; z6un+uPK}}?#vOdnj{5R|L$0dbT*K}yg*R68y{qBOiL?P|F2>Qw56e-ak2#zTicZ3e9n!Vl=qfX$qJ?X4@Z*qx5UG^j$RgJ7Rk1=wb%x$w z6rC!Ad!0eE*KHyAEwtMyAq>s{y#vD%f+#289p)nkr=puSE|=z)Wv4XsEMvVQIK|`Y z^W?F~d6%*Ub-D|#173`Pwa)Q*JG8J;>x>YCorXxep<{JLwXfRTHYFLeo7htW(sm97 z-Lpg14NFQV)AM?2xKYMZW!D8)?COkmb6OwgQgQG`aQQq(q@u9d`^mb;hsV<|l}*oG z`nY|Q&&FjCJboF`v1PD*Q(eMJv-+M_#KC^QmNiu6RsTH~P@jYx)g#U44WNHc^zNR^ z(x3U6uPl72DUnCykDJb)#l+-ZCRyKLsVakMkRQT=S@Gq*+S%>g<(GeWq8Vj8FH(ae z+091(>k7(?tm4C0G=7=g5Azz9se$}NHB9up8$ytm1VJ0x`h@S2%I}BD{qzzz>B_J$br}}}dZMZP>T?>N#DC^^#IWx?zgaaa$$o?Zvl+8P7Yxi@}YZ)uXT@nfz#VfG!vdRY9Hk+`T=$ z?dsvPpfkTm0(Ao#axU$JX7%`#U&Dk#i#3t=%7s_XVp_v_Ff*`p&~D=i{z~tn?T9$p z%YcQh;MZmG?rdcj@E2I~~;D2RLO@)XDr^vV80lDxAWuKHYC{(~Kf)_r_I*ys)^K`;>F zu?lB^GQ(iVsqKEi5t{l))e+sFL_#+(R!U0zqX z5I5lE_L4&xFsO(C?XT-owF?(R?gLqIy*%(TVSIz+K_%4IYmQV9>t~%pA}$GgeuT0k z#BXkBTL4&z)jcC=YbeHQ5C1vSk#+PU?kn#8$&RcoOh}TfEwyy(VfX2uC0sOIn2C?? z4;ILOiQR4g1MijQfBSGz(|j)m`Ob4S{$DKDWPR8l6cP(L<>^SNmm(q}Y|`s%a;7TY z7G4&aS>HbWahq1U&&)jEAhdTgPp`#(p5Q(F(U4E}_w#So@8Aa-8tdtO&54#^jrW1j z?ct@{yR`D8~W3la-$H29Y7*g;(d0Oox(al{{1dQqZmG7 zTsA&Nzdxhf+Qp)4$z5?58fA>(Ft2y++$pG0?Yh2mv`@xniW&8wL(NKHCuWo;J9Qvy zLQ7pO!HAA&jv&EbC1HoQQYel~Z-?!yxt`6qpS5EtB_6B#+g6CT-NxHT(;#k5vo5JQ ztbm^Ey0n(f%q(qC2#r_BR)t1a;KrV_6pEuzfm~Si!ve&H=4rZ=Ybjcy2Wn)#jCB`C zo}BeC68%(ISR}s=wL|~;H>=Wfd3>7JpOg4BpQ{Xe{{+o4WyeZ@z5&^}P5X-|59O#_ zO~FV2hutCRr0J(ZFW-9@rJ^E-FWja#t?=@?&O>UQb!$~;V2@rZsg8(z_}}`A@O;OU zjrn=>duJZBX8WHTKq(hD2(7l;2k*7JMKx}BAM6ag8Sd-Q#TXUKo7GCm!BJFxo1(q^ z*^|l@mmCGk2~Okd&rG}eMwOcR65O3@(KAcs9S6soCSH4|&x5y{M3@P=C0;pOUpL(n z(pS!wi`;%>|M469vX_sd>}IxdihvhFJ(f9fCtCj_t??$wR7ji*>k~0mPT>!LOm(3~ zIYnBY>832tPp4(6kt!>CVXJj7OwR8=5fZca3NRF`+AS$7$p&8*_5vD%9VelHAl4J@ zw#=dGJk9omI5jvC)!VRdRcPjF@3rCNg+-^e`Yw8^3j)g^-V4L`2+72aKgD(%iZ31| zeEs^Q#_>l?;Brse4RS-1#++8gXEmw&cQpJQzJi<@M??-Q~Gr+PC3B#gXUxHWgpyu%+|B$& z)4y2YK<`d|&B$^?{tGOoEVO?S%dvu%KY5(I>CM!I4m~R;KF-tDaalH=|1alXzlmQM zK4w2sL%)X5sms4IUneJSJ9#%!*Eir;+LI}3e?^n^B5FQPz5NEV9nQu?ZY7XV3L3cJMt}I+ROHrG~_e^+w8eMpKT$3%Qws_T8-fIq?IL>-~|i{ z(_AWlEOj2-Qsz2NGUsd3%8yl5f{lbZZOeQJv}V}Ow_X_8Zy>NLEW|g5dW1d z^$X0gYj)+C&&&bcP;yLe)oN2gbguFm9QDafm(WbRgJ^(=mMqMB01x9`C%sq#FeLbW z-;CNV`q-v6cQBUHlV*2-NJ1^1w#cI4DxVXx6s2zWNVM_TBx9GB$ScwB42sToTY=J{8r|Y<7S}1$MooRjMWn~GIRdd?o< z9}&;cuSJ!{&{z9p~{8CJc3Ts6iy2R92?Mm>-Ttg@h14AhyJsV7zF6N}!v(ae?OpOkmC^CHYDnGltv8!hkTXrM`>In&k8K$>m% z3X&PYr!&|M!%q%UI@#@~-5Oraf8UpKUBXqnz>=pr<_#OLv(IS0%p$9#)K2D8{_KR~#bC8VmSBI{fp z(nh#fJyu6Sj~SQBU!hLw7Fx2 z${3lE&AC#1VJ(r{P8b<{Eb^@q$BKmSk4h&%z(qK8;?|a+TGP8ADC?sIJX1L2{OPgK zQ*7{UZMq0{wryb`Q(9^iM5;h&8_Ug`+fLaxn}7ttnBSJ}Tv6aL3Jm`J$C5df%SA@L zj#i>r!C>*VwtR~OOK+`P2K4iz$ZUmtm-hU__@j>MqgD#OZh9}G2&VUDrF_Kpd~9W} z<{^X?_0bL!SLKD9aCJH@{4&F8o}+KgKUBg3@Hc zavpLxRv22B(b@R3B_GBDU-GNUxWBGhSuuATM$ zpAf*4WSTV1ve&yT;7`!xJ0I?Uia@0}XBcF$v|d;7hBmo|$mlLa(-#ebCkN;94$R$JtW_9jpQkU!z@Y@QixNCS>3Vcqu|!= z`!o*L0Zd0sWpS$Hk3J>%Vp^~RevbapKye4M8yR7*n!H7s&$DrAta8b-ibJzCK@Gjh z?u>$P6^y&lPoFt25sxin3YQ)nSU=hJ82iva$P!NCtfWpX$)xxn+8u}t@SiZc8r+#VSNfBQ zUayTJd3x(7>yp1l`orZK_9)yji@B$5v}83fzAe^dY_ur8P;?|>HEwy{MAqd_VJ$m% zjobDK@XDbZm6VhLRt@ysKatX!%009Y>Z5G2c*`qUz>!&9vhq_ja7sDc*&uY2`6T+7 zFn9=HuoQT9FWqM>t=VGwM?G)bwaHi-;=}actsRKoE`|+kv6|etSqAPsZ{$vyL>4{~ z38vc>Ol0>>RqX9Z4c?b+4f?o4Klj+yw{881KL`V!lLsA@Le8n39J~?FFeu^n#+AJo zICg%23F&j=JB966vSRTX3_}M`m%?Ww`6&|ST@L=9JHcm?%Oaoo0=b%A`^UEG&PY7W zNG7au`aVJ&RKR%Gnb2HtZS*JXLf~@e;ugi_bxz97=pf``{mRjOHeLMa=Q)adru%Qq zw$uEucKX^llyw1uCum0D8#9AT3YZ1KhSKKhz_@*?=2v{KwO6Ff^EcpRZ0+Q+AlEBm zVEn%M78{t==zhVcTjb>4)o6Mc>gAwmE2eih)9(`ZNB-d1rahbI*kb+@<4d$#SPTYw+=6wQz8q8^CmxSt*m)(C8eCFWdb&Lmdxze^qE?|ku5x6rP6uR zA~TMddC82X+|^N!6b)(nr!>N>#*phnW{Ew3Ifh>#hV`X~`H53#Jj5G=Ip1@o5%itl z#Vuc-5Ve_6ZHPSa#?rT9Zsn&Yt1g@4OwZur_D7z{i3Eq^?mj@w{SuW}+g9tJ3jaJN zm?@smj2S4w9n%`r{fwSDen)Bv*&gO?M8i2_KO!TZZ4a+=H^xl zIt5E!he*IxVk6w$MP_J?=lDauXOEIM@Ds6{$zcq!CRoc)w;qCpmsbMEh>5SA{NeDB6>cCB+Oz8~ zP6%_{uan$Zk_&5iOA$9HbII6QzO0=-q3ifmu(SNKjN@9=Rt`g%_^0~#{e*W2dw(75 zM@Fw`1#!(e>|RKyppk2>uFdq0yohoqEZ zLqDE})I27J6BKDYLb4a)RzEjb!9V>9NqL6u`jsHYm$@I=ou3&hS)$`K{J!+GW}WeN zQr4vN!mW}k6?4#M>Dj8U^G)hLX>FmiAj_?ZYmAZg^}=5`dBf$svM=#ihL>L+oxu`m3p(&MaDHrsq^S?0k^sh!!FBj-?qAZ zGwkkar2<;n-C%fP*Go>>B;$9Uvd=wZ8@tD6#=Ajffr@LbXz4_VP*cNO!p}Ds+LKlNoTmq!Q-$N_=B~nIk~>BFk{eaco%Su3 z9!N5J8k~_a2n$+xO_)pTKdm+u)DI8&8M!qKv~9JLw;C&(^y#(MDH~ImmNm z3KD|r@~I$PW;DAZC%I2*^@{u?55_Ui-<3%6&70OW3qTTg*9jF=eb`53CM|Q7*6ZIY z5M3L7L3wf2ZcA*{zD`#B!q;9u^ra4cJ2uV`;q zw?CKoBxm0)pk+^9xx}ckv+>vm*CbTiSlQ2X@B-K=smft(TrVZmRu1H^tUi)CLEG28 zm#Hhha8Q5puGO&8OigZFuqPpc(LIM8OIPUx!{|MgpO59Y@zge!s062vVX)X}t&K4( z+MkI2)EhSw;96DbCD1Etdm_=llI*J1FWc@VkE-T2t{89HAG{{gVqVkOFWT2_+EBTw zD_&=~EYp;<%uCk8+}O&y?mbbJiuvZD)Vl9gpj*N;oO!WNIKd@G^V34fr2DZfrLId; zYi#`WMzbuGuU?)$8Osj7LbY??PLt{5lwF^hnZt?$s8E4Hy7`zf3xSHblh)D!6NRCI zgpF;VRf&TBX@U6GLb}Rv;|0lOlaJ$A^SGQ|Ba3+NM}1CkXHO8m+aXphQxd&qE2n#? zSHoyk>izuscftL!%~10KwWZ>x&ZOMFcHN4yqv2_3$cV00q1=3fUUMmhSvm*Gy^R!I z{>Kbpx49wX-FE~tVU!2E%Dix+@eVTU`_!o=D3KjNq9|vjWT2G^+y#yP>*>X$Feob6u3`#b5ITi{uvjxFc z-lM+uRBGk+nW+q)XPo?46FD7^qQl}oq8uv`)U7HAuK4DmuHPhYipfq^E3|L8@YcCD zpL2dPjSMh=?$BfB^(cVVs8O@`6&>6vuC;87vxWJr&bASnrggKp*f^HaUOA^~Q(8Qv zpkbp{)uygdhDLgzdj~CuXvmk&@_LnK_B`g4}4rt}NGt+FQZwTX30-5J-o-NJdGq>CbD zhv*Bx9h3QOXlnVQ2evsWhvs^*?kjm4$ZEy7t1^anUC&)Fa*70(Q}+VS{K!!@w)e`8 zf)=s9iGnPu*GwZciM|7|LU6L$V)@P<>d1M{u5}V~Ni|(TaDE#rQj5RlF^)vv{=`$) zX_8%C+g+EBd|Js{*wV9rIDn6tR@hcOqI&h);n0S2`$-w@ z*T^6C*;T9|qii{~fXYC#hI4GNrZ>}0wYrs}io<%5#G}E?Q2FoD$m;7BI$0{gs)e4o z!gtA|a_=iZ;XtSa7P=HPCIb^pp4FK~*;+eJI=u;K(p=}o{XyQe&rNVt-A4mMZ?y+1 zl~bLLrP=ta2Ep$V@64@*CW_@l#+IfkMYSuqjI6sVNNW&n#D3WVLV8kzVa4)owY7VJ(BhvHO)1I-^j7d`c;!H_3h&}|Qb0UCE208@FiAc*US+*b*H=We_cKY&IlMyGIW7s(TrvLiho zBhopyj2e-0F>Dg;>bghnusVTwH!>HVoTe{R$;0&fI~B-1^R?aJZ6oh3yW%aoXwepMvd1bH=3bFm$BkwHy&nFXUpCLi{_#&qvl29cO596 zM<8nskuug-^!!~&?{!QqUQBhxlFhU>W#O!!Uu#Vw8C;t&D@5IN$GM~<5W0Ca*wwGr z%0-%r@0D`d7@4)hoHQVam3>UAAr-Y|U{pHGa2+!@kv~k=a33_9`s>vF3Vd)@a2nEB zepqzgw>B8>KpI(npt2onk}oKihrt??lfzjuMzrsDQ9+jfxjIWqS4)YOcBm0W$h~EG zYB9`$Uy^4LUhAdDJV4rstLDTB_*e`K7zSuw0ruxf4b&HKjuD7-_pfe!(7SMNtI-ge zrc|3^7Y?xS_s&Q?S`0M?V8l1+--6pz>D-w$4iA#zV7{d&uM@SlwpD6tG**|^cQ{6s z=OPW-hJjpAU;BJro48f7s<;vC;=&!QkIskEGBhel2zNin2sY7$*Omjv?e=nm?Z*sC zFUl5gbGdPLrW98aE7{S{s*+&yV`9k?%9B1aq>}1(p0Q@f`gN6AcwkwpD_j!CTDC

R-%DU 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

Cv#kU_RWS~AEXilR^b4vbn- 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

3=EYJLW&%-ak&&My+ z%-zi2%-by3%+oB;e5o6|OywC&X~DEi>KS5cA+$_+6D)4QwM>2!Qc=%!it-3~%Z+7* zf-)%O!u@}!$v|4HB_jn=(`Uh7Aw@6}VWQuIt}bHPZG8&DV`o z8%e$`-;U-4Hs03rW?M&g4qJnrxu6IM{SS^nL}8}&@6SX210h`9IOk!v5R`V2_pkpR z_SXA7RcIs(*PB2BF=1dAZgGd|PauIzeQTR>hv<(dfs_ZH?gzdeLxbr5AJ`a3gR#MN zz43aH)d!Yf2v!z61{A|mNC5`#Qo~C=lca(#>M>P4d$?5TPAA_akLQaH6i+smkCi6 z!dcIDirfYH|9P0W32*i%3>&CVaZvjCz5fFM+?3cMGB9poiuhnU3ov!^$r~p8_)tS` z^56ZlE|?S;AegW)m0B>q1ywd86XbuH@csZA&TyfAITxO8T+R?>7_T?J3ATQJiVL9$ z)>40q%YV!S_Y)3c`@7ktx5$eX@M8bekc?)%;Y+~FFK5k2R zOZvb0k4^X>hKK{9gERZ1QiYAcAaL9}W`E4Tw=Zcs_;AHL0)H|IguIC90era6-8+BW zUPN1^_I{N&|HjOY$*V_eO{oypnAGzbcKz2%Jk`lchz z#!3&}Pd4@_!eJ+9&q+h0bVbzfPTKs+iwF9>j(P@PkIek>)Rv>zMbaWZJ�zBlcRp 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 z zYVur|Po@o>qtL1SR)jj*R*kSInt8@eEQctW8-L_-kJFqd>NG2YU61T?hdoCz#uNlt zOQJMjkS|#Hb}a@;F^7sFxXgeovUO;TIQ=5s+d;ETV<0tMF||FJ%qxFBSiM7=j=9@T4|VMe zbsnBBGX>2-k0ZvI|=qOM-p=Ls_2F+^ch5scd7<0RcG0q{hI4Y~Oak`iS;>JtEc&o&o zfUqO>KFEQLLF7Y;D)#fD`jikG1!WP0QVcTsoB2;dIk5P`ogy52(GjHr3f=mHND4&v zaaxzV?^~CtA7vt_PH)^%v7YP~6q~Gaf`6c&E7`1W=3`2x%?Hv*&hOh#&0Ycq>k*|% z$&iq$ULqFTXnbuU!ej@s51}s?F$KgNo-k~3$E-rBGSBTtf zG)J!3lvh7OQ?(u%J?~ua(=(H!u3qKRpC_W4C4bAG3}GoTa+h~ajqcD%9;iPV?;IE0 z#y@hf9Y$(lBJ@mznt5`q;j-7*BN0X1NIi1tN7pbd7>smL#l8Vkkb#1+bN*_?aRl#T znU^lWL1TSL9#2S5-Hh5#%in2+^zLto#9k#F)k$Ag4hTwUFOvhQ83;OOM?a~#Rxx6D(Z~neB8#7@taY_ogsP zbs-xN1XF*66s2Xfve%H)j>>Z+UZmGPQ5WVlGJbG8?55H({YxN;Gscxn(9=b@jp8e4*FOl-)h*o9~#BrkOu^v`y`%cC(p zOdquGM}>Be&U&&A&1xQA*ZS-0S?>FKR6a34$GTkfz?h`;8E&MBu2S zT6u?VoPEg!5?YeA4KqJHx1Y#jJcD#(9$Z|R@#4S|Na8A%lBdHAo8;S<8=+TlpVX+~ z{cSEOKeYIlZbd3wmQMLGR7Lt{o%*kyF)&2`(vb_pvJZS`XSw&(7O*b=_UNwO3kaY> zB2N~7&I2=0%vrUFZ^Hm&de}+;Boj${go^w-LJi?I+7*=T6%;r(zb)XUW;`92027}J z9)vC4EwW38c89gm5%P9E_g=QztRkOu(VXgFk4xlps|YxGYK$9Od*Hg0YAe8uiv7y5 zc|mEmp0->&)Q$2YGM=)>2dwt%z+Lmo)AC92wiNlG(7v*@ZC;o=_QqHB6%9zH)Vf47 z!83x_8PF#v2nALxn#P*VNT2V;E2k1X;#_ zi-{g?1KpqlnlXz^eP_Y}AnOSK_?#dY0fDs^5rUQ#9m60ll`h0KCZ(RD@luXH=0_$G zxc%spTiExd_@FE}_nf6!kKdH!so2XS2Q`uS1gw=h)qU))wNq1jy^8AdAMGqB=Q&|g zy^ADoXBpY%uxvRjUWG@`)v3Zb8HUxD+lCCWI$d!Ow6G&!IZ;=>3j_jl)^^NJ-)qW= zB{q#q*ZcrwYt4w}s)~(oaVH4z6&FT(eM$bf$?7>X#Wof#{Y3OHl^ZirMdJQL0b*u zy^m*$*4>ueXEM)d4%0+fS6Cq_vOXtaie)MyFCykM~(}Q~V={xn3TH4{{05(wrAXzsdxLu|C_(OVaMBlUXQS#Wcvf>Tz0z3R^S<8jq*?=?G*8h1fLbUO?Z?C|LZqHhCpsL0zhyq zjkwZ9s-QHQ8;hS7wZMkFj9#zbM%Q)-Tnj<1eyC@?&9pb|$iX&nOa z@Bk1VI9g-YU??*hGg=O>W|sk)LzpVCsas?j5G1)R7Aj@s)0KR1`C4JKwm(f zgY6GvF$YAl9Z_0T;mf3?=NcYGwdXMiPTh3-Kltk&7!GJ&Jx;hxJT1Hs=O#R#z7H2D>|H4P`?QD<=AtSfRhVfBag` zv`dsRrvYLdpa4IvCX#h1vEf=23Kmh~7_?A3;ac7zpQnRWAU8+Cm>5Sagb71jBxnnw z1aO%U#TF+9j3^AE1FOqWz(HT~Zq-`ys+b+!yn&ii2^c}xa!^@T99@kw-CuTFE4p|L z^;ETnrvpXnIWsEswInza#yKUALw~a|KQWGEtW6Y26UHj+`-_WHO**>e+4Up|_+}9I zD#5s9IXX;Cn=mP(sJH7nA(mk@9qNzi+DizB+~An5AJUf|JzI?o7sN@xZHVo48lQwK zL&7{U4^_Iv-M^k6LTn7_QS_lGn|&Tk$zqo8tKy{65 zg(o^cpUA78iiT%&AqX|?Syq3fv}&cbTGY2kOaLYOP&UhQ(W#+mP#ut2C{`m`KtpO3 z`!p)$?Sf*R1v&*(45L7ERP9i&Rcdt-#X)s@6a77Jg+X7!ABpi*!=Lo=dGKE#@1Wac z1Wt&w;hQN>ksX8({;8Y9K)r>>)ceK}OLvFt&U+cMqZX|0VPhzyNSQ8_Gp(ij;VzywklV|QTXE4+e zE$kjy23DJBaJVv0yTJKl92L{0bW&%*;haWoq0nd2u%22BEXAreSYc0YAUvWOa?GVo z79W2yiuguWmKT&IYz$F!C;KrViT&u6@o9wiwF#qnS!e6Uom|{+W}I9+Y^I!ibM?&c zE}0q2tm;LI<6O%GcaqzVL`ifbu9`qM*KI@2I)1k0GVJWCx1HBhI4bKa+b1a~D=5D+ zjT)x&`~68M$)p2r7;(fnKDlHhd(7mI6QxY|8!AvY(R(s$MqlN^m|5dacLp0Wusj%X zxa3!&Yk4pi_~a`ghetKgr@@o zM{nCePvERYcCG)yzwF&wjS=t0y56(#p~X3@*wx&8pQ&|8*8HH{9RKk*WD5Zwi?;m@ zSP{VE6hE;ESGj?#IIu9DTpO%MT~W~&p9UoT^m^zR^+8e@n{WWKHk2cFekNUOELEbE z3zr|6E6EPH?}<(IU$C)L-GZQwCaC%0+TmyK)t{wF3h^GkSscfYaua`~KaSBjG?uYF z2wUtaaSi%o+>gPn9F1I@3^&Ers4;Tw^9=nt-|t3fS-}T9Lcdo@?VL96w2-1v$WpYQ z!U_M7fbH6zjZmjuK#~r#B-Rk;I$SWBC{&^}9vTX$B+E}6WS%ayusW(>a-S%nFKk;3 zFEfPyMJ9E;F)o+^J?!UAmnuWLl+%@~(!<013xX_?+Irk6s?C;9E5{{HYgKj2I7qMu z1tpcb+C&}A%ZXH)B&J!^Wh~k>oX$7D$_tuzE>fN1&y}c4rkkj&oG@&PP4jk7%zB}{ zg8%usbdF+vA?W_l9*}ef|M8h}sd238>|446&m7Evnb2g5a=oSc4$s-wZvKv?{t4RI z-{E?|1^SjOViTqKr`K@@M_mG>5wtQYX#(aj!WH{tglCy{!wE0e;aFDlil9f40?;7T zFypUo0Rdx@wsD~p@!GZIE=G;0v+cFQw9OcaQbq$Num1--SjYC1xH1Lv4~E`7iK^w1 zhWq!e<F)ZHdMlZwTv1&Djfs{MOfY`WTb~CCJTyRpGN|RsxNJHjvv8(5`D< z_K*ZwVITjJSs{j%Nhrr#=uIJqmTbhFs3e_`w3q_pKZllGh^irRjS$k&h=#)f%1t1h z0%^AZ7RE-vPD#x>Kx@O%8vJ~kdU@8W+zT`8t9)1|ZqU*sQ5(IgFq^zCEr3tsG+T6a zqgvxGI(sP9|3y zx7nLT>~_Oes>>EjW_Hx%I)lKatbhUio_tN`lIz8C$NZ%8@M@TjT7ee$i=u%52i&)F zrz4dfN!O`hULORPDx1s{xxyuTpKQCluq#C>4yTpc>qFtAlzq+oJKkw4m!R$0ca$n6%thlb9P2ss%1e5LrF$0)^m8{#(v-ON zNccg~k~JIQo)&!v_OgjLJ};*ifi$kLB&y@x;)7QIYf)5gUu`EK)&;`T64Ad!BeA)* z2LRsSijQp91vmR_-taqxCAVZ*$G~?~K0~^UwsQ}!m|uY(Tj~@=Idcjgei&!O76mD9 zVx1BlXU^-QJ$Ynb(F%`XQ42R`E*=TjdA##~-x0a_Y!?O|O+6yFi%L$t-|4@y2)+1v z3P;usa34`-Iz@3E&aN4{%c@U!s8NjpfgtX?Yy`m{D)c}87nxY8^AJq%o6^!n_-{X= z|CLNs_>YRi!Q965KUAXQFGl)n=lCB!%{zWf0+|0#@Xz>uD*d%2*2`6{KO7Dhxxiu= z9E~3usBB(>)4ti|sMN?&-C#iOF7T_I!4z3|u1H5=&Us9DMcy zV^=Lyi1R#m6z^-D)subX6EQE%b!(V-2&W26CTd1AQQxa_%GeSdD^dmo=1=))_1n%? ztnG;@Oy_B!ue4Y1RYZkNyvgsGRn5;P_(Iqg%u`PZsJ_Iln=P2Z%CCz`CumDQ{++fE zKyu6XULt2E zWW}-N0V9f$D%|`hmxsL4wjB2hBnJKe2NF$wQ5RaJU)be;*%S5MZJq!32TxMo`rTC_ z{cMp;v1Ck%E(Et06+z{jL;YsyVdP+7srzP85P*b{TE>c{*RF@Bz=G_tM)>TyxU)s%rjBLOPT!Y*j;B{*gfwrczHiTz?%z5 z3;+m$T*6OxPZS9<-O>}Z39|XM1{=g~H*92{Lsui@eKtr5LQmMlJ!)|cwFrmC009rM zaQ@Q!1!NYodxj>QWbp#;W-}1H+ovXo11bU)qjQZ(c^KR~v7~UN8|s;Z-K6HJQVX}- zhpQ-J7eaxR;k&S9Nf^V~MbfuouKJB3fpegFjV@FO9A5S6Un=sz=4zNVA(RRzhBB8S~VjPz@M~i7-Hq zs}mP@S`0}9+YD*w{BD4ZPm;phIk|bVaV)^mMQ}%lIl!KILj9Z{hbrY6q0imYOxF?= zbsLJ2EqM%0I|3vnL-j)WyGz(hFe2(8l~tvM59(q54rE4f zx+fA-?ZOQ7o~OnaAv95&Qg}2OrA7cTK}KvgPKWu02de5xl=jEh!fvpy_0?W=&uu(u zX(I&tUMVR)wyiE+0xhMDqo^yIr4x%cIA&8YhYJC-Y-n^uHRf(AW$YDi+MauPcA{SI@idWG0Cb}ARa_5`V z=)VkDwwMU7iuW%*&bHq_N@dG1MWbuzpvdwSNTG4K?=uO~EYw={qMP4J6y=`_2X8Z% zWnqmU{9P{qZhYgwH$((8m*kmz!P{eCX}Q%5{nr?@Bk^fyeIHX3?>e9L3@}HA5A4Kn zP3i%B+1?c$64q{I2fg`uVG&y2fg}|={nau{?+6?nc!841IKVoa_Qxm>PPLO#16;eE zC$u9Zg&s|NSVUkmW!AFClSaoM&E@wQEa{>R%{gGhO=A<~`OaB`_vbmVqknqdYSR(9 z>uZ|wmi2FqOse587~qjix)x$RU2Fi%`VxwaD%qpGsiulaN^FIoP zE3^UV<6p67^RI^C{~hc8uhwW&1|wR214kzZeM6_;y}zBAxuGM2(EpsAMQV^#wUvEbdk(G+mKx?Lq${ zE7XNwUv+g{d$+fD=#+Y%;be0@Y+FXJ6z*Qf;68M*+8+N*O|mlX6wY{kp2~}*(k!pm z0>-G@gW;GuEP_F2$KDau>=@izlkDi&q0;to9*a)G#T85e7 z!qBk(!c=j{1O*aOdh{V9rUV9(BdJR%ic}>AbVBG5s^Rf`iC&~fNGVZ$4$}-06PCVGNRgH%y1%=vSA4s zlkvcHk!q;OaS&q^{qeiJnu4t0m`bflk|4n@$pY`cyg|hThz8cZDYqj2djK29gybfF zh}sI+2X`y0(DS&B-HSy!={K;WN`?n;AF?L^OGc{Y*ed%fw65mPp}{-puiDg%8`9oc zm!PJi4U{>*q=QaZ&tNZl*9#^$i_wl^CZ(Rl^|#Z_+*H*V2ilsvD}vRT9*NPSW-%=b zx2-;{wFywdK|m>-clwbiVur02@y?%UGrhBmLA=i|B|$!?wsd4t`6{!%JrSLn(_53| zH#|G}84B46^(Z2YBGKb~;OhcOR_4&*2VKC(bjijv9dkcv*`OWvjSP<#ta$;q5St9A z=qevQ>Hb{ZF*!TWvH$j@T!asM$N(@f&ZbY!cUM>QQSGwY#2#3R*7!ITc{xq=cX)KL z$^kh5u9)n)$Tzt&bh9)!)x|Gj=W980I3j1(X*JhYg|Fj!cof|IX-OKd#K~)D>c==o zTuUmcZ@d-)N-Uql22spb&!CV+W)Blu1|#?eAboUDNEC)$^U}~mMW4qB12LG=x8<7t za#Bf#MyI$NBic@t$HC6p7!!u&HS0x9WoMAtvco%f7hya&lUYfD2;#2j>^k=;==AB4 zw@aJ@+gCPr?VXH?+8o!^K&!$-kuL4px?J22tKm`G=b_cbOm<^!s?PKDO_0~ie_%V~ zSUgxMaZc1*z6g}Ma4;}iiS&6_pHk!Wfn^|!qNuOQ&*RFkmPn?0dUpZ&ZIx~6Ab8lq zkRp{=S6Nx95A{D#tO<1Z3ZBm|)13fHU~pc#;Va3-q@> zRjCElM7HWT5spMW0Nujm%e2WU5<=l_d1L?n%i7?ILEBh+(A75bps46Ea57mji&0X4yWU%Y-2XVWtQa^+t+(X(~lK zG;wt*RiO^GywHU~DD_IEL5ez!zNc3HzNl99KI+wiU6sw^T^AD9T^X6)4y4T}&(uq0 zJK7$fgs}iOvA%&*1-jm_JBVlqH=ZLS3Fq{C3pQ0)en&P8$lF882sn#i!bih#6I|#A z*!Tu!)!9Yld&LwfVQX#wb#P^Ss3!8wjjO3s;rsT~ngFw7V?f{x5Ac<-a)AQyZQ-3S2>YTG~ODsb2x6zd7?!f1bqD)7d zSJ@hcfhH-{=;QL|bJe4IQ^YUSb-PL^X-4H4@~e0&`TEFq5b*gC!X>tY%>;Sx^E9Pn zbH-yxHegJ=+P@^JZzkYoMV8siBKx)jX+kskEo(&j`Av(=0DJLp1Bc}V_jq+6Jc3S4 z!5&_{f z+`_JX zhK_29^koGT?F1kZMW7)K1JhbL73mzE(LV4fSSqeza}`3+36NHxedU4!PVyF}Ti7dJR3M$vCs-25J+PZ`KGeiveq@d9Xg{WG*r z_$x(Hy!QfvuPR9eLCGMB?_@LXwdz7lgf&<Z^EIs!#r$SOh7Re|N`xrt5 zpbPG0N&z_j+v~Nj<1eY`8lc{lZAHTh&KSlam_ygpZ(*V6{Qhv(8p(kvZi;B{a=@T% z3ML#ZsLjv8Y!erlA>K7GS;pl3&xMjPtL9v%`XXDLM#DUdU1{6`+zCl;s=YPzDmjmV z#t6l_mz~bAfE~6%C#m>jw9*^N|ErW`D~7xn_%;=;TvI#G_6c;9?D(135C; ztMi2_+JoFqUX7yR#(J0(tZKBUHGwhMGnu*-2L5GIcQ)rGFP-F=X!@h+*@Ro1aXM(6 z`Ql|l2&#n38gUE@rBlhQgCy63+2_;PlsPahiD+5GvrZGeR`H$7y1mq2jH7k1j-G7n z0}JcskBVPQMNLcL&J@BWc*hI32EU-X%L(01F$ojfNoB?J$z{#OUGwDHF^T872fr|? z=aW=R3kZ`Wr=-z}f(*>R{xW6MO2ESm6&NdbeL!ePi{U14&`QYmQE^L;JYo%t)6S+; z*h^<;Y_YM5kBnxvggR1JPZTIvE4{@k@eoWuwc^J}WbhAB70hahWn$VpmeU$drr9{y zq{){cs63$UZ~Ak$PlF7wOu#Bet%*OXY$lJCyBxs58X?E5w45lb>no`XQ&faGf?rQ^ zn`fCchK1%xR`{8sQY_4*LwQ$%~@;N_eH@ZauJ&wrL-V-6XJMz8&`SOlY4}CaUe+XL6Ai8;8cHTF<%S; zptx8)1o>Q)kTFR#bd&isND0=erX>~4E1k;U>b-f5h(swX^Qu*qjvJSq7wL|hh_7i+ z+vXI&e@{96F^)H!FPjZHjx)DsKVGMQ%}$jFeYAoPbi7vKQKLU*!($-a1|wqL^lgY9L`IS3cE(Ya&K%-R`7$XR;GxY~Amy+25kQyjCJ^-s-S+P$75zrsG1q z>Vx_O;(Fd8@^ai6_kAvg{Ay=)KKo;m*mR%$L|uYa-I)bUbA90e|^bRsJ7orPq$jZ~TsbJ+F?%IN?ts_vg? z2t^@EY4CtY$Z|Bjq`kDc0=_i43Vcbvpg`qa<-;*s6uZhzI?5$-+%{5yC5C5pMr_&X zVnpy{ROp=qUUZwt-3(jI=0tE#Pf}7s2O`nAntdtLimFG?1!s0fzx-M|PgeABy9-*J z6Tui}(~uHpf8A-T|9a7G8kFdPIYoR*yEa{?QnCao;spy81S#ehH2`d z{nOnRMH0c42qlYRpR1jgiS;BPY1{dyio?WUf$xP(Ks6+)q`v}WJgYXwTKJ@tM}fVf{_>nR=l%}}vSQ`pziKKS=i&acM1ImrsBEf%-Z+BG_efu>)a>l&fl^m0)6p+vKBdi zWi;%m%!HxgB?@+@=tUFCVv2_)oRL)4Xe8ZFqL%uew*tZrja1zzu+~hSu3$?FJ~|>R z=2gb3Fm5Qi=TI5p&`h>jg$_s+1#_qrTAF70Nzbwr3SEFuj$E71&Ju*vI%`{FAEv6} zv)9#TLkmBldb|_fxT>is3a!Aa8Y;HJjc8pTgZt+N49@(tA3_VqqDYDp{uc03%vEe< z!pL4lh+G~t9JWWBV=0-j7x6k>_8oEbw`Qu}c(FKL3JZ;}!Dv$pNsNGylsQN54ck#* z)K$*a!OPcZ6jp#Ol^#G{uKWcitUo1sqgdZ6CyWN+R$ZJZ6qe(Rmx&dlUZxL1y-TCC zNpbk`z!sOMgiYAO*Jj@H(Ppkd(atJPCJU5Fvl-%9SUM|D`r7|DBZo~pEa|jVoP5ts z`TT4W&_#x|fg^K+2y44|=doFN!0c9~O1-dz?uMLT=M#gnvvsO$dT!AM#Q^%y6|`Lp z&MG4-g(m*NtzQCnUasv70dXg-+xPE^BSof$LsC`y+?~TF*QyBt{@fyoLo=^IZ7NSF zlh}l4L7pdw9rL3)98K}ejG(&0aj~tPL$+#p2_tO%s#Q_-q@s!Ax__(vT;;;(g$Da3 zIpE2Gj<5rEv+RVC&J6(E+1c-WZb?LZ+?S9%K}1cp%OaurU8$#SDJY z|G;fD3E==ZF&F57G`+m*w;xrgMaxqC*W6+++X6*;aceS!b^^;K*LcYAI9E_ajr%YhJ+5v1t%(y;pVf%#wVoZH(IfDnC)^Rgmjo*Qh21u4rQh~ zMRU>U1X&F!3Z;r>aFkYhWt{p!TajkfkmDehf&+{ycn)Qc?~tvMNd{I2l>%56Ry{%d zZx}5qV?o}Xh~C)@FI#4`qo>1Zd4(tnI4l6nTc1(?`W?*!vfL?2_(3AxU@GHD^TXvD z{i4IkN_J*;m2YO3Z|1aj)&%8^TvXCwbB@u?KIh;#doOQOwrgLEIfZCvab?HxZWpbj zY<~0oL)|}Lug(TAqFwEhfRtgR(*>vPmKpX2_v{QC6AkAaeRG+Wg<+O+T%xh`BulL& znOoC#qp89h{NHuUJ_A|jAC7;`j_H7{!BsB4Wm0Dzj9oV!eIEx;!M;)9dM9bf3J(!ePeA--b{b-tmV)+oN zg2Wt=w$Zb`pB(w((pfBxdIQerK5HKjqm(}LmiQ}riIbH9wfMd>cV4YffIYvH-4HgN zsokESyqfsn~>eGWvs2*pK5( z^vG{FIXwZLI(CP&y~BLW=6tJOb4nY`l7Vdp->GWA zrU}Gy>8w?*31MP~guO$%d28|(rk(hMLCw`j4x7HK!}s3`D)~Pglv{9rvVR3rhTLz^ zF(U6=v-pu{`_3vr8CQFG2B_uutxI$kOTuPygj{W5Z)SBC4NK$+v%d>i6jLRH!P}Q4 z=^fhz+GYhRq9$jcsF1ZXftdWdQcoI_em-sKwUyYJrrQeDd=c#s5n^#W=xsTP5Q-8w z)`x5A!Ol2m!#UcLw|F&Vh2lJ9bgR}u_cIr$j)2sby{qRU70u9@&cwb4Z1bvZS+`VX z^SG7;TLB$&m-W~s^DG4!KGm4N57C=Vj93aZb~#+LzI4j zy{68sgEz{hWBX|ASdIiyur88_kh(IE5S7G^b-4=-3kSE9 zDSg(7xrrw$$p|nNksP|cX@x@Hg0P<7Ik8AlxS^qKIk(@L2SdxUZgD9}x!Re_`(Mkn*WiEDkvEewX8`|@}gYSb-|ttSqp4xJd`>WsPL`1^KNRzGoe ziUurWID4Yn3py^EvF8uFe_lY*S{vscA4T5~$*}1jCUk1InHnZL zBYfMk4LgF9!0cBX)>jnNC>tD&1jJPpBfHL1^P@0zHv<9BOU7IY6&`)Qdt_`Yko_+Q zVvq|InT0uoUZY-qS%ph73hwVbv7W^pR*S03rv-`Jlt?hnyPSm5cI z4&UNz5mJ!z6yRkfbjhCb#pKEqts%7G+1_$sRpeoB%tr9y0~;!%;0e}j0aw@z+*PAd zG6rIO6AQr(;q0(B){qoUDvRdUY}%UP$m!VKSN|>2t68 zRIVH@m!J0;tg+~=o%9VYg{_SL?^?(#CHen^9KKmHoHCf2|Ikr18z_&HkZWroQ51<; z31C7}lf-HF@4-dj9sx+%)vGaXD01uA}uI* zp$)iCj#1nf(k2Hex_W>5|<3~btdYM%<{^3JCtl&_W{Qb{&z$`U3EsxPA5%~ z=6wzvL$N)qG#0yQkw0`yJ{h=5d~xJhr3l*F#^Ri?On#*3)sc6IS1$!WCRlV4Kfn8? z%{*h~amfQG8EA0EPl}-2;zAa2tH4umq*r}OZ5*s%ou9JcnIjFCw*ZFq2=`e1@-gac zJtEjZ6=-l&?TGeWkoqy~Y!8TzjmVA)ReAXZ@SW$dWsX$HNKcDkv`W0g|Pv4z`<6JUe5ilUQTiqcFu-(Nv_ghuQ~DdX1Kk?!#Z@n?%Ep0S7C01)vdk49p-u(eOT2 zaeUIK@_z1MN=$Apx3KpoigP7+!4PG-hRC|T;Vo>N%HOaX0qKn)B^ZS45rXB~AH!mq zBN?KT3v#7>Ae}8CRgyNQ$uVenO`yJ2w8=#f^1l#dJNnPk)Kd zEmRBE2dwlQF%M<4Ew;1E1Ip43)7eYVoyMDw`wPPME{TUsP(=3ii}zo+@Z(ryx$es_ zmi=!V_O$=MaY515#^|5D`b0&`zwp4z>b`Eh##2MQQLzSBJPu6$J8~h4zLW%GK^tc3 zD6OCVv8rYHZeO58EG$u!$^>+!`V&*$$; z=K>qhNi1VqcPx}EQaQOjXriTr7x~aK#B(ra$&E=pEGA%`)E9OU^UVP+Bv_<$;x0L> zZ44U_X_id!eyweXE6Y=@&bbPxkhGowb+iY4nviSvk1R>w=$?n%_WIR=>N;rOQi1k% z76O_R zE|~nyqi7kT)OuiJ--sebbz4X@0Yu*nm?tO4c{d=HpKsl7r`W6J&;`G6#4{u{8FNf=}83r^>|MZ8U3H{E%yb`i(-BL<;imlgFx<%n02n(dAR#zR$2pk{L zASIPk)E5gyyyNWsI!K50iR$jQ?})*3L!(3&XkC;Km336{-gY-92}C15b*hT!7&zzC z66=$=Sxztij(r%ha4^Irm~M7Ct-8zS+=BFFc#R+Oh3-(Ue~Yu6*oQfC(b(1_7YO1N{GthzP2$DkiyBI^vj-sq-<{l}Fp!MslJ@crl7;ty>#O9M0rGrrhNg}h z>}Fabp`NWoHA9z?yM#sH7{tLGi(ZYSMIz7QQs(kaj4TMF;M(W*eVlnp(kPWN#hf-W^Iq`gY zW_r?h?oo43KA6&$%6`+u_u&KDu%%8DEV=a)W1ot{*+;=UqGhT-$D?QE8ohl`HTsF! zUZNrg7^%4goawC~)o03FwK9Rr)@L+Xlp?07m~n(OrnZ=AggmCvgpn3NYoP%=?~zYm zBiNj19BW0-cQ@ug&|V zCy=D`wRv^H{*KiD*6`%7GOeJIv7V#F|7+MLG4UT8c=)r~bww(qu%O8&N3_r(o|_Uy ze32Kg01O{?u!ysvt4+*mF3^yreieZ3S-j29o}wHcq6_0<9(kAC}o&ME`wjZw~SU{K>G8?i^X-mPL6~KI?TvfidV&|toj(jz}WCho5yXNsU)_c<=CWmlo zYfG9wgbst`mn{&4*?MU3!-%R;uZ_nf?O>;JC+UThc15h6nnwLa*%W3+1Hl8nb3}35 z%aSdZGV1v6vXUF+$y?Ust3DzPo8TKrD!PpCgV70=ACxM`i%ua~p%jI7tzG(}g_YH) z>3v(sPUN+dH3tINfeK^7^?FQXR=oDxn#O&!SGFoEyRf@m!;q~lcoTIsLap&vQkJwM zc>apsjpP+=SyhU^WLPY%m?@I9oHwJMH^;QDSf}9Fn%s$h`#j3!2^uB%8DJ7K^^Hc| zW3ZIFX-FE?&skK}?~T+IVXKojVaZKh*rX?8=^dYpV~<~@fKv!p4$-P1PnE4OiQ^lj zBImE+WA@Xd7rl{tjRcMHh&wFNXLjV+6cYDG9B&@-liRv%(GfDP0jBmJBRkfsx5|tv zFo?($6eX1RUDMcOeoKzG;yCj_DUVZ!R^a_{vn#PhEht8t+M(=U_2u6%QzGw#l1P6< zyV^fTlimkr+tgKk@g5eGKL!BwR|bGV;S5{?hUqMJzxUIru})t0fe3Wy2v@%2+71zP z6&i>7@?SoM<>+z*jkomWbTi#L)SilFzfYVxm}g>RTjJbbrCrcx@3o^&B|2{q^xJO8 zN4cgwxy~avvN!cLxud4*oj#i)VXZ;+o&!uaM2ZBqW9rk$XbN`iae+ZAk_3)DNnJCF z&0hfDgi#rl(!C;Qt15Vh%rAel-d^-C^lxfk}d2zEd)Pw< z3U2ZFFMbTIXxVY>x3RMvm_2>lC1^=|Zc)!kj3!%eD!)GnnPs?x8dJXecBTyn+YUX> zD7_mW^(y4n3eT0_jfWV0wXb@UoYnbe0t6*nsz7Al+fQmqd^GJLGVxp>8E=`MO1vp0 zL4S>Kum9~eG$vat)%S=`xNW2a?v4V_y?`+00oRw>ZUfv^U?jU>LVpSl{hsfG_y9-# z=<6(i-%D+$kEW+rB58}@i55Dr&piUbt0PW+)8;|MdFHD^#1DTZL*WY4+wAL*fmp}X zRSs$8gUbBW?sn)S)WK(Lj}GT+;1ZY8l3 z%yxGqdB7L=6POU6@W7RC^y z!h_%ieT9*0*Yu{A9*5>A2|BG@9SgrT0)5;c@`#eE4m{veD+W&b`-S~c;{0D+gtqCq zBxuI$^za;F+X%CsR}ZB0$Iyw@dcV>uLuvRce{QTB|B}5-!IOUHAFQDzL}L)kY_AI0 zH*ViFPT>}HKvp4KS@{8kVEN>N6`rCuJTdNofBLGwP>W8eyRy8*-I5W&0;?!n*<;x9NCSi}{ge8< zs-8r1O}baIJ1w#MJXq*= z_Uo4Qfoqjbe?p*fe+JH>cb-*3<%Qq@bPCV2j8&$`gHQUF&o?MMwKIU>z;P^bW&r3R z`!5pfP6spl{2II;`!_%M{|qzA|0x6gAH(cllcLJ&@|YrDn-Utj{BX|(5)E;WHzELj zZ;$mypLESPjnEhiLt5S8Q8T8H!8qkDE!)w_(c}a0w-`lGguOC=b?KN$;T(a)2rgv$ zSpU_;gG2V|6&nNB=i8TQtqs0Uwh_!;TY!uqt4$~9^?uNcC%N8`KfJLK<8D#RM%*nr zH)=OquA2t`ioYwRsA|G&6bIrJlz&JB%}pV=9OdXQA<2^=q3f)Z&1YS7NJu!&mI!1# z?ZjJnbHpVg3)+S$Om)0*d#65S%c&eeJ2tBzhB71D@LVpXENw-mb=qfiAh~`?@WqZY z%UfOf#>e8`gjiU0j#FLz$Ei2dM|gpHV#eeJP5~1KjZHa!P>pGj>#`*jNU_{PU0Zu< zDPb6a#vL&QnL<~a!aP9~sd_i*W@|du&MqY|l@-z0<4ZZNVS_-6xOBJ$!yrPHPV4U^ z@CgyQMdVcs5pFtcX>#^}1k1BlhY=OOwag{)S!IV&bXPr@eOC<@yQBaS7Kj2_@5&tk7_k>&->?E8STazobeLs~!kdQV{$dwGyh>eY_RC&Z zi%=S+3V_8vnNe5n6X&)fGf%orJ!B6W`deVHgd5FXnUtzy_stn}_A-Z1lIB)ntTW0`2LiOvZ1{lP zG0fMI8L0*}jj$~Rsd5i^1GA)Gvxkq1b8)%FKh#)2N;#&&Let%-2cP#E%BigdZ>k2# z2`ldmqgfD3+x_CP$gzv+<$^pK@xeYpufT(tCl3Tu&UVu+U0${(@@C2fREQw^L!LeM z>+sc_VhdM-0y?vIL#d?mjl^daBO8s?da;=lc97+RA}y9i0+B-FmD(%XR5u^>^DFNb zA8Q;Y%n^xCy<_=CHHV;d+I2`f9x(j=yVm$3{ePzpsk|KTz80#r-71i*ut>Zi+%m^IwZ)SjztZZZX|x zxZ?2>Y@WwUgPV~Dy~GpHt%7mG)Pjh2hi1g=VdaCe@$(V9WbhuAMYx;%K1>tyKIMzg zIXk<(dxx5fmCuCof~mj3FVVGX@}aF4^YABr=!Nn z&DIn97NI2I%%L4K4V)11teqiNEmqn%BeQ4^52`;zji*h}3XC%^S|PbiaeD|n^7;KQ zXdGC<%I^Jw#mTRmX#aPb{y(9S>ToZ=?e**mEIe+%Kat)<>PGx7R#8 z-o4Bnfys>gJTZKk>Y8D#JNkOAA!bACc0skVG1h$*A>aqK=$>jtH!5#H5 zw6z7C<}m09Dr4Lj1pH=N>kGe?$5|cv5ChRhh=ftgwoPg-ncCP^3G~DZgZLhGDkk;w z#2y!Oo-Q2&J^-iZ<0N42+@}}C zP{t_O>IcWSfM?xhz3)$0Tfuq#;Ieiv@MAwHC^mwDgM)8I^c)A5cWV1dYz}V7IPG6N z0%>xjr(m?_+@ZDKLH~-QhBZjw`!9<9>#X>{#}UQf#1a2L61smI zMhz;*g$R4$6#_B-=6?%nmdBYe(*I3-rXy$qc`GW|=fsbP~b zoH#6jxM*E)j&PE>U8?=mApO#6ewcWZIsMA18SW3q@s^&pGyLaDV)SvwpZ4zO^S7&x zkK*dC0D$6*mQzRgb@_{L7|z-)!CQT1FHe&J*_OgBjZ=vW4KUuD;9&Qf9?Q=UDM}ut z+b-<-TLuoEH%(rz+`VL{gB_F97iSM#T%52&75!H@-$!%X-%`Zfecoj+s)N>-sv)0< zjTI?SpgP&`)Al)jr!47Y7gV~B1&G`XJcm+tM1+?JeqXQ^)p+riBj3~lonR8?U zycc_P3K@*P>=Kmqfyg*F{AJ>5`qPG%q#A{6dyYTWgyqAu0uq#pk{gXyMXrHL6ygG~bhLa}|P_($$piY@w)o3ma zbP-RNyXLS)I>Wqb%AiFIPlGCMHCj;FAWG?|PX>_a6o+*J2~fdQS`)5$h7E4|;o8yZ z<|Dgt0r#NP3Z`}C)mb)-e1}zX2I=DV=b_B9okOZZo&TstgopJ6Edd|f_m8dooTz99_gV^0$ICMrIq47sBUS}2+ExwfZIbmfP( z*4Sj^UfU+}1&iVI)9oKHV5Pjn6bJ0wer->Qk#A-|68tbo9#!ADMxajG*U||EAzL8J z5s?k7l`NrK!2WPu<;)alJ=e;dy>-QSiT+AG+*Qz}&AD%zzkWs>LrewP{64K)QbvZN zM7n+M3R>G)TXwAEZLRh>4d!jSk0%CJ>-VcQ`1Eq{)7xy8%-)vzx(e0IynGo$ooO@;5hE&Yump>eW@qbXa3>mG*MC*3Q(M zwGyiZ1Sl5|&qkvpmkqx>ecgr$A&YwlDFzBOnc5Zy44_;OV(3*%?VteIC3cc%_Y_4y zs<-U3km@2K-KSrM;cH9hN6t?@W}Z;(h_qeEC7h#mxdywd9rqUhXBUsofVEU|cpSY^ zX3G(in$a+c{(_`QTr7^S907T(+?5}) z`Q9VT>oy~ma6tz(Ev$ZXXUU?Ezqx_Q;BUYc+xYXb7bXMeN$Ko%*HDF%ZYscEPhWe?+2){pERcpZF-1LI zeK18lyzR*KDW-?7dJ7r25G7o5dpf_0(e38I!pr`-C&PBl?XAmuy}7uBHE5Hh%L?y> zN__JY$worUh&Jb*zLp137JrH%6qDn01z7&2Y|7s>ETf7t+ckQ=_(yY#%9q=870?tU zvlEZuIID!=h_tOCgxZDyx}}|1wRD2frksC%;ufjdphD@+xDmF_xDmAuAwjdk&eY+j zvI-GCRk91gpnt@LaRpDQL)a|diE-Kz+Wo07p_1>pP%Pgq{Bx~(7mJvQ-N!buW8To& zq8fFrz9gUj2p66(?YzeMX=ilmqDK+hYb@KlQWf7B+l^$zbl zVn3YvicY8LU~p6fZqxc-)*6Uv`gfK@@6eBP%(;nfFwRHEbfQGTcL#wSnt;G9Np;i> z_8m(lQIpr+R1xVL`Bh%&)|j;yH>*4^KHdk{lo}1sdINvLgS&h1wkba{k=GI_Kf(Ic`^Kw1FCcI z4*rSu6mp#!(d*;A(vOT4k=_eCA8+XU!n%!q^8)-+4;@vHVEx!giGZyZS1%(fZ@Sql zo^X0K!l4T|i0dO4Hwk~>6H;I#NJ=v7+coF%Sf+_;>pd&Ea~9WuS9>cC-809;dr9j( zfZX|~;Net#$%ZT9-X`^s{?`1UC7E*b=spKu#*Z@4^KK>+UWfrkd76xlv& zTtN>CBRlz-(W%8bnLcO)Klhk|#d`ZJS0X4E^uA|@rgB-(mj{eppjB`DCHsw(vU!On zu!L4ez&$RUGQ-LVI_8;7#=)lPJF@eIRG3rWL?{w=Vyhwd>Y9{%P+F&)!AbWEi> z9d7dez5WA8xZ)ol>FPhI1iHTT(rc!^esDK_H+qXiKJQ>%O7K&xqdQRZ7##SdTaF;V z8>fo`4M>(-VfPK(MD7crqb#dMUdbq~Z6R*NbwqqcQk}aTA*<^QDcmHRilU?B(1>AQ zGxG`0?`3L&Ot8_f;?#&Y>-f4KmucK9t}I0LNtNu5sXWq&S!nlcTP1u*dDtgyPnUfs zEBLC)cVCl*l9Pmz8yPkuHNKONEP0D%;*f`fZR=IANa>XjzttBV<-%iS$YZ5HB1ZiK z_){$?JZNURqS3wtu+Ex+FC`>pMz&ufyV9AMpT{pW8IeEsjde;_=^g@QYz|gHBjY&c zjB$&Nc)B~Am#I*WiIICrpb+dpo*-$?Nl}4eNe8FKt6tMWZv zmKY9wDbDMG-U)g{x+F@LznYZ{Rzd#Il%PY0u&CV@6PtLrk9 z&=M>59$?nsyFJ+EkX1W2n*&Jr390fNohH9C{m^m|O#2#4#e9qr2i|JdP+M|s*C3}g zE#Zj2Jq!~9S-6nxtS9B6SHZl0iUeG3L9iTubRSFT+T>8i!#l#+)F&(+*AIJE?^*3ov#%9{fA+d=lR)>5a zw2g~OMUi*YWS;4T^tL6&Pl+gt>Q#kl@-w=kBu+6icB^%vJIBzuL!I1UmuFdain}hUsTI1$$vvX$pR}akuk&NPdTiei7~DatrL|_sj*zJ? zlT+(fciM$+7AKBjwKP>VAS($*%F#qJPudzUutj_=VIE;jaj|$l?^`I+yn3PD;^I$$ zrSsrgFWJr=#?w}%AbGWSzI9piRj!? zjc4~$0xd0~UN@VAnq$?CqRFZ0VTPQ9iEn|1nj5OkJXgb&VA`gv$?OjUN^dA3wggc_ z1}c_*2r8nsP56aVmqHOGfohT9h*(>NZU6cL-gFghvFSQ-2$EF{4}}a0jf|;GTG}Eg zCJ>poM^BVFxIQ~|Q=X`1Lsn0hW4KFuEs}`k!9P0aFaFcs3wE2a(}uyFFQ72X=$aLL zu@@LT(k|SLxZ!50FV;pHpDTD@&ps?}OYcP#8BD@3H66w@oKOgozC{KZPeCnAZOm?| zErm(j7qKt^b4$EJMO(eLN}^$ri0DU1>mad&eo9QHCKxpOJp5{y^UmMw01qQ{tsiDs-eo1Qbzz; zn_Zi$t+4MpfiAP_wCM#`Wcjeoq*|_>q|~)dfalS#sJh{sRZb+SrMDl!q`w=rIK>nP zo_53y>mnmnb1a6r3ljxag9OGBvBsP>iXC?J3Xx>U+i!>pp-B?T3*NWW(t0fG7H>hQ zD{Vy&)xyp9sm%}FCge6?TqU9+{hod@z)J-wH6blEH7I8YmGK6+>LO?LxmcOXZv?9AN@l-3;CbDhhzCI{H`!6tbTB^oGjE2L5zBfPhe?VdN~&Dw<~OCD8+%tF!_FSr+eWvMrdcU!r1d@pvXSB z=Yo09O7Xst@do>=jG{T!dU6H-?Msg2@5(5D*QpS)v$MAQs-oCC=zVEI{j(-#6gO@+ zPYVc&h9WG2Uu$SMoRg<6tf+aev9lz4++mHlG;F&kjXEoFJczO|abZT`{028@vw-K% zzUlIid7mBb_4=Hh-M#bOBS=QeWiwC!$el5YfkkS6$0Bad0zfDR4-0t_pkgtY5jWZ= zhCyU_o5(v|Zn#OiDyg<=2OR~0wON_nwhPkUva5>~U1Hsf3DmBRIQJ_h%LDg{E^cs(qZqd*OQ zR|?p|DQq&XOomC4A+wv_F&WVSvnF_k z-QwF~dSScE>ishU4%Xd6)0@KG{TuqPK$`p<5WW7Y$1(kFJ&x-CvmW=QC}w13Z)$Dz z&q(r&*^~yNgAbJXuJ$U|i?)vmLA(aO1LZ9$D$1C*mAolNMy)Z24bhc`%IyPZgrz*d z;XZ3k&t-31l&y1(L%NSRjG&IN1_dke2A=^JwG9}{yyD%JwCjJxFJv>49NkPK8_%4! z3!ImBW@MnqPri`nGK329JRw^sDC#~ag@YpL&RZ~4j%I6_2rHn9!_2M?ZOtb1wYx1B zzk0PTup#ZGI<&QcPEv-N|cxBC#x5T__f#xU+@3D`1!S^zggRv(CFFd8T>M$(bsb@ zHK+Mke^EqPk>AnO;;V)I&vh3tRxCwFt`HK^j6?jv%a@(Z*v!vCcORU~%R&AV5dH3j#Vbf@Nxv3& z{-c(yWC#97c%i}&0;q(LKDl=MZCeD3VFy`n^QvUZ6a``!a3VG$C#-TZUT)s1BpTIe zSBYNp=`1VJ)~~e)XR#2lG^%!v0+L77XoRq{s8!6cHDi@#gfeFwSmi!CX?Dk|wa_)y zlJPU>%NqStZi3wfCF$m?D`$SGrmPD(gHjaX>i8TUrI?|XTOR#{c2Fi&PcaH3_Akgw z^*f4Y+w~H+`Tiiu;!&mQhgdu3G_hg|)kBfSzIGNErB}^X^n6aPOn|#jh0LCZsC*RZ z+*6mKnN6=x-lki^8fFEl6bLoZIEqr92j1&}0y-{V3xD~F!uohU(`D?KhC(wBrQMZqjLS&eRerugp6w3{uO zCw2aZVPKE7_==Ki-w~6N>TeK!276ueCWmHJCEvb6nMERy@+`@CY?Fe~>xKYOP}%K7 zB9W>xk{Ss@Zuhu&ORgqI{6D4DqHD%|p{#Bd&67(82`}iSxxo>&ks$5^W|{(DK0C(Z z4c#7P0nedZgXj8IIj?eC%SujhRK{k*y!_V;23M2wuPN5^E2-xuRIv{9rmGHD(MbNH z6U^~@Ar|gK9HF8K3>rV7W7}fkAuK(cC_<=J0Cm`F18jz#?T1oh@`av_jLDDF#rPe0+!~aRIN;}}P>vIkv5H&>zqz~~ zz>YM=wGVoT^Q$`|&B1oX@M?Ni*)T1eEf^{lD!c3yKUANU!GvAqyxd5+sGC{!Qs7<0 z_HCI>#{1G-e9i3Ln0JB4RP!hH-N9Q({ao^R#tSx*Dq5pT01#X(cEAPlkHSBh6ZI>- z3EXdqn1Y3s7rI*aUiZSAfzOg|fH9EHd!Q%GM^>}@LrG2P3WG5O+9Vydqf%r0$xw8n zDl=Y_l9%vku%;>m_%9=4OmzC)ouwg6|*ZAEC zi{n@yiO5maZ!$xwS+*_m+-WNA@z-vGD|}>#?U1B`9Y(t?in~o}{-Mf>M0I6LlxIsQ z^M(+Imk9XB4kcL+Y}Df}RPW>M>eK~_CQ(8EA`?hG5i1nY3BH(|EbhrH=OPo*wWv~V<6sW7w6mgj(#MgN`qXVUa@CV6Fns43`~?f)bN-ddLV>@g_9b9OUe&7*t8uxI>KaKkVNC+DMSUvi_(FZlFS+-t!CGbG|)aiy2Sa zUrxu09lv_{E^vxmqnwZRR+E_hn4MH!9bNOO4!vbb3AGl>G@rS_KE3Cn`|u6hUbv=9bouET>TS)a8=P%}2Mq^bZ{2I-q__}xTzcUZ< z-!PA|sgbjdwcWqEw@i_IP<^xj!Q0jTbSKGNGQxIjq4a@2(M)M-$@POkFR8uLQ(!4Mj)8UP6FEGzo_aCAkLv z;qYRu!g?D0^#Da*@BjS~|1Kp~aB#ISk~cCovNN(W_}5feq};lAKQAD|(yf;1=?d9n zrmW!>aR8MML2xEnzE^yk{@k*T*wo+H(cGEaR1LUpELg9OJqf_u zT#m-Jt!j*$;*F=$vAoA?=Gb_?V6W{GDSIh>DC9O^rJjyqPn9*5tqiYGE+Y4o!{lV; z-?S@6qRpD|eur5<9Fsh>Kd6X)q=|DLLoGPl^tBr-gkeVEpO0)o5`U>;g?J#AS7kyF z=^Ma`gW*7e#Ue`2s`*Suuj@Xq%51V>@|UY(tl{G!0>kAG*6$|~FEaIk(#x7DXeQW$ zO+!CNo>;@i)4z<=f zXBsLD4tT9G-u*|~X^KMAsqmEr8U35Y>3@zB5dKX({<97I&n$@J(R!I1%ot1yjM@q8 zhZC5zFxbb#0%G^T#=@T8z`?={u8c4k0<2Va#Xz0ld&WSA!~0HL-b9CkxiHwz9RBRL zg8{4DSa0vPN37zb( z$LajH=(PNg3C92N($l|EzyA~>l(sfB`tOS{sjQ)}E)4iU0RhT|$0Z7QK>3x!tScxs zFE1I-8Z^_OJD1V|D-|!gq|dw(M^TyUdL?rrX>v!ChU&MT`qar&HeX-Y3b>$)=WL)^ z%g?ue?OJ3rd9LpE{sVj|s=M4nTLh!Yp9ek9RYPmALok8S5)|!jgPo1`03RBCzefd8Wd+mewq{~4`xMB`7<0W$wp+@4z-JxHl&@sYvDFA3K_c`CKI|3=?+Z5 zoifW{X0B@-eX1HF+Ju}a82r3RfpC(Sd#CAO+*fN0@%787V6_&Rhg8*Rb;{ayytZ(q zDTB8K)M_&-so`4eBVSV3xPAF9={&ij5TC|YhIqd?6Pja=Jqv%7mas#1EelXw7d<$I zlDl0RlK012=QuJZ8?SP0VoH3KXaRzNz_aQT8fFQ>gPzRj8at&x}-%cFQR^5jHxKc}wxWIns0N zVy)HQcRThjx?8HBXDhU~*gsQWenv}i_9`GTVyy8e7Ho z_h^~F`a46R4UJ*lk5-U4deWKke+`>$wmb0y;qfkJcdzq+p*Xm@z9UL>-`fUa?e{+Lg z!!G?6*bJl;cD=4k^wz@Iugeq{(5E;M_Cf-J!i=J0EW!F2FmA1La>p%RZi zRuY)ypX8bR0Ncc-*7x7SL6{|R`0gq0V*wOTGH&ak8cZwxyveK{xlQ+Cv$ID5^X{sj z-ozAywioNFl_9SD~F4c6FzpY zJeM(tL)Af~)3V_|8vKP@ClLpdP&!~)C#j;~Tj;qxx+D&T*)stiG#SEGZA+nIk8`0? zgj)0G+nPddJEg{ZvObYmdM3Xn4irOPJ+?Bk8T&_&hAWjN1{k7eMAb*fgT-0rPDpks zVFqv{_)m{3I7|vO1xnsoKDg{}z*8_Tp`9#)`78`|_06++=J=t|4Sj_so&9V2Hh-Gz zWw3dGcG~pH9H(f7tYfLjsphpyFltG2eFB-I=tcGlY8|KW-~NLbm)ycG=)Z`u_uonc z|M_?PkC)*7#S{M}RQsR&P#Dc2(@zTsoVMf#rixAqjBMotBA_$QC#U2DBLrg}Zjw(X zjKU(hSx5V8(k=iqDK9K|z~;KP>Z&z+di~Eh1rU}2mL5x=b^yYc#_(WfTSG^hx!g8d zDTIfek;Rb9;Gkx00>}G^e7RB4iYtkN0{i1doYm#2B&{hF^SDy3c=DI?Y=xr*axDCi z=@-2urhkP00k`mwIblhB2!$-}o~^<>4lc@Q)S|q`K65h*8(VO5#Z4K23+T->t&l}! zf6n(;+Bi;(2eoF~J>ght^QTpJQ=J-**err3!rHw#?tX#{$g2Lvi-yQ=@e&*zUNSFb z;mF=IV-4Trd98O0{1*-DuwL?i|5{q)f6F`mb9w(qHK~6s?>|Fa%JJ*sz*n_P$m#zX zXiQYnkU^4z&$7&AK?x7ElamGU)%FqUfwr5Kr!bX=niIc3T1|3PvuG~h0(HGr@{WK@ z6P5I!<^Gc&vCUSoV#VSo#a_>FpJ{!}Vej;OTy4EQD#h?X$*c9yBlF#DWRifVkBElr zsF$9FVxz*Y{-}^d+l^fA^J!|y$&5s2W!)oH=3ri9wbMh7gD5s3sf0s~>0FX&wMyOU zmsOuk-j-%pj96ozt61EKMp>Gq`#53Rn4)=G-p|rPU@5Y)3733;`A}CC*?Aw)wC^~g zW6eB)6n^%YDpk3%4f+^X*>IV>vXs_nZJOSh&uCs%W{5QW8PnrQ59wn4qG!PVW%GP= zYTYadkVwgt^!S>w|94p?h2gYNX%p(x2GAdf(_wlT7E*bOq6*m>g94QUN!2Cn*qebj z1;4mb=p?DuO8|}P+Ehugr?X5;e#xX5q1vtjovK-=?q^YgbOYb^6xGTh8i7$}NBPB8 ztCa!eK1NzTMAXJJ;2HgZwzJ6`n*!|qM9@!Jtq2NL>+x^(v-JItB#}Q94m2w%NC;F^ zM=+tkWFmqYax~jIpA_J$I2b0`8t&lmw-j+zEEmMr?ER;`X1+6xv#1s6iH`vCv{QeV zXcRe$@2NSY6iVuyC7b%B^I^oDf^8;{e&AU0Wu=(=qZA(-8}k%8sRAwiCXZ-fMKkWF|bbUl4nqndf9z$Gyej5qLxyfk%K-1ZrBHRTnnAAiDx|Iy{Hw?=@BM1;~U0Z88okbL3jNa zg9*8y7@@>PvM+dAD}C18pIXr7cr=$iACcV8pO?O@S5VP45wp#ES}jE{!5o>;6TDpT z;&|j(aitq%HtWv(%~isKTTd!I^Zt(;e*{lF?-yU&hz0!bh=b>Eh~uAI=^tB2!O`Zg z!zH1TmBrTu9Z6IBuWIst)i^U1EoJ6q0bWzgr`lsdIeufh_-9L&fDA&!1-LxK_)wf6 zkDK*Pw|V4tC)4)Vc1c_?o)_RZxuJO!HJ~I2Q@bgy=dAmT%1U{EZ-AVhjtVH>sbtj$456`lF;43~0KW3dj=bCKh-b zmITSncF^5q>N7K*xrP@m_9ZD2;oQafvUtxC*F~ZmLS4}wIqUPVgIU!C!yt|bbcMyAZ!uDF}n2X z$}FoE|C9in`Vif_FBy-=0}cw9%rj*%aTbBi@B zYoF7xH5a4497*k2Xit?{-NW;*J5e5N-#6PF=n#SP>8J>m#yVMyYG^o<0us%rY&UA* ztk32Se+IO+B-m$qXj{q<&p>jH(={W-XU2ZMT?-Tc_>TMmeb5sg3h?f*`)0n?ChE^( z8>M4?TRP~J<|y{($K2VlsA;4@LH8~4uG2x$^KcptzgfM%NDRy{6Z!R=KaeGQ=T;YlVGLdnX(L35J&tK?% zYi^rI{1uXiU-``cEdl%|y8n-!egB5;{}z(}9*l{~f4l)-o_$+}_4OPauJ9mVW`|)5 zL~1MI7V4;J%m==h^5Tm7cOWjZF#BPH_&@rz9D_*gzuq7hjL#Er@6oDhk2rXf$|ptl6B4affv{S1B(u( zCTvgdaFJLG=bD9Vh(>D!xK%<&v4E8RMug6gl32qdIsgpw(?}tj&LyLF84U|&*NGFM zukxiWz*_XBD1gK$%!trOfRmeO-xTX;m4QC*1x3SKx$hoPJK-kICxISTWc?aqgUv#H zHAP)ffsKl}lKpqrN<(3By}Cs^$Ac1DGt@$&qVJ3aXv!b4wwNNjNEOAarmM-_Zb zhf@-Rfl6V0h!BcLL?XT8tVOz*UAQ*OBu}b+&B$Lvg~(XL&VY^}B&e?O9ruW*ok!4e zQ2O#6SPz}PbSN($9PyV}Kb-vnzwDg^zj;=I-QtQ}6T~g~8~cvQG>F$gKb^gb03EUy zrYJGi;vLR0p!1d0)hb0wOB8bMHM-^EKp?oqjRFSF;vJwP&^68hvj`~ay*R&Z+7~L0 z=O6yg=$ghi9BahlcHK zK{x3t)}xGD9A(qVA^nHA&k&l7p&J%Durs&H3rX{xz2knDkX1$7sIklz&D<)S`b4&f zcncWr*Qw9gmDB41B%~iX#SJZ-r5QB$1pt`4Vhoig4wH48gCLE#>K-#fU=$;SjgS}{ zTk|GKsefED&advhUstUUv)(zz9PfDE2M=aU^9EJ5e^wi@ng0B0&5%fN+Th$iG>eF-Rwlms zO|x^2G$uW?q$bG1b?6+)f5 z*>9GN3%BxS&M~V-Sy7d6T7g;aq7UqjDL*(ES)F3ho4MF7#yrTa)$3E5qZ?`?zsb(9 zcjk8`rgihWM#D6@EtqMWoKUpvzgyK5W4dgJ^D^&mj5O)Zy^uR4acXLzH`Z(@qZ zTuB?^QMY?lR2u>>+_DRc2iL!c(+bFmKmsoW1e=O2>HaIqS!tp*OVe&?kz14#^0@C> znDF7pz-(M3d%g|3m`jm$Bfl%ibHg(Z?drOAkd!kR6l-s-$X*+NhQCq zq{{6SHea#48E&=RfNvg8V@4=uf4L;hsT)V^8LYXjvEgN{hFHi6H_rQRv zfdGpW{Icv8KyeWI)9wMtG>J_J4OZt;cU$z%zauEPgG!wdZc3drws4HzLZYoJL$QD7 zQB#z*g=E+1DRmIWER)Y>Tt|2e@ii@9(cNhVa=aPx(}&O-Tp(ty_a-p$iKedZBHb*6 z6fi9gfbMjAUuXP;pxayYm|mi7sz;EX>sdl5zeQF z7#fn|oZdG;<(5OfP8sqBaaTSC9Ah7Uvb?*`;%kzIC3@P}2y$S+P2}alwaF7=+3zdR z5psD#rI8&~x3H=Wn)gPVu8SIDY9CIs#a4?0hEtMT3IMTLL@bQ&7;|cR|R!2@O25!mZ6K|$erV^3EHH*M{S|1SmwXIz?K|*Ldp7WL(ZB5N%{l^ z-K4qPJ$7oQ@7CEfPf@e^+Q9P8a+u7I%fOCw^E8nD>dH4KkQ%-)%>^4`evpPjgmYat zG%Ttr-r@V76UPiRsF(b1i}NWgH!XJl#A&P#8+;NQ~}__!4I^4+ZBpm5zq z8}nNO%*U%h*d!4e=elv<)!!df!5(D_T$$z3qEr6dG1U?MM|OnPI;eifnOaC6>DN4Z zxjGl&S|o->ow}UN_is<(Gs}^oM=5WnT1b-)2Ht|d+{rAMRr%+RbE-7RDR77s4h}&f zM<5U_ypRJ5%>}t+nmINMj!CWK-VkSfOIWK>ykq~M7*Z0I7+S_iIR73;4MaR3@kY$s zgAjpS7*?wZtH_DA-TwCa+wKvn=R(Did;<9CNE7S^rEA9nhxdQS8!19|_ zcEWvJrOIjuh3a3hiF0c3Wp+t zf?!VZGlhh7Nz{n3vWTMRZvuK$QBj1f_9OR8*|hozv8E44C%mn_C*G+R-~D&*r`#V8 z<*U(nIs`j+NOXYeIZ*7*?H^ksvRf!J4(`F~<;s*II1- zo~BLjUfA-HJq(DhcIl`XS$&$o@YM4?VfL!00;CTc(9nZ0S1atLa3+a z8kJ(4!44!blDFS`eC$ca^h57~_F2LB&OF^W1Vh3&@XqH)9Njm_F&|mhwwQ* zhHsdLvPj-Ed#RB=dI`daPCP~})R3WQWycmxl%(0o=Vipk7_J*V2B+h9^Ie3Qa>{1j zLaPeONS9kmYU-SQt>;1~lcozB&ajs<7FThMQvAf$)EeX;$mdPQ@tJ0COv(dxQdld_ zgfr5FbgkKe?XcyEhFW!*;}}-6$4bbW6+isba(v<)c8!XwNm#(O*RZ*@xdW4MdiG3< z)BBmlhPG?qf}$^IgQq-|cre-37y6gnKQ6u^gN{#Q z9@}S%=Ic*RQuJj@;%HO5#94RO-gr+uSPEa#z8+|BdXg1OruJft=%aY^%wE!>Lu=Lo zp>?#jq}a-0FTawLsszY)YrC{6v;%UrS~=Nn68js7Y6N{$B3@wLfHx9jxlJyL#JSZX z?8SyVv)CU}WTpk8_4hXeK(^q%zD6Y9KMEE$Vj?Gi8Ascr7zzrri?Uc*c8G;2B|)By znKf-8YR1VkkPmvXP_IW1V-^bNO4QADyeYUu_(v_%wf_%P}LS~Vg;M7Njqj1Efj zrak!US|9VXFAZrk{)TNc?uKqNFKSX4V{V+m*eHqJl-(Z9kA94-iS*$@b(f-SuwEcB z>d8@oj5eRSFQwmxiQ3Q&)3P5^4Tp~|#4bZ$qedu6*i0^7JPAf$(u!$Q8j6g0Qio|0 z@z6FWpamFaxPo|$IYE>ooV3gWOsqA=(AgI%LuV-G0dd@W4MUJ(JsVFM{8EscL8sBx zI003wG54>C9)v@z&L!eZnOA6lFT)At@e{dbhGK-3M@H3p%6VE^Ms=oaVH3DNadDg6 zP=YJ%kX&FQx)P-bGNi0o(EcQA7LjyHNf$k^fB|r+Z)IzUGH75~xnoorJ;=!*UgYHM z3av)_C3Csim+C@W6o|#zV?o3T=Mz*+;%rqqy=v8`%<3s98CoV(*%J9@UPW44#MOls zj}_@N;=&$u%9}IC4-4}JE^<;*nCEcrI4Vqck1P)X9O)Yt!>lT0AmVIW<`YOR23^$pY;( z=4E|I2G8G3GJ!`KD&|S|VnO-$CZZVf#Xy?&;!ZH-R#O^z6u=snZcz&Dq~|WEl`;ZM zRuq@>eUecMYfqx_6MA1SC3In$3lB?ZOzN&sWQz&378cEw-LS>UU<#DCAY+@eA2u;^ zkBTy7-M6zs6u2`nB0jt0Jlo=2407Ge1^nVH1@S$giqJ+}S-WOP?%>}7%8PR0F1Fi8 z8E_`jE2tMeuk#dC;IGScjsEIJ;SM^n6|B|}7WPE*)nS_`Y;CxmY&&X0+0BLh9}5J( z^Iarsx(EKkN&|m^@QUWX|IRcFd&=_XYq7>v;_fKuM`o-jZ0sk-oDp6XO`h;}Fh#WS zvJjEM{ShmD@~d1*>cttbuhG;$ZFI1{InEB@mqKees_mU-6-Y9 zmPpwQu&qi@uZQYskvqS7_4q|B9_>HQ9abf{owUfKXlhLq=zCrDDsul|6F?5-OOUWJ zJE8XDo@|hi#<_oVOBnZBoD7V7>RHrlf+y|q;{bgOXf@=(0CCHD|7JGVE9pw{Gw>=v zMy1lf1OM@Rmam2nJ2(!_w#j!(oR!S@gLZuMr41-~FnuoAl~4x(rNWsV*W(9H`0NHZ zgo1wIDeWv{giU|tbGp2ZTK}=5)v0v8B}l+EWMNpCLZu3=VzhpN}}0^$^0v~|9bBb?s!c*F4qV{&uUbb<4Z7Xy9%%TYs~#bCuGZCv)>rM%5% zu#OLkL}C_HzmxY7yy0V;wFvMS7%xa<8&fZQlC z>W0T&`MnT82)E@GkyMTJ@x2mYk7>NePG!$2w;6J;LWM zJmX3p!MbuROM8xPpqVC3+mvikMJswdV|aac=TPn4nLUx`VC^P#d#2i`ne_{CCg^V4 z?K%(7<5+$Bqn<&-e5_iWDjsqi$L@&^s@@xZ<=NkGrVz@vVq3qMa!ZRp4F$XP=%M$2 zU>7$_0YZq2q2?wL&@}BP&Qc)c_R>i1XlL)(+C9S7pXg%xyfq}Us>zwTFS26gwf|~H zQJC&}_|_D6BFf;8aVa2Zh%H(>F+r8Pwe{aQ4Ep#UA)Cr% zgU)C5aXEOK4%((5XcxDgOG9Z&2Vi6$1wtgskewIo3(%)(V9J?8v(-9@thn6I@=TZ+ zq5IBXnmIe5rbz=;LtZsmO~b?Zm}85oea!0XkP2{juUxBM`B;Lb0SQ8eZB9-U=L%{e zy>bTt1q~&+pCK)?7|`AsQpnNqvogf$YIDa*T0-uInM;U{98TZK@8xWE`^O zR5EcC(+I54MFdwX9_5-Ex%(fvYTg}t+VrkNf7ln5cm|cUjLo;t%)dclZHx+G@k*tL zX`U21raFN~7mNZ~@bc0{^VDBRqD@E1uuuHOd8>bWf>9p(|@k6VkAc|4PWLdPH6ws692y;+8diX{A=|1 zpME%6c}?kSIHFtBB!HbS&;qH}0vW9I+etAla@Z9EW?W%F5JgfLwukK^pYr*;UvL%Q zODVG(0xo9OJ6f0E206-_<=F7pCb_l#BA0j8+uQpCiXE)sNGt)kwPGvDeV+mq!+A|+`HfR7|W z;<8tY&5Ul@I8;tbjINw^+My-Nsy^<-7C9%C(qg{F};h`1PNiGX5>vJjHwV$u?6&5-R< zt%8mJ_VCvXjhPKFfe$x!_9U!0d^Ql_3GPRr!RHhfM$}@om0hBlT%t9Ci}&|LgwZfL zu4=aHRisLWGP9t6TpI>9#!>xjCFPqoD4DJc2e(u@6E8H&fHAY6*1qu!=4TuAt3@%(R6`0&RRp>k$6 z?t5sVc;Z_~H;b{!=qo!Y{(uyX=^+a8Y$lrFS&z%%;mLwDZikNXHPup5m3JAg=H_@7?#GGu5$A*TLeu_8T}8L&)bSJbpW9L3sH$M77-{7^&`oGEAEk|e+uqh?IBqp)iB?EgSXet&Ab^Ku)empe7&s4a{Pgu)Tx~WG--@_z7U#7R8 z;<`>p?&`j4@%T<(>OqN)r8n6_?V-A<=e+CsrZkK#G5!z_)TwksO1@yFRn>GJXhtTU}5uZGS#px3OQ|lb{44p%jBnplUdWE0r39 zR3JFh0m73wqoflfCMiLo+!jByg*}DD4wd+#hEOU?vx%7siW}77nkUb?&NHEpt z>`~j#RVeeN3anl#;!OR3P_$^ZBBV`HgswuTs#>M9Oo>>KD?_hA zAIC&OYBS?#ffY>imB?ZqZ-O0_MP;(^?4D~N>$~UEd9;4MzNW^+JHbTq6zhtO9~AnU z-o<6*T-oj?J;%L3v9hMMv$OfJ)po_tRVIBBCACeo@X(IV<@=Ce9y2w})6>iF(~Ibt z=-y92kkN?EsWrBXy|*tz^~|sdy-sn$jy7M{L*Q($0qk<(}}1r1Z=oSoG9m-C6cBy za#e(|bz*~yZg&A*8shf#QA^ovb61h`H%a5?!Ki~%{&%K2T3rTOXl&gHx{790i3T~# zb@SL4BUf0_hK+3qE_hwF9MLC;jqqRUBjo<9u|s5!WE=eT(6X;x=$)IY?3g9Z+K$6uUw)_oS|ktFPK5~!m1@~%?b^9f`pXc zKo!DaYBpXpx18LOK6EiiPb`QNJM`LrCG{SDQZv6E4C^K5FVD8=(3~fm_m$>FnX3r! zf~A)Q7AjSVommEnVOxS;ZT!w}n{}Z1v~VHI7;u0kX(HW}ASdTYoLsa(&M2CBaS4z@ zw{k($EuSHsb)wYGo-q}oLw5qx?Z%X9lq1@rHr-d9{q*&0)7q>=yagp(f^Lx`i(v>f z-5sA``tZVZ2x9E6r!wr0X4(#8+9vaC)7-Q}bSjHdUo!^YU$ek8vz%WUO`R=7Cz>ps z%SzN)4Ubn*y-W0ExTHz(FCM$C=FZ@{koO=)9LcA}<~51&6IO}w7qqGT1&V2(*hOFF zc(b<3Z(gF`e%qKp!#D=_7#J(U62J86an#04hc}^iLbo zbn=txi4oO#_kOI{Za$LPr^J@y&_e)9?6v!1DEOZKh{4anxzRF~)vrlpD>H@1^_xb_ zT999S$xIcp4dL-jU0S1D661nM;xWSfRwr;UVg*VtWkMm!X_TyJ+Qnk0@uKkxhBy?- z=!#Jhs3rts=k)l>%9HvPup%qX6VJb6X~q#$Sy#p7EtUgxsd!6f zlJTw)Msf#o1bv@=6l#zuvc@TT+VVDdhDL%&d`&HP||SvLvFkoM;NSF zqW{@yb-4n2fls}cbNzBA2p6fQc_3r*#0B2TvePJwlk=@~h({DI;X;8Us zKYuS1_);#M;wNA?HraER6x{p4yz;9fU{rx({Sy9Gvx0ISXGXS*q#R>cBN6((XYpBQ z4R?@6+k^7GGm1+_N@-q%%d$K82cBiCE~emti?&MN=e`1E+7L^h)@5KWump{al)f%n zxumml2z&cCBiGE!_`KOV$2ec}aJOggUgej0r^ZTkbD+a6zweBJH4BF6D_6&klbO9S zdg*=?G6b0)W_7=PaHnCBN>imxab;Plox>8X+6nICxw4C#5;8C5q0F9L5@1W|(z3F# zu+m0HOLv0cs3^CWD4vcvg&%^T_l*Uzu!jY=k7uT(y>dkN(lMF6b~SxW#&$QF`pkOy z06N~KytI_QRSPb7{-ob+{LDb~Vy7Jxci%h}l| zZ^MG@&r7KoyuArZO5Vfr-g{Wh5GYIU-9;2QHSSGjx;%kHE~R>xC012-nu;fYG(Wk% zvyjr6l;hOtAlZj2y`GZd76Lnor$$IyEf8N1+E7RHs>B}Sx{O0F{DQHFk|k-b&PDRY zz?V$Bu;6jvFh;tMtus5!JQEL}nN^v9nN1@P?=sQ5n9zDMwf|ie@A&e5aF0JMW3akv zb9?931fw4>V~lXb7DwDiEaa>b$k~6)Lrkw#5CY6%v5R*w7p?CRhfr+pS?2*eS>-fh z2r5Llnmn;AECevsmU#v$ifIwqibe+p3!}s_Hvnm=g=Q>%D+8@eCKqN1a~uP#*3P?A&`1=gSd-f@ysnvQQ3#^u6^y}V_=v!kBdqjy;4&KIVJ8wTqpf%yeHe{ z)|2x)=(w)Avq77Sxbw&4i%MENlfAdx^{)EI6r^46yzUCGB2G)(Gi$pzqp?ReR&|kQ zZ7r;ag&d25Uq1kCz4<+?mUcLI6(>Byx|)`ZH~8IPMn;-%Q#zhf&%31y>jba@=K^SL zFyk)r<~USx56?l?*xs#e!aKzyqZXP-i|WW`a4$`f`=DF%xh5r+fzbB4;w&iKa8_|7 zngb9xX;F}W9LC1T#Fak!n|1|OaHS;4s4xiE@nb}&x!(ia?r?aTnHu5~+EamIa#ODD zQPCfb{x3~rB}%i|lnaIA{SXg5q&Qje%t>~bR2ht-(I<-O89TY2(+xq1CEBwV1L4us za4ku|IJGjCq-f0XJiha*YX}HcFh)2X(wK;RwA$bZmOS`EaOX(gy)ce~HMpSxi_k!6 z2TK2&>X8k0NcHO_kq^?32J|Zs+b|s#-4T{Gi+cibx|)g{(Z%WZ-3|D_8g+#PV-~JxPsD90ZbG;`eyFjZ-z%F2fAv+!eRL!Yaa&2>e)%73s<&dd z{CK^no@<=-okm;MY23gNOEJf{?Sj9x=jD&+(UdU>dIqkC?X2mr;c*EG>RS3umiz5b zOu4O`htm=tmCWD#ql?++edm@F|IE0W;Qw>uP_j!{d!|k30mwo}bX0jO)r@2M_$h^TBx6?E%J79)_{}`@**WwXCiGc4 z^qD&J**f(3%I1=tBcbWsG=E#FcE@aVP|e8zg7XH&a#_Cb2K-KEj8LLH3%*>5|0ZDeb%S(;<4GbO1n|laE0v(f5q(a;6MYMP4khK znFwlnI96JPuMz$Z0+yo^9wz>L?=nPkW5~R=DsVu()_1{1|L0m$%7t^CFL|FZUb>j; zaeje@^v`7p*=B&8>1$(u-r9DvOQ7Kv9}Uwu11#(&+(IL2W4T~lj9T43T+;do&ed;c z9Xm&wI*v>W!oik3v}M~Ta^|az_+Fo=npkh(iTGE zNW}PG@q|VA2ds0>_U*EZCarFL6$-BkHMHJd{8SMBX&?|?dK1Q#J&>(%VD*@L$6hko z*bE_d{jja!1@A0&vrN)jC8kQM5y&o^F@}fQBn#O-K$)lNX78132#*XrlSlU*bF|l^ zW__P?qDbF{flO%+avq9O;VCbu7K5IO*Am=p4U-6>LYcRtIGC+UDU!^Dmj>ut&VP02 zGM%MSQ=7*%eAzs)QR44p-)@&XQ8Qz_L&|*q=9l?BlKG=RqZ|Vy5)}=Nn%UTqs7!lO zLxmYF5)+2q*pbQD5!!gikj4r#(lkmGChgupj7F_ssCR69&109%rirYwp6yz3(Q$>_ zL8sBS$AXWBo+-z2Ppb~U({^BezVaqc4Iff!?|J+u>G*iwG(ay(anU%i_PgjPkfxlT z&IT7|FOH%qxPq;oriyap>NkA=rAO2lS^NcE8=+?_q2}sp5qV_hk3>=Zk=&}?y+>9G zmC6B>1FmruwmpmkaI{YZyvF{lfn84)H0`rZOGw&@r!=eaCVATWsuC$hqP0X@3Px9f z@DfrGKxYgwfSp0x6ZtODU84qf z*);q;eL%|6h1YtEbomhC<=GErF!5Zlc)`?p#XZNHeDQ&}9rY1xrLLI+c_^urnu?*> z=KVO14uU(NBe?&;TXXNBofwDo(0)=4=fvs!aG44Ltr_RF+A)bb%(6rVUSbQ#w3%q! zx!;U4<@b8(_Bh1@?!<+kcewK-y}zq4B$6SJ_6>4nbZA(augB#;x$&AAK=rGa=fF8V z-zNb2fWBC@v!Cj~x?J@mv@Wr0*Xn@UMy=Cu`?V(<3zBD0zxIwD^{QW!+=O;D;?jtY zZ&J^I8ZC+)isE&KO3%DiAY%;A{W~0-Czy7%1N@}rMv$}i9rTYz&DjCMo?tul$+eI> z^y2Z!0xTYShT{-!#~D#g7RO%PExk5g&mr>_!>Qd=R_TFZ8VDUt&J-XktaEMX-g7yk zMj|V;;w3-#*nld^a!7a%*V;#3knjDkER%R$&V;V~YXr`b;Dw)xF|S z?2GmSB>1ldWw^^UC+FJ9_bK>IuVW^K8AtL&%;>mKq9eOU+JomVOY3MD)tuyzB;yrm zhos1I;&q@zJHjP|37z?f8j1EDGz+q1C}*QpK&|mhruJB%M3YEQ@|gMdRLgU z>C|+dVdWECP_CiijI6Kd9@#8N1GYblt`zYQoL9WS7{UPZuN!G=WC~HZcjL zK?$^pV-E$j@)Gq;zGZ%bjl0ts_|iF@<-7h>GkEtmMwU*xOyelqW{afpqMIAD>T{bR z*dqL-;TG7GTBDWtZW``lMBw&Zw zQW3Y5Y+^0g>SsLQ&!*U@jpfxBoci|y;nezA7TL<`nK4J6#bqwo3;Z54XNvVc3915P z8dON%>Nv@;yO0uh#=i}##g;%CyjFZ4JG%Y-lfLQ`+h7Oo1?|$Piv!@tcAx28{08zb zB?807fg8~mL=F0n5H<5ZK-B-e4*$#UJo?X+T<_NsGzTj|Q4xryCxF6nfXCxR3MXTW zSD86$%m55DO1mZV-^}nlf8zrGk6TgS_}v zpJELyVDVo*M8;IKT6#+)k~r22Jvs$3rzk`tBTD)oge+f4h`HC~RvX-ymei$jcQwdZ zitkb+xo47(&X{&)Z5ygKCHur!OEz0gT{MxFTEmD**{?qt*^!bC~}WHsJRI zHy5Vmh_T-K;ooti3#Fl1R9}+6nSWGN{!@0)f4_?Vi75N8HpO_M!W-;oq)*(;^=<5$nnFp$|?PNy{~n`0aFjUt(xlvZgp zS8h^P?s3I@t8HrHioffTfH1}cLG~Cf8*yo48d>DW41&?|gFFkU;JQFNp08kW^9g=f zTKKjaf{>u|ax{>t?;vX<0y2D(l@TVDfI=K@1~5s%~Uj`K`3V8mL-X z$SU5hGM6-b*!;J;nM9^q^8hn?-)9W-_T4_bFQ7?IYEeTqJosR zLYXXOF9yQIB2pwat`fmU(ZI|W=P>(PP1_-@`{W@6> z6B(+Ep;iy^_;8BqH3ly9q0T)|-?k$ej@2gXh`t5b#to05MY#+`U1(25aODbHlVw+> zmg-Vedg~v(Jxrl~>oXNIz?l3#?8=7jT=V%_tBtcYk@|g?iTc7MDaOizC(-YmGY;67 zu5-wYH+s8F6q4~bub!P1K;3~CCwd9rpm>4jUi}}R(T4ND9D7tuGEcE38juul%ZtxX zs!%ugbz0{P?MXDjNMkN(b2H4;Nd`0^e>Kg4M(^-KekIFA&aXnCVe{dI7lZ~CX(2Va zA;xJ5&^;35UZa(FNNzX>N|^i|E=_=~2cpY6`uOO`{R*Yx0boC%8DV?RCIA_}Shx&d zt#QTXQ-i(sr&BRv2WNl*Rmcmp>mKd<2`*N_)BOPtoyQM!OVj$y2;Z>#1|78{vI2ON zlUc86JNQ)rg)O+ZHjaVog4})Lfyje+w<;0nB~=i9#rEJaQ#*a2_FpJYovt8(g7hhr zDwQ2LHK$(%%bMU~yq9R|O=Dd_({zBm)e}g^hv3@KJX7x}qoRBh zZ?1BI4gN&i{zUjS^>NJ{Zk!=qkmN+zbYj!|>OJG?^W)d2xqedD+w&uCehvsRoC$%E z`22S;P&k#nY#O)~#*}bY4jxePbC2Et7oVOOa@=9SHa*v$kl!{q4SOk|D;`p8oq(Q8 z`mtT=_`NbW9$wI)h192SD<7%2`tAmqJ~dcV!@JnC{ZOvTjM;X77j6%%CMfxA+p+uL zM|SgRIw>QSYdzG^iY_=3!jaMw2b^n<(rGfY0`B6k!8COowncShwtg>n-ACirKyW_N zYWl3jTtSYnmtWld{E^q-MN#@w3@lw+n2=Tn`(Bg?i`Q4O8xMaC?^ay9;Wr*naR`_b zR;qT>rInr4+I(|UO{Jx@c98!yw8>3~#5{UL<7*(O7FIMBNZsn0)>`9YjG$=~fvK~$ zu&%Wb{*T$Ezn1150;xs$x&jpoZLCNve}%Q?1oVs0?CxB_R}vOb7kw0MW%RO&6ycv# zUjF*(zBZJ~>CbOzFJL~pKUt`UMWLj@Y~oMOUgSfxxJMd!Xs6+qO+V=5s(GPo zW{Ni?8ScV?CLTk8-lGh$x5L@$f{`h&(~dbp9Rtjc3q;y;(pWTSR!%FZzRGYjs);Q#i`4sUR|97 zA6_g7t+ya82BK>QW*@Bcy4UEZ5oB`IVVsMKvjo}-`W^)zn`sPe84PEShwroVuLtp& z+>=%XQK85W21dL*tQmVv%rBSj8Ot$j~5sN(OE|fkx7yEH|K)!N|W~eGLb@sMw}x#e}zWN<8D5r?_r}+sD%xVP9RD>9tt( zn{dj8sO8!tmeQMp$K={$e$MJ%rb;VAG37^bj;`E`jx2K`EKt4r^!R!;%b&R!#qOt| zx;N6{ELvVVVvg|EHU}D#3mv=W>Z5(vydM!t7DedLd8F;UPpa;kq8GOGxs_`VD3fas zZ%V(;+X%-yFCsFcP9VDKkInC~#%SCdlG7RbNp82Bgxth99&IaSh+5oSWrDtZJtBt! zo0BIVnQ9y0BOgwxV30B7WU%X0-NwlI{U`GZA}!WfJ-B``H-&P=ywGcNI!oN(t20fb z`iedC<~AT@Z@f$6a6k-xRB}HjHZqW_8{w8m{8u!6o9tHO1V@h}jka5ioX^^h-vq`V za#6T>2v_~{dU!`2_pQdQX@a^ zp>nmADS`feaTb+VWUG;w)isq=v}yW+8w*yQsh*caXfXsGdAn%m>*i+5n}TBETEHe@ z+J{a5y^XgYPfnI_%`&q~o(*k*PL&FnPUwt3VP^!m&SDTv+}8b_8@K{#_{Mc?olEG} zT*sYi$lHSEGMsT+=+;=rlSDHC%;p-sL&5t+5hF7;jLfZ-86B z!QfZUq+N88c5?}9_5$2o7s}3->v+eFGWPWNCrJa+uh1NA{*@`-^GRCBuVl;uwWVvw z!XHy^lh37w-pYDe*;wUx5s#N3hsdRB-_me6m4Bs<^UBpXOQvCHK z?kiQKBI0KbM6TotOhCL)XJQMKn7-@E-|v;g*IIZGOk{-;x{k(Obw^>RFU+v$b`*@R) zqS7Yl?jP61_|1piK9VhuK4$h`@W<3lJz8!9D5c5Xug`tZb9-N33vA{V2Q&(O#j zHgQDzb42#-;>3jCanR9i=Qm5>KYhUaz((=z)4>j8eVJpk@3H>%$l%+|k8L{HTf4u3^KF;LKM1_@e3rpqnh^%}i59pk&WfxRfKbmz zaGufvC{yxAr?Po6YnTs?2sguI-{3TNpYl)BnGz==PU-XiQkQ&)eT|5eOVm{G6HfVu zch%AYE*VQ7Na9ssXi7$n@YF~gDO;*3>qZjA>1Qd;+oAI)yDYvO%UyXil#F%zJ#zajnlGo zFt;ZKd%UZbqTL?4L_=jcN4%^MWzOi8QA`vH^BM(DIO)VA#ggl0Y`7feZ2nsd6VDT5`sI^=2YNX*Nu=t9%AT_?+ z#9yw2_i!Pfo?T?NPd zCp_h!9BYMbEFJzM=J`*<77{Bf*T;YmlC>5u@Vy60qdFG`gCuE15tZ#tf}kdgBX6EG zoOmyPJsi7w`x_3lVKSJ|@7n4?ufK1HcdtWd*r6PQb`g#d7bx7&#uvdIGSqWa?Krxc z>PSuHM?#$5cM>hkqLeP3SjuZ2o{uZg+L@MAHnMe6R+ft){Lo{Ya|L^DcK379v?OV7 zX1#E`1?0-k%U|Tken&kh(Wy3%F_id9+Q8P{lV7V#8Spu_X1*$^Ji+!`Ym=5O45}Vo z=-OSw31Cm<4$taa>?PIsnx)N@Cv5t^AE6=6c#*(D1UZDi1;zD3Vhf}|&HkaV8N|`f z`d9NiW?7|r_jTPb{l{DAKXKN?ENxs&o&LL&ymEa42q9Y}grNu|&EHVLC=LElYy^P( zJ@h)L*N|Aegkr;rLxmbPE~Kezw#&`VU{{qjgc@LdZ1Ar+T` znR22KWpEA-pra-Dvz)OHXytG;Ne65VcEfLr6Q&1$!7q#&kTND?|NMPj7#>|A$KpM^d*%EU^?L;#gx-~~r=%FgR*~$ufq_|Wa8P+2m z8_-{nW(~;9)MEuwdUmp-*lO(|f2_$>=sFq>h)k)CCvsu9fK?{6Ytd01OQ7U(Xu!j} zv#Y96$}ehLdejHK9Ap{OgF0dQyKAiI0gpw5<%SC`FCutsVXdUI;uQZW$yLQ@qB5&{ z{u~*R;al3h7}8F)ZK1ECBYKsOY46RW3t_j_%90c|LxwWM@KL)FxfpZ+1)qXZI%E` z)-)O#?k>;4931Z6P0xxS9qzvR`t?*jH4UJJ5}yJ9McIL#q^FgVa~=EPxX*hhr4$(< z1tX=ToF2iXJgclr9j^={#dLRfUyC$`i#TpEMM3B%J;%$e`r^hM%j+B}In57Uz$DT%7;3%ViCntpB%N9#iwLT`pptU=ReQ zbPKA2qR>sGSV#>0l{71He{?s>;pVe=VsmRtdHel^qJO}SC`X_M>%`K{3~sB9H`JqF z_BTbp>u*NG@(K#_n%WQzA>S?*He*%lcgl2%Wc2i9o{3<6ZeZHz$l?Uo+EV19McX>O(7hd2*#Ry6`)7UZd56690#)xu zOTRL`p_7YqNokb&h*mxE`bP&T0Rs3(=r?fUUPyHRrEfXp!DGZj3;(uj6&w<pzz2pH3E8Luc#%{v0y?t5Bk!Bt4 zV89@@6@G6h5RgC)982rlf4q5qdiV}*MYexojPNQ6&*aUHqpGg7If$FLy0s6nP?M*Z0@=5EU4&X zjO(KQ)XO4zAx(asaoGAY*z#WPzRw6h-)uI@jWv|?eh9+85ltPIDhKa%-F8a$8k)2y zxsJHM=+u+r*j|2lQ+F`-N~~A3JnE|GvMI-+BatB9k?aQW&p^AhP1R zxp){DGzIf!Tw;4zbemDQYi;Z;Wtf$XDcEM+!LP%3qIl>g4pUe#sH8dqsPIbg;KKq1 z4A1Wr{C3|JT*86`(&jfbCcke`oK|O{bg<_*bYB~lD4_89DBwM&N+@rSqg?zzW&8N@yw(l;0yLFqbN!>Zpe@3w8h%1Tt)wz1Q;ZQIVQv~9bRm9}l$ zwr$(am*?D$j=rzY`)+jq13TikVvRl59COSuLU@O?!$C(`%C`u#^=^xx7T{&#-`ihsCRa{A`hj{i?oddap~e-A6t zLH*sBUi_KN#Sj|BPGCXI;e~dg7LO9y4Lpz8@O}RHNW{VoiwY-83PO@QyD+8VOuWB) zd*y|h-Xl38IwIYJd+jOvcZOB`+;O0D=+s*YSEn#VJm)msJPf)e&#Wo)_YPzljiwED zXxb4k!K$#1{eq4V+*YMsOJr_q8Dq}inOL-kPcqy_CnmX1vc8Ivu__6C8~!9g&nyTW zvS6ppe=xkKE&#a3RxHe;;8~+tB7sM_r~W7wHru(3oUU{M9)b85@@_l>Tt>e?U-%!9 z_dgzxqOtw|Jy5Jrhtkqqa{KZ@6MrJq#zmzagEN3`4B`XtqD#UHgBi{_G&XF@sjLG( z!8C#j6Z<$=q7J-c>JJ^<{@6}qK*&Ckgb2sic| zibKGaznus9$v60&YAecSDoXRIro}@_gNODv1gClzY1e);TJ&1n?j<3TH}#KBk-{qdb$Ay{ldTGRk}_^{~!Xbig=4bdCzP966%p1_{c(T zC)mrnV2k#Ny{Upt@9qj4>w?<*?2G>D_fdcJf%tR7h{5~!W{bg_zxpD&pRlAO5ZmQ} z-oJnXcM%-aDmHnMo@u&_BpSpcZ#^C_d?>g+lSwkg&+htB*q0#m83eOm9ZL^NEyjhi9Tmw~Kkekm5q>x9S6; zeXBnLZo;zga2jy9?GR$}Y(|dJ?9%+kMq((mkV35fg&G~ly^21@D~4PR1UY<|$kRaY zMv2fn6X%qu)(|#P3dINoEL6$JUpK2u7;8l3fw3M0imQ=_>mnR-KQGh z*GN|2g=97;a}^KAm({uWO-NryV(AN=C;!lD8!2k_!lMas1%V@b#+~2K(0=7Pj?uw~ zdbPaCVj!Z%?{NGqWVIL-HOWb4;b8INQEr7^IT(y#4dh9AdX^F;iui_09GOJQfSa$e>uAnr2M-;gvIaB&vzLzxDC zf$h;t=R2o*aIVaX{Z6QMhR6cIELgi~pR)=yRAftF4|Gnt~e8P1Z z`M@2YA4nJahb2VnmOL|i3l=w*QUk!ci!Tn}{lr`!g(Ggp3Q2|;;zx|Z_=UbL^RN@C zjFd-6X=;qsvetHoR5jhoUT!fIk}M@u zXBn#(E~u!N9(c2hkyv{P!!%2i;#B&bpJ5QGTc{1VDCEXQWV9rTwJp^x=y3e7B+mnz z`HtDX+;KI!hkTX0;hE{^J;zNZU_o)&<4zwv46#jhR$dQtnUaD3xQQo=C%lL-JzvI? z5)s%inZ2KZ31p6-m(?U5iQN)?Q~sT6lBhwBKL?a(oxfNnyogWM`wE&DtPop_5RHDP zNR_DN2;Vo1UT;V5<$h@beXpYkq3-Xj_9Z{qb5CBXLNFJimMKUP<>Hs;9|C7mRixgS zP^ike24~S@Yf8mYDrvSTFr!CEJ{)dwl4Ox3tTs`+T*zNZl6O+w067~9nit4@*|@?y zNgvbyniMoy%o%uF(DVrsv~X6{uIXTE4KIWTMQ%TJg(Mp1DKla%pEld}?sQ4wvST0v zG-VzW*e6fTEq;)hq{jB4QS8xMZXzlIO3d@asgA`@zDb)kVo3ngyil`N-n-EXUe?qt zq#<5IAR?%~8pE-7QW(t!(v&%2+P?&Y z49+A>YH?#{;b}k;o&Ko5z*cJliO=K}{pc4Ey{aspp`_-yPBrC19SJ(DY0`8`#ro`# zEWOi#f#t9QC@69KYg(*6;mNF~t-~~?%foJ)wq-j9DVVWrMa4{O>9q$b`QZ%n*e zu&KB-T~a$~Zze+YXly%T%EX18@i2L(LtEP{!g~9G86oG!S4bQ_43tAYfw|_z5r6y# z<|JOMm`ARgI-c!m%( zja`fjQ#msRUL~JIH+kX{wj4W$1(Rb?OB2kQ*#kSXIA&Hb*sT6!wevr6(BvKqgIF_x zcSBcGnT<}w4sQDSm~f?1gv{(*pmu`p5bO~HUAtOoNrLNDSk(dW0u=V}!NKuA!u1f2 z)Zq!=8JMm9cj((=bJ55EBtR$fy9dm4Z^}-pJpapK4GvV@^Z;7@@t25+*`;gPQ z&Pt!dqI7mI3Do^rkz9#S+3d!c_lDkcqRpPb>g&n~m6b`Ybk=!oRNZ1NC}ayS5h-h4 zWEEaWWQe@4Y&J+tHg=W}GY=>p?m@Cws&t2MfGhOSHQUf3MD%Dpb}T*12L;a>&xDLy z@RZSBGu+fJzbDwywR-x{kyvEuyr z@!}f2Nn!iO4e@`S=ily52oj-m%TmH;6FMT?0ax@))T8nPhR`ee=IU{$}DOosk&^%|#}CB+phD>-7>wTpLioHbM|v z@eb~P{66N_lEpJ1Ct@=cXi3QlZ;&5aA1)ZSApkPQbdx$&-V{Gah42CeWp*bn6C$qY z-LKEI-$8Hv5rk`~9aBdwtA`S`!{HwOz}?sST~kZW)E9}LWexQ`0%`spgl8L9IaJ-f zLaf_jyg^&3#1`qqY!`osWTNkH2qg>E*+$Y2k|tLUR7nv`?+C2$qs-5gwRd)gU);m2^KA)1c|rX;=1kY#GHz~SY{9yY zsVPzEwAtaX&EuPG4awRp*L)J3qL$`PUM^_jpOO%bco7QGemIdcGk?KP9M3T9VkO?2c0JoqkNJ zBmGQ2&d%x+>Dmtcii>|!RU4zK=iimCNeIA+1AQaL(jdXuP@svHbPgm&AuHfYPr8jw zfV5Kq7}QyPJKpW{74zM>_po1N)S%a?oo%& zyFk!&k$`LM+_H@8;5_Q)6*JAQy-pf$mBq%a0KNW4O{ZJDNVN=RkY+0kt60-swqugw zBdp9ECq4Pb!0^=pPK2LlOjx`B+-&M%@?xBBN$u%5e-|9=iMRKwul4FjJ1ep-cvr;L z9*yRu&A(Y@tb{Ffpl?%0X2O4BnR)(!c=%4A;1{+uw)*zt|1bK1nBUsa%*Ot|+c!rk zZO9<;BYzfBQ*BiG`oD+b`xt1Ni4Nd_82*F-h?kHGSI!%?a$2G_woP23;&vBZLo~C@ zfa{>QGu$YDyD^_D>`#f%JdTgE9(g)+GMYXPRnh7qh{E0h6pm#D2KXQYnhW*BdYn-D z(BYN4ErB9`a~Q^9`ulVvt6)0l z451IJ_$+*-KTF+qnmsr$F7##FnZa+a**gS>$Xo`=76tEG8u1a)I!+zA2ft=xaRram z`84g!sFr)53Z|xUPPZFvr9N|ODV#=~>Xo&l#dlAtg@7xtPjaO(${}K?`dm5YYUe|E z9H(9!5S_M;rl|Y=$mIN95m7X0k*{jQt#MXdm)t?PZyIJSs;Up8HTn!w2oahckm-hk znQ{?VksUq}7qphULKii&aVJsa+LPQd{IU`SG|~dM<{1_`aOvZ4uD3cCYc~}?7LlZ% zBn)#p?3iQ^q46k41at~57yd9{x)NYr8LJ z^QT`^z+-wX(nD0c9TIqkk@&Asc z_>`e2uP;N6O&k6&fU;8U!BVA03C#CZ*#4;ZP(%Goy|RHS-cF{o3rBZ@c5Ru9;7RwK z8|E|cl|7kck5GI&?ZDw+(wSmo;_UtY`VLAGs<$38S47|4RJ0A1-GyRa(pNe{OtX;Q1A5qVZ=A#J}SV>u2_dC!pwhpBzYPLqfD*GLH;f2TH5=bl~( zM~J$ajtP5ym0gKSeNi^1aW6%V=Z3+O4mD!lIfoitDut4qL zkzc~!8sRJ)W0u^k_uJhu1KO%bZpP$%d74-#=8w!;V@^vJ9iX*DFqoW7F}nRX^d6@AcRy$`FlV#1+3 zk3_N@T%0sof7s{W@M847%sKsrm&ZTq?nVB8!^_F>KcMTs>WP(V@vyQ`3xrjUHVQ3x ze<(^~KIpebZSJ!9d**9m3U#xQl}+j@-5zL)6gB@VK$i3qW^|73LlFf(PWUE~3nIjD&K;a|)irY^VK6<)gqi#wh1lRhTT9;G)PXssUCNaht2}(5rb_7p?4Wyq z$vuDn2mp<~zn@TNq&Vnzil_TNoDoYx30v*{zC`|mz`#W6EJ~wos89!t(_|sLp&dn# zQK;KIQ^Z9~bNj&^@n z#kU$72aXU|x;!b`zq)WF3?z3HCLaI5Zo6`@oE1`OzI)4vjli6CKc;5sCbgd>H|}tf z!fv1)7oC;*?|^#|RG9;T9P4kH%z)pSmg{X#Kr+0u^;vQpMZ#t0`M5IPMDJ z7*=@(+4pG;vyu?8do#>@6m1#*oGjtY!EqbZ{W=ae#T30?F>)J)Teynek9ByP`o-xv zk|Xw-4PFAdFI4d3-@+YHOV^9UZy+@NW1ab@Sg-%rgX+KZI~hva-)Su9-mq(C6bBZB z;N<>4t@rXE0mFajQ1Mg!!tf#1Gn~lsY8&#o(_XXMr?Jqq4cZ??F}9o&VQhn!Nsl(% zUfZ*dR$gAt)?9?>VvaDa^+X1MK_R04VEAMy{ZXJV(~}_@^#?-{Vdc1y8z2IWz;xFu zR#UiE6Xb;kl||+EIv0XSrsUZ?xk|x|L>@Ts zOSm#X>wbc)vh`5AOb&U_M6WiQdcY$E*6b=tDsMX>sv?dYiWB53WAUne?Y36tW&DPU z!rvU5(d&(z zYWa2o$i;jcn!e5`r3jkx0?f9cxFmwCTu*%nGV{f_@>I+)DyQrms;}hrD67SLyD?V* z>jt27HTV@|v0#6@N`Q{KX2<9z+q#}m!T7busa+H3qAgqxFWBp}H#i6CT^lcS1&lf}$E06wA@V zT0wSAZBTOm*tot8FNq%0c?sd$hH`yrelp<;bgmhLj>z$3kRCjPaFAX|g@hCOgY{oi zyIbCBgX(WEEdFCv_@@=1Z!k!kJ2;qIn~GYx*_!>gM&rM5;q|BO-|B;_{%D*?L2!Xw zKI9Wb;yM_d(4QdYQkZ%77N!mA*F^T%#GjCWeB_rOJdpG(C48f(F1Q|-W=y(UXE0PC z#~#%)7u(&!Q{S7FEi5f1*5He_OeD)L15ya?IU@^3i36pcadx9Px@7<=#1t8$!GjxH zWS%iq3WXF41m%K}2b7+OaOITZUy7PwGmh_ONs^zKMK%#HUZo6)s!atc=1%f$UiCZh ztt+%B$CyM~s0FC@1o171HRaE;i!|pses_EU$*Mi2t$hAl&jEZP`1$@_SH1pmGWt)ttnV}aKOJs? z8iXs>0LrK7(&Xq_qVZVL!9y$`IKPag5OA{6Vey_&Sc!vgI!K5EwUs5w?WlG|1_&ha zpP%MwjTE8;*wW3|+0%R_*h4$yL2-o#fO=4kQE7?<7HZX;`pdM$^x-6smrn0bo{90a zr_J`eEcL6mtIJ;mxd?d-sJU}~C=8SR>WGs`^1d<{N84H$NBj=iW#~MC#zNVWY7}|s z8HlaMZ0wqFxt@&@y}vPx(-ne~19dP^=$;8_a%6j#u<1yMjg)$J-#@gTek?VJ3~H3` z)!n^}pds&_HCLmf?HGL4Wzw=1*!KOoW^J!Lk;Th}>(Q*>c&Iz>sbZ|I(TWL%UvKhJEk$v%qPd^s88(Ix}AP#UfeX z?}o!!CN<==cHTzCP0%D+r!fS&{9{`bsc82%5Kp{WvzHq>UM3P#{>%t$Mzt$4Cz}~} z21DyYUhsQ6W33~TGImjN3{uzY4PeE0H^h{;hF3dYJhL$_ht1+N zF?%$$`0zldb!8Egw&7hN3-xsTNiz{%`RI}|Bi3}8We8Vc*EhSQF~PEyYS{NF*1p6` zTljP;f@`2jS2a3a`@%nqHs9;+;Kic);5A@~+k+vpz;gbOcdxv)SoNC_zBi(3xq*Ruj5QvBLw(+w+0wU5Xz@ z0EQ}G4b_L}Oo`ru8$80^5aeFZ;}x3`n^%ke%EXwH_L+2mBgs@|8io;bAL0a9{)NmH z8iLFfnME%(L1r?xtOy#jeUu>2nK9$aky3P~5qL#Cmu@Ig{q0c>hSGw4Hi~7IL$v4e_&doBLh5XX}O~VBSWk&pFtrjSmy1jaPx^UUMed z2g41X6=OaiUn!Jxx6Fyiy;H`cS0845R- zKJE4xz9z(V(q^6zILZRW(-)4!Gk@Fg{o8$@2fy%@P0T+v5y8`qkCj@}87E*)=TGBh z@l3NyFBv4y!SBJDC5mU(s@*B{-NOf z=3#-E+pwP@&~N^e`<7qEX7A}NQ`Snsub%JJ+7M&&y{IEmHzum~sV0t+xy z{C9>0{b|Dy{r29CaU5RrYQSZW9CcxTNJQZ76G3zA!go^@cvIv!8iZL-o;Bof49l_d zfKpScBAU1)r^bpch*5|Kfmc7Utl?E2gKw?3n6FQgiHaot(Hm1Uq=BR#e>67qVj(#S zlH-UKVU>|$ZLPpvi(&~je-W6*grqJo3Dc0zP}qSSg3*ZpS*n?PV>eQLvEPK(G8GqS zN)n9%AEHld>RuYOVU;=RZsKDkq|YSRjm821#=bA0W-NutocIc#7Fu=k-e>gkf z!W7)NT~v}PGOe{kYMDgXmjZMF`)Za+1fKZ;cO;a{HW|~2k;=E5Dtnk@w$lipiM%<#`8p0j|0DnHhj=l?Y0XrK9j% z;!2m@_56+?p(+b2+bU4Fd`?Bj&Vj*lcXHW|zer08;6O*4^{l!pP|GffPk$biDpJcD z*yo+5w?HZWM5(V7+ofB`;fQDRe8Dk>=}R7kw=JF2$L^U{B4lalFP!C-WUnpdp#x<`pQBW;($EL5z4+aveuO!oAvMb<}u$X}{x4WSRX zPl}L62`E+>Q)((QKxbs9rDuUu>#Xs218^OziEdevvt;fO_KqfG2(NX1P{Z56e}Ua|Ac_5_j6C|&dFg*W*%+=keYF8VYk z4w7^yez!RDLF{ZGF)lb4uP`T(nwg&Jt~j$>sEqKCfUK;n4ES5Yrd2VT%YNa$7F1lH8pj=n>i=JIBo+heS$vhqLluAyyjYrJR0(PK6H{Vrn;T*HF#ku`((Ju8UdI@nq zm2BGNz_!mS>yYXE4s2&vbW)NQ?pb+EwhGJVb=|J$m%}s4_|DQhg!h8oMEsBiEbcs) zKWN6LhRp{2D%(;?h7zW6f({%?lxoI##p9wYWcw|AXKQ@50sE^RP&<=#4lj6GAZ3sR zov5p{tL$uFq%?^WR=Dom4Eb;MvRz{@?jLmB53xm~_(D`m|g9RY7EA?S#{`Z?fjK@ySRfJg8- zGt2J2UIsuvlJ;O1inyz=0axAf{$IOB-{bx6pWR&Nl_RR^D0aPBQ0BLgeSl2$enl}D8v|MQ;fH_z`d2R@ZwoUQ z0{Plw4^@aKu_aTWlYZlW6IX*VRL0iGL>v>@s?NE^ za;hMBwOC_kvTqTrJc6b@R1X+4Vxpe2I+r+7*A7tGR<#`SBASp`SopIoJi}czbEch+ zhaPRNR;e+gny*>;JCx=3BL(}7VqYzmy^i3xSprGKjbKTwADERp;YO(;E9HWAn|^Dd zl{xx*QKu^N7+I1f6O&QeVvghQLXxl14xisV^oCiW9p_hZvJn-@jw{MAM~W8}vZBKGv#+b3n^!*p9dFsnQ>UElMb=uB`OvYo^LvB z@-r0YnC3y0m*&yq5^UZxN8qW$cML~B@m@GqwpI(Q*nmH4Wv}vHW!6Gpy_B=ksaBBpPLn|t9z*xE){$PFXyqUQqXAH@ls3mQveCx>SI__z~7(%Z{ z$RnYGY6^95OmuFzGvwPK*@RV&=XZ)>!z*wnAnEi1=ONE29^lI<>~1+84i-yq}3R|5>^^Y2xkmVAmS7U75L34XUOXL60uoozAIjjl6f6{yssH-T5Qh?8~B*Zm3rwRS}sT}_)vC%ATmr*al z81IK6k_0ErpTrOs2d3k;7eyA_<%{9!_qVVB*y{>!pt=Z+K$*_=H)&)s8~x2d}&{VBwDIwwKC1X!r{E>Wa5Zja%!=o zM2VskdzNAN+l#AfA8EbJi0Zky$8WOUw74M?$>f-3pN_NwP-#YCZ$AlxmQ^cr!PMD* z=7PHU9d9067|wc4inA#GfoP&U?gz`ge=gRXvrBqNvaT@GZG{45205h)xCD<923$fO zyw4P=FWWtv>;?h#6=%Q`WmE*pKDD!vTB8H1PBcy}ZOIVWsU@0+YynOyF-Uy}6u_NL z77{bvm3LCG#A}s9ZR-ST;a36+ig1N^R(B-c z$1KKvGMTz8#+WN2f}&#UShvRI7?jf>{b}Crm|xf=U!F{zA~D8DZ;*DiuDHHy#Gt`% z?4p|RCdT71=+wDjZ}uPQe3|QHx!T0-28!LVykYx#Kr_BdLbr~8_7f~!~ zbZS&P+nopL%pcH>$I(FK9N%6Ct7p1LkEZI(qI8u1b)kO+Sv`y23J}?YCVn+EYnD<< z5t>Drx5fEu8&J+Fo;F07s+L3gf?DeH+vt9&oFP`+1d@sE(d|iSrm?fny zW72bL+{NVa=wG9KLCiYRRyyJdcHllz*uC~JVv&3dW;&BzK8e)&FgrF<5}1)RaFHz^h<4ohBtED>{PuoFEJ8RMMG>;JkFBoi_}ZR;wzK6k$_w*5PWJbPh*b z%2t+xn-U4D^g&!M1)f25Mtx}6+kk5ia6FBsIYfLZzu=k`B*&Trku;6sHmCm(gt2+@ zQ>QPVxkQ9dxl_Y>W zMY+5Owe4yg4}vhY}Vf)Eu_BBo$96Dr@G%x@WX&|TVMQRT`(CfY>{k+~G!LNA zCFeq1-}A3a4K^(3*459EYd^y=N0(__rd#mN_>ul*&HRRjkLSwY43y2;LZY;(nX7@u zJ~c;In|ICmAh@PtXi&F^=}vTi@s#b#L1BCs2Yp2szjmlrm}ymz1_`LP74F4}YArOs zv-fVn@7*TR)E)4_IpMAx(@~Mf%U5+k+aL0!5yerW{y5E3{I)(@4SWp4Jw6>KO>pp~ zq837a^+SZ=pv*HYAzkexV3CzQ0lS|!?Pr`NWw6uy@^j|=#9@D#Z-Cq@!LiBZj&}{o z$NAcuC0eS1={gU@vDxNZm0{8=K#V8yit5DB>FB+P6tp3N>emEm^3Qh2WLsfDrac!{InG zW-xx~%q~u5Gfs9xS9QJ~*3ou)yiAc6G~NGfPj`6y9wdMHeDcD5eZ1h_)*x(!76%)M zR^T|vxL*5*qTR%WY8RtT;|px_vfN(%6=upw$zkiqXqSH_u?N~?5jIw;RYURmZbya;8^duC4=HHT<(PX z_{)YwMtb7DBG_b}4q1|wU{ojzu%^+WhxIAh{8s8j@c2{cv?E0io6-C+*Yc9Avi=TI zuw4qGeCD%tMarKU)af@o3+E%J898hHIHdYWp3skSs6E?sFw9Bk(O6!H(f9!0NA%sF zh=|d>_`ykeEkFoSp7L88(mm#QWCpfTcc-A=|70_)g@tlousi=L%= z-L&-7QW!1$aG7&%lEs^cZ?g8{d})cb22mh%cS{2;JXrw)wfDnz9xlH)*B zq+D2zNtgC1gK=d4Anxrq6=RYzbd1pLA|p2OT361#A!6W}>%+dMDwsC*r%;oi15AlZ z;7BRx1xRC~4Jl3f>^Jwa2?6u&@sJG349q^h`b91#1(WR~>XQR=SH)7f8dSY=Nt+QH z&=!Z)&3*HEttA%X2FT$q|#A= zi`+qS_6Mt=9j4G@6kv+CGow|ayf!z7uK9($Mv7*`#3PYSpdJl>R;J;32W?k4V~|j< zm3S%<@7^{BV6H4}#7^XM4b}dR&6ZD*+H%d2h78y|;7^vRv&NYi!sRefn{tGcXMpSt zJ@y2e7#r(F3#625>eCtDC})*QQ{%@qI3$Q0;?tE#t*OwOlfp;N>cEStDnNSB*P(Y3CQq)4WUm~>?3 zn3$m!1;CugkUr-Fx?u8|X-(-=nVvMGU8jR~{tL@wF#WrZW@)Y!RI_f{Slz6X>}rx} zTSTKt-vcb!CD|weY1@GLZa*d$A5S7jD_LX*23ghP_MjJG8F>vppB`MhubPtOCkH98 zO|QHh5p<98g`I7)8j(`Lj?(#oz)ll+oRz(wC7xgY^58Zhs&IIKw+p3#cT}A_@&I%= zQ(%^nIWmb-XcPZz<;ZN+H93uXd7QR+0zlY)2Kcit%pbGp9Ft!?$^-g9+dkG3Zy=Wo z+OS4}3hi&(oSFb)#N406IC?4)w=v|H^H|AQHJUaf*#&SF@&fx4ukwS_VUj+zl7tcC zMbQ)TO#OZfW6ZLBh5{jHuHO8bR13A9hQxwjU!bEItn$N`kz=+94!=fjq+O~WEIoq73g&=(!;zMu^&1W+r^;x@jcJI~1conw08=KI3H5^@pBrXwZJ zbKo0uVLeV7qhx^2MLA(}feDI33BdzoC<5&eIiwpqntgdN6%3oBKsxjIy+RK!@yrf8 zBY@sT44(v{cU`cD@R;VclbXHbp>rKZS248UQNvZV~<#&dgg$njQq86ShF^P zDk0%_K!6W!p0go=K$jp&0ZN!7tnkPGXWBgrReqa(oq0H+KOuN7K9Ajdb{4v6X+U11 zl8EsjM!MZQ<@@gQgirTSOB#q~YVP=RP8+M~)Jw+D$A*Kf&+A><)wUo~C8gP*2t*pP zlD;9cILnxsYBea1KrM5ijAeWccOXt^&^5AixTsdBi}-Qe3{Ef8IVzYe<#Iq^ATFrW zGNpc&zdIKZ?i;hygmtlawSMnMx$o} zLb83PWjQvnlELns>DpJXDIl*8y@p*gv z?wVBW>u!JN1+GeoBgufl`UD{pO4;=2^lkNn>Wu$TNB6OVV&k*0e;#2-13+t^1iF-5 zFI4|herZC)sY8yO2~8s{s7#rfn%do(j(R6Q{OHC%P!XWhZ;nE{6B%CTnvzo~5MDol z8kD<>lCF3In3QbJ-euM@Qe&Y2)feS)1PDA;RyYG_;gz&{&x9atbg3>+J)Zi75opR> zfo&w3b9Vuo2Cn;=y);B~Hk=8(=FYGMu8Yi85&ACy>hv;oq*uukz{beIt3GTq8C-*k zmDfH|h>!b)6+^8<>c4^-%*#Ukle2k=-9YZw0N+Eu{iPihJTziU25!OTY20S^?yz2pIINNMjFGmdvBdP9L!3NxmyDe_CUK2D z2VHLE1>An6;NX(+)p+(LdIg%4zfNRGIr(cR-zybG%tx3>X=&AP19cxl=@3%LdMloz-Ut+Wj|T_?9d1|q~P7!kGtM)*nG zWOeI|In#x)cVZV!o#=iN$PgjcB;Uc4JPLr5={ zi_Yu29XsOAZ0%X(Y{F9&$kB8K*795%$l5QX6c1RlYKST1CGeCR=HVF!s2_)53(n3M z!j9mSX)Y0X;FgtSnSAYi1rAD7UgLY7;oc1*0E2`-lmdSOU=kg&u{Uri++bSebR~zUW0HK#e!7_o@3HwY(iU9HyUwI^?`csbWeDI@yilx zRrbXT3qN8Q{rp*G{to$BhyWsrFZ_}EMdP3PbvQ~t3_atE3a%OgY$)d$3f8cVF0e0U zAivU7_zJdKujloEJ`WH=k;V{&!5NRK5mLO=(_qREQgeMp|2?8)H9LijQr^>cE0<0(3z!kD0W6=f{#B^%n?3ybzYCQp^gk6Uu77T_gp3Vs z?DfAbbpB7|N221`w=X#|_uMl=r1$>+>}sq^5B^bA+JNuA1qU?WJuQZ@5Na=&9~(QhB{k=H~sl0vtx7lE7#JJha) zm>ykK+YkAZLz8y|Yj6jwLR?y!$kI_|{k@7%etB!MS(uj!gLq~sDK6iX9zDwssq@0) zAi$;ydaQNyi(@p33pX%<(fyG#ro)_(KM#xIE2UyeO`8fr8z5eg^#iWuwZH7z$bv)AWgCj$>EBtL3L`K(WmqDaFgok*IqYtb=}lOrw!@Bt+PY!w8iB? zS%9~bjV3t~CZLW}<=RBM*;z^dboqgXeK~MgPnQ`lrQC%QuGvu8#TTIrsC;xXQLtc5(o1U&&k8MzH5(^rH#3TkE zuL4QTGDVfrIS;8;fkBn0@SySq5_zRbNs%qp0dmll+?Iw0UTRuHZIb=ZjJQ-%)vv(x zg3)}<@G{NUBgWZZ6ca>*Zs8Q=`lx5gePAh0NGO*2D74$VB$+uf3$O#)tL!P8=BNKw zxhZL)P2YxTHX$;)di+xmLFAc;#JO!a5A(-{N>MWd(Kn}y#TFa{+_5Z?dR>E~v}(Nn)- zK%_=K5w}Dyp!-)C_zn{bt7` z85^M;;w`9&>bt&a(v8MuXUfyxnOL_Q)tEiFQz;s2XTK$3uk2Z2aYq`Q1*mhak9f%f` zHii;{+Cw

5Fj4EIstas_cc75N0BDRMq}McN6rLCq(Ok(dN&^Xss$(krmQ^&teV zr>k8mAsKn{k7>IlN$IUrd$N7iA8Ytf%Y|r_lYV$>%K|j{>7c6zxvRIfa_%rQSkt?4<3B| zMH&02_mBva6iys{_-*!kaBfV8>s3kGrb_Xc>|$GJ`}ZVz#4Lbgv#Ec|ETD>B>z7NV z@k~n(iE^;gJ$H|F$Kh;w3#y%NNehAN%2$&A*URS-=KzO>ch-BJHLRBBerT^K@#n8y zld>Cyu^#*a7OeDfOx^-@X0@rdHqIn3*|Fo{q6dVM{yhkF_519OK@ir zc0!2CwAS-a(_EiBaYpp_^bYVJr+4)K`N03nEGOdTWNhR3KdI7HDb`MaA&il)1_T$T zuuh@DU&Nq+@S})82>$z|MuzxM1RX$1!kuebmpTs5+eh0S1Z7R3bWH%7re(#Ze*i1#+LkybdTiDKuJwptt=RDYtiai4ia_4`sp$dIc3KY%*u%U{02kX?% z2e73IdHd&x9~Gia%3|!#+0G8I^~*-sHHv&<43iegIF`k|!wstzOE|v2x_HGh7ERe{ zli#REM9XIEg$r>{PGjG=#Yz^@*xL)cN9SlBNup^KeR~lS-h`s96?KnSX&=R~?aONH z9;CdJ3`-VQ*ue@v6Ae=qS2$dx{$h;amhqj;7IuFJuDqd!#J;hLX`FLmw=cSK1Q&IW z#3j91!b+XnvOh`ur3oQ=bQSpE4dtVk-p}-umU* z(Z8%UVPjZYoGQLOrN%l?`IP}ZB^`25U6o;8FHI&DV%)AVA62N>YjiHjg_Y8`6}SJQ;eMdwf2yC!i@;B+}Z2|7Xl#(K?~v z$ezlUOazcZR2gw|s+cSXHc#lO8leygdgnv)8OjHGCqVNV3BuejEXphlX^y#WoE{uF zTTjDG6;w#2XmB_`S2>sOF)x^9P&(6UW8=;4<R+NLu#Fo5 zlLk#Db_TmH5<$V?vFaXXs}K(62xqRKgozd>8D*H0Lr4mh&_JU)|1Sy)^+ZPx?L*Y* z{GaFoOOuYcXB&hsz?M3V_S$g_LL-6bI98AmU=!0jA zyXzlFyc=W9Kx>s1rMav4~aOD2j9~nUc^NEZ>TaR}$9hQR0hc}oWIbykH@H@6(wYJdF+=KN8 z3Q9D?GNV6-p&iN3+*!))?Q125LAE(cIwW_0+cO?MV|)%|XH{)MyUw1y{6X&!g!Yk5 z$`0=u%sv9^Hw7KX?whnMzs^Xmnw%OA9cS)sx7|I=&zvtTigLJp2?KU^(3`?lI&Lxo zFBPgzW1qOtIwI?|NOoQsvbG;g+5xG$GlapK=Al~sB(gQeyad@;I0KDHY}3{Oo@dm0 zYWu#1AAs9SBv*}gestuj>W)sP+ z)wAQw317zjAfzn^sFjWSoIIo~^Ac1Ihr0p<_eei|K0kO0?d-A-?7!(^j|9gwFmHl z%c=>fRoq(jQ$Us=$||vE*#-Bf1vVg0lV%pwM&DuwIYP`RtI4@#_qzw)qtN18$*+pP zU<5%ypiyW^yLI=I1WKW>BG4+WO1En5LH45t>Gvl=YC_P-w}#s_^|J(`QEExK#q~P} zUZ6B1*vPvv?2$mSA?lRV3$9kz2G}L^%l4P{)AmmwyCB)9vX1vT@8P7$+L9q|lkk~S0q*pG8_p5|n!M}90_3vyNSLwDG7R0|_| z>IoLmWEM72+o79p20=#)mQ*#PEy8ueg4_^Bz>U7bslA{%yudxx!CSE+!Dhs8TlV`j zV;Wi!Rhwkk!(5C2xuC$->ub%3+7WSuW~|b%4@U2rxbWE+kJzR1#B8iuwq|ujajm|y z_kTunt?}8jy|Z0INcVUBHgBbqj{yfhIWWsbfdggTjpIkdg?iXSx6aKtJo`lY2EyG%=Ur0sAA7vgK26ZT%a8-=_ z_k;dCsuEz6SgPK*0gE+5@h6JNUD(VVg1wUy_TSx-JR4szPlVdZdWA5jbb{d z$q>(*n{CILwv#q8-w)?^Re&KKFZ^5}2rw?vo)|btOalRV?m|F-oBs#_+)r%OJK}a> zr-Bf%nqLqEaM8IjBMJyQf$rFj2keA|%Xv8r=z8C54+6MsL4YvyfK8+xpceux8x`Kv zO}bZtm5*pwot2Ml7da#6B=48_t$4VZaCpf00dvTDKziO<2s_|CLzJV{V={5P4{HwE zIX70Obh$Qu)?7@o!evmJ^35-vq_uAc8AFvc(XSf)jDND3nP^J_AR(n}^%z>bQ9fi( z>pR#u4@6Qz%w&O|x4NFj-#@Qt&N6!?%~Pyjk>FAyX0R4X*%7Pz#Ij!RR4~%5&VIIq8aBHlQxy+KBZCss!dXDFiEW@VPa{}&ceFx zDtxsp;Sr|)y@GT3ikLpv|C>*nICeJrFXH^D_-yQ+yy_u{%g!D4z@Ism$CHPJlG zzp6RzaDiA?#@;MdYOrsReTa79&>Qx5(F-jC6*erLa{*Oc3k`{RLq>E-2sKT`+InES zpAbw^7=72n%(%d(Z;2C!t*Uy+HAR;tPSyrR%<))Zyd*fb%R3Pi&f;35Tg3R!IM)nN zq9og!quMK*penUw_E9O^cs&vk`?{?jXb_c4tQ3e?gn57L%Hy);#PJp28L_2Cq(s+G zL)98U1QlM@a?eEC;t?EE!{SU^oH8XW7L~hQq)-bVV~*1hdzS9NNNVF2l~$gj@`ueY z!@SeovOL;9wm~x%LsEqchvAKu@7UFf^b3=kqebIWehKh*#)3yXMr;YqL4Q}@cKmrl6r0X1qHu%kPA_OJ5)rPHPl_;5&!zM7 zQ?eTvCF)R)X4+DX3T|-G!TH$h%j;%~<)%>KvS7$>VuS;GdE%K*20U}}W`3w$+H(h1 zePaFIVj*kiVI-ZM;v)$t^A^ZlW!5&p?`^$x(?P>3f*WSXX4U4|V9!J}>=we^YFK7VZLCanBQq^&<$(nZGRIYbei`Ft< ztL2{}>Q1c2+p1h3-H<&(zdVduE?;5uwXhPqM@-guK-fZZzweh*YFk04R&fU!`@5eP zCImy4#R_PZDHj+r-YBxOUGx|G`8@m zR=jb*GpwUALA?=V}8vqC>;rJI+s2eFXp9`~#kl zH=j=wFJU-GkBfJR)=MS%zwK0MgGGBPr$&@$wA-H=^s1C|ICm7pRwovrVvd1V_V~!r4&tKS=3ZJ z#o4UD@EaZ^-k8V$pM*7Veb^xpJwszqAQpLfo{+ARwo(Pmqd;PTRbt_NsgR;kLMQ*C?sInaI?T;(Qv2|5u;cXyK$kH_E6HpP5PgQB9VKIp)l+R z!|H6jlSjOSy9I=-2Zn^a(T>2pd&31ECx*bhXTt}C8g~>xIriOLJUmz2t~MST!oTDo zUMl@cK)qypPcSeELH0)Z5A|;5>!5TT752hyEV_Yha9)h$8>Z<<6gzHdbUHG!N!`e`oSw zbn@`zPQ zPjV8RYlFzEEyoDoHg`{81JE?;PAC6BpIiEA?vf!SM`{gkV5)Z{jEuE#;sPngn-L2$ zq=Byzyo#v*V!OG=p~gp9f`pk?ZT#>nt;UoIQ{Q+#Su%Rh=ZgkDsXk?4DK;fpnmJ+R zAn~GQg55N|T;VD(Ke)O$p(XqAOB=T0AnhSFAB#IyLd5hJ?Mj^7~8x2Mc6ts_;5+$ClS`Apq zW=T{u3Vxa$q7K2dBT=VzIV4{Es!HW~(G<-cDv8YwSe>olIM65-8og+pFNEF1yAwKI zpt_F+cphbFYTe>ru&k~Cz1M1R`SbYe}d~-ijEx;eS_EA;?c1=1oU?+bqmsG zleBaSN@@Px+6|X(N)Kf zhVEZ*g_43+i;TsLgQJu3Q$2*d{KfV`qfJlK62^hlWt7-y_uheZ9`;E(Cu=Q1cQr^8 z==EKlD+2F*F85zj%Icga?h+(;66DATwIT=r_4_dy$3e%1rgJ|#_lHnE{6KWHf0%*y z300dngRHdfEj1k3l7>=sQ|_|R>5Mp^Uplhrvn1My%8dEdrJ)?P%TLNPkLC!zZl=O(D~*<=$`NcEvfRmrEo#a*&Jw*)U$x zsJ={W8bSXy#-AK*PD-H3PmSBrlHHDkZ0f^)wV0()SIs|D2tIASNQd~tpJ*|qyRWCo zjHJfhq!**<*x1EFlEo}K^^Tl{=b7xOgMCJKjdo12TeyTgVEq~YQGx0N*q=O(A`G#r zL_CcsK~J9;Y9_<ylEMA9GhL>9Tv`EE}ve(G@{^ z;6~?omu^i)N|M&G^py?%HF$cJW@z%WFL*c+ox z4Rg5?k_)GypA)Ukgp}4fc?Nl_CyYzCYzA3EJ{OLv3k?90JvFNt4A!uMG$P06DEu zBd|+{$qXtQ*F!fVjId*x-KO_+R$2E+R66YDS&Gzhgwofdx-%az_qh~|1YZ@da++CL zy)u-K5P*`&HHdP~M^+Y2=KFWHdQzd>65MiX1K%LI!Z zI{Bu2=I*CTLODGfGdxe|wIfjT7W47LcXT;Q8a!d`kexvroPkm=O0(`DkBT5)-M@Mk z^~SmyT4|ELS5Xp-G_!@62x#XPLT&LF27)EH#VDD_@x-Ja=HjrOf% z42W#fR<$5IDy_m3RbjOj_(f>}lCK++VNqyk^sW=rY092nCo?#?d1vV4xq_w`z`Gz< z6|ExVa-DOS*iYi*QY)ZwWFB~A?|9_myn>qt8UR6P^nNF$D%m0aXykn<*WC~eD_E4b04I5s8)$-E(=9$;6q znN!()N$5UW5BJ(qZ&ad&5%oGF%#AySKp5NN&A;MFy88NvbT_*(z=lfl|Rcf1j$LQ z3!b&-wLu$uf}Mx7PvL~=#SKAWcO_&+8VJ?}`HFH~VcN#g#p-xE#20g{tf{;1QSdh)4Bc@7idzp`wEPK;ZhR5y+1cDuho={JD=< z`U^1FBcAv?6m9MUB5Ngv>yPoVkmDMn5U^Xh0g(FJs=}#d6Y^K>&%(4;2B4Ckkx=YY2fVn?j-x%=OUjmf;HtS6egPdrp%mERT*}&K zvSfteYjk4F8VCpBOXkAHRhqK1jnwi>9E34r0y4`7eY_KZM>iw|5gC!@L>J`-n42ue{yNxK9cmJCi(7%k~m^-7-keW`K3n$0Bz=TtSci0OGv zK;beR9MqzU+abJR5fu><<I?8&abSlXM2^+q|YrJ{QJNjGXLlpD@gs#;0RXn;&7YZAuL1p_u~K^Cq!(Y)r5b zTJqwA_QHaU2)q5k%@~L#IB;=wQSR_@_vL-7RFLoJarf?65KM1NLxs!`<{|^Qagpwv zGg0o?v*GLD-bJ{>N`$d{1rX#8sN4Q@W;CZ2>;G{R9b~hM7CKlLco?nIVO{kUZ*t?N z+UM{}xO&$l%pQRv)ESgQmNaZ$a+eNekNJM`67DN^4(qRs3(T_OD#s^VoMKBFM^vIo zXpUb8rb{Zw+mom5^v;d`Y9m$p-~>0{W@5Tqv5ll`_rL?i{nNb2Sk6XXIhH2e85SGb za@!mV>ihfZ_73rXhrj*-UbL>ol77m3Edcc!X?{(PrU{4j+PW6KUuc4y;3a6 zr$Ai_cETt!@ZeC;V%pwTa~hV46C(s<;*Ld3F_}V)X4tkvBBqQKAcdn;PwYnS={(!a zJ9hQ-btBD`BD>YgeRkvs7E&Ot zvZw=nedo{ptFei%N!bx>6_+I?=Lcab7`Mp>km z<{7FeA02MgByZq6H?7=y>VI1Q&BLv&dOqdhnL=i&D0fIT>p55fx=7bzZ!u_Y*mq)N zRjpqOBkUAJ-WIPnTxW%w@Q|K3e1nA~W->Qp>~LVDP9(f;#Z@}2G#1}#$HpUXCU0Vy z*|y#C#(n}zMs1K%bx`RfS+jI{G!MsZ3BHO?KQHs1NOcUW&BIPhd#bgx-VLqiClgvz z{;}u4NOQC^i6VEGBLq){2^De#NYSTcH60J;5$}+fEjFe}8e)yGgx5Ti5weAPJLs!J zj9s5uutIvoe#|~Mx7#TON=sSy^0WtU(&Zl|*xHS4|8P&K|7BTf-G7B4XcMdQxACoG zopX%Fow(ZstU4AS0&ieIJKnA59g^Gq1?Z0uXgoejCsa)$-XB@P#6YTD3ST#CSq&0d zg2Rd|0f7QFS|2^zAFjrn9+!Q?c7Z;cr>b&J+g&0kB22eIkYshHV1yTzW?l3EYLuDW z&?&arPB&W#kuhk=)lFBFqCN8$zIaFsKWF#W@OpX~uN{F`W*f+)WyvB$z5vLwL^Z0S z`PaV}MyRg^dt3rF-TK4~{tS`(KxS^C?07-H8`#54 z^%S+!`=!JWSn}P#OKx#x4-l_MQ1U+^loxvPCEr@ypk0V|+kb z-Hr7?jc24(Eigqaaz4ri`*iE-u{d1CfK$ER+xfU$XqRd%fxj*ad7vGszk0X@o9>G+ zHGjb7IJhqzfoi-*3v=+lw9B^ogydNu3%zjW_HPOMjxN9U)*1viYJ0vDlJ4`-W~b#A zM0Hf!XS9LX?qNB-Y%Jt=kb`j-=c1$--&|H7j10ru1}0c7|4N39)) z?2q$gU^|&t*9CfZpcvC}-5copl8+X4Awn~|;OnxX)AQrGDKHTt$g;m6d2d8{Z%BD> zOnGlmBzZlGc3%D(A21zvu7Xc+<8(QQ)4usAUxe2x`x8PNzW@Ac#sL!hk^DV^o<#Uh zQFu^E^O)&JNeJP;5S;)et-p z22od32*YvB$`$PSj{;{L;P-(ECqO_o_n6f2N{Mfh#M;$st3(HJ22q3(%e-u!;;bUn zfR@gg9paRktxiEyq&HpBxB3GLssq?2A4F`r&{r&)tl_rr4)XUs)Ix#3lH1=?sLQI% zRW`}EYY|2n3Y6BrDUVWI8Wmt$d{zSlzLjAgN%()H92#3W^^hZv4%k9fWq+1qQ;FP% z9bj5OoqzgUFiX-&4Vt=W({)-iqhn=alp1Cnks2;E{%c3z!#ID2@p~yq`#b*XfA69F zKPH^w|03xB6i)7&0OTzNB~qCm>PC+%&FvTV1g^&|K9~v*n`pO_oTsuuvxe%MG8`}$ zz}JgsoXM(1Ou#V5GnoFPH0pP)^^0OuwEL=C>wQ zOe~KV7#3AMd!S9jYmqi1Djk{|h|FANu(|I3)g z=*1mG|NozCV*jsX3;dQX`Tr(cwluffeg4-NyLGF$ph3Q8DjVKSmxKvlx6Y28Py)T-P> zk;(=|8fuS}Dk<&958vLT9)nKn)qe=r(0al<&B4}o|M~a^24ZTqq-RhOZVknS`t*|$ zEf2Cm3aDT!?N{nwBT3*#{Zg~WP@Z|iGm*_Ykn!L!x`MdKHmhc?0nbMmalprV=>FE-1iV` z_Tw0qxE@4dABkvGRk29_IWrY4C@{kS zCJ^V#`b{IN^rwF%1ir*>{`YHA?f+DL`!~83sc0%;iy(hunz#lV_ZzeQ&J{$2Hff{9 zoC+d=7hDzp>7edUaLC%RL7i|p9lNF@xKE;B*r}TBMX${J8cP`g?ge4C_+pa8Hw2E? zv>5K;;ljqRMyM>U?3#1N`#0+*lefgw=k=rmPa)jJ>sW}Y-OEfs&1H)hn?L5#g9ZB` z4=#lH!IGW21dLgj89Q#jq8G0EIzgL3ePK7Sa+D1X-akGmsoI2D5E3Ps(1vEJNDB8oFGF6}@T-?ZP~NE1A^8+%18 zr0O~%1i^)aDSpR%78D`N+R-rFh>)|Nmr5`>LBLBTIIN7oxF8xIvfPM7I=*)HQ$ha} zx;i+F!^Hmy&mm;5lK!yxH^vJ2>q*SUGPG;p#ZqeA_#bE?ZTsUXB!u8U{lS(CM)nt& z=>gE)rCHAV+y>)jpaq6vgcSivD>HEytwxjRoa?jIhHy{kZWuMC;%DLm^ZJJAd6VLD zCDL&+b||V&?D+MVIa9wC@h`{5pwT#g)tNwU!&I2r5fj<|XQr z2!TW!axpU*L|l<#*m2wi7CJ;>qe|r|*lUkqxhV~4a&8a9Kqf&YpqNl1qePpNh+R!= zGS)Z(Q?G54GT5BEfwMVvMmz&H=kIuJE?$1%DZu@PqAiX!pN7qlTO7Lx9)THij+Iu zl9p$e7Rb9Lj&fShWiKhkg#I&oFf2M$0!_AJ&>o$zb9O!&slzZO->~e@Yo@+=CWnz0 zDZP5!6!|>F*w3)`NL*lJiTqd$F1X3#~Ud)J0+Y^Hsnqbb>>MG{Cf<)jOU(-bpWr+!_;iWFu& z2C)2wZR2R=R>b<5B)w&62jM7X*QEMq85$YlhY%>x0}7-C@px^`=o6t|MTrWsjg71d zPD{MO_+Q4kzwMUZyN1_EStKz>L&8mpCJN%4Xu(r``NOWfMagn=%3|t-71fkE=**g< zQTadx)T_+KM#0u0XyUO@rs%MhYzd^n*_|U=Bb^_T%i_k_^qTVcAbT)clH;&%%H}~{ z-13K}5YRXeDsn^#4Kz@CJF&g+`P&z=pOW5WI+GQ=`8#+?!*m;{3iC=|O+PyVHVfo8 zq^>xdL@m(Df+T7hrOK3ig4=%?cgv~=n(9be`_y#*a?Y7QUeW4XIHsdY@o!NndtCHD z+aoIa;~#%r?S8mU$U24ASC#7PH+}~S;PJZb{{_7GCHwjL8~>9S?X%zJLxve|?}y>3 zAuhJ@!@$tEeX_D%Jg8m+=43tRrqN^T6y|9}9gOQLtk-nA>!ISIH_YIy!R|>dU`tALl<5!@K5vjkwPh00PwR@vOuI`Ph zA;9Nua4U!xfbrta{9}R?rrHtoc+B*=%nZEEj6-TehJ9H59IfE5VtPClmG71A`%#10Jka6{^$ zP>4mt{*u@6iB!rJ1Vj}i$msELMbLA_3|s;ePWCdO4nQRLVho?LCk*=F5hUvI(T)WW z4x$q4Q@;JvYiQPWGL!cG5jzI;pSoy)|8M2tU)}PO>Y5|62>O?E^_n58CowinV5ox? zzCJv%9cmvo@y~d8S0Q47!L_Y16FnD~tSp#a^>EW9<0LWlAmwDabTqu#dTGLBP~#-P z-DyBg_shQSZpPc=HRh;^V?20P$Y*hf?_Y0SUsczg*Nb;Ng(%ikTr1HGD9@kDTB{dB zM5|=_J!sBuivc5cy%7QI#OWg>rMSX&YW+yKFLuKH3J`LVW+}4-KfW_hxy=R{Ahv8C zc3Z(O=BU_n;HM-Yyb<3pmPdj;+aIqxlh{qp&9@vlt%%aTV^DM^=C5RxCXODk2ZGhL z#4v8JrDyz^=0Hu?Crr*^v6A<&^-Ez}pqUn(OyZf(Zk{S{OFxT?H~`k(C-0B`51(s89$1{mU$3H>}cPEf^IL&&HRD`NmCyt<{4pBdw)_ zQ2t5zAJdUXrzu(DKrZIKf)Xb4k`ep%|7x(#*E<|TXRDFgk_9S{I_&vV zaWb7*4d=tatfePmEnIQftPur{yPfcB@Cn5~Q z1}-oL-!%p@F^bYt9#Cf!yrOjC?`1}s+Gi8A$NHw!O;{%>2@E^Vq8nKDw{asZ2V1)D zSHZ0O5!S`3zA_$;GEB^~d_`cClLbKIozr6@6#<*wBbPkQ8+R_964acMQY7?>0x zRhpQkW=%XT6{~MGMCu_IT7xOAg;2I7+eMlmX?9gjQCo8sf-P;Wt#3!x#DzdBz?PJ| zlvjRX+{yRYGapNH!wsh9X#Uz9P(gd$9;M-uC6$+sv8b{~dJbT7wSP{z zz2#hDf=KHy!DsMbLQ$C~uW~BWDIS-8WN6AR`&`Cog+NFhRK`vH9fFIOQ(%Kg3bz@k z3UhtjcY|L+fcu7F>UN6il@osEgWC>~v)+rP0h+60eF)RC+asEfrR3#+s+(`{Nnpt{# zA7FnWeL=*y#>cL+dgqP&rDuAc&hk9rJ-Np7{rf-#S%=d?eA$bO;7Q_E8v`PDpQj+4 z05Y{o*L&g@iV6X4C-09J@{^lLK(zO_N+ZNCNxOXQ-iD!Hc|!e)P7Yw&UZ<$`tG|g( z<7OiYhTLFhBHVt1jIi5j1&*KaBIqL^bT0~L?m7a5dwyjxVZhrf3QG%XS?B{dn8*-y`DEJ45e83!xF3E`90ER+OeE_Xvv|6XuW!xFq0IZXI2dRT%Cp&EEmZiT| z$b%)L#Dg>oPUBN^54^owh=z`dN^3EXi(P3sztFjDwAy8ddu2iFs?n>-xIN63Inlwm zJ@C#*yAJ|3H~J>qOM-#7U+))Vq}8Vkgg5c>bA{a5jEmwxNh{VqiwN=|FcRyGCSX&J z!ldxjC&ylTuT}u{Et8I9X|d|F)#OZ{)6t~D<}hc<9M2M$4*U3 zqdg9vsRH%LNOyd`{J`QeP=C1TJB-?B9PAy8e7r4NmuYc&*fl!TV3lp7Y`9xs0x*Ee zmlYl4q7-wH%*&h=kQE-DWAkqM>GaYA#ZNndrq+a8hK^k1OuCaS9VbB`fCa6&_4`b= zoGvFUpPKX!DbY87c=^&)?YS2BgvJ1RyfTAWElS?1(sicKj}OM!@uviuxd7}k7{;JJib#{%z$&N;;?+Ihs)YXZJI^&tB&IG#3;k_Q6Py!cylG8SOmd2H5 zTVvHdcAmj`IGE5 zz|`R3Ri|XhLFxQpqwwOnT#JiOaQTohR*-A$2AV;sj+K;RVU}bW17mJg9n-38O-fIc z4gBSK;hlIad$JLfaB-JWY39%rQ=%1xZQe>f!{H70>iNY38`Gsj%WTVOwfT%73GP(F z*w(5r%optK4A`(HC8i~Wh8R=9nhpcx69~R(BQweAr~`{1<=alZIhIudd7;v#k^Q9|UsH}GAs zMQZk&zYCGwk2=( zOjVHVp5TesMHSASW%bNs_5qUDeJtU|I;JQ<{piV5vh5F$LmXxLY$~(p_*wpH(X`}& z>Oy=hN9?j56-Gv(yGJ-a#8d6H_}e3< zG^BHLstMyAI{e#Iq79V^fRmo<-oOGq$?8CK7s(b6hC&`d088gn!kgDz;`g9xh{a&k-~dq2rGfd;Y@W4K|}fTZTxkMU$PP;YY50Ejeze+1r0kj;O@$hmgPB-3|XShUCAH z>;ADAVdG+JP2RXU9A?&euQWJ zkem;;JR4RalscAlnZG5EMII-jXzWD9G;>Q6OvfazixTqdRy2dM&ZDtDlitAKT;QWG zTEJMxD>ALA{^ly+fMl&Rb$GhYT)$4Q-LDp`eBJM>tI7X%y;=>;LhRNP!|5K)(C%y# z^&eMle-R61)897hT$@5`CwX9p@B1!YIOP0`(K>^|gN}0{mRELyXmPazQH7yCT;UA6 zy}XxbcO+b>`#-)~quEyOkHNM#M>FW|2Wzwi8tx?fFR%`*~jZ}5^mx7?lKUg?{7j# zxC!?(5oN{Q0E32vxTdvLQGjmw|gv@$#8E+Xcl*URx! zcd?k(%ARMA*(IIsF`T(?1s0VXJ86qVb=R2rkZ0-Xi3@HM2|I+2Z7L zlBW%^@KE0b-?Ny9@gl?LpdW3&Q%0<8787Qcpx$3d+31h=jV^N_ZLJ zB?iO#`Y}eaCc-#p3b)J8or)T=W!%D&K zAI8rnR4)0EI!v*@!I(YF1WmUo|pB{CCFg5Os zR5j`hznORe@*zJEd#Q_be1QmHneGxDv}Dv7krVll9-g@aTiXdVEbgCKe$k;p<>=+1 zHVunma#I?nn&cHLY`%yz%vRM` zvEov>pyLdmM!J}(FR#iH4ipjga0MCU$;8cRu5c<&*nfB81;%FrKX{}|O&Sx|!`TD5 zaN$|@UPyu|OL~~gEt`OCa|bOdkQ{R28v!9#+#Yi&H;ng^4<9iyit*=-F-u(h{4cZh zR+T8yqUuax!2K)y>#MY;We1{!HVnxtLam3eQQ`eC_Wf>&B%M1(C3ymteb?jy_Y$(@c!?YXduS)^HXan2iqa`9 zhTNrk1Hr&h!|E`rKfh`@2|6vkt^K&RtJzlYP3AkE?#$~S*QcVk?J=u2@(fL2BEGHd z*}3M5u4JdoBV}f#7PH1{CS!C+V~8m)H+0+d zO7meobCTrF6RhDKmTC#C$ixI-F=Xe&c8X*7^Vh%tQqpXSZ4O4D8sdY@Fe- zphnK4IzqSR`y~I*Zo9W6t5z#JRNohB{SZgZ&4S^61;!IIEnC8b<@bGsq>|c2RK=lU zIYT3LU2QE2byV`d3t5ZNC7sK%;|$qn2wrc}%Y+4X=h(^&3QDhlq1g)O*G?f_zOGwHzX&!)7i(k2*WQsDZ{x#EIa6+jvP_ ze=b{e%$Pey@>jZ`Ln-o;)^GCTHa+q4Hbs{M>jn{$tB5>A^TQ%j2A${`3x%IfVu|>` z>Iewricvjes3Kr;hkllm2q8GmLD%a#}vWQhQ+pl1pYI`M$7&>w>yNA=+Vj$sUa zdacXS`9cLrR(O0*#tl5JCh}erY93gjHS_fP@h z()ac99FZagt$s78T(B|ugMvgsKXgV*5gOZpGK)kTSJxA;=G;?dX>|n5``YEN+^HPRtliehKM$LmeGbOs^>3AA`(1&PvHrE zgS29_?BeQt9H?-IZxcq zqkMlrsGQ@e_hq6*?HfR)ca?E9qas^b3o+YZ2&vCrXz@bJRm>>bV;&Ky z&53qBlS6vB*NN(2}K=|iLRp-f9|NZo?dOh<4A__r{bDF;sLS9+!0knjqB z(C+};u_L5CE{r^6&#?$wc@+$A2_dMv~4NdWHRm&Mxhx5l>Gw83;rC5OCd;Ee};Gk5B#{X+Y=&x0Z*3i0sbOB zj|qL-p%1rZI&4fQ|LTv5i`B8fx2~d(J$|Ql;#nq7+iHfaAE4}`;r(dPg5ee6``sQ z`Z=gF@WL_B=+~3p-jze#W#xdJn`*^FWODzPC4@_HT9^6ygW1sIixM-ju!#B5PJKN? zDf))6{R12?cz{fvZ|aq9!s*jEv53`_lTQ`AnhAqP8CMMs+T4{4rGpBE^+Q0b{?NZsX-2fne+AIu~ z9ekLfBM(UGTM?-*xI2Mxnp#m$DQeU+u2+?&^E+H(jSSQgofHe<6J)y??DzPs+%?*W zhqg$3U~%8c;YVj#)lyq8FvNv8UM1XYI!?P@bFB1yJ?^Rw*7~tv(Cs!6AIH0C4`Z<> z4`$?@yOGNVrYA^rCJ6$GK$Iwo>+6U@Kq1ObjPgSvm06xUcXo45ayG~s2NqhzuW#ZUtp2=<&sfM`F5rCbadkIQ=EenOs zO0Ge4gqI!Pk6!3C65MHB)hJM7BKqnE?LB`9WjO-R`o-1Fu4t%2v0>%(rroRsQiXe@ zT50TfrYM-)E77E#7eJZR(e>RX!!NnKmoi)J!@9Kyq~lNGvRZT%7W`OSxGmrgWub2@ z{n(G=Ou6F^h3yi#Ghw2pdIiQLS4yKTnVQGe{YRMzKhL#nH-cr29^O`4<%(1jck0r^ z5y?E>#D;loJhmDZpf*F~n_-C8-#Fdd)MLZnx3VL~U#PIPwi9&3joj~Na>x3$+}m~# zFEuR#VMBa}RofRQen}lBcVPq}XF5}4g7~^;?*b77<8iT)KlnWk>AP3*7*R=N?FsAe zHl>7jvqvGv*~7u9QbonjJ5fL?7hy(&CoSI3j_di?DojFErqZaLyN?1D9nz3fLZCcy z807wIf1hpWFyZ0&FSv0?<=pN}+^y$N>bc?5Z2~Z{W3vIVddYvDo@@skZj7j2wKr6% zHY}0u7RUsll`P73ii8K3iOca6|y2{iGt#pY@W%T7YC@!8_sW)nm zq)OY|g?EkRrN_ji6>x&L=&-KD@FBU84D7bS4D&t@*yhb}85;YUW&G@;{I(}V^*+^w z2kJK1yqr=O#S817MYIygb^0+DBhr*;`akTaO75=jaj~v>r+Ufc(JN|Q5Rsa9=G3sa zw(b0+ZhZaZ_z8;ysaRhBdKQ1ZDco)S@TO^l`zJ(J{~wyf|3kX?w>^U5zyI(z9VAEf z!z)k(LonIC9#kAlyzmuX0|QM&>PU{1%vxHG^q!J(W_V@8gm5DVE;;gLdFhSd8zjQZ zMLgPNT$*Zhp*!)zRIcwu*Wr53X;!pcN?lM3r#dUXsU!R?XUdhpfN6vlV8Nj%bSp+fRaI|L2 zAc~XmWmIeT$5tHe<*NJ1<)NDbI)>_VNpdTRvzHL1?zXw(uJ(?XNl{Zm(qd~dLq{t2 zv5rMNxsh&{OLd{niUb)EKf+za{%uyBWaw%kirhUQ_EoA#p}U z2$P#m;r>=KpsnTb_j@#k0?{wEUSqIPl))yT?lc;m*Kf9D|68G|tgzcBubCq-Taos;rGZ~Ire z$N!Ai>;7-5<1a3$nzPeKVDrZX^LMrJ5oC-0Q5#}{8)|D)Q&X}?=+F7rE5sI^8xD|ipZck~9w#P_bKRUS z@0KoWKBI(0X3^dm3lDl@hS2KwNMNR`1Ik(}ccY?AFv;m8_uPoVptRIR`jlCUd(4k= zT?C{yO(Jl^D1lzHMyPR~7@FQekEQoMKM0vUON?5#5`Qadgr=ouzs6Y6@73g~jn# zX_7~Wu#shPIjRr=j`HKOQVzeB>PQFLTDI0W{LpXnhfremJN&u!Q)9!gS2sexL-R^j zP#)UHL!PUEmx(B1n;s{Ma-dZb%P!sVOc#0HfSkq&1-cAVZGp<+VN70mn4+%LH(oOw zo*Rzao?CHcckc#T5I~OlVMgX?23O$V_eB8gyc3he6$@-f7b)LnLX*Ff7$h6W6X>!R z(YyBfyht>%-F*E+Aw!kyIA4|A3?())o9ZaYTDwS~dRDYRVj;=P+KkXF7FbO-c;W1p zWlB8NSO(!>D}VYjBjP7<&2Yzc%{eGEW><_Q7a-~P>e=@b4OLaXieFSlO^qyti<47S zM@>$W#>%!#KH{c0ZINvG6>-HvFpu6xRq0emu;lQ5^X-XA@f;UVB54=D@G5Qb@@V>0 z5O8LU_KhWknP!KdXotFeMyZo2yPtCmFOL8or^M+|IXA-U?W68tU=yl%?*l)WxriUT ztN-~N82qo#fw+yEyNTofd=x&sBhgtg1gGq7a8zMw3sW$3b)|((urj<(izhWK^Tb7qt!2hZTUCwBQJF!1 zfxCQGuM;#`%^UwiNTjS=slLYil)*2gl{?R>OII_M;MTM)*;vHQ0&t=~SN25;7~BYQ z_E{fES5zABrp`Ve;S{wPuv3dS_HEHGA%>n3GlCQ))QXXQ&UL}dBR=uDr-9&%`NXy@ zjv+&8v7*Q`S8Y8yYSK(}2b6SMa&M0(`&9N3`x&;8J+nMQHk=T^1ah@*Wot0g`5g<8 zv@|y9AHuX}GY@4R5+|Yq;v+y3o^hHi*E^@~9J^pQNgq==G$O$XG)~qw!y13qlsy7Y zhl{a(oO10^0pkzY!T9|x0A>CbH}6XmpfJ&lb!jIBzr1e7lCSj+BQ;=RrnlEYLk}>X zYI!^2HJje*KZnrEH+Kg{O^?KdOI6QhVQ~}Vck?2&3MIu_gX z@-T2~GPT3>kG9GJw-|4J#Lv*k@={u%vt}-8nse;AaUUtb<|TB z4t&b6GgkTtHjV5a*#yo0Om>o zmerH2NnrtcA<4?}OWa|$&h*>c>mGKJb8bLcu8AKn;tG@4t5MB4>;xL=vH2+?O=A9}dk@{wcm2zG zE_~4?7w(NBO)HwgM_?v!+L9aAAS+;dDy|krfAsNzBt=YXS;=e(-jDJ@gB^Ij;dW-i zQvc1{l;Zb1mzipJ$(iOhl*v5bs4$dSAb|^6R8az37xo!2?r5YmGnP7}4!*6x=Od3f z@aHs6aUT~s2>gad`Os<5lf<9XF6!J)o7otmh2~BAk{a4BD5C$e0Mx>n0jN>p2T80h z($4ad9cw3<+@HDcgk470?q6SP$KbvkYO*3{?3FQ&e11bVebJE(UCSeop`{ zLPsq>&R|>ToX*H7Fk7wT15h?>IDX5ZY6p9q_9bhLBQR(?k_nb*5c7=GU4U+mNV4SasSAl*LKmbNw4aQ=_e~ZedFFfE&vck$U}CPMZvTjU z!Mc*Q)7Wvn=9Gpi%m~pUM?$_c6d!%w2wiCd9h!EYJh;ROg(yWtL7bh7mdCn0=G$K~ z6!qgOC*+U1)c?o2{HJBhe;*qE{^j{EGA_Oa&R3y&6B8Yp5_r@ju!_k`h)p3(2luSWe%yo9-p8ev`fd?l%;yZKP?`TYU)hf8rele2F8a`+85I|&y;B#kmF$ESrljD zo_DpLS#jE^E3~)jQXB4QSr|BTM20EP9&C&qlw1`B8QIXx{uRYyOcbB5q#D$?`aG74 zhK~_{!uk@Tc2qxkm8M`&=e5Hz;3{A4B-TM$CJ7mI7D>FrKgWggS1 zs*2|saRLGv?#RkEHEK}qFRMfykO3VNb89bIh!ZjI6N{|9QfGwMU0zB9jWIkIQ5lKX ztdu|5bmb5-z z#a^7Y#NZH;Zj<4A8bi3zjX*uG*EEisL_M$Xz@=YW%#|cPp~9(h7po-7 z(#!a;ki1;;M+n!hF=g)%C9dGcQH|*I;=QF!Gs!$3NMzLUK94ihRr6t>A!Va_T#^<= z%mueyHW}wpY?tl)?k70n;wPkJ!_!N$SS;CUjyzh#WDb$Il59<-E=8K0QH=>VC^rp+ zw6Wj9yWQ59|h|vd227D88h75c&*tj&tdfj5)V&J!(JYUmv&gAa;xYG!O251!LWQgzY8#Fp)GCEQ9@X zzvb5aXYRqG9{w(|O3r%d)8?Q?Ft2oi6NxY}UkHvQ4tWN}6z&~)q)O6NpH|;9@(C>M zRnE62Szl{sQmo}5`Ky)YS1p$pTs&-uDuoUnOyqV^e(SGMX-<~Mb1#Cr!F_ULSSKN( zGYd-TxuiR|tJr_4N;ZD%bwCr=uO8O}%eH9l|{(cMNu3?7kh(2bx z-ixs+`({|6#4!^9H*cM1uqA2eF;jh6q(Mw}3C$AD%78MA#&fYlzdqd3$Y!@q-G&z> z(~?XdM79vg^i!>o&jmQu;GSEcR(RV<@{atkv9MWWx61dU#hHAdZ2$9E`2Pc8b91); zNEvnb5Zo!4IRDKX=)bJrHkywelh5gQnr_hc6Psy!Z)yt#TEa!cy5IV${$Y-Q{f&F{xp-BphH#)67ykM0ybO%u5c5Wxb0Fx69ROX^=u;) zR#RC4Qq!N=Mi_Y+ZsNk~;_{zb%+M9#BM@-RN;eCrG|Y&_iaKmE^2*sU_W<`IoTD)H zk+4h1w5YM3g*@EBWu^IuG;q31Zro7Asc?f8w4<%u=0~<{n2}T+y@IK+SN#G_{Q9mQ zPGo)LV=bYjU(qNi`YN(nJ8eZtXZe(dS{*_AleDXe?1P07Zb_U21<;vA*Ui-ebathn z79*K29E>@<{ZZC*ydQX?o4gEF8`dr!ob)l^aHGh-wuHv@cES zLV@K7O=Xr?f0tmV++-mqr7f+PRw$Mi4xSQLGTSm+3b}r8lnW3zN|p?j zo#ada3O!#Id1{dGf`g-=EKD#jouo}et_o}nohK=A(6fc4FgJ!BkwQNl6rVa~(Uu(clC^w*q@t$YWu%Kx+jH{^!OwSrAyE*;5%%A*=a zK-=ueLfh<<089T@ZWEZ3oEMB1ZiZ1Gry34^5({{2pdnlV7D~eRjGnZxOVda5loCWv ziRv%3(EA1yc2`w!68xES=mL_nAi437M3<=avV{&n$KhUwH5=>Mx68`UNv!UawiyDI zG)O15qMSeB3`qVkH?`4{GY_Rr|Q8JJu#oLjDxnm;6RUrrUwzUyzob5>4( zeoGfsuhzH4_T2=^`xwHC+<*9TE9S=)hqvGmh!aU$B-hF7VfU~4)+mgkO_EGUQ}oKl zxPHm;1%p25Z*d8t5R%taKDh?;gZ!E?_kW?p>tP>G1rVGJZWhgzy6$x($Z<2H`O!uG z(X1dLIwj)c;X9(%O7}XKBO-f9j-F#WPi0c8UD$1XohWl;5}5=|)^@5p5}D1c_rl2V zx2LJXq}{nE8{V(DSI&s)Xi;|xtNzL2GnUm;N;1RS4^5kUrD48vmsOjPBKZ=^_SRD% zUY^oj%%cSd85Ydc@xB?&j$&&4CEYrRXq9#)hzsLVMPbg1%`rxY(UF+(`M5Ga(ZYA! zpEfRCI>yBQdt5i}K@I$beT21r(Sj}rce44wrWPNP#lEO+b=5w9Hrl~^Zozv_)@o24 zH7|XrWG0Q=oE+r{|5NL!izc6?@&c1jc5_x~ZqRncHP4`c^<(3hM!f=-uBGyx+ejRL zZC%+b*SU~PTBU-HGoPbac~4F0{lXYh+XLU3Yg5gITxAlR+VFNo@~QbKxKrNdt}3+_ zdOEbx9|pXB_tH12?0M&BJj*%;`>Y{Xqk?rB?)9N4cmh)CF_8vs+%$ZxsHI|XMolWpX|8XOM=&>_Eq#kAuKekGy*0;!w{V}RLm`m!o+ zDcHPV%)uptNny#@c2CW|voURx>knA9hC11JAZT6TSMMTs#(%yBd+Q6YU7hul7YdUG zgOUX4j5}0T4+x(!Rz5>=O{cgq2Av84g)eeltC<;yzPUQmFyv;q3h8LuXM+Zdog3U5 z&Z+I;w31cj;xLYepxWwyDAdpOE;k1wHqmGkwqn zpMn%G3fVE2@Bg|T5_}sD>OKI2FaO9m`j2*?lJ-tce`g0;^>>8vzrei@>weP43sMcnw2XA5re;I|?r6a_!dYbo5zW{s2-RkX*Q&6P~{!%bhy zi{DSr`}k9Ng- zvZhU7kni(%PHjN!sJEpNXO}1CGH1u8(TnF{5qoq)@#}gJGMDpCL#Uve)Qkqe{wels z#;hTheykN=`4XfI8%}H^wa62uNp=?+HSW3^d9YSA0BfXNX|Q8UM~@QE#V?1*2yuv6 zbJ&nhZN)OKBGy(%SGexpR^LV0987b=$Jtb*9SNa>0~|E&w1WUl=(I-rLLV@$4?_T( zc`F8OujolTheFrqX;Hlr+QYId5ZZ;;4qV^vDZ<~RC>ukET);^-WaNctc>f7u=Nx}7448duI z3M=sN8LoAd4vd9G4zi@*cd2*_^|(4*8fcGV*yEVH1LL?mw*f+>Pul+92Yr0ah64Jj z-{FRxxR1j;8KDT*G8?RZ{PBOh^xGP}4EXbeAaDf4?PGF>sbvoJ9C?sa`ZNu!BZh$# zzy<~$it$8z=-s>#Unk;7{XN%4pKbnt;Z= z2UVHJz10}gTGuZH6mi-IYjnGi&c=d*^*P3F0*A)+w<5g0^~_aLB4^54=rXEHjrw52 zmL;Upr&Xq5syeuKjVP=!wmDimZD8W7>=xPuV>7tQ?Y+*&Dsjp!{6a07%kuKt0aQVW zecLZiZHlrHsz6K6W0!W(fg3|kh?E*&$HczHLp?sw^ zr^~!4v&Xiyz+GlL+emK{-N7I#79PRojtWf&IH$)n`ivg})X}UAs(>;qJ9NJs+V6&6 zDc3IKHfnh4uFp3h6UnZ0)R}eW`z&T*jepawmw@le&4k#}%7ycKqcN@ypT^iDbDB|> zrXiQJZ%6TTw2hqH8_=G9`tC2CuCz2(;oHq@IzCpYq-G6;+jRPQ zXX+6EGC5SOa6e}TC^;ppv73WahH2q?a)3ra_6k=?YD$l9dv^k*u?H$hNqYQu27=TQW)W#;F@_79lr$h(6Zd8Jg_|BybD#l^(EZier(tLi=AlCL@ z-*d;^V=URpjO*fU_;OUISK1tIvdhQ%y7i5&epig+n-BiQg!oXF_abb(d_YDcf-cBb zr7i_X=FirUI`;+^yeABLkTJD3=F)-?&)s1f-#d*T5Cazl@0ycyV{*HvylXFQ#0-F% zKg8DMPT7yFh1c+ul`3r<5o@y+yCRl?#8GBMe_kdbTor<=_ROPqyP)S|T+JQGJuU0k z>)pr-$sFkha$}|hKicP04ETN7aq4qIQ6;6N3G0@SzA5QziRAXe1_P=u?*Qb!?gEMj zBtl&wF#?3Wh)n6~Bcv6hmho!VR;#BAco)tBLFpp1g&3)!P~t^2xXWY`TAjE9Sh`Ay zTDbPZu(>@vA5oaU`C)Lq2_#T$oJCVuB60IG?mkCD0m$!7{DPa>r^-9raEW4{X4 zhr?e4nHd8(^}nnIKfxSRLpaBN74DSE^ZGWn2SJyH40q4!{~8MJ3_*R3>#|NU?3B1> zgt}|DdqLJsMe+WZ#Q|9rD-6fS^wIQ>X;%Mn`jBxjvHCliO_i37JH8g?n<0buuURhz zkmZPJQgd8qxq@hNTvi&7A_4ZGC*@i!8c9rH9Y-BUL7ZeWM3J1ejU0jrEyfs@F3Aj* zG=j9}1{I^S57ImD?_UIO&QJYLZ#_HRiJhZnD=w$xTi)aTkN#i0AG;sZ-@7~rIgf^3 z$&mI6ks-(wO_T>9o>Br6kV~Kd&nygm(Wt1%WM@*41>i%FG0~;NV&GE|5xbQUlG%H| z=E;OYrr~**P4R_>rKWDu#;}KeC!k;_T#2B&a8p52JabbD*YrclM_EgN#73P>omGk> z7>KZpuN4)=@$JF9QO|j3P2uOWC$26ez`kM6hA>BXK^pz~rSh4me=mCnPLau_niq3F*B$*1(%7SA#8GqbXTxc@6IVre;Qh8& zY+}dmS<}zu|6$OQk+~h&m^K?@8$u6BRdTi+SY)Z@Bfu?wWT0&w{hiMN<~~MNPY;wh z!%(eR3)$FG2!AMT+o+`-y;i8H%Rgh3JGSP-=cPOO(7e^@3@lF4AlrkWZW5Uqyjlk` zszHIW{JEf+v?%Q^<;X~bBv0ceiHtHJMDG^ zaH#miXofG;)kCwR_kr4Z5Wd1cHHThq(}drUQEy>h3Bob&yaHOPie9w6SSt4??ouqT zDL*G%iT#%Di+7ReQ@UasjF$VA7<7}ixyMr_#a;ZfF*o5#hJgHmlAdu@O_Vr}eZ9-& zGQKpD#fji}p7y?rY^UT2H~i5JPU{*0?#Dm{nqmJb_*crEr61pj1{$FWi&E>;m!CIlkiRwiF0XvypcJDrELyGh#!?Cy*B)UHAUi2d zi2n7`UV>UrxMJE&zJg(TkI()c>4c^~Zf8dT0eoH3bzw+rVB~bXO^s8LWDqP^dr>cf ze9UksI|pb)jY9kn6|Obg>fvorYP+eizGT}Wl&UpxW!)e;?Z#FRW8yC;>%Z5N49lE!PY;y zj)*C4IFY?0D&d2gQsO-!SGA6sS?2X_xb`!`CYBnVsaZJqN8I>b7%thL?A>}>ULh*} zH2Z{hoMT}t3Vj_0+6&u6Dl-KlWzyvc1LFeaHfWiRM&)F)b&s#3V!E1{=^$Muz)fg% z+9wq%l#8USzXW)X9t~C=WQW3vLBxhB%p1yg`O;^r4@v(BQ+DScpl?9mUz$ha*jho~ z*|{Yje!h{ojdF->j>Gh&a3kT3TRjeH@RBq|>Y87V@UL?n$ z)@ma(?NDW9rlz+HJ!2l=rpHo#2Sj7j;d67}^JHygsKlSQrb+3Z{xm}Rx_D@MHRKg7 z@<*B516#ZTjgV5adi19J6vyN`o5)$MQgtGVlfrEs>Jgdj#lC$4n>p%+@qi?AIqZ6_Yf5T(Yvsv#w+>9 zD>)hUsx?@MD13-7m|5$8^oCd639fTS;|)^3!e4cU>K*RHdN%#^*$hIdvbmOsD(xU$ zqVq7=sF$ivw&S-Vr6W`OZQypr-cBzYMIm>Y-yH~DB;xqQ-aK8vO2>^cL-87At$9+D z-;0}X7_GXc)1z7BLbR4⪻4l5dqY;9rarN%le)gWsJ_v? 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

}3{n1m&z6BDVF;u*SaXZI6=$A$}UL?_&gV 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

C_I@!Rt@p}^pcGrKSMYq_UhDT)^}4&? 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 ~FMY^wEI;?%XQU1zb_L^)%`_ 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 z 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

&hvS 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

YG0}8vtwWaVig}wyYdR0x6e*_CwxTYBd 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≫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 r<*)=71KX<}&k*n{|5Y<@w2#;6R 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

j|X*vU9l)>vP4&i zO$AsO|7vqSWv~``B&|w&FS60~Q)}wAO0CII5-SWa1Ip^|QJr7NlGTA7X_}=CWSZ*w z4FfEp-Ro16VzGEm4E6(m+A~srV__VqSBlOSXjvtHqtKCbD7pC4%a)qxF1MdOsF@l% zs<_MOkMG>!fFCM5+~Ny=(yBg(f3byGdnC-9*SKEzlbX+wGG$w$%Hu2Mwn8XMKH{S> z4N}7fh-LDL5BMBZcVl?&fCr^Rz-I*hqpJkTmI;;;9eZwR9WT)NY)x#T& zK4b4HwL68s8FB_m%c^WDE$!jp!Z}b9BEM1JXq&FiP(GUrx#tKy1cjPLVa3z4jMW;1 zT%fC7kR|vfj`53`=20}xqOMy+Tu_tvWbWsZHqN52FN!{hoi8V3AWxqci0_9mmMO`y zQS8bWi3TjNO+Zmm#(q{Ub}IOk%SHpe7B8Oi3D1iAv#s<22}I?hXVfQlD_y$pwnsNl@ITA_llR!af_)#DzxPD3%89b&q3B#0y$ z)@$lUsH4toSM~+dRfVDm zdDlCr)CD7#miBFToHVndETp_i0h{I-_6=RTrjdsZ6ZiHFB$J1~XJtA_nqqQYnSV>; z=d{l=+?E){mS~69B7tm+UYkO>gr29zRfXTyMd^E?zbaz?63IFoCOq>dEB+Cmd|9wF zgCd+3YpBT`h<1h{UXn&tC7K4?f>ZnV-;5}p#p2I6ABD{JDF3t;r~YRdPS(M}#?A46 zT!}RrKCT!?nD2h;TN&%?fRIq=ucEjS`(R!ybU4&pDJ)@IU_2Dnh&p9glIftiMHf$& zV9hRR03#h1ni8s_EvoMqVZv@Gq3WkZv!x$25A_8esGEs6XSJ z7xMgP9|H7wqhp{2xq8sseju1d`8qy2>?S;1g4{MfA!a%IFEg6J?o-Tw?yJTwipRba zK;Upqj-}&wNcc2M>8=zHs4KKDw=uN_B800STYh-Oqoam=c`K^MWo5D{ge&jrX!e78 zbJOgWs{IBZmWy_L!GAxT!Bvz!pes}GCwz^>J>m(QGKlvt)5$Kkyke(tc){ksxP zcQ2-egTva$VS3@#nZ8;~O(ZT6D57IEHKspdNWTcFi3ff+X10BbDJ4#(6<$*DS$$UZX$y; z8uFaka1^g`k(r{eQC4X8-JoHe!j0~C^C@p5n}>^tQQ|BpF~vSS8?Lmc{YKhmw46aj zzE|l%2c9BB0BFja(jXPinqB&Aw42r-q5}djwFXUSIj$A_UlZuw;hTCi+xg>~dmA*; z@-R>&;X~%M zq9a#j;@@;MwO4V2&J=R^u)IK={G}>o(r(st@!=T5F&VhZ=%pxBRl*ot_EJDDgj#cb zZ-zER$|X6KbEA_Yk?~kpX{+1O1V~ms6mL%FI4RHD71J!IqOxZ0ioANY?D>E`Ifu+; zNzv1JhiF+|eSsSp&x;MTXF1eQDHbhA>NbiA9uW9NGwWII6MQL$UYdN1D8=kVwI^a0 zb*3z6Q@-~*g(DxCHkdhAW{_b-k-ReSd;aOY`u?wGygkUFW@7icMrU$(6=!ao)t?)? zRWqBE8~2k}ne^ZDjf$?6BQreckT~2oG}q=(50Ggg_~e&*`tg6=s3C&nB?_S#;cJ(K zO^eEE3u{TT6r`Y1S5nMZQ*IIHaBa_!(#Q2naOHT(yz%s02=f@TZfCKU4|sj5bN{Sk zwg--ML$e`i$H&5N!h;N0gU(fvTYDUoI;Qc~BGJS@1XhZdD z*)&`$5=(b*D#06Meh_=~_io48q7&*==q~bKO3+hZZT*R^n39YEqMa>^*YrvLQb7Vo zT#4z@A${qds4LloYs!wFg)wV}g5xV)cFY})xPHlZz#=0=*5IoH>*>qzDuzFgBFY$w zBBLmL2Zk*I>vJ$CXV8X`+Z;DL(Oc{jxN__zP{g(OQenP7KrqcmJ0qk9@mE67K7Ut( zT}jk6!d8Eub*{l4Zz0zhaB`w-?7*uH!E4kZ{36K_5lYrDP5)r%3ZIHb_FL$Ij4V%x zhW_Yq;k@;?@DvvX+WF7yOZnogfmp)}XA5!cT1NHFNEcno-iE1~^kTlT<}VHI+u!>n zzR-El=HOhlx)Vp`ZN%8ypxBeFAA21?7zRO4IzPMYeR4kgRhDh}-STgQv;+c$U>R>G z>|#Bb<$`}=7}gPXWncd9>&<}>+W~R&!p_vICsf>?l5NqWzAc%^*F8DjK$Ln=-htE$ zq0aSJTQh1;aLJw)2MmuUmOC@!bXAk(HQgwoJD$F&8=Lxes9$x)h!A95W7zyOM^Ttv z8TBtSe4{YO=$sM21DbpzqhqFXUg@-HFJYU~cY+h5Nfo`=3Uc(Ai-my%~eeNG*bYY2>&MZVpJ|$QaKbKt|su z*^D7YkZw!e=&@VMo7VH4yoLz6j(_0R?5q8r(21l4MA*i!DKko?lON>AiMso>2v?n= zGwn;tWFFV79^(wp1MV3erX>D%%Dq)|EE(>OAv1#=3p zvd4T6-NJrw-Sr$%ipZjS^_S)Nb1oP4K^9X!Xsr9z-MV^FS6*^RPM4Qm&zq(rX}b9| zu>8LKSK+y4N8Ey?WX+r!$h}KqCY&qtW#cA?s?rKOUFOTJK&Rd7AMaEabk8{XSHFp1 zl)cgnj;K;i6n-Ioq{hWFok*7@6Mym7d)9MXfl=p|MCZrVxof$M3NjBkwnH^5(ep%~a!cq46#n11OCv>ryTQMDYSvllL zy^!gdxkuUCn=uQauXJWosZ18*&Z$d07NG#XxF)p8X8u(7dROJHp97_DKIR z-mF`g=zE3Vn6bRt6AE*pq|&8M8a}B|t%#{6sZh@>R`^T}ZHacJKH=DZz3S-vFYx~5 z)=&A+e{qb^{%N-R4stDjr!i--(Rl|Cg0Qi`?vr^D|?ox%(kg$D23>Jze9A<2U^FAF5M9I=m%SqBG0(^5{?_Bw%D(tj>?p&?T1G^5Rsjucsgx({92E0d+Zf{BE$IS z**SvA2TO+~;Mb)tZC5E-MJrtF5{)FA5wBLt?$h~yjZ9VN?l;hfnkMpW;sDnyYfq+L zaTMA+Qzou+S3>bYOsotZf4%tk(z$NS!i-MwX-!;fEJEJymND_$5afdvkwTpyZj#m9 z;PGfW>vN6%ysxV?plMXp8%};PMZpI@++7Qb5!OZrMN-SMR!er-GZ03}DJXczJDg%f zc6N1khJ3EnT|iH5&=^L%v}k7C8U_i&|E$WXueM5x+;g2JNPq3B1zm&Sqq z=kl!~=qOXG*Ucg5M0c?j$GiL58AE?bp5ktETEcBI+?yEX6yVHL$rHzEY3Vm;8r z%(5QQu7KCH{M9w`o|spb?`-DqquoiBH*&Nb{SL$R;>pL@#oCXJx$LqmFrd{ zNIW_hji8StleM=9iTILcUk;UNg=%qA1y;_00;jIWpA|&xr!h`9W3&8WmWON^E51p2 zDP3Nac z9y*6uwH!Ob&F%_~D}G6tltiFi5uluP;I~EhHfJz*$CjH{NJmMKFfUSR#2EGaCltJ~ zPy#p@V;3hoVebmwD&^_Zs>Fei!;U!ISma9h=7~0vY9(HaBs!&F6!=%PRO_uJ<)osT z)LZRo%1A6GPiNg|8x^fiKdjqE>7lY zyn=zmP|KW~ky0ATZYhZ_<8Fx<=h%M1SYta4+w^__#d9aJe@xWA5xrs%E?cNrs?A~2 zahSRR1T3xLzE(l#B(E8#CItGdbWOpO3OLwe_t8lj>JIsvLHBavBxb9bKlJdOU~N^t z=QpUz;&5ehv1Dm#=}Wp=?24}T^v-y!N=Nd;41g+J2rp(zGPhjDC^^s_sA>QXBB#1X z9|!?Umm5^^AT^AY47+#G0dodv6xIRNx#87Zu`Q~Vj)%8gY*$MIgg<#}uM5H@w1>Pt z2LkAM!_=q!@$CxlHrU^Jxh30HlL+oKPX=dVSzlkU_wToa{dzDbnZhw~#9775^R9-> zH$(9(D~Ja8aKd8Q5IH4{1%$%tv#`PuW4}bT86NN*UIXYe4A4hWnz`QKvHkM{1gv~s zBrf9CCN003PFnGF2XTCtzc6vq9)-C^#Vax!|6XJZAJ-Jz3`tP(>x2~Fn9?czHQZv| z!812!0O7)+n~b@eA=FV+JF;lO%u_@=>T8L7H@)3JHCqr$F~FDV>`8JXIIaZbOG7Y( zy)gNtoLR!loT-7UVEgyqejz?k!J!+>r%y~s|8$xCht8>g#p4}p-T%+q%mw2klXYpk zwYW&uKx_${Am>P-Gg=P^h$1E?j)x+Thof4^=*@6VzmLwzCChIQ>}q$|g|Y8`3Q$`b zlEe%>3RX*vdxMxH+U-I)@8Ba29FK>;n|sW4nZ4a=+T`kceO_dTQVNrSN3>0tE6yjJ zRw8K~sYm)qSD_9KDm5FH1%1*sYaU<26yf1Ey-1y>Hi`>!zEGPBwQu;D(4bHq2RBn> z+$I3l$45OB+AC8K?+Y4rqyi6qaCM!GUI8EpOx_5SfhcMdL2+d;c`yRPhdMDZ7LTYS z1U2}1`37eJ2aS^e00L-%$JBo`^!!3Zx~YxMVwtMWz~3JUI9nf$nQu^y6M#*-ZPxHvkz6)eFVI+r zV{$tBg)W_|R1}{Zr<+cmy%tz=R5QO)9z!nJm+@V;-pm)4ZN0=>QZnl`qUmZ<7f!NI-IfHKvOV;+YF<_{9*R_VzGdUAZU zjZ>OY1qzRx6NmTNkQC-EF~jff5Ny@%@I{)LU2>RKWm|pqn@Gc+$W^lL+I^(%iha6m zR07Y+xru2<{ zUv!~5!$MRCX zf$e7)aK%6c;YmG}Nk!pwp_$Hi3 z$TZcKab2Dv&68(g`y{*sSzB>3e<<~t^Tcs28@8(gqsZMf1T}`?ov!>o7VqNuAq5V0 zoV=M7hN=`)>rQJou|a*(-+?Lf4ijd&C=ZHbPihQ)ts443D?%rymUO+;*u>}&(?tQ{p%`pg`qxQZX);+WVr7i z-y0)ZQwl*QX!C)6175&xFjtq=?Ymrw;LwIQLEx1g;YAP?t5y901-d9!+0>H8OI)*b z@fPVEf1qy16rio(Uge$1pCD@(oZ} z?Ytl^{5B$a)&HJ^c&eR#W-I8>);YLiDCid476=yC;fZjQi>$Rod8)D^rxYe9d2$FJK6N+gK0a(G=gY!+0Xlls+)SM5?Bp57c%w zX7x5)VB(5~baX;RKP_s=&od7Q=2Rd(d*qbfj@$Ead{^M_DRNw+o)~>^zCKmP76qfk zDsUdeIrCb9hTx;0;;RKd`6oa^dYwvHJ?f-cF9hc_LGMF+0d9&d8CfQ)M zA<;AHEpj9x5>SuUO50DW*)Kzh7%nu+aSb!!j&s%)+`u!|BGh~@`6FCqj|;AEc{zXS zt`D6oIZ$rL&|v}TnO&FR=X{$_VYW-CNkJIU+k=i`t63<(0UH-9efFnjZ<<0Xm|l@4 z--Gv?PjXHh|klqD#`Gt2&{m&|I2m4I>#Isl7#(%mLhu;4*=10E#1<#@Q0syimZKD}CBb;BwsL zM{oE`XSf9fn3Xe-aKlIHwjh}Q7!9_jOwuL7l;~HW<_qiEv$v=~O@HSDi*`gCNZ!P7 z^&LscllGT_3DI7ZL(y=U!?gwaPJ>|PN*vr!SkE8_hCpKkfhc<39LFBf^;Lcp;xEWI zJ19TRs!_^TH0%Bioe+M(UuRDtGeccHKx0)Xrbzi{CCE0X6i=E+GB(+L3a4eZ()c2` z7|jWrMVqUOfA57nlZxDMKGF@bA0yZQJ1+Sj?18dY_GU)TA60LrR%ZWWMoG~)`xlbv zy{Gt>Eajr|U}1ku3&qv~7Pce}JW`Dy_6MS9pF^tjOfVCWBqaikt*eNIt*D5Bi7D0( z-Q0?S>LkV|!T%J4^6lR91@h(mrdJBy4%b=+h4t>+mB-c9_T!~r(x2ZutS3eiD0rAhU(9q^dg%8}bL~XIqFz0DWD1=WmbqBC;NPs}7 zbdtoE?Gr(G9kF|tks^}ToAOo}PsF$=&maU|YGYWGb80k&C{HjR-{jrec#`K#;7Nnb zcY6pQ9QgC*baMu?a`&%i;zLzKDT;CDNHnFb>shB!qD$#*H9ZYVF%@9rbMYQR*5#Vg zoyD1Wjk+*3u$7#)tew;YjG9RfFdCTXaBey{mpe!a@<~ZPi&+Bq#DIZU^THaw@)$yb zav_NH^2ARd+)cTxWd31iQTc&PT-H@8?F)Zj&1B}-Vh%p5kR_OyFuo`%UhH9<8?9kA z)6JNY&kqxx5R5?Dw#I0)^0XVEK32WL$hYnRMUFq3rrnW{pOGg#k?L5dE}5s>XMf6- zD63V7sckCQxw)~oSy08s0+hcKgFY$`z=e`9+6q3IUyNA_aP5lgT1QqWRUyL6x;(PL@lURnI7W9>9Eo(U9Y|}Als!cYF)dw| zRNju|p~Yl`D?LVrM{~o!%%m1v;0sUR|3!Ss)sLBTE4NB5uhw1rfGI_>33y^>DMukk ze@-57969o-nH{Zntt4Z+p|y*>J%VHG3WUO(EZUfvTi`5hAzG_jCs!ti^0No2S-*2$ zf!#`~1S_;V#2eC^YQ0JuG&>fm@|U=hNktD$?N572Ouqp4ysO^xC}}P;H^?P1BNwtX zw$NM8JkgBFs#4c5NLy=NlaL0`Jq((hAl5IBwZwSZJB*T2cEQ2{o{XOnLC7Gqi zutM!I;HmV9%B)ToMO8U{JmQJ0A_rEOQ3cNr+ek|Pc}bHN+IcensQGqwzfRNm#Cgm) zq|GAGg`$`B&il=pJ$?7ib#>Y^K@bru@}{Y=fc#&EWUaY?>zi~wFjO6q>Ok@ikx=P zEM}aTq#PiuDb;Mq1N(U4YLNTd-<|30IiU7&&XUmf9u^}x1tl=2kP_^3Mx%AAdx#!9 zPiyZ5HV|*mxg0(Uu4hkE(+%)L^`dOL=r+}`TVF2wW$UB(2{z%422b$YA0~L)_D=;F z;`^WAb!ZqGWm4qF&v3xDVT`jWquF9J`$n>pkklzpw`bltbpZ!6P3hZQA)uLz;Pj&j zqM_eqPLO=a17=Fcl8#2bq7?GS?D?Sjxkf1+lR6msGxyJ? zWXec8MUS(ubeR%o1{SG)V>(}RXzYF2wBo|`eyXP{x&($P*^7*NN??-4(v%&BOK7C% zJJl^Rhg;j^TAWscgliO>rDnvEb;D#D%Lm)HV(-_yVEghy=gtzTJWg_IyNNfKZS5$; zn$}{Gz4iAe@W64&G__bm-{|tIh=x_2o8U6!#FQdGSvSB(HDu0FK+Ol`+{-!Q+c-t= zLw=K>WGF)LHza*4y^8fmHAdW$6%OghXZ~7Pjis}uOtwaI-@s9whr9 z=84|Apz>ovG-TwF5D4}kgm4GJuIF)zCO}hB;HkgB{%bJgs=+`P{J5Cp{!t6~r%I-O z;aNVIpKi`(|7WCM!^;PK6!acrW|Ow8NxUDPMwSdEOlCr7l87XPJa6YE{p zWA@|Py26{sg9ubTVIJOE$TO0ykn*59q`^q5Scol(5v(#UVSE%Uwh`PQ%zWG_&T<25 zNS$$7EHgou$Xc)y0XocsvGT-5*@2DoO?+(KNWux+V^>u~*Mt065oce~%$xGq(ZhWw0tKA8 z>*D*pde>bYVqZK3D^Kk~R>c0UobH3I$vJESn)Zx#wdMsaw7f=M3kv}JPdYoE3=Ud}qULNwztrgYSc;q@kUc>`>Q=rRcrRR-o zAHmM0_HcDlZkiW6LSkXEdk#qk(^x$_ck@nWQ*!>+khc4<{N(sM5nALSkZVM<;G%Sx zLqfYJSrRw&w=^a`q@*S1fD^`!k>-jr{U~31+yPGR^0i*<$u+OY;{ehgXY7^L6aOfJ zXTkybM`g9x%3WlHXSZ_2y*kH(w9%`dpPw>ZuzEAELc14|z~K{`JkvFIV_1-uF-P6=!SO(NlyjRMWt?>3E$= z;x+wC@!N0A9M8R*2u=OCG&L`XQ$7W zb$7r3V!=k7l@(f%oVC-XZwaYlPN1QB&PCM)#GiE)kj=NhCk|C@+>PAvay0t+M2*xc zY48@Egb&7rJ9%l7M{^E`kA1my96b_p5WjvUlo3a57#dH?K2-p|E~q=7wlCDy^ER+k z9(tQb8`a+!zNq4M<45QjYvklC(OE&LWTcE~#&MQSU3(&XkBWq z&?x&`mldtcIK_@6s$RPn$o8z9l=WiBjWA&Uyp#Rw#XcXxLQF2OyxOK{f!!O3OsbKa`&o~n1B zuj>ASRkfZu=Ik+gbhi)+{SciE(yRtO)dkXvw1Kj<4L=WOWE)r&DbvT#Nz;`u-M55O zC#h}Ur>Q1!Z_z$`4Y}nmVN}E1H72ME82xEohl+vGqe?aY$w_+!`aR(xFt;Z&doB zrC5+rOgE1uVHYb@7r0Z&6QuDaHxYN4IXbc9Q};!B4&8n2%Cbw?g;&SKSlKJasVH%jYFiYLZC3mCPd)E!~*VvSXi2iFB=d$LkJ8>ZW+RvOLggH1n6~c!nLi?{L$OP0uC>_d0riMs; z+}UB=3Jh6A{EcFnyS`8i|OZ?FOUC20y{^mL2#OjIdSCTnpG^^&`~SdQ;wUqwj3) zkq*aK+q?quJPuMFbba+tf4kaPw(v96eY}LQ|L849{a;2Tj&_d!leVmNrmgYOoe^0W zGw(?r98!>D#E*bcn3k3V&`ty6)AC7$ngs^T5Btq6x;DTo6q@E5IT^mD{eE1t!K#L) zuSxYiy=hSPJ$3OHC8_GZ+K5n{F}K~kUw>(x-g?PynijS^T<&#z2gCVTv1iG2-iWd+ z@J9W;3r79~Rb-nFoD439WrOd)K_BkMWbMl&116ehGr@z3Lon>vG8EeNl_9g2e~}&x zQ7bfgfo^jrY3x(K=`Q7(PJxc_jEs4QuE__iK^y=Uwrq3Hj2$eHHeVm#(vJrB+;6wU zU56!xL}@d_0-lCqc_H~B;^-ZecXG!GGh`q3W-?-}A>i<^RL%0oX*0Wh&?sA|PE|B& zmEWH)o!#`1$~m<1xqy_DFo7HO1yakgc@|&U&8d;p3`)7>T;+I5xso;*6}d+3sY~_GxvTJ`Or$K9 zEI9M27iAO>Lp0^{;H+qvzUIy56b0s2P@8%ebD_14Zm4w6eYN4oU)%*BUn*6UR1mUW z9kTwlsayYb_;;1}Mh8>i0xny2w+tan~=1Uo99*&VG2(towag?997~-`CcU zlG%dF%mBOfu#RJG(XA(>_Bi4((vZQa6(dCuS(lvOiid~KDOihuB+56j(H_o{!(Tl= ze|pq?`smo~p5e4dHJJ8HeaQFJxqU%Z5L^$v`nfy!14rz7GxS9<1vv%5WTP`#dqPYsCp>laMpFkF9xyuIOPEUyU&UVhQGDh_nofg~d zj>TP@#rHU+!rK^|R6|(sA?@xB#+H~Lz1uBIr66kmK)JG-^MO;uI9oJ_aV+YTlQSth0C6`V>Vw1i8@@x#wd>zkWij(v9r5Akazy(s90d}TY_ zk6JJSz$qzqDdlj%Oqp59DJZ+UZ#DR;-^M#G8y!E>Vww!4D5w%WRI81=R5Hq)nA^js zgp)gH%|*6-wqLy*MV5vkT0I$!r|2Z~nn~D!-lsxfi!TQ&(%kLqnR5BED@8n%V@0rlmx&eac+6dV7?&(h*0*}v} zEX_|4$qtP|^>I7djbvM@&NuwrOPy);*2OKO-QiOc3{@j~Vpz~{^L){T>3*BzY#=>} z21GW_Ph}i!w?6!tJH|6O!QN7 zbgQMj7^70?IvaIL8U>;>Y2z##q?2hHbs`#RqEhI;HtDpheQbfhexYw{wK?7BiK6~LsGJJVf-8vi6}D0Px(<@Cp*Xv-y- zcFbaX_NLpMt85OApM1Ax53N^l6rm-w{LT!K>ung4u$NL+UM!#&&-}vA%rNA*gDL=& z8`=+ z5($kIC1X2EI>G8AyN%IlHp4>BywA`xqWGD=?MLpl&kh@9R(w!F4e6_Q?&ag?>bivr z6aN-Hi~JL$>0)aX47i!C2sCR59d=Gtt!{z<^q#$+bh_F%7gTZW9fbzA;>^k^Da-D3 zC3tI0r6KnmtV(7fb#LN_Z zV>;<}d!~_F7Q4+F1lLRCY6e|Hj#s{8sE3rpTFH;MgJf{4p3y*e;u6bh(#NE{sg#nbA6?B%Y;HxQFp{;CtTCU*t*r*Tx>7l82wX!b33ketMnxw z_8+GoCGfw`m)ZUqxctjUOX6cg?TfXO>;GVwZyL7B>lT=P0NL}6HnU_dd%DtAD&%cs zxrxlw)I@BA0-1@0%K0ANF?ka>cQXOQC+HW*7qYBoIQx_q$BJeW&5P_o>kZT!`$!+9 zAGg9+?dyO1p3fYkP2pkLd}6Thst_)RSV7-tEu8a)AhFLFdrWWQC5?uQaCdc7uX$sU z1XZs!`bvW=5n3=Y%>?6spttV$hQB=cq$jjYphB>GMjB4tXh)Q+H~sq(ENMoL50y-Ct-I-p)9$HHauA3sDfJctT$@(-DIGHtAWP!2 z%T7H-9sbRA_h^gF>NbYZEB#c<-0-6-hQhHi8J$);`SRZdr;DL$>*U`~rAdR{f=Hh^h)K3_FaVchky?+%A}5 zVyuiX;FqEBSpC2{RD=OD()o2rv6*6j2g7|}+EpXvXf+Q$`Wu!9Wk7x$ZD@%Y7+B z$QEh*G9}_fl=C~t$*%hpi6pGQxw-s6Ga`DmG4(AgQWE+$;!AS{+?Y&64iuFo6!wFD zG#=;<2@9wc?E$EvS<*1NVyOuO^wQ}Q#M6#No3fs+bDb=EZg_pa1DK*o91z1X)3L2r)I?hzK zIgtZl@^|o?R!bR7mkLUrePxB{Jw;}&F{+0cI_6481(!8nilK=6m^$8OM*w@9xIDOE zG2cPLcT>G8r2br$Ke=;`Nn5`x9}}plX1iQP2F%CfII@q;dByRJ=wW=6RG_~jKl#WC zKfrab8}>W?EAAq~TvjXjgHkg3N5`N4LMe&bIavY!(=|&Q(G&AS-|X1f>Cz++Vg?td zNqoO*C$j?9l7du7MutmOfV#z0le9T@`Q5@YBS-O*jeedEljfkF{kQyM$DeK-#;?^e+WJNC33#(R`z@SE{s_i*%w6> zE^qZv2o^!k2qMcgLz6O2Nu!((!(_b4#8wQm;+JgF+Bskk7%R<-{6+9|!1S^GqfsKZq=hHAkfkWm*Xv$NwNXm~3>;Of2rL+{&FzUo z*x(K~SMH>!&dbn{f7_`~m77}DDsfYfVy!m^mSm?U(>LzsZvFI#6HMFL5BZBY6L*_2^L zD@8zAX4$ZphBZ0lTB+UZ(c7KMW@33cS-0<{uyU?EU=UQCP4|J>4y`UQI=$Au`yUFF zfr8PBgm@WhzuCg0VK_!5a1W5XV$P|WnLG8$_UA?)Jfe$R`+s85QfC|Qdb|#aF43Xh zLwqcZrg7Gh0(69Y9(|~wZRgOBun|+nzoQ^!?Beb9;NG}?cVCo?d!!f$7i>tpfqAFg znP%S_{7kFSBJRwEhSZ`{nj8K@q4k?J^$nN(@I>f?KhmDr88wnO|lQOj$TNNXf3uQ_MumjIJOezVydc%k5);FLW6 z6X7rGsr}LZ<)ykzHYOGr*Ecn}s2ynt#Hd$RRY^XV2Q;tB>-YDX`vjnvzry}8zvep@ zt7K{pk&juz(p$--3!?l5tS)Vz@6CTEL|>XYyZ#O6@;$b=YE<7oUWK!e+54%Qa zf4W?pK_1l;y`aFQ)Gy60Jp2b2f@b^L_?bh4Sh=-@%RIworO_)dAD}}HuW?jfioG^? zP133pe-=zHcrOzP$jhr>aYsK|+o{EigaV0iJ^(faeHXr1j_#in#U-0Z3Jh2%hv6&R zCaD-@nhupj8qpsT7)2@$o3D z`~n3$*z36C<68}eCzRGqR**D1ji15(b}?onz0b!tGy~ z6CuLl(4FU?k!m|VU+yaEk9>|N^nloB=v{z`yepuf3|1jqxBQL0yBh(=7yPm!eFaHt zHY%uOlXe4A8=C7fa?|M|s4VDxGv50VlF5kGaSl-De>emIs2ipf$mD7bPDCXU373x!6>hX(=E1j1AGll>1(7HZ#L9 z;8H9)x1<}lM*}b)j1F>0z8uYbSV2%+0HKY!5=bitMuxYw9+Wc|Yl-Vi-P;Kq=Ibh* z2Ymsf=uk(K6~H6mYk)06Z~`mJqDKKjX5cpYvAj+(?wgSDbmtzf zh8*m+ zM<}C+xj809cUSwqY=ThxU7>@KdryvhPcu2TO7;w2ZqAL;FwU(Fyj87(d(UDc49Qh{ zU52crag=G3?)l#016 z?{`aRR;?!kY~IgcJw^&eDOhXDH`S{#C*#oL(ZmKia0!HR5i+}y%y8{m85t>O$*MBg{q?Pfn30@1iPDmC>~nI8 zr`E6Evbsu*H_g|9o#E115ke1Q5LDp$5k>1xXqRQb>WPq60_E$IJlmrXMjUp>iRrTp zHE25{Jic0I{GMsN{D_y8IroE;Jr53j8$1nj<|8K4BB7KLiL|}JZFod=7~E@vSKh|% zINt;fv;|*!dF;~t+J^JG=JdJ-cwIBzyzt@Qd*R-`H1Z0Lz z;Y`nIT^dXkOs+VLzNfc-AMt^v$S`0H#8OYzTFL4kSN>?RVBuH=2*xQs8+$hSkYA_F2zS|vZVBbZo6sm(w^_W7@0s9>*eT697i z4YkgMe5#CiMnoqW_q4F59}+uuU~h6ceEDJigRiOA&;JdX$3zDyAJGG{E$ju{)#Ouu zFqk0jU6LnlI8ZS8T85GMg)N9iG=vrZ6G6WiHavM``llf(TJ&LDpWBXtbwq$^LA3P& z*0*AtPJ^+^mUmUUtE1Zu6>jc%YX>L!Z;A{+d~T8EBPkv{L3oZ4Jbw0$zGa3X#@4N> zRS4Ox7Fj~j6g7WDbvbNHBFQwJwLH_ssh;7HCNbk}qs0l;7ho(I*7$kFOJxx)5L@0t zxAkf9mA_h4)p(#<2VeQ5|AH92D%rkC2X-VB50A%LzF!@0FFk%X#s~yH;wQ@WYuvj; z#nbW>GdM+X!E6cz9G6e zBsrQ>%dBgd0CcT6PGD*hZUkdAo@y_@Xg5M(nx~J6AzmCx$v*1kkk_l}!j;|?KxJESW^z*Ro>S*?WZ(5nltnH zcV9^9{$yby<250^&^C`}i}Lmxns5+{TIhbia&wL3G^;ZDA2bLwHf=OlQz7@r zgcY`ZUFEzZOrqx5t)q%v5TZV^kd|Z^f&Q%j;U3%^ucUv7^=P`N$RS&RWc0_bWCW!l z9i3iDLnM|RnRvBuf9K4fzjqGyqI}Y~KL!@S|Cfchzx+!7b6nw@WUGv!iVFHUFV@b-`%50DC)6}GXa%y)-m&AXy?+_^68O1 zi9_IugTwO2``g1FO<{Up5>$t=6>f|vV<6nHz)S?ZIW^aY@~2?5kzmTw_}O?xQh168 z!cwkDtMo-#I#?i_dU;P6tA}R?@1OmHs`wMr)N-=dPO$OVqXyivYbE)~`@X zH@@UutOvYkbq8Aek>XLg!?}!tEQy6;o59~3iSYo_smj95c&5fZF!93u&_Jpsd(HOV zW?h|=* z>YI@KVRnkul>9$*E52e zqsDO6dFWg2S!te?d=aMM-_G|^T#-_hFu8~-Zh4j)G0Ko4e?NUk!Y0?Ng!3k|c}zy2 z8U;2w&pawEiUQd>wpB1M&o4cOVu|woi+?=7m>C0+(5Lk}I|q`B)f3;r9#x0|!$!#P z1R_xaz+i<6{$5DtcT{RRQ?TH&l_RK_coIspUvO(n;JZTx9TYD_7hy6IH)Id@gqhTY ztkUkp{Md9KE>9peK}a0|a^e>{s;F1w zC;gLD2=ZhPy2o<4YOlp;0TMF2&xL?+@~w&t4)`semLm|bfcG{p8A-RX!D;2V z`F`(`vJ!%+7Fm4INydJHU#abLdrip~Z`DBvrNrB(Xm=}O+lU}uY!H*ZY(|-u)cIja zSMVUR5aS}f1*&nnl@AlW6suhA`?ThVFvjyuodGA`1i}MPih#Gy1pVQ3zW9K?lyz$6 z;%Rr$k0cHkMo5rhl(cT+IF?e-0=I%Zy=)kWbp}81-A(I2e&eDH;Je&v{&Z=ihTH@& zb?fPG#{;!{Z$MJF`bt{|3Yhk~JfUWn< z;M8yPJQ}IbXawc$THv)Nf2VUuan^@N7`kBBl0VLGQy(^@a`i7%#}(s@4VcF*&E&iz z6}z8O?V-hHi(_I$jan;6{6k@$_T*BKcl;DkyKVU>E;6G&9D^9-Z5WQRpf8md^882a z&3q$yCIFER3MtuHUM!e-L3G9#PaFr+BW%3QcSjSi6o){kK+p7eh#pigghlE~?AaH5z|2J}q*($>s{iqG2f4uv7{&`sau?FpAWo@c#Vq(A;BG)w^kU)z?^83f8fXj6I!^X?oNEyp$VW2)Y0YB3J^d1Hp}Q=xccI`h+0mDMDDOg~C&TsqxG!#1v* z@t*cro!9MCs0%!?v$7k3vYx#JVbj6lXf`JJkrGk+EwXN`VF&}kQ8t8@D3@HHi`7P? zcTZ?BeTf*x>bYu?1&%A5mz_)I97qi^etUyV=KH94v0Df?zAGZ;@ zI20k9?V>r;X*xgoD_aq9xYjNz^_~7?eZb4m9y+J{^4a!2F8%3~M~H$uG>6$Te3?Qy z0d4;fJ$*>8#5?YV@Fsq<`PF01!=(_y)(xJ8aue+q1bR7|OwKEeWZLvZ$1BEP zklQ;bEOY@J42<|=?D@Z6s{aLY|Lv{&pQxcm<4Sp61yjhJ;9{8DnB5sc56$iD<8%Kq zr7fpTS5VBJee6To{Jm0HV!y@{oc9*S=}ab9_>=S|j(uwxiOJ;AEH%5+#rx{3<-^wH z$aLLLR8hPKj8SryqWn+t#$ZFd!z$=1*sK(va99~knFFDIAsmJ|LGoZR(zcZttM(;E zA3(A1W@F)f&>`#&@}r!D6F0=G*1KT__!H7wyrwJ# zT6DGSi(jb9FZKiGz`hMOJs{9&v02eiy8rBTjNm;@&6AAG`=>QK{D9`Xg)+Z@+o2H8 zX{w4|^v{E2ohzr`D^679z6?YTdi-=L{htl`;jrxM?RRq4)J+ZgHQFj|o?mrzNo8af zvSXKxQ52nTJuik1Q>|V6gP)M5UEBAj!Xqh}gZLY_J()J0Vx+Q8-0%nVH~p7w*!0U9 z6{nrnEe7&_dM-7zw+|4XbEmHpEEZm@D7dv~ZdusqXV-DR;LNxzatWG-%{uumItma~ zRV-!LcreNvbfymS?I-fGYzGCvgC~v3;=bM5wg7sGnokw#!Oc0k7}=MS+M>QLtZk{Y zaQZip0)f0M@uqV1!Spc$1>{2Q-8D*aAeNPO%hY!mK%abC8?HHEt`NOD5w3U@D#nNW00AOeStwS#UdNhTFWUx>0n? zEz^zN{P-`=G7AI6_{WdyIO`v|!~a4g{AG{&pGB3Uv95%nifI^zZJ~#d{Dp}g*@M5^ znV}H6i!5D-s{y8euUW_*b}hq#KX_Z)+C)5A;-jF7qFx(vHKjkd4#HJbP1 z@Z!rI4#&T#2dbX3(q2DPHco8&I$+CGvJ?@##;8v@pLM5V?D|qUhR}H`nR~PWh@YS^91zM%+1aqGQfOPV`s>&$I!+Xed^C zQbuC{1>jBFzH8z1;4nJ#ENa<$6@3o8+BCSJ6Ypi4dFAK0m3^C=hO4&ViZISzJkFpi zE_th~kFQd5KowQ*6w$TdtffOit2&Lt*hDUFi~Hnu29Be}F$s&x;MZCq*zsDv;@+j) zO?rA?4)k`sekfl%$U8J-6F8&BW~hMka@&DgB3nHa+>2A@9id;YzXZlg7u4&I`GOi; zpmvYq2euIJvI|T__W42|!tm|$)nmA3N`?vI7wTKVpE%I)hT&<*cxI#M=uMCx(E2zv z`f1U_fuZjlxRO}fOXRD_jnjoV$HKvme=y$_I2UUCM31zg1XrR!-lHcSuHIt_%sIke z%$A?-%0SLCA&43SUg zb~A=?bo`5iJ9mzMJv%C*=TCzl1p@Jp1w#AJctyq0&dbu#;oreDn)Z$alBj;%Emwpu znZ*tmr=LE8G8V3mC^_TXkoKpBB9dST)#k8^Z@qlooiD3z`Ki&-NuHqcPFTV<$e`3x zP$RbmL=e)yF|AQ6NnW|Sv^H@F+zN7ZJ}m$2eFH~Hd?XK$Z(C9}DI{6Gi6!BA4TnOL zRFK?=lK`Vn1TW5qO&B%)cP~ z9Wd^(xs5q=Na)m;YLLRua~cgJ!ygl2{|(r*g7=-TxX_QyiD(&UE>-N_KR;#Q>Y1=l z0K(zl^S8=pDJ^0HObw?qf%@K}ZJO(PcBvB^Q)W%>H%eXUuttM)>`> zi`Qh>8jLnN{p@qi;adVp&rsaA9^O4Pxa+c}dW2HXn>0EPM)~s52S?spOz{@DXQ7IQd zuFTiGReSan8`ISWFa581AT9^}!a3qZYyTo$yJk_e`2+)IZ+ymqP~u6IM;IK$AiGG# zKC0=aKT$_pb~aRHvSFVJvc{dv+AXQ&EITVP)PGEqc9;?aTigM{2GmnJ`iVkGmiclVB15@_S9F48j-wucq2PN<6%Vm@iaW=_ zRWb;dEwTd-^B+eUs>sHmZXi42Z=e*OR&M+scK)=q+^RbTceh`<;Zy^{%KYcIrE&R0 z+rJ`izJmu%J2@P|LHdKbM{p@W-Qk;fzE1B!A?7H1Cx*d!$%nN$MMoJ?`n{tp(~D8k zI1%%}DTiE3%MPQK34}sfoUr^t<*&RWDF-6Fqz^B*ML1d=>YH5)t-b|#y@pGgg#V~z zjecb2N0-F+@?{K?Yf72XJ9QL51b;WUHteA*5eI z#F0p$R7rTUD$Ll*wrZ~?LeWPh57X?sM8cR3~y@m|F&BUv)R+8ck;^xwN;(zCeX7FS_ z2nmvnx&#lZK{wx6={{4q$KQeG#54Pan#T^eXn%QE3RLYIn&u(e1ChUJK))XV(E9Ga#tu zE;QSG!>@}Sq6#!4Plz8XLFZ2%4b#N3^_=)l`@16&X>vBR(EOlZo$I!++(eyzi<}2h zvS2r70mN**dV_{5#d20%lonOmkh)I&_4Jb11IhyzhS?E9y#D)8wP{z{KCZzI9MEQ~ zb_U8U)Kt&4YPOa5q+3MBVgdZG`{R{ZwEpyLQ4Owxq2Bj_>S;?DVLNdy$kiuKdkx1ssQC0S-Lmaw**Vv z|Dqt#N<`4rF&yHO`y4j&LcfP_{i`g5IM@1Dq;@SkNeVfp6Z;(9{ zv<|3;G>lFVFF0Hhc7bS-#1ud9cX3P3T|ewfgfT=i$OL@Cx5*Y}VpPu1)(qmu*65t1 z)eBKiaumIBPBs<2QBHWK$!4Wb0^wbaBhhwEGzQy8OFN5C$mqu@>&#K|I zv9iWFdJ&{C0dUpYZhQgY$+-2(83Fo=4V?fzRX}-M*kO@H;)!E2ocJk6C6TxeUqrAq8G#uE`2$9o#JJ(%xX zj9ync0hFq$UM;6EkRVj;D2sk)!D3*iW4i=?Rfc^~PCccB!&Y`jhmXS@<7qv>s{;MX zy742)&*FX~y`Y^1tp_i-pg{~3vudMXHrR<*cYoCqu~_)RVlT?LI^0@x9M$bimzxu8gj) zTC9q^K1?&V#vN&h(XUfR>8F5zs?8IT&@0UMcyxqpvg5vIFvLX_9Zis9ztH+)YzN1} zSJ6lq2yyl!H_5$FH@wc`Sutrarg|8_ycB^r;oizHj>vPoh6vp5pl>y{(^46_Pexj&@TAreWWynQw)*VSO>ml&#*txIr`~&5W z+bGx4d|OOJFeU7XVVz%HnUfLU zGh7-_0ZRTlk?qmB>EppxCzpy48lxolNGcvQTekj8__nB{*MiV~jL? zG7X&l&aaT7&VF6UBT%fXJ5|bZEfHZ#YqYOte8FY#;%2YCl9+uK{wXp5xbQTg)Of0P z$zjHlpfsE~O^~X%KsNAAWTWoUz0>i}BWdpCGI9u&q>yZG}|=C zpN@kYQ6W*qJ-DaZQB);MI6Svr#co%%NFcf4SoY6Apxt+Dz`%=Gt^9b!w-S}0w0HUI z0E+YMWAD%BXAJkw5k~8p-e#wWffbjqV#jbh`zq{TqOEZ2uyxcX`~u&R8cYYnKJkjK@CMhR5(@`Q!^P$9Dwk!I zp_cHzZaR{uVwTJkO! z(x~rJ)8Cr?>WyKuaABQ3{nj%A2E&I-zYgoPfa4LYf6|eq(3M)#Tw*{REka1lR^uzB ze~jPQl~XDfgD3n&nx;V?X5ccxrul>+>rHvnXii^lW8v=I@zuMd_erYv?RGQHi9Gzl zcO}k<1^H?FJCMXkIuAwq8gv}HG_%%#AL4A#4-ZfC#v95*b@##+APQuq1nTsM;}oGQ zz0@O_ig^#mIZIF~z>O7O^HJ?ohq$2skPr7}yAWq!hO5DwokHj?D(s{!%t&Ir8VbTm z!xbEvms%4ZLq(8KU?};p!t5FSmhMniXFb7CfyvW+Jb6sZ(^j%x%4LPm-Rlr0V1a88 zY!SqpE{4z%>0 zIw#PFeXQnsG#qXdhwD}=JFZx=?Th)D1CV?V3<5Bv@4$k|JfX4bz*0NviKuOU96lCK zu>+l!AQ4$$KHK6l!dat2>x$#uIaKjgtRP;7j*3~@uZvXMnvspQv6Gr2xEcV-2Ff(! zPlDI;Ld#C8a~e>f#LcYC3kN5sRF^__{0bb?fiVwI933^41c6Ye$QKSPa*DWRxW1m+ zt~4shd(w`!F?SHO(d`jAS9{zLSM(0g{D!a!&t@g`LGxr3YE6$-9!mAxpa!dPn!t8; z{0TszR~#5NRqL^uWIu<~sOh2^h)E9b!#l>Mcv*m{W{3KWum(7lFULrQ8>jHjmf$Iu znFjY6jXq+4`>Cp^6dJB?(CT$StssThpH)Dx#khJ(ZeK@kQLcaJ-m93}&^0wgE&XSi zTC=4DVzH!6D2p4NQ{;1yl_{2`SVJx*H2?7VmtkBbyRN0TG0KFI<`RMl+4*tdo;BsA zJg&0&Z+6{s&O^7Uk|Qy{G@ceNzxRiK3Mo@S0vIkrY(~<`d7?8~CRd)zvY=$Zu*jZ} z%Sz~AxsJngC^tWNuHoWVLa3jUrEa0zxCFw-7W4#Le2thU;`HWUd@=qxgCkCJ-;>x3 z>5z#=KC3zVC-Hofb9g1>nS;<{TbrbhtpVnVjL>C&fN%C5tafahr5p)+hq=EAfv0ob z3uWtTd@}w}D{?Q!h`|(d>1dzZLdT4z#3ub|Xt9wsZA7M_N8aF^H~{iaO(IMsc;GIU zP!zFS&z@IF&@+BZw`Ju_>pax?jTxZ@&j#i>GfDb37CPjf9KesNLlV{rG{K8=*a zm_}$#YqUnLZ1ohw>AFf$587k8v-`^ND*c*DQAb+Zl>1kdS$+?aPXALqX@Wj$qQMxC zcOuQGm0Lcn!tn0oo6g8zoNhb~otSMXI5PowoF>=;&S;&iVeXUa{mejwG;8&m6nO&YzEZl!=Y=cT08?;mq7zCt2Ai&qXwH+#qL zBj5eYg~8^fnE&YG);#=(kNDrojenAGNSIpy-RxW?zkG50A_H_Vvors<3^hm1P#OP& z4}%;XZ>;%joMKb63u|?XpVYHZ%95gokzC5zg)-3=&D?3`&U$b84JG~2_~%Pevbbt=n(s;p-+aTk%Fh$8^#@393;X zox9-=fh-*?#m$m{g`};}qat!L#@v?l1-4`d*Lia^^_? zEMNi!9>Ct3%g=)Ut4WGu#_Wx8p-?=J0rNh-ZkUC=zL)OgtV1iv!`&*fb_SLl&@Qh& znKHhp50M$q3@iny;6*zmduecf?wF?MsSih66M=wej%9p?Yos>6-N$=MxOb`lj5!mV zpg5A2WX9C>i5!GYD<7|H_u3wuH6-6i7dc`w{3tSv{}i6^rdTYT=v(}r#=2KV^=pXW z87gP29ICYTZ#~-%1sPJ^2h}C;k5m`eKcKz;ISrn!<_<2_jt>9ViKt1OQi5PZ9Vzpn z&);4i+U^^KOtWz{bCLlP%zQLTr&eqc< zox?3Q-YChKS5YF*1zm{u)6n&~c28EEb8F!(=?)!_TF8=D%`}$5nqUEtTS{v7S!a|5 z=7QVCZu7CTQvZ>!ccc_;yfF=)?=YQAVIe!v;W^|ksgcSqD$t%;8YYE?$c3gCpV@b{%DwyhUFh+C9gI0HU1J!NxQsQ-dw-BpUnRA{0<4e(U$}_ z%!)C@xT|U~Vt~oRN;0IlG3Tt`7Xin~SiVt+kf!0FE3GyX8H*X*V*0VVG>Ixxf`S{= zIhARQ%d%2S+d_b~lj1c*M!A9BNU6MN$){=Mo%#eUvRTSRx^1Vx?@xK^CllGR&|iyv z$|N~@!}pu4asz6$HOEaZMVP}cGZLL&z-xONaCdK(G7L#)XctkGSgcn?;N#L%JjE=1qmDiaE;(u_1{7Xo7+rk4O%ELRg=BdS&ovDGa zE1cJ;`Yu*{6?-sdwAVLtppyK->&qA z$CkO4xM#XdL~9AWOz<|juliRc7Je^$Tp6#Pu;fY zpF1KZ1SpMXAdB$8q(ZIL6at|qQFF?0qBMWF=lkHq znbR*wzt4!q2cb?_=QR+cxS^Un!ZVeb>lmDULfK~Mw@gg zcXUNBGQ)r~1z)Z&Hxf9kkH#9eOZ1g=&d5b7s#e2zf&A;Jl3H-=Dtusgsei=q|FoYW zYY(*ipED{3bTQ}Vlyoq4{K&Tb7pkw(()}CN!^j&o7{SrvqL%f+Cot_CaO(UxK-3>x zL8gWgM{i6Vo(t+y(`p*sM{d8$g8G6^?5S9(=1x_KFovP|q*`%zKHg|H29H9QV&VSv zYe(;U$5)H@=a<%>vmxD&szcxa23&a3S`)0;Do;Ss7v2IBkzvf}2`{m}J$jAoq1jOQyVHl-l zg>1_&M8d%`(`=qlzDQ4zOZ92Q+}8+6aO`WU*Tf{<=aEKE+wa(`QXR}DWM=SG>bnJG z!M-Tn=j8G7`Pujw``o<_uCR6kh@$dfd~^@JErUv9v74F;UsmN@3@SaY@r2!A?1L=ENdsC-g1o=K}guP z*z3ybhtkY-$}6J5?>sxTjy;3Sg+0l6gxao>?d z-CZs66qT1zI#dGL=YzpyCD$x{Iz0)`yQGwnKl6Y1Sw;(1yV}mzsQdh(4iU zDZk~V>$Rm6XD9ERzoX<49X-?Cz>iFpKIdd)jKhM&H5p(P`_)J@{|{mB;N98RWDh4D zbjP-xd}2Et+qP{R9ox2TJL%ZAZQIG4=b2ga&TrP5@7((r+;i?ZRkdr^-X5Gu>E&ud z4|&pu*qkHLsdc}cTV@fGiQBixuP+4zXgJy>(q^V3iJ*hOs0G)CO~ws({%(s6A%f<| z+2ySYO)C%YXIPd^jD|LW+SF%QDzAF+^@L+;_l{v|$M*HP2I#GI+vO4jiJUo^|42yE zS+E7Grf}8j!*W&V(_qWnwt~6Z)>6+zAjF${(63!q;#wvlTHBhN%bzlmIwP#zo2-qP zFhOT2g4XNjqIENG3XqUh?D4?d9Qx*%<)tEGfHy_I()3L@3Y#8-7*%veF^Ht7bq4JY z$c|@h`lwy=tg+AxRdx`SG`G@I3cSSVd1Owu5COy?d1kNadGuOb#k8n(K{W$ zvv?n~rpk3=kd3WiU$gx)>=xxSU*B9y?heMf?sB)hETuA|fMFrCzvrNBU7kCIfJKXU zd17aKlXJ4+uYy*#3zVL!Hfd+4K_oD1on2=ekqkZN(&!c^elVn{p}ndZVk7zM0Y^GZ zNEN3W`J@uJrKQjj<589{BetJsk2kL0s2 z1FCg&{SWp=ejWD!NqBB;&4-OeQ#~hE1y|hU$Tad#D4kp{~`{nv%F_i*Rxaip|$ZR@l>h`0QU zL!Bf4PS#ov|Ca2>QcV@(?av=Gop-8UQ0@??j^))0S30~B73}j|aMVQs38D%}YHAJ~ z1>*)*CM7FMIzLeR)G^_ZO03;E!j$8ziCjId@!O7}xg$iTWx64-^Vcrupd+S@m|>yF zL_r#&Uguy=a_vQBX4A6|kLzN*2e_f>b%tGv5k(|ShMS?MV0V#H2(gMGrqnF^*)2)Z zFB-H&Oq;77#mGEUAN1VgL7PSV&iu~&dvxro;Sf;Q;Vrd1*HyhW?NJJZco8w#Smb2e zW1T_V8nB0@APtx&P9}%BSOz>vEVHzE$q#Au#vF&6|5Vl;k*?kZb;G)|LWDV&2^bUbW;riJ$n3@ z*MDeo&YCnjJdT^|NeQwM6Q)9Hrx5ZK+&HV`bA80rmn?vwb!#$WV0WcS4Ld7FhiRuz zx@D9PWl&zzwNzNmu%bop-J1^=Vg-9P2k|2?*e%LxMF`Gn+kKJt6s% zKh>=JNyN!r#W}R6gDc--iSsFo`|130!{_tkj#iK^G%f5YMrzyn2NI+`ATLFc9?a{T zJTd}wxtoP8RsM{eE#{!pa|GEXOP9ZkXpEE+|0#h2cb$msRjCgThr)F_#D!X*rbr(~ z0_Fxb27SZ6);ItXq>CrY{owE#=;!Uc`7T_si%7^H^~w@F}d{%a#i;g!g5 zm!~=q7)QUUn05sgP7Fo`WUUk@R6pg?Ppt-P-3p<3<$PsXQDgiG z5ha0%YY+*>h)d~OvJaevnQMr&@8ByI@+|n3Vg1Haf;BBj?Z|xr{&C9vtkB3#h1O>O zu4|@Z&G_uHH#UKCs5wWgnOJZvB2{~PezuBima~i6m1CZi`lOgy@tVJ<8MCX;31&-z zF$hmIqdr0LIzK3zmrw}-U^F|JCH#h*h;f;jbW^j6*rgYCIo?-cSo9PUk*+OZ17;mu z9>L_)YSgAFi)&8!?VlG9`kPtk9loMBKbq;H$^z};meQ8s@&dB14aPy@$nP2|=X=st)k%+w(!3+^upcHFT zHaZ0SoX%44+{*a!PSzSueEyQTvcuNf9P;z42eja%Yv8ZfJRj|RUcdRZTe)M`Ks=-b zg5ZYBkb(B$i%oU}Fon##;l&Cd!U9VTzU$s$+pVi$vm0CUv>!twZ_p$m-@=A~Uc@lWW`{n7W>!JlgnG(Y;^0T!owMy<`-h*y-fx#(% zwkWRjO+=i=VhNGu5bm_NMfRdJV7RQichU$3Za&w zB(;I+KBv^JIvI&cP{`i`=nXU)vbXCC|!5d%M0-r%<<;#V}#cV z;){CIe-Ei-+8vWKzFtP#ug5EsH?TRAwv(-GT)j=MoWDH0y}>=x`DaAv_49`W(^2S& z2jR^j8XJPruYsUAFdW)Rq^u#L60gVFstD6w2HNU8|75_`m#auJBzGm=v185JE~Oh| zAXJU50q8{%v>2)vy`|_8Cb<`TP0z;}W0(&*Nsg&nM)%i4e=4>A#dwu38klRe&*H3Z z@C+rqeeIg0tTNM33bOWZPhGvNYMp`)9azi7q*#M}l6P+@M6#@_zz8T{88G#zG7pPs zeeh--PRN&A-ha5mOd)g;6cFHNA}a1$wGAc@$r7vIa-B@q>NF1;)XI`}`m=94 zDQ$!lF-n;t&HZ68tF$DF*x^%)Dm+b(Ux}kL^K25(Dlu zRDqx?Q33?~rQ6V3T{CHzp-B5x_>hB6jJe*RT%H3$w?8Bo%HZBP@=_Sj&CK4s4fZiG2|9UrGy$lM<;1z) zNd1MP3O|A}WL7*OD$Zoz>q9F$del$*7?vc;Mf5&X+Eefm5NaCoB1#2(8!GVZKui|H zBS^>EcN&BH8vLQK1%KK*4%~JU`+EoQQMnI0lU}~3>9YkqDT9YEc?tC4r1|_Zklzvo zanB@1D}Z=?Tx1uGFIF%mb^tZH+z;NQ&N5nZDXid=AsE{C3y&}^{WT2O9UR0-ldChG zY9)QYo$lt}J%n1cD-j&E#=$TQs4LMEv$GG|cZ%4FT2005nz^A)LTN2$ z+cImZHV|Lg>U#=%&k^P86M*?`?n+GeIen86lCDVlCa&9X%v$hw1!gEdQM#PeA5D3J z#Kd#UjtJw|d(w)l0gh_X0}DfDl97Z%V|_O*$O?J6!j7TYqhT%YYSK*E)(z&4y;zQI zSUqS4^+!@G(OK-lN|h!J!r7QRex)ethw@q&c9C41-aI36$+zc~(AI;$6zUK+_s>jr z%eN@BQshMj5c3Yd|Es%^Dsq} zI7=JmTXLu1#`GrJ^jW5^=DH|CASB}ul4O5(=f!oj0-l2jepHqGdZ9*lc~<>+kIdJEPY3W zbvq+D&#ZTQ-*Dt;;G8A5Y^W1@e4!y%mVT)BL9BU;zCmc;WzB`8b*54wWkfigEK8B* z8I8V|ig62Ez7-+2#9^F{2~OFg^H3PNf&Vn3wIyVJ;#6M7dc|_&1pUfI)EZ~oQE1+1 zXaZR|ZHb+8##uQw>H&2L2B$&Tq?oRLyOrK=Ic!5=@u>4F>m7)0Lf)cRK3d8;dzL)_ z3Sd~hJ{zBY0v%*1lz&92+WCQ}`U4pKXsC7j1nRQN7DaOi6^`I@JBaz5g5r?rgo|dN zjMCFjq;+z?4ZU$eea-!1QwCD{0OP=Tv(?oolS#-l_FSG?xm|L+}JguOdyH z+KGNrhO@uF9r$YWO34#t%__D$#wJ|+(nfOH*#7R9J99E;&@th}Ftl9=W8%98=@TMJB{(~01>o#Gm#*-WT+pl7&0yc34LZ5| z7V9CkhkIdBAw2w=q$VJ@+dtgu0 z6Y?D>-8!ZOz^fnLFG3JC7skJ`?s3F3`91qKrK8i`HvnlpPanjNmwakVr{W(yR+ws| z3rvlt;z42Bw1s| ze*~?a%0_L^O`NcdP{K1Syhiq;{=xx-b8L;+E2&e7B!%VF$qv4>Cn-YS*qlf>(Z=Y< z#N$_5QmEFI(Ez?Ots^_##+tTHBb9KVQuF91P<+d1FUEyL>Qx*EF9_csJIQBNNL!dC zFl%Ff;sh^@t1`Mc<*VQqI0M$pA}X55OVey7NoyjSmkQ9jeKoxYe!0txOSl zb^}lK58Pos7$;%rQj2{GtNm6C$rr-h?rHX*<4@i_tPIv6TUL$@BG=4C1VFax zA(+{bTwx~+oQtS^GXB$azt%USgFdXE>oiLs0y`{sSpJ+y8(K zBju!IdU@f!)_w%agCZ-whYix=&uj*!pd&r}asM0Ry1rY4Y(Y?X;PPUJZ?4bv-NBmU z2fgXVH8$4S9A9I7d-!++#`w7`iy%S+4E92dT3ev2#>Xdw%nn8gsf>Yq>2^tS#ZX{j zwRzNbrPd_P8%Utsh&{$>91~s$F0kL=K=vc+AcXR(2mTU<)so*(!4+C$U_Yl;DQi8^ zJnDD<8lh~&pS<26M2aJd@w8zSZIuef3Hb-W%L<|y`RGtRT#W^>7;-KIfu^Sz@-HZL z0WyNP#p*0#)Nh<#>FR#*o+9_of0m&N%p!jbxQ!yBdVlZH&tLPVXSQnJdnWsjd-i{v zT>%A!f43+86X%Uol99zyLjUR{PTwGw@J%S}M+LJ=?% zp^{=ru{14>DxP#4tVbJ4owVKE7E8&E%(P=;myX`-aI+u0*&VRB@gNAi9*PR~+Va?X z`+VQLdfQwhlks_n_%=wCprz4W4sM1=y=e+@>9Dp`b^+a5r{ z%R@g3Lc+}$^3X)vt1tI#8O+=~YL7=$q^b6>LuK_$pq+dwdX9mopI{ctdIiCg54qNx zmq1{GU_>+~DG*vmzR3+?4{|_CYl@MSA~PsWZ4Go};=$6G)*mqia4=@-Uk@ceC}~k2 zD{C*D*O?uNh>m#4*WU;v`6We2_oJ`p7a6S@Ku>n*ru8t(jbcDo+RZT_F6a-EPaUWJ zFbfFl94wqgqfNX!y~wRdqeNK%O^vn{F=Ns&6}&YsG-tQaWN!6pPwEnWVZPMr8lD+J z=N0Ymh={(X?>jlPt@V>*qDs%bJ7ym&4-Xes>nCI28TcWfv5{k*4#sR{cp;NAwg$EwU-pJG)2^=*ydf9{<`iPy}OK6G)!(6y|Lc`pMIh&QLF*QTL zu9$Jm5fHR_PZNr%C;2??EhL{Q|9s5LR1fzo&Q;VdgXQ9}_S>c);31l#M) zuhNWtn*%%;UgrcQr_NE%)HliZxO%pMvUL6aq{ zP|4u;1H!cwpWB%vRcfF+6nv_dh(_?dU45^=b4Gy(ZKoF6-)lgpg|_zqP+U*Yd9?)D z#T+H?9)9IFycNg)B~XKB+G`st?4q>-0oN_-QFPA3U4T1#`M9*L8v^$pLH5CEE6p8b zaY+!+&kJK6RC7izs4jufgW+t$izmCz?25hY%Sve7iw18IgJEuJx2>UxYgy53cY3%@ zs(u!Cw)*IF0dsQ1fPc=J(RE}TreRlk#e=>sJOm=hKVCiE;DBXfer!*GZ%G7?nyF_7 zl9~G_M|90q@280c+tFX{P>MLhs;f^ivQy&}$c1m|=M={C)jx>xn#>*hyn?@eMNd0S z4IryLys65Qe1YTQ2b0TG_M`7~YVESiFcm*Tp_a}0Y(kRsy$HJ#W6EJ3LfVrZR9RVY%OD}P%o%uMba2X70C5-j*zn8+LcG2YsY zE_WH|!dH&z11)xp)w}{cOV*O#;h72T6_zqS^(QgIQ%IIPLjTx0f%qCb)5DK4hLtax zdGX7?6mmYXXEx9~5!ULz!gC%l{uQp;={ku@zr)p^|0i78iq`%sLjBkCfB2XF=M1?6 zgW!Ms0R!p~o{9?#U)gSq9V7b)_{6+1x-kPIgP`!qf~6^uQ*R3W~c$EE&W!hd|Yp)^f1k!u{!5I2FgQSCempB;B{I&%d$}KHQVUO6rEwc`| z3`gSh4>D@xYr@1R1e)+n$BOW%{5>Okzj*OXMN*IK*D9xgweSPxAd(Q-gSt;2^n7H3mZ)1591vAqy_;U3^Nc$d06 zDKj~ujca-E05RqT+*#FLuLf6n%kqZ7K+okjqUgea`w|&2(viOa4jRqb*cp#yg?K0C zNR+FKOhcr}!!w#Qy4LH->JXCJ-x;pXg$}s!xy1ktcN1}@s26Ub5p8E1Gf|g{~@49n312jf$ zjqbWdasK?FK&H`Fmrv_jn1i^BMmp}SMkN-pTICfW zeAOmSv{N3gVKC_zS@d?spKGf;tWf50<+RX|7H7~sS?B?S9^5e+niZ0?slHAMo{{o0 z(8^)WSoJ+M%$>r+%aBd=%^euKVCdS-96KMJ{oHYu4%IkS@tPi&6QKiq7=dgk;SA$_#ddA^1 z*>}C`Id{D{J=Q)J+W6=r7K?X3HoUuovh}OQJ29;YFN0Ev)|z$K^LN14OJ-W{K_Vyf z@0i>E(9B=c;m#ZrwyDZ`3zKt2q|p#Zo8Jqx1#}ucgYuzo(%4o0}wgf?95H_6l+M=7m)u4r~n6gE<(=63j&xXGS zJ*by88HyPiM!C3EJnJ0kyzQOnZ0<<8Q8aVm7%c8$?ufQgIm?Z?A@Nk&Akl~9D&ME@ z?JC8`C1891s!oKH(Yy$Nhhg}^^h*C=mJm&S>(ng_H|-Dj5X=ug*1NR9X{+ue%A4W0 zBpAnuza_je$Y@`Gye+socUXP^lsiFyq1`2c@oLHb zSVjnSOmye!?CiYrK$}SZKubzU81Aabh^58+NWeWPpCL_j4!_TcZ%`{7VpL7I|sm-KgMuZ?(_KO zY*4x?<)yGum|jnyg!TYStP+AfrL4Z2)^IBySQbPaE{`(u!Mm3euY1 zGiVjgPBFU&YNOcsWr*v06x_7x2A2tj;MRwBy3$> z(>HfUtrT(HlQ-v%UGBSt@uq_TAKLlR$8eZllG!z=`SU*EXDnlK(8n`l^A$6YBZs{G?PdwDau|>p%+oC#cco%;VDRm<;}TvR(S3VGOeR#W z0r#+bV?c=FL#{NYGyX_QGStN0m za$)8N3?v;WH~OC=N*OP`?G-AojAUR);930*-3H9lAWVOh@ozpJ^J|Bxq!U0#^*h?A zpy^5?dzrU>g<yNq?cWk}rT&2M=h?J(p!E!jb28mc$&a*g0oqVB<_R8x69=YtOAu zWQ$r7giEX!Ue}~XyT#N)7PNmtZdynjg1Bs(}{&`25N5!8PH6@nC0~6 zcGs6fn#nKbbNd@|29U$Y8tOs#o}PKuHQ=!+p!1Tx6)6PIuTW>vt<8&ymezoo47IW} zWrV_iEmF*NsB?V%p*J?9oq~3K=dB_=xf7ZEit4kam(Af1?z3-8^)(t85tVY|j3rX#6 zs3Vua8YOvAQ3IOU#0;kIDOkR6}K_&lnV3WgmD8Gq*p7DnmY!Ae`E682S$=3S9Ov%^` z_st6fSbo9=g)q|4%yV&TOf#!qJl7fN4d^XXu$t*#6j@u6s@?@#!khM({x&jbW zJ^|FVFAwi7Al6J>HoX&rSIX=9@78_JdoDknF}s_0Sw6Wj<83)Fbzxm@sgiv{eQ>}$ zc%yHB?$F>4Vf?+rc(7hK$jgG{Wc+qL?)qaEVZ8=o1pinhIRrF#5o|8dgP$Q42qL-$ zwTiQsIO6!XkV|{8S0}W!Vwre7{4Fj-w?3>UP|js%NK95sd0qp(5$-9y#ErC!5n$Ga z@&-HT4FpFzv{RzNPo8R6JFW-*#a*C<&9KL-zIGqEK$fXdjfN`j;$i;x=XVzT5{Q*i8*5CEc ziVOTh3?REJpr}o#X3v}KcD$FqIK1#1uCA$5YhKh|HbidhMZ7$CJUx0IVTy0}TF;=y zXClvMq{+T)_QFqn)2Ecu4Vt1PAI~Ky)il3^)df^!p+-t_Ly$0WD(&BpMjRTB+d4~n zAv|~|T%QYsuUp$aTWXb4wV*mVkUDt~I=Lucx@FwkS}?ID>2kTK$bb*>x&Y7>`Y7z< zqt?uwaF|)(`1>E5vVI05_+cvqcLQKq<8i=Lx=$0wL;R0BgrA&6aIH=QKgBO<-?i5h z`t%&vy|HcfWa}|zey6vNU2&nZ19~J&sConqXALFusm60G$BVGX^NDN`CmKW>X-oN` zDj_HI0uR+ipVA8kpyRi(b*7_{RD=1I^Bhz7f}WEO`}lB874`LQTSg3F`;dvEp~4eD zUrT_7_zL%^8~jNx`k=9fx;Oa}m{DN1`{g}$ycZKmH2KM$_Ssxtxv>`aFaIzO)xwb- zv4uVAQ3TIXc#%h`u?<e_ZO*~Hqm>*>uVkN%*>Ey%5uCrkX~3^?T< z)np05q+u^M&RT>6>G;|BQF12o;hkaq)1U%9w3Y$aKy{TOj@1###)pw~TA3=x$}}gl z;}ttAnxY&%NDNC*K%oanSuHV9+2t2)$}!Z0Fb7FjXcew`p7O*KK{~Fj99;NGoV7os`;-AgG7>%S3R>pJQ6$%l&MdOUd=Y6R` zMuyJH*6)^T1P^=XuEUVN6?lGh?GBI*5zCu!v{S9bhitDimOkX9Q*!ITd^$D0-TX8k z{@nM>()uW8RxB0G6vs6yFls(}qivbg!^oym2}+Tdg@ccya!7_MNQOr%b(S9QjzUdD zq>ZAbq_MNg0T4|uY_o@awUwYoO<-&bO~0g?227j8jJpOS83BcB<7iebNDZnT78;R` z8bkt{bZOPHR@=I9qt2EMa}A5AI00QCjIJE%nH$O~p2I0E;p|XrZ*;XGP*TA#!g!At zO`>PPbBiO0Kj|h=`=K?^)|=?WEfJ`i9?)4n3R|z%&V3-_!!L$b!?m~l1#_%cXBO=A6qll8aN=^K=R(sGZQB-TN`>W1`Q_fhoRxY)GC;OK5VDmK^rsdaZ z{dPPoE4ZAsM|_$ZZp)GvN`(o7ap@E#MbS3|Wws9}hx!Y`0ZfT6*+YD()bNqf8E7x4 z?kM{l^ZMKFba+oE;d2xb0b2d!FONHDXGvB)@&a^wQ~`HH{4w;|bRe~!7^yyZXQ7}S ztEd5<=OAo5?8H?Vk>vq|DB>tOGw8lm7*=GpbzPZ2tT@I4p_UA|Qvn*)kzy2bG9m$X zuvT$)E^(41z=El)c@E{+j)FOY+^KDsd~|pMN{hH!WaTL4dR4^$O(8^kBBQM=I}$C0 z$qvkcWk-HSUxttWR+=#PLu_yA`P#;Icz~VBJx@K9;dH$Z6cMWij|BoV3%M$+ppOB{UOeHdR|McGMq1 zI9Go-CF*N_ZG50@Fvwvdte>?sD|EQUgwV9)$k%Oa=Ju&@%AZUp(-O_z@ z@Pog}atX|GO8yT1kqvJ8HA~0>F9DAtKM)tU0impKnn~^)?n(t7(Ek_YS~f(&C1^D6 zs_X5pz23*WyGw5mI+zFh+p=f@*v+I>V{)>tjlRE#yMM$f53wCaO$;T-&q9g?zoj5o>r$(?RIIO( zN2&|DR{ylwK2;@?t(85s#qMHkV#0cG@^ts%<^A}!%g()Cwk08c&8^jHyqP8t~Wf&PlY>pKlX&fg)`4UU?MmF z9xON2BT5*-+R-r;BugYdY~g`43 zQSk>|K)Qb+-jU6-%I@Z%$@hvC_Mici1-n#J8Ml$VUtA7=c_dRbleuN~hCl~1pL8eh zEMVq$PXGj9Th|wG1R6o(OTl5`OZpv^W?zA^(9l=J2~0K&5f11BQvC{Z|tf_ zI68UD;5ySYIeF{s;K}XfgTv?VAEFn3LEmnLo0#O^=Lga7Znz6C2H@CZc=xwM3Ngeo z$M0h9JVFC=id+H%^@>~~19u!gJ%8q2!nHr+lDp3js;4itA8waA-kmUAi4wao-OP-69eWa#r96xD6 zs`B%@qkJfjGGOq-9ggv<_O?b^?`qkfdEK^B11{GuFfzg{@juCn03* z$Ro2_5L>TBKI40Q4!a9(bzZs^UTof}Grxi{yU%`*T_H-MX`=C?&HnirVEp%^Hy>)_ zPjG+=8U;8PA+%Nj<~2I)VxZYyq<0}I!8C%|7uNZARWyHSSLJ7U)#%}zUYiif*urp2 z5V##rOZ;ZtS|K$5PW=$z>d;(JgzGRp`zrS-lW&PU=edDjAe%(|9c03%`Ys?m1%tta z!C`WW5sL%3;GTfNQ~eC!>~QYV;e`QL%>F?YeLt1`9V8>@I-wZ%+fMyF735?6I2uT9 z2Yy{fPlbwE=WMMNcqHF!Q(ua@dr@Me6I#`TiRBP57MQ^SCav>>R7QFhFZl`vc4dkP zCF3E0g4Osq<>TT2kA0Qc5JzGdNGV%XRE%^g460CDie3$ZewvB2nWcBQQY=Y7EQ#xO zTgpi)NUfet#cp^dqjJQUS^X-vw%iD+#>7?H$GK6L!oA)BJ2-9s5X5F>+8&$ zpj_=FJVn7F-_y^eS;VTqd5LNaCxWi^{n|wlaUam>*sa#KOHj#q?Myht^FLL!Wa_Wo zWz)j8sfoNd#~L8zxA&tFMGB9HZW7C&I)cAAS{E5;@7Ln93(M%7DKl~#D7}Y<4~p*G zWfI7snY<2T?A)a)%ep{0n!eNI?@~iMI@$H~x5^!83V||>g)$lebJR@l7iwG9uc0(O zhqS8&dd4|;N7T|3@AXQhp#x*b?=uiglX5Qr7Tg!*aCC?`bQYp|;N3HP%|!&)F9deYYvxWij8BZnRQ#bRWRE z?}!g;FFDT3Tcd26bNGqk;vodbeU+02F_i^ z)0pwe~Ytpb#&;-3j@b@d2HHHrXURHGD~v^6_*Mv1ncs0 zotX&ktW+s#shJh%I_1Fp!q}jw#+{_&ye3g5#Et2&JpqRy72#E7l#1+G*=ck&4S0|q zW|#~)M6=MK=nw|-u?wv6G_5W5tr`x^nmnG>hN2v=jWVU3B)`?dyTd?@UaN;0(ez00 zSo4{tS8z=ieZsD~!y0~*PA!E3T|JS8Mxrnq^eUb5&1rJZJc4yhtFVTKvt0#ncMTB< ztrnbSQhT#?OY>r5CAKz>*2r&e(sOU-tNj!;loFvt zAY!qR^Kx{`U1oX%Wj zDZYg=gk#-ZM8g%KEWy-MUQ5GE;%!uPP5sUDNoTF2qH-k9$f_V82Cg6!b&Fd1TSje` zq(m!3rq2rLBnBP%-Q|=-lF^MrhWQ1aC&66R)eX|$uCoSyjfj-Lz6Ma_?Rb+)!Gor= zt$0&N)5S3GyA{uBBAANr%9Q&Q4C;}6T<_m@r+V0aB zz+%N{U=)hPec zN?pQq5(1v&XS_YDF#`zihwO|WOItx}S10$n^z)cpC!0qJBrD6p9t2B8ttgjF@|~0# z!4u=b4>hwqV?>;&h=YN&1aaCNcB#!c#puj| zzQW?Ly27Gdtso7~wh}m9uX?;t4)o>H0fWLNtpN1kbD)Oh|o8VJqi@r!lK1k4d@ZaQ#Z%;y+Fmqy2-z zVh2RB6^$j>;ZQ>XM_|UT2regUwM4gmtj=6qio^axr67pn>;Uo}>1$ZrI(al?kI~3q zP{mgCH%}ZzU)@XsWvQyrfH@$oge~GQ@~e*qxpNb<02+X?8Nk?CF3LSWLDwjWRoy9JY|r0ms; zYtE_M5Ny}`UFzX4rQM3YpecNQkFSsBw@xJt4M&zN6F##@&A_yAEhY@bLU3r$&Je!E zm?fn5+k`9;B#&VfuyXl^A(gU)hQ&L%LGExXB^RgOI=ThXOfem(-CAm8#p}var<;yC z92hrS*WR!B*=k6%q+VyDDG+{;|GqU2A_nfyEYVhA73^CqfebM9y(?`2638N!9n#3V zfx-Zd8{CVc1lA0&co;%oz?qn6NQD5gm7e890Bb(J)mK#Z5%rxzrJ+A4yoFTIrl_7h zSSWf=?*KnoT4}s+DJEf?I4+!bZkW%b9$YemZf*$1x;qL!Te89r`2JXqR+MOO9r7m>2BR119c$9y#f0Wz4JkJ)l;$Cr zKoD~gpuj={aUvY$esd*LowfDB`CE$V_m8hjiHlZMTI_5_33elw)VlD7Y!@f5x6_ejGZiQ$W@&{3p0hg6LmPH1d&!P780Raz z0_+LgtiYnIhSrO=bzhTgCZgGy*<~!oo~;SpaUWo3+oyZ`k=^+wRt7G+3_lbTcCF31 zGc8n?dDbMyhDrz7V|x?Yv;@Zr-s))>q4t%+F%N^P)-x_FMD43C;HY^BIt9$@*sZdb zGjz9Z8ocQPf5ne>8a#%BzJdWshR~O$E~4>hXevD#0ujOJ(_8xHCNW}M{}~Y7x}IMX zdu^V*2{NO_k}nOOq!i5t0~m~sFBKHo@l)xyU@v(TI(fTB0PWmeC4hGRt`lH0XIBca znYU{N*vxIclE2`7A*{+(J`Q1FMjICqjsjeeZ6!|`9AoILbD+HVzE3B7<qliu*^am_B4WL2F)&*fZ_6SoWiu88f;YC3H?^NqJRG6 z5tSDc%#C(>2@R7X_ZC$P?R>eA63K(U`JTAQ!S(INl6;{^Et}duYJ2ZZ&>5{pNB(?4 z&rEtN9wEE+Q|%Wf!-5)DqO%;Wo)O@~^fVat8L^SuN^B0)z*Ih(XK7$=6m}>(Mc+8=%NltY!AclAya)_Hz%qU`ZU1<4j@CW3<1?h$Y>2QVq*hIDG{tnw*#en z+@%zC$VDar?Lf~>RDY&M#UBi2Hm{Y2u2xvl54--myj#-%SEBKfXGbL(Uh(e{7 z{6`V+hVVarM;gn=3gMr??EjeWR~aGA>0#mt2+IXcSQNCw3~B?6=$ZrjVF>s2l`co> zdJ^*uR6WREF0tSse9~^(*=w7pQ2Hmcv3%Dq{7b@!4(Fd+!+3Xdwy>k}lR!1jZIqW* zZ4TNEizUGJPzlfu{(JWMQdV$Q5v7p}gQ=@os>3IWV~P2WRvo2M)3>sn@)4?N$@&Ry zi7x0$&6prq@1a$&`7#UY7}{vo$|K1N=WB%v*hLZ3>~v0gFxQ2;!Y!)z)b4F45v$TB6{o zJ-WtQtWZu^>K9bbU-1-YtDHg$UmqY0ULYJXGqz@~MqVO}O(3lwTWk@haP^dor&=;7 z=e$>hH{50P*pWIWs@ITK?)rG*^P`7Rj|<4mLHPg#0rsmK8W}#PNzs}u7Hq8<)nv>I z#{+tAx36T}+Lq#IdT3|_8K)2RFaVOW^JVt>&U(!R{JD70Uz*ShJ$X zA$eB-wI(4U6Qr!lh%P_c;Znl#wT-Bs$O=v*JpWgH9uX#~Ty=KtgConw28y7Sfv1 z#hK}|IPI5+YbsfsC81zWh3t|t@xR?bM~viS$VU-{dO@#E+Ey{k{1^wuU#DR`a4*_Y z+Y;UfUWX|uF+X$wYnvUH2T}L)P1=BB{&!wAxtcG*Gt|MM24UJ_qfmC&`!NO1@PFda zZqK_c@&M9QG|1)E#h9d_)QopAT1BL53}g|nY)PponSG4n4)G!n7z$2B-4=h>_l8Y6 zVz zg+rVk91hf~@Wv!Bs`~0(G35LqQ2i&BQC!Pd8|Nz<<|U8Y0>gg&u6@638@Q-q4mGMR zpA})cTP)u8U1=RfckqlqF?=MNuyQs+5nQL-c3wIrXtwZ(I$4@=s;klYG*g70ro^QD z=l{7ROX!?>PwpQ+j(~jnTW62iA`$xAd??yS~%3%ZbXYE!Cb0 z>qDiT76+tcQ@jL&xA=%s%4AN9BbAO^J`!+@jAbT&s5G_~qf8C8@p>L!w{^rDm!7Vc zpvd0+$ba{Lmnlfw5{S;bTF!ox51Eytz7s=bGl>A*`%Pr7uNOY6HaLE0uUcCQyhYBy z6z0HEjhtRx{?x1G@lb2WLZGm{Vse&AoiM1!ZP0ZBUbB-yR3iu&O)3_{AH7_bUjUC> z=4PrR&K5pS5J&qoo*D@T_0c?pPLs(ySz5Lm$`xg_LQ5&Bm7=|^U*kKN$?dvZEcCZt zTJ(@~Jo4;m0Nd_*qFa?Ga~mf|oy%w*rV+AcBQ&ad*rNW7Tkv5?49Et5o$x*=(W(MR zZM|mnn@c;HR@ccr+H;tkGDU+20iy$u1^;A?LOk2Q ziL6?h+U-TuydQDFORH-ukWW2OZV(U*EQhWw-dD&D?WiX5X8wv=z1HRxLWO4y5fadcinz_YqXO-bUl(xOP z3;Sw*ewrFjUNA?Fd{q{-WX6h&MqFr-U!u2nwF8C`MO7v`N?Jw3_jn;h7L-KjzRw&P z3u^SI0ci%oo9LITdYkXr((#3?n{30*Ql@7gj1Wr$>cm1u5v0G z7Q+b@?84~{BTL~GA!ged#S`kmwSy~$P z?vMjx>k%Ng1dGw<+di*AesfH>NoYhQf(|HnFX|~3MV<-UcyWzH5&;}>1>&GBgd6wo z%`($iS;C+=9Y@Ep7fi%%Odi=!Za^S9pKU$NE9>P2h%w#WHr_WN-`WkfyS=*NK_UrS zc&iFQXU~PyODmmXYmiMt3}`Fa)?ps4QV=CB_h>DLwG~Zq3yG&rny}~cV8y2El*F(- z6UnxU5~ko@@ojM8%|jRt&C2l~d>N}|U0JzRDAkeMzA6PR1sYepFL2qzK*DGDo1i@C zy)QqFuF&20M=4CQx*pZpI@-2N$1exDKX6l%IbW+E+l%NoGew$c>t6$?q)O{YM~_?< zwYrH3pM}0=CGl9gN~$`Vs)4-h5&lP-T0CXplaUIkq;7P&0k&>BV-7=C*XtrCCS?wd zkR~274iY-U1Lyk_6%8F35eb^$omzd}qWhJA3%G#KkG(J0l+?n~3~WSpaV9S?XwY1V zOll4F_PUX;=V$QEF9%_v5A-Iz_F50vct-Q`i1Uty3=wFmNQ;{?`D#eW?oj1al$E5V zETOZtVt8zbmIQp^G$lQx0(?G0$$(zjc{o<3g{z5AQJX z;HXq!_o3Z0#O97UDXDaL?B+G6M75TF<+r6IzQ=tG&r$xwZWe~9!(WhtxhnQKE#k^L zeq-7w*XCE1D(?!DG|d~2zV(@i7w3lf(AOP%;%e=*YGQY}ENedKa37kzL+@FHHLxFU zT-I|K%hRwrHtKF?S67s3yj{5PV}sCp z{Rt*@2Dt&QhuMfKE$72H`iF2I2`u9CYcP}P^TlMa56OyiLo>hQI159-ha(0h0K0eC z#=mYni3Y;Znnp6*5V!%qxtfuV#mo$1Vr<*VVF+-Ik)yHWDk2V)6`GUI39c2*^V%Cg z%uVOf4+_|d)67oo#hLn~6_31`spXHbH)FCdWvb_iG+V%{J9yRq#2E-(r|N~loXf4n zqj44VJPM*kUj*x+WbmS51{Xs{9shF~5JhMM%=4v{*MP*>iC>wRG7IZ6sQ(j3i;g+> z_-7f+pB6o&nihQ~i|lzI!wr%2A9QfSwkfUN2~l(S4wEQC#$rJK}?U#J2kGZiCik@m-i z<|1t{b)Yc=x)OebroC3dJ~@dFQW)Pn9r{zK=%G*bowOnGuh=V)UakVysAGL2uUGU2 z(5H@6;to!K!?7c(_rwJ+gn^kQdp8pLY#q#Hdpn0o>y-FMm4H$L4reMa{q@Tr?&H&t zI`i`)*z-CdNP`33G})wS6L{p&p}>vVq$&R1e=2<~xb`^%iQrb;m@K(e+}JF2EANa} zl*)IHRbTiEhtJh`yN$-#hel!+fe6rKC~#fODj0$Rn5i0xzh%4Ex8 z$5)_|%2okdP3Ck!;~jYd$#*;`7Vesgzb^rFMB&<^*ddX%!pfBufnzY0G`4YX9^@Hq zlO;IzX~KqP?u0Hg~~Vh)%dN0oZjy% zoyh?|zrAgR-qgXYZrk9R;l72F-1W=A(tia?pbs#wMtkVPl?d_TF7Z->9oH$B>60$j zF|#KX4^kcnq8^93rof2R_1gnM_sLkZt&WKH@mLdY&WiRAS~GJ`kMvzwV|x#b46axM ze-7QF*Wo|Zd8f>fHuP8hp)pKc`>vw*ClKWXFw86`z|~O>!{<;DL{c`$GlZ$CH=}TW z!xZs7$h*e^j`j?Gz{;^p+e+BYOXyN%C;tY!h`QFTv!j$ZzW2F^kXi`0aHLa#d$zw5?NzJl>>fm8Gb zznn20L~o%(t}{&QmyFvlt_w@<|E|KuT;*0DJRam!1rlrg+Es4(HDjn^52h8isGG#! zy@hjLyuR3Z6{~QgF4BGQjsNtGCgI}kSF{c{4O_=ayo5-+q)5EPNUZW(!UaF!9G`fJ zK)k|}cnOMF1tg&YK>|fou{!9<8s#&YrT@$tW^*C~NjwRO2!Rjw2_`-0h08#xn9heR z3m!4s-q1$eP|QaBA}G;PC`XpPoi&KgUD9T31G02E#Cz2Rlh-*`aYg;XvR*TSO_j;p zvnu1<3121`B#yLNGua2YG!!|zV-IivKhp%~ALg9$V{O7p3d(GfJmUc5J~ond#J2)| zI|RhK5fZ`t&lZI0r((wM!Ty7Tm3cuKoD|LAy!ek38U0 zKagD~VkC$!(n#T&P_SCw3`FFxx5!U9-80nUt7Bi@44KGkz?ms7^pI?7HxOk*7#Gmp z);x)hSuhDk?Q}&+6Nfr?1!(~^UG9;U@g?iC+QDQ1S0&2dpo&~#wCmo2Fk>)!z?r!V z?h5SOkf@Kwg@G#;x(DWp*)=E|I=hB(i^7HEYhcDOKEwayLW?!R+URh}&6=#!N4X|a zHqufj>dIhcl3M5LO2HMPGa}pnZt6!{ydCUJXKlBGR#ULy~2`TV1<|RmncEU9w{NI+k12*zjvu5`~k;&Cb-uq!H&XQwGOFs74&3FB9FI56L^ zlSIz2z#O->hO4+ziz8eGu5b|vp{tH$YBV5l5E`3xu+*fUbcbAK#2PI{Oq_0lzKqbR zLLmiRBiH_FtC6?7UKrJvRAU9T1GASbCG{&Bq+TF2mzmbgUXe0}c8%$)v}QLA!Ivh^ zb=zi7mw}+g>>~;hIOx5v@IOizfa^Qe2n{U)Cc9R^D~_M57595qhfJ2jL&i?;ZSjzK zR4?YYXWTO9x91(23oar~GJdiywZiZfln3|Qmc3p4qT7Ja5cx|X+Bd)Wq03<4n1-Jk z^@IFaFAa(o994}6vGDt)!Z1rLffkQ$q(1_q7D7wzZyEe=(cnj71il)Au8Mk&k|AxP zkj{9@l0w>yXi51=R_HtKT*9q;`kYKM--MSrCWgN?3XpnKVnkg znuGUmE`KEg7 zu6Z!KN+p#wu-wPK()`CqfxwPECgk#2ih;KPLiCD4d!KnQz2`nP0>R+J zcQZC`nHX)u(9xqXpF(VgghD@;{?-&UQG+SB1()+r+m02mPaa^igPM)3IYQQZkZAX8 z1ica2R|GIE31^IUAr17AV?+4LqW4mH)XyxiUekU%jax4^BjTN?P{#BzW5z^_^r?ku z=LXm*tO-L34QiIiVv~9S4QirD6W2!T1{7=h8T5ql5Yq;JQmmBm5TowQs}gDmECflJ zr=5Tn|L7*`(b6yrwo>1AJlzrNO}9h#!r)#?Ab;h4Hz z^zZPafYv-4+rH*F+HHO!s`xmrvbYC1>&9OhUS@)i1ZdGOYuF3J;Z=l2JydDWKC_Ej z0cxxzr1RQ~t;)Bd$Ec#EPoUmrP0;~MU$f>YU$qCY&u2>vYOXP+u{v3M2?sSxZA^vGQ|!Ptwx zATLP7t906+nE*#_G?bxU*`AZU#8fa!7ifkDh4t={J!LLL>Mc}TCf%P84-)Q)$~~VR z_~tXio~YLQz}LO5^wtL$?g_cWi&xX09J@WS+l#u=P`vS-J+V8v`Wr6aE`9IBxi?6{ z$XxP~heTl%J{9W09+XeO{J<=7=tJX>!l$(Z;_~cX<}k@8w*w8I-sT7$^2VD8WQ3L6 z=woTY`oi53-kr&n@Gzx#C)DJ9p{q(l6wYBwcU4dtW<3KOOZ}ensp_ccg_w(nO%N6h zfLG2Ms1qmCuy*%hB&Dt-(G5+=LI}Mc16JD78jm%|qWPxLx2mUUl{ZV{?3sFH@*RBm z!&;ly#8y7?4XQc@fHlO1C=;`E)M_DIwx)eKCe449Db!7QS_4J;mO|ojs%2|NBBD8$ z?4XPxyf|95=z6W7JW-}ov;J0JCgu_4L5}?L_>2ziAM=99Jdtfp(i?~~b7Oq*rejTX zV_5odWuD|#m-)JNDSNpy?A8$aRs)JU?xIeNHi$ShM%&z2)+wkPYbW1;71rB<;RI5S zUpiNsL7|L3K_RVDTt309QeqT-ZIEn6*5MQ2-J9q5Ra7ClJbk>zYam}H>H?RES76LW z*&jieegc*GuunO6aK57BQk$03fKmcs?CT0uk^L0`NM))GSg{iCU*FEaeW+k9uDeX~ zE_yUF>@b-9clk_t#hXe0@29d^PilY`%Z~n9NJgwbhn9YMt+JwCdCWT_gJxZS`HHGu z2GYKz?5`??NBwd-nzzl^pm=xFm%tIcpupEbdqh9rnG?Bwl~0SdU_KD8*T!3TKir&M zy1q$lBFJwzdqPO z&m_O0m}9)g#5b}_?Qe|xg%ik6rfrAQ9Fgn0-G2^xvdSSM*{1mhIizY5Eps_L5E}_) zxJszTmSV zrJ|p33f^Ihd70{Kds3}FV-49}5?kj|iPqK z2XdfuL>ph|jjI-iHWT$1vUcO*ZbAS6Ihf77c#HDB?wKEr~Iz1nW7)_!Mu> zjvlfbJ~fD>0njJ_7Y*keLy^)iSjC&C4GrGcf2~vpA`7S2rd1t$GK9H=x7y=H@DCl{ zyDc&gOcmzpA}hGfKmAiX%=s!JoQ{m8p27atg;Mu@XH7j^sRi&Me>2e9mM!hd3SNNJ zvC5&+&u*t?7mV=+Yc{FR&ly!cJg6a=Ze;IT6A_&~8SeezgD1brrnNd-SSZuS#}tF- z0!vbM1*UD#I$%k+d)D0dH3NKyk$&mjaWRNOcWQ{%VfRvnCevYzh(#cR4SlxHj!qgA zieQM8@B^AgDjP(y%B!9QTsdS>rTuACJrXbMC4wJ-^I6-dAB^$kP1-1Rhi-~Pt?g6ryazbbn;^Y;hp$X zJKvqUb?LbIgTgT1)3AOdEtxuIPOPbh;&GpSsw{_0Xt!w-2^~M_@mMe*T)T7N{-t~L z+K-3~L7PZ{=ib{9Bat$3LzwY+u0Sy8e1?yaqD-&k!pk&4i^5 zTc_%pFZSXRJ_8ewx%%DEFK*C3Wgs1bB`gF<4`y5NZe^QT&aOxbX%i8h}4D8SVt3|F|P4DHlCCxLmg@ zcM`5#*k}T~`efL+kY@uoHy|z%AUb{$tqf65)==OW?C_8-cH(c1Z4$><$NQUoD65d%AJh&O7N9E|=K%L}XQs zltYgitTr(LkCMd~eYx=OWNZq>r?JJYQ}H-myai+f`|!NkfdWk;uU9N%cR}WsVtVP{ zvBTRD#d^wr<4)2Qpp_9dhHqn9Uv5K$RU3k`?+uw-HECTpMI|r2hs;+WHZ9XV+@{&# zFB_69moXK2akdp8o@kwe)p*H|3o@&nKA>$26c_|PafD3zagT!_3|wW{@HK#JWG?93m%D$SM!HTb~5*zERU)#}hKj0}Ec#iI5~%Cwc?jtV2#nkNc* zMR)?IeyUNSkgQ*WCb&__0_1UTb+K8$Ng94t91^ROk_mNF2eCL(eu~Hj8XY;ai(Cgk zu5s;cmA3Pu-BD$J2iO2QjVg@2lHJI(!y@P@qIZT}Ul50hq^zqKTS@t2HGymQg zx)BwEeaKuaxCczD@CN20(re~V>g63yq<+0YJA#`#lD-~Uw@Ic9(m3L75}XWnzj{kw zL(EQsK@w+NuXaSvHDX7!T&su_ys~EXwS+zesj~^yB0l-SaftHd%eFKoUY(o1P@Xkz zyp*>bH{F!7dcve%0ySMwdb=38*Cl>!MFVZXwKM2{7zFnRqT>qS@nV34{JK;?14lt@ zqn~>DBkV02PSFz#TZS0X^85eaXQFZq0Wy^2esR zv;cYNmT&~Uo4#vtT-Vj8@0rRLu(x*Q>&8PPKWwxxB4(I7t>M?91oXNj^B-_zV*! zry*d%s78Xm4q(pNSmPoWxk;FJreSfXih=>Ss-g$5a?lgU;h-nD%Q3F9#@2#<#>A_V zvVs)v59nW_4z~-{WWYLIt>1#yC?Kb*c_l6d{^~=+zFw7 z8Jm0+V*kPL0P_>kO~t-K%N1ztTgS<_|AjHRMWFDWfM^CKLsE;-?%O&6d|-)l22 zH!rj?KX2AybkpB=u=MODnBYYBH+x|-ZnoNE_h8a2)7nGyz_LzmE!5l&v3!Gd7vF}Q z9qZhM0Zi~EZr$QMe~E2R6QBD#d%$6lx;5N6qGbm7G#-9g_jv!IiGyn}xxcBxy|6kY zsuJRzh>4G_S2{$x)P6Gtp1i!On?f-MgXwtx@pE`zaqfGD>AGyK&;p;NR&WZMZd{2Y8%eI8WpRJHKHYkDnN%c>_5fM$*gn zfC{`ZB2TC(tm_4G+`Evc+VK~ABUv75)hYLYP#t#8QSSu8+=Dz9jI3Q`=;K)>eC2tp z_OfJ`TH)f(DZZLdi|cRrV4qaOe_k^#a+J<7iF<^BzY_AD5tnJ z%FS!NQI{n0-u#>cd@5<5gP&l|iod*t&dp&4qS<*^pN)0?!q}1j5>|V+TGdHO1Tav~Xz` z9`$9fo39pM0mWJx?Qz&>1CvBzOKwA92LG~VCUNduOHKA5_d{=*nVmG$bE&VryMy_5 zuD5$YelT^dzq#zPQ=yOaiRII|9PQFa`=GGn`e5Jfr`s0Y%9#d38g<864%j>aU71B%qBh*_ z&5*kb_xfR|K?<6@hZbP;BAK9#P2==xnZOTCJJp?j)17*Ea$J^g8 z5>`Xa&38a3HUz#1BF|6P_~@ZPe&De$NOc~bVN=7Q4oX;AhQVVThrvxE@J6R)0#yTUgOKxtf`o*wXzQfBX+w)WX*6|8QZQ{yY2VlPD$s z&wdv2vlkB_i1?FN_WKo-g_?6_Fi|=RsJMPoit^w2sL)MTulnc7;0B@9J6w3j5j0AQn zJAs4Ze$r6eP|%P?xI{P;q8UjE@r*=PY8$?T!hXV#NjMdv8cB_Wc4}Hm8-at8q3C|f zkWDz3g1cuT|LJ5UMjB}$7R}i9g7IdbnWSX7~_iM5dv&f z^P>(mW%ZJE3vA(Dek77A(~60d#5Ab`UfkbJCq651j3bSlW$!f&BQO7U&~|y<0kCE8 zBul!Bs-&g&(8YbV9$=Q;=GtobI5-%+755{w3dySgONClULrLm6ZD*g}xbOuiYt2Sh z!HmcrGbRxg2HPzB2Em7aVV--rM7d9(SZwLlYcLNI$JH!j`iCS`5e0nJh@}@_wjw?u=?5)dxGeR3QNUojK_{U zwkiWN>dG8KE5ZkEW&n*6Y9$)YOV$W~(G~(9IY$I0r4^YNB@O#tp`wJ>OmB-nXN+5) zitc#&`1A#L^4W)82+3@P2;y;Uaxsbu*x&X-zxNyG0}!}*vC3XNV2D$p#Q6}Q(}<4Z z#+c8hs7J4$DqBvl?C4Ncd|jm9@ACe_mzR0F{ZFO)(7~c`w%tNofhdb~g?liV>zF%) z3Zd=46QdI9!x@HGr_xL}huYHXgB_rasEn|TxDHfDU`PI;QlmC7I?>(euZ=f{SEt)D z>qF~P>th{e!D)@?|#J`^x;tJ(PqWZ zPl%tP5kE*Iz9NKmNy_=+#&XHunJiwC8~lh!dIu3C0O72FNZY6|->3+MsBj5v6g37~ z)3TO7NOa?Ka{s|39xvfoVEiL;w}Snz#`|Bgi+_!$>}X)?WNPPVBW&Vi^P` zZYB3)8Mm8NP_5kC6TPmpoUS*y_24W^FDEc;mpWAWxqsEn5t^i zD0jP^?$yd<5&JNQT`Y@b5@1zO?X9Snao7~F!W|GZpB+CHh%$%#q(5=uOw_~u zBu<5E!*~(C5Lxw0LGi$aH>nKJz)3DgaB;7W=HX|z$ns%6(k{)mzodC5Gjfd_|BQni zxyOklLkS}oK{!BC!b*zcYe2$;QaYehpkkN`b%26cK<0*y4;kjr5EAW&g&`n_i9|`7 z4=_MVrBfR>%DHg_VN6UN1XOUn9$-ny*pyE!YgH06}}P=v>VL#8jMG z5oHiYGg(=-Q0Guid5W+VVnV7BWaNU}oUsNigw$L*3s>lo3`nYn5-iy(R@e9HT!`c4 zpKf=zb8wX;$ePoZT8aa^mD@&IsOkrSQHxM8?i#w2&Mp&(r z?*KU{bKXL0VeAA48?P~8C&t{diHr^CiFZ0#2@aTaW3RX~WA5?e8ePN(AMP5Wa9nFM z!~xa7#}*D4e0>}UwPWrmwd3ruD#Hdr6eM9}H~raR|Wn1L>$ z$Xv1lYNnl8BReib44F#e=~X5jE8hrs5$~jCo;t$x#$Q=xewP`%)iD}|x|K6%%_C8$ zjM&|3Ve}5(n0x}^$-vnlVljS)@iF8}eq-QGzCtJVGQMH)qTYo^^&a4L{rO3%54OU} za6vHx7UNIG(u^>Kx{1OqI0a>%1`6y~*i!v1)00+C$=YAfJNK6>eG62a6H1Bp&)a8^ zr5%$rivcDEkE~$u#Fpp;y#y2YV7KR@D+!{_-8f42K;a)psb(D;pl1IwaF3ht8oijj zjya;nv3zrxsb$a-nFdD`iW}Cy-RB4_OG5soV4K3K>=W@z_4b?Suy!)#gB4blSwW#q zZQ0J5Qb8>|3@w$Kgz0j|T*6UG!-Z#)m|P0+?Wgj|cRY676D3DoXV*jhO+3 z74r4>@l!2Ur4-InV6o}@i)l@-#7g}7w0iM0i3x9l&ZWqc`z+(7X9ZIx34H?=RhyJg zRD+-u9fZ*WnRyxb$tY~c*_ft;Y^p>-F)04&Es`0vH1$P`l@>It8^lP{tCl}`f1XG# zw|oWTAB6)Z9$ePQkv*5$LS>#jAxx;k;4*RpwW^jcK4pV)Fl_yBgJv^ znyFCKm?|F6wBNVa!6uJkKffPrw-_llJsJVgW@NdxJ^TXxY@|eiP`2kt!#Er=rM-+< zlt0@SP_6Kols0!$ip>K{g!b5UC!{IXo}aK(rE^P1Xk9@rPg2~CqGYzJHMO`_AydoO z)`9|;bSc)*Oy&>u=a(XjLR1%Z%$`l1V(U7`K*`g|S&Z<)T480QRG^nb(%I!C&?n+g zmGZw~7w$aWF?@%5d;+HvXyXR~+VUXKN1%LVo{Id&(%lCk3shsU10ecLG?e`g8QE)x zciim;*3+|^^FPhY>P3MqQiVwVVouS+2ZMN!OQgO-ZSwlefm7JhR2@m=KF~L)bHP@T zu1H_3v+Z2DL9w(P_udj&Oxz@dVB;`v1N1^reQi&+dEkZ!QsHbeqI}UVBIpEwIdjw$ zcRJvx<{`AsZ?XSTZQ6w`z&eZQgf!@A+luiDYlN$G_+?T3x)K~CiEl$m+v_(5X6&EaqKWIT|(NCUw)%iz3vQB zxyo^R#a}(epQ`kPv3u)2Xyb`|@U0Ex;x@BaHGg^QR-0dLXOHyk4gJv($lN*6f12YE zr*19TLNiBzaLdY}pxbBhEX^9-aL2jXgISlh`@8i8sxw5FP>OSC zgnRu)_n(ZQe@@ss{ExaG2KT=*!vBhu>NeJDju!tR2T9l(o7g)4_v61YAy|1saX}tg zhr$MgL|fR_u@OpKi{ItR#EM0SiboFS$|BZsMO~LjJ%Kcs zq^^MXdL1CPE3n+&-BUxrxnCCrDgzZpO1rWOEyziWF71)IV_@<|8dc_qB)=Z{ex>Ly zwUVAIfNJ&D2Oy*Et&40jTSucdOubUHy^6S#AbFFF=S8|>t^|i_44%w-lWGIKnAxE+ zLF+-SdjI71IoLZM#=}Z=jcGIAq;o7yy@pasPK)tNcT0#}-+q&ps2)M=_VwNzx{H69?Y ziL#L75o^Kz2NeclzQRy;&|}K#H1*ooSpq$dp4>oO2+9ZZuj16IuVG6uoOO$rQ$GJj zV^dJ0{&@|Rc86vtu4<=;beEQ~i|J(2jNJsLu(7A>F%p za=w(nxo^k_uRwKyYC?%#p@e5fqRL{ovaeh3``3fr7H`>*#WLTh@09!lb>-|lpHTG! z`_vY>QKEOuT%(%GrH%NK2;m8-JPUeRMPmL|5e52RWqZ?n$X1{;g8{)TDHJb?dzZ{PF z|MH>zf3Zw25Zt#Eg8oOhY-yRFg0-*4%-5XUtj=f z;qYq43e*|D%O$Rk&e}LEVYL{}Daad-T46@^zbKdtZW{LneAW|$gplnev{1^hS?zk5 zIkvzkn_EM)yr#?Q7@@Lh+dr9#*TS@pdbISYiX>50B59aEOHBdTVgmnNXQiMyeU zpXhr!49}zzi_638#I?Qx&NCth{mzUr>Rjm-`J9Y82BW$P-dsgb2=FqKy& zY=b~r%{3V+od3m+K2aQ9$i$WqnRa1FCRZALtW`mD-V92L$#mdHgMdBTM^4Q%cS(-f zxKmhixhU9+(~@+)6Q@wB0Sk&lF8iO{DFRc9>MwDWNDg zVa%4wKm!e&I@GTlrU{{CGA2c;G$Y1+(TsAp^Ban&(l|(Q)G-a0y7IwbV4+(z7`=ln z`Fi?nj)Ezx=;K|ofu*=!>zGo=m{~H(QT}a;l3{)|mcwH@L6h8}O{?UbPNz#LuTJf} zSrSJVM>+8lqM1Z;y=an8?Ko+uQ?WEbGC|GKpp1q`GYXdbcbE>Sf3xd?HCla;2=#@9 zNJzu$0A5NoA}z(+~T z?ejE_?nthi)6RO$4C@V|fCxSEdP@}zvL#%rmse}e3oAY2`NajMV15iPWsfjJGeC3s zwnE9T&g(eVP4O+evI>D z@JjU|AQNB9O^*<@`JziIdXX)m(9OuK7V5Tt71yd%25nJ8z)!_(p$1R<(X{vp?XxXO7l z8H#qnN0ir`i%kYz;U&K%r%qTxYZz*|BEmH&&%u2#~ysq@tC9v)Lf0_IJkV4ug>&}NQG~A|PkJAI3*NDR! znQ+gMV*ti5%Bt?fcReE>DmX@+V$?3iQ7~{> zk&w|}kvXgN#XSnG5*!VssHQWlSEV(go|6;#Kjl+N-QV0X0`P$#xX*z>^lATE zgQ1=gDmU^m=JUmV`5?W2FhtYX@nE+HE0bs$Ts&qA&qE>xXuY|t1v<4u)`Du6sIxWD zn0mF}Fu(GjJwq_szrv99^8Qe?eVV9Xw2hif6(irW9F6>P1`O~6QVr-@yAbdWq5{21 z-P(MtLswQg*L)MW%s2DfOpuBECjgR|I7cyN`M#Y=4WDXvz0p6G-(0VH1AcHn)1Pz) zy(06zgF;uL2#;9Bto37dr>qRKcGC5bgLcx*;fQ|if$uvi)XAW%SF3McqxsD6zsyD0 zY^oO$n9L7gnl8l5XRR!z$*(ZTf)E^cBy$2m*%1ig=CFrWECfwb2n4B-jOn{K?9i3* zZyDbsw1Ca9aE7C26c!;SvL`14#29Mt>7D)3Q!AnkD+-78P@BdnhG~5N(aKyU+Z#6> zEz0F-zI|L^TmU_;qnym^D@IWv=z6_Be;W&pU^Lm z&+0FS^S2v$6gF;ZEKA3I^P996Ht+>bPT<7o(0KGV+jp2WoK>-%ICZ>}o9Z!FdwZt} zP2l)9j?UoW=HjvqsU|&qATNCbGZ`kCdSIfsrx+yXBgira$j^d;(2AGt5K zM|7slRi4lwY;)12zwzm8Al?fD!>1qqMsU0n(g}<5!f70^& zKwl2gX@vO>M}4y}y|O*-dP#@uFy8L8((DoXCJNLU;ydqha4i+o?eO9EgyX(8%3#Mf1Y?huHEiB;3c8wKh*DVv)>GX?edl zlSgNIpO{Nx3}+~>EZUCEPgG5GuGFY{lpO=YD%GtDj8@qY>nj#*_b`Y=X=JPSv66DY~lr&%K^&t!v#&l>oYFGdi^fH*6M9(U^D6`9gQj+w6FluLNdd zrUrlj?bR*%^GmwtHM4-M5nY6J227g72{>1w13Ap@MwBQs)E!1CnaTz+n^_9^hSazP zB_Td;S;i-dP(rm&;ftmsseo{04tXsMsFyy170eEH2fmy}zDuil#=S@!1DFo9_qvi< z+^l(72zDcfCQ9ocE<~zszBz+NeZ!JgWY=A3uJ#&#Pv28{ySLn_Os?hec+0uos8kgL z)mwQndfJlz^iW89-)}7aaM}?18t-P5A5@yV+5wv8+OI18xYw(_oxCSxstBV^C?&~c z8MB1A^fca#xGG~ds}%b_%XAZ(039dV-R;CcPUhf{X(nX54RMEbb1H5$nSbk2rgWd+kaWBA?e~ zZ8u|z2_)n$`WRi9h3M{g9C$;0_x%NEkhf92!?FBult;Ub$a?$2z$rKFz{RCu{ZV_g#2e;SnQWk-)&b zaQ`YI!~36ZisoK!<_@mbjt;-&+L^_E%esrXSesdzOaA?fKkkk(e_w6SNRg_SPevEM zgx}oE0ZV6txnDV{VNTP({hic4)|y3;Z>(asD`1d%i{K+FGr91Wygg)<`({iEwox;S zncSSqv+rvgAAdcXQK>TnO_Ds58dvPMO_ns2KG1QPvm2PQT;C z&Sq6)(sU7t-xJ5z@Rw?#fOg(N9g~elpThP~lp+r72|e19uN9RDh({;uUZe?B(a~Ut zFYc9oN609b{Ze4Id8?pUcT&Q(9NAfKWF2ozOYtbK+{w1`VR$I|<9t zN&BP5IJmd6i%=)@Fa%A#LMo5m$XtXYL|#CPW^kV2(ShB z13dBh588bO7&q+`PPZ(%@Dh``_lTySys@pm=fVgv)S@>bhP*?bFpe7-gXU!;-C)6q zrM?k0?pQQ!y!3DwZn0mldI#s#yc`FNE{EfVLV3O>Pf5!1bQWvnotl-cOzYPeK?>iw z<0>-&}@O9k8veR0MSaJnor=nYYy(O`06#ydvGWHMSxz5zhO|iAt*+Kq6w&SbnFvLPg>rP9WSr(Y1#UoQU{x!sJ%L2kXi7crjrCdBVSpeJjCxq8`wdN9D8nw9Y*}r9$adjy++L`_DH~^ zc29f80S}_K8c{#_!ro|co;r)uVw z?sfnd6-PU7OGgJuJ9B$bC{+qz3d+#`ZK-97+L{f9D2iapMvf9!R@B^}ZL$biM>!)D zu~|rAM|eHnn4E}lvE{r1)wGAavLjPKi8453pQSLJPLG+YcF3u`rlP9*^l|3R>)9!- zTzee9rUVXlI|YmC5Ev7J0=xlwyJ)x;8>rhPbpEBEtDxJ)lLJtlfcx6H5!vEfwVTba zy4(E2Kp@BQtiq4d)m-h{PbPNj9)KYoaw>XGfr|RKULJLhDU0f+v;?Rujx(E zVx}um|2lD(=x|f}l@eud6&uP1S~`{8?Z9o-?6;_I-06Lt@8`-R&AM8g|pCr zmqTyvJ;5BWptVrx06)dquj~E|kCo5a-;A#2HiyS0e_iI4RlW-mc-f*yy||+$WG}B* zhJ*N!q~-)RLKmRuN;RD_WIBt@1Uo=bq;w-Vf+saCeW+qF14&Me=Id%(g52Un4}_4dC*haiOoQ zE{gI7Y_%*%jiSNEMPFe}H`l z_lV@14>ypqcocW8RlPxt$&DL8>stX;p6MTUgu678o?hR z=L-S@Xscx@d;jP;Se3Ilwb3>&;CtP82ypdH=~i6(NrCxMg}L5m8TiJV>cSIL@+$`x zaN$3HjRxH-5e)W#NPCuUpJ2Rj7U2iDCU6@D-vM7MhvZsGW${YlixM#AWbumVovAbW zC2~RVxR8rB@gknXG?4y5cw7}cj&)iBLivgT?*Z<&U~k~2dQTh(3dDa21+M=KDEuw< zt6}?lwT^f}SMqof84a>-GiY4jbr3QOP3tzfCah$%u|ny&Sy%gpy+s*p!1xiiEXDP^ zhoWfDG&(><?os=%jkkRTnnka@~Vw6 zR2{2ZqGL%xWv|0~0slg`S0~>{?4I&J%3nje(>aeM%&T&{$;B<*h|fK^B+y zPFjhfcI#oHKP|(WHh6{Pmkfozq|~v~ZUamUTAAT$FV2N6O5l0fDf5j{2dY^UhKw>s z50D{>lRusxr8M{6rpi~YT}W~U<|MH_6r60c(ueZ`-}_n$HgCHk@&V+dw0#0!D2*vX=iKCxmPoPiN6F@_#v zvLcZ3;#gS^Ri>u!t7!}Gf}$btdC^Ku&feEUC{}BL``70J9G^I9i=JlkagDGDVUL&n zuj~z|xj^Qlh(audT>Eq!DgPKi?GC+3O!5`@EnVhI*W~fB;|_0D@XxWM9XICeQ@Y_f zMPo&LpSgD;kO)Lz-$eOh=Etqh(}lpE74U%*W_tzfV1|7v=zNQzt(3x2PNrs`Smy_k zxSbm`*2-X=63?sFx>2>RV zH|LL4C80H@BbA`#zE^))x%R)+1`uzGJ36?!0UX@^RyJy$FsIbdf&rWn{eTXQin-ta z0Hs!UYx99J3f7EXsxCEn3THajE^NEXdk6ACW%zxO{;uNM&t!ssKm;xF64tS#@saK^mxA||VOhqfyAIB_RMN6%bQSm9w&?FKmZ1Y~aKB>$Y z31%`4Dv)N+r05x;HhLrR3pXmAyrPpWn(Wkx5ycfVR7O(2t>g6 zh$%5UM9J;S;6+ZLw(bfhjl+r`Ba2>Kj6?H6>U3|pme{CIiGR6LvO;o%*@AgPgpGTa zq#9w>mB>V@%XPwfTgAt%al=xv`#Ipb2EO)Q=RksoJAP$xfm$V(u5PP?_61okvs$7^TOA9%K;kM;8J_bf;SA;q#0o+>@_|cYPz+?FE*@f%b2uuDkTuOepZ2+pz;*X>GWV_SH*m5EN9=EHKySW@ccmQH zIe)tBIG#qE&iXv<@RR=6o?;`CtxH+-1grGSnRq_pY~^Ut!Ufa$0S$r_b{7hEbN+n+ zPQJ)Bt!f^sSlVLQ%!2X{n&&9_x=tEIc%%H#w9x1e&CKb?%lE@QH~20U?-iCbn3cmnE&^4U2e0I|9e@e!~ajuW8#R5H_Cwayz%={}+7xaYg+D zB_&$&t{9paZw?1@?1G9iR2g!>v_Looq9mBU^ib)*?r=m>Hd&V756Uwo3$n_dXBVL# zXw7LglT$Ss8W@~Q@D1v}AW6`gU-riYh}_rKG?uH)oM)i?5TmhlcGz^sA|C3v|0 z_;^X|F9xe?kTMq?!rF}|UKYJPiz)62A;?3q#}W%WHHYIf1QoaG=S5ZXrmp%eZdG^tFZ<=rM*L+HF3FxB>V$rb9Qo}Tx@y=M@ zaHg!$^6BwTO8r@ga|5OJPtv$z8L4nUr#y8~zQeV2O8P(!`XbgETHXrrBF>8PV#jV7h;M8`#_;8J#XH^+J!dB)j<5~Q8aBW z7ROe$DnhL;N4pOh&J)4fA;Mb$n8)|PTCAKzz7N-EZS>=qzA@g$NU=nub;xkPFgF?w zJ5CR$$nJ4g*-rDChc9=qB4wueU2CV`DWW>vzyWp{xDObn2;HlzfTr4aX@2J@pJ-O1 z5C`Pddxh7EDiJ8Fip~I^>h9u%H{xF6A4X>;c&z&&GH+PTCZr)JIg8q>a5F}cuKx6&Mo~&bL zUO<_`{y0EWb^@5C-M-lD2D>r9H=@$7Mo4VjnV%pau5Dret@>;A8oG_vY5AqjI@e1@ z{-w(CIhDUMU+p82cZsfF>>ie47A(H&u;9gk+|O!u<_+!bX6_QnJ86q+Gp=u1qVyV?#$fxrR{P- zb>fd>PJD?0ftk|hW2;AGi8(?!tLqm6xGXg$YSlZRf||N({iZp{i@@7D%83~ik&yEL5BJ3DbI1? zhhKLxrpqDQ&BBUUBlgd@u=ZnVct|(d5H~=X6Bw`CE=Q~h)WE1I;$C|o+$wuSoHJ_P zT+}@;$Hy>;i@BomWvHN07NAL=x&t=dpZ=sfq%U|Dxc0@EN z+pGKoa&a3E`k9neh-}dPY2*$rc3U0(imLJoey5V=q0Ktk`rcdbGfK=K@k0?j;TmC( ztAzspSB(B27nGU*Jxut|_~F0YI{yccH|ATF&}_dOgwhXB%b-{loEyre50f&51{ zJ`68+hw~v{+Gl5tF1-BVmO9|9A3cfVlvF*JZaPkeJ0$M~MZMprUDwK)exWV13I8}A zVuQSmqpgjR1heOe0@CQIdIjWTv3%HBx*5}Xhe(f!Way$Q$nd=8eC+%qQt4}GRbwc^OtMdc7Lj?vWW$JkAsKNeEeB8bU7jMuyxJ_SBM^K~29tEtg!# zwwtVRKPIN*9-erZ5OYv-(=6q_hLeGIg0$$zj*5O1$4P*fyKVB*fxFN-ZtIXrk$19) z$M9Z_5hvm<@f0Wb^PU^0(-5BCiK;g1af-#b^zoi6SAs_KZ4K zyj;|grH<28s57pOo&DDJVKfI;neULd2lvPSENZ6 zjk)$*L%InSV1ZzRKi`ro7s2aEi+~<8Rof4vK4WGMz%$&|O{?j8VL3p zUHU{$^a>;5-VA0R!a?4d<%;~~h&30s~XN<3hjPmdDe z=aRVS=A`(}OR3SvUE9qlJ|qV0m;sHypB+deaj<16&83op}P2{L(%2I$4@@}Y# z+v43J%1)TZyLd!opP(_W@Tso(6<%bQSI~7Hq8u8_(k;N(KX5wfLRze#PBuDBHUK7@ zCRlW1TU&$fGh&dpjT63OJ!SHdE6m8pRF5%Fsze#5stgQ>=+~R0KCcBM&(7kancGAY z(WF#FR4(pf(_$e8e9Fo4|0v^NvRLMOC5Ia>UQY2uJI7x>YzZ}NnD`J((c2HVUi3Ns z9xl*PMYLY!aFPS{uW^VgX+V6OB0G2N2Jz zEojb1^T22{B2}_DEA@F}Iv4M|kj9eIGFP^TPB+9}R_v#>uUuN1nE$ zj`&0G!BgRwqy#ea$RkFaA)L0DccyA{-Hb+|N z`-agF-m0VdX_-pQoZFB_YfXk{Uhb$=C!~$G&jG%*%9qSw(!0(t2zSDK%?K-@0Wk{l2%J;mB&0(Wq#M< z{#t|TM)jIZ+F@U}-|uF3}=$UQ&N`us*YVc6i9BnV=h@|UY ziJS$Eco<}rx1M^3=hD)1m`X1YdSIQbw$KPb=i&_8#%JeA7;gjqtX4c|)YlB!71&7C zSLCS`cnmKlCs5)%_Ncr`Jx#{5w&&MX232f}Jb|M)^Wqds9!tB5@qap&mk#9+`KtZJ z?G8FYdFPnC`JxybNoM|0{HPFM;!>H}E^n5!B(#B}BPt!f7{gb1dIbdz4#^tqX&RW@ z)MQp5YSo!;ZzNb9Ahpl!Q!L}Qgz778ccLP+z2Z5DK!22&%C{)t*#jU|{dDJiUaE6s z8LpM-^@FbGGvzpH;tX8<9--24kDQ6+A@WZQzTToXkuE=anSBJ+d5`a>E3Xp|F#vLk zE27eCOy5oNk`Z)YQ~ehm)Sb;kjugXb8 zeHj721x>gqTX8r+v48%*Ocwq>r11Y*H*+-pXxLp#bgUsD?kO}HmVB-DLbTw(IzVp-wwhb->&DlY*UVB!;d%XINw_ihiH2ZbwB3wHd$0ts0g~-a~nvnPemUXP^cCds^t+?~9Q+Z9Xd3kTWbHip$lPY}7O^8wGd> zKg+cl*#o57DhLM-RjFQji$%)igE~~s?fWpuN-u5kJDIe&GpzB6j=SDhASRA4_#Jp_ zrG$+Q5XO$&zLOOeGdz_L{61}+NZ<9IQRpUJc?cB&_`2c(VH{l8W6QFX>#)&Om6AGXI-*GW*Z zN-`bcYIYdr%XmooIz8>#Y=F$5Z(HHb4ya%ZO4EbY*5xc#bQ180m2p1FLg2GG$M>|yp{aI?B2S)_~kxXPl}fGbN}bu#9|ycV(=#TrUsZAN0C&~ zD2t!sJk8unl3?i11S&KpRJw4~X%u&@S!uB+4!B|K>NzQUwVjl6jSMlt`tt^{DhIQ?%KFa8;8Gs-6E@{4`l|iPRg-!M?=ye?L-GPr4#q_5*{KM zeDVEp_$>bL<;$mbo?v;yru;o}!Zi1f)q9b#k}!VW#}lh2E&cI^-F|(7fI`h?L~&U18Buo^|ZM z@zcv}@q@Y)YqWZcpV>?^185(yWcMDF`Aj64S|@TF!+80-oY{kA1KPvBalyXVQKXml z6kc4@U6xoGcEBzpfeDTiA)&TnvMA+IE&E~B4|aYyE&Qx?EIvA_+8uQC$+kGUK{P~`Ms%Vd8Rl&FEn)TJG*^V8)5BmH0E?iYV;Uo>`T+CO7Z1#M3@iT zv8mnk{bKx6w$akW({*+|okJ@s*aV+YG(zbCaa4E0{){FHoCC>m? z4^wBo2uB0!T08Au8taW(V68?pY~j-M0xDe7PMT<~^=~ud%vk=k(|g8$I;=49LlFOU zfkLQ4`d)UrqE_*T5;-<{Zhp0bHDv@aX{v2(nuIt6A1YPjCahXiH$Y10b6CQOIL?qT zfK8*KP<1tSzUuKb>R04UzAbV=3DLRD8;?8KM|tWOLd?6s$fw-c3vl-b$mwlqG0bF) zp|s!l?L_%NISj;aFrdc4eoeXZ3> zfK}FS!{8&n^C~2#RYM*j$}}s%YGVU-*&DJ?s@)UIQ5hUl1B;x`8Bb3xa_@iA0xDt% z8)USz0q|egP0U@!aoj&TL7Z zoMEc5M_w2+P+RKLja*mtujjCgi)Rgv2%K7JQg0Xy#y9%=aPYo`(Nb#0+VL%$V@{<@ z9iic0Xnunoa6>CkwrmhPQKNv|NP+yix40}mF)$`fM50&|n~1HdkaNPlwMt0zv*Rf_ zETR$rP!h;{pTI(}I(KoHb*bj*r3@tVIe2|ZVJAp--4IQbDM4tEWG790`=0W>me0wk zl7&Tqt;eJntmF;g`ZWN(OwxKK`OA zFGn||Qz`CxYd3^7tr@~IJjc4DIqN(nbe@Ob^M-84dikB8z>*@=|4Rr+S=)hnMgO>9 z@ZUNv3&B{x7{VBNz%Y5hIC#JiNx@9-E+z&J7A|(9Nx{$}<-HWTy+*DRyzUOdzrq^l zsANb28P_jq2$9tuHNJ_kMj9qsggLc6-Cj*_FBnz^Z?rGvGPxtXMwskxIIs5bL| z9G!_|XlVM&)by8u(JvNB8ELvEBcmjhJ4q=zspWY|>1nmZ25QL}X%02G!=qnzv-1+i zN55Qxes`jsnU$=Ek(izgiLnDe&CDpLu0JV?KC$kc>fNX}+sm0E=`2`=)@H{kwR^KyPjsba(_18veU@i2kQ| z{v;9i1bJnUJqVlOK}I(vf&=gGIzz+1D&?1}tSqb&p@%NGpnJ!#Ow*8HN}^WvR!VXm z-}ynd!JVQWX|K`=`*Cu%5W(RW)vlcYSOnvpn3JEx#m!2qp8VEItXei7h%slsH3<`0T+3?vWJl0EK&rM8 z8iZ0$^D7&*uKV9OFSe2E65>(0E96r&Az?DRO%_%cMY4TD5L?Fk*{QWfq+_l1foVXO zL_4jicsf?-Q(wwQTDu=n8ekBS&8AvrN}jcRo>Zssd&PiFahzSOarbqhA@|Gxq&E+6 zeu-+FY$XwLaLzp<-hs*OyLjoO)H+iKD)V%FdV9#@c*tE3jb@(Ag-c(83G+0 z?k_ciHRJF{Sr4b44Vwlx2uFYxMVTD7 zM-<12U=t-IJ@kVqs&ga4{^w|*S zisgpV9RzWL#=i!bx6e}@Jd*C{rr(sv#c|C_qesB?V)G1-yIXgUy)%Kix2rNS%GYd)IW{wTRihu6FbNsm2FN3~r_Xz5`o>K%3B8 z>Gli3SArCkKboL9%W_EuU#y?p@=8?PhBt!7+e?+y1*T6tTc;V!vWzgH1WWq`<-~ zD{VhWF-z4DW4NMPfFRII!Z5qBtnoFUC3!(qLx`|NbxdAUDIs zg+eKPq&6?1N@HP@A*n+0hz|4x#v}wK1Vw;DrR(4X6^uaaH$ixlWFpb@Pk#wwfEdgs zX+bpj-E@9P!v+7%bUOT{JV^c|4^a6NsLbE(-(-@LsHhCViUKSPto~5|TNu7M6ms#+ zi7Y$;st72dD3GGIJXEsLY}oY1iTnl@knHTi`SHw!h0A(XAj5Mr!&>y zz?iOw~u>)5O1fszBUxqCymenJ;;dzst{e91v3Fa5VF8mDrA`e}K(VIu7^ zRa~gds3}J2?dro4qd2N;KwQkw1K<#Fx9AN4#fDO2@;(4!AMDB?M8E~X`u&VM1wO4> zph<9Yel|%~eF_QYic&n?BAOYsC#nI*8UY&Vd7d(V0qNL-;7{}(O)_Ji*$Z7@*1W{3xwf5MFaUS}ns*5(=2XOyn z9(pn%2+|H}?8NnpH2TJ)0wxvIaE6>t`Tl2yb;!DA>o7k-Uhzz8)}vkYk}J1+vsJKLFE8)&2wq)`E} zsIksJJ?@^uld_ku^@aY6pfWfbMg&4FDl@p_7km_u6wi>c3D>^A}Y{LcQb&u^fy z_uD~{h$nO!96An7cEz$>x^AFbGe3i8QhVB6BW-cthPZb15JnCac>z9x$$5ne68r(cl!JLEzy z%W8kg(;)d;LytZ5oXvSk@QP9$<7lTP|L$Y{8rntB+=)uDPR@BOQi+WfdA45p__8y{ z0`}&__7tw|k7k{ku&F@CsSk*DxOt7qzHF>%)tr94A7isKFx2y4224&KH1gMD1$u%p zv9h<{iEC!{1ldMfaw#(jcQ3`+xl{lpF*vIWivdXTcyu~T`J`2(BW$0#f!>>#^&-qi z9jX5F=SO~f5_um`y#=bUYsdjUG$F!bB(boN*4Tj3&uB}=htih83z;GP=kZ2`>KR&L zueXjWLJPoJYRw7)uV|ds*B|rc-Ac~W^!D4AU&J>?P20N79li}B({5m^G=>|#g1%N3_3lUZ zr!Yj4rZ)SDTTr2CfFKF_q&(m9K~DXsIQmWTNEm}weS?9Iw&+*lChR32WkCwgu3R?R zX@OxGMY9@74bDm5~_pYLS6;uR8p{zi;lK<|M zf;z1J%`Z`KGzI))B%)-@27IsxO4v-Xb%2@*vMP29@~k-utXhzA{VLh;Nq;A>M-N+2 z1R1l&oCDj{V*2Bxckcxm4g;G&?}ao$Q7~03B;W(``q4nu3`f3qL3A+a1DC z+jw|k7(|z(H|=}(1Xx9<)T(%vmJ6k^PMUx>8m$(kA)&NjmI#gUnE9+bK|rnBaHd#e zBzHAGs>QD}Qy0{VYuHetRTsl7sO9&e{$)fjaqsn7_Gj;iq<(kF6seoIn?VOV06qWx z=zk{JKhI)~iJwsdc^t!^!R^55x3{Ec@A7*91v`P^Mt|7g)0 zN(|u^j_;-C2y9Z&3;(IVwx0S7;T{zhnL-%leTf6femZr`gTu}h_HV|F$H>z13M94t zzcgm#e*z82nNV zxR`yn0Hd4u64=_8`Rz-UfM6|jVvYokr|m2uP;JLm9L^yDZGoF?c<;w1%Y!V(gURgI z>*opWNs^dTI*9h85lRCr6zq7EFPc^|kyhi<#@67r5Nr^QM*H2P?2{KBRY*-*>j2o) z++$y#(t@^=jK~cx{ac73{u%z(ISl6(Kx_274U4ZnQx!4GM(r9%#H(FQ22Dw1lvvVB8o05WuR3rO%OH;iR)YTrNsg)MRD#{WB zC3tnONXZ1lx5KjtBw7;@#E6RIUmiPk_#WQvg+pHb*0RAGxEHh{pyBZwAj%nC_P9)d# z<$98Bs9-!XST+giGYB>7-?OuF<3kA{$qiH-z1u;=bO(hIw1u{kjF& zpEx^XLKfbY$i#7X1wZQNKLxx{)xmAeD&AGZwKd0kVw5cN%tj`fn{B+HTL>en3(kL| zHgGO}8m`!aJvQf8`Fd}0?_T^W%56m`}8Q3Lz!ch}N$v*g+rWB{A~%>X+5DMUx} zCoEf;+c}xLxH3zaTL9ec{^VjNZ76|8#E#4~H&?a5wg$uc2N7eSXm!kg;3%$XD4>H! zMQ5IL<4+zk_h9Fbx+RQe?n5|=p)xpX=?%HuM#q`4J8gxml9yS?$jP{Q&Wq!{*}H$! zmKhLWIB?43{4gDu1v80X{~^%&3nRogU#_^llv+x~Z^;_k#T}Rl@#D|Sy zL><*!!@4Oxci9SDgZioehm>7bSmM%%UO@t|A>rr?PTT7sRMa=Y(ioO=} zjD_j6Rb-_WW_lLXYKN( z)s;rnpXFhST)S|~CcSY)HtT6*^%}zEyFCqpmzVB^)B1E?=?BS1*Dc@Es!n!`mf#`B zSx6Ue_qi&Hm0G%vICjPL-8~!nxvaNGrIWb{sjxJ9y?MZ?=fpq1VYv!S4lYhzL-;`Z ztgcvKQ3-9%xI=(Os)|_&uLkJo)=7xrX?k=Fl1Y6s%`BE9e}k<;!33is4RZ_t3&0%> z1_y&Cq2nZQZSM?c@8e~Eh90E`E%X><#dp~3V?_?3DNq=3P8sHv6e6l$3tZrNzkQGL z_Gw2UjfeQ69{{KTho-p$&*0hafyoX_aCm^183Om^i8V0< zTYnDT{ap|K!HNpju5PmSPIiB|t1;^Gj`*M|^;%-~26k&TafpZ{juOR_6~$7x?{lT^ z+wI|*91s;@O+@Dgd)>?M;%cr}D5}3*KS0)3crocf!4arY4C48N%V<*igQuX#Z)aaG zDy?&zGxWM13iP^O@E*QBU7qKm4kB(wo8Xjb3Sdium63bl&9HZWxiU%KR$!KLN>xVq z$Tt#ip<}ioPjJU34%`tKfCfe(%F{7bc!d!zAV$#{X(nho>yp^vo9m*7e|Nw`60hqj zEvXv|)_2AlJ#x_cR?dM~bwN0t(R$1T4~4#93sHcOQiyRhlhJBWo3>oiWK*qQjH|p) zrzE>Yqwh1dGRt0jnttl8eK48X^(6t4^Y~&8-b$)rMGG!lwwbOGv8%W)ewB$)AQt%T znNYWuW1p$D&u?Xg-JrgB2UbFEeoD4$fAi`h6;nmFNug(FYPDUKyi ztSMfijCJ~OC@=|BB{7lDu3#cJU^{Bv9&C=}-Cetbbk{YGO0UzCXQJH!5fMwb$1`lP z#55lBabwC@*tlYCXmwsnRLii*1VP~<_XWvXvqXJ?7_|SJ;qf-h4Krxx6BCkq@RI3R zqPcaK;hvqO@1BNYUF|9I^=Pa1faN%fcKEP-!Kc@p28J!EQ=-a@%LO;G#=VUeL?QOr z`6fJI{yh$q7sxObS&6N8qO4p#r=NwpTzOS?3bBz8w*~c9 zVGinLiJB|@YdH)*xq^n-NQaLLO0a!wq)fq0Bpgpad?59?LY?zdaD5DAppL()s72G9 zJ@t*M6c&7<-F;zS9R$01QUiQ5JYkf$;(fY;hPkGkx~Hf6f&U}jVdj=WHun@ooy$2L zS6_^D&hU`S@Ku_i|NZp_6@s9Co@M{xvGw&}ue~%~?i;t5&uXvd@aL}|Uf4s2uto;6 zymqk#I@~4g5|YH=Oq0z#e{8}1BAFn3`YfON4f3czuJk$Tib(gZ^jE-WA+boAK%&yD z2OM-{I0=}(0eMCV`&nv2PU2uq4?#X*zQ6|@)*k1&4zk5FazQ~}K zgoyMDD2J8zmxkfL5#&D%gX=%7LW{P%6S_8*VBJ@>i9&nGVI2KLR3aF=$9GhufxvyV2TF7Q+-8sw#64_F zO2o$21{05PAWj@QTPw-9s%1)-@KSo_q*@GqV&|#a$wszy8jTv+zj3yfD#2ZF+WbT% zP_PpWjKX7r^GdX^p(DmdK?Ucu*hdNi-VCJ0l*McoCuE)wj#;8tRQO*I$P}YJl7egd zj__Ux#>Zwr+zvz}dl#|@I#|r$?8*APoDUqIX?Y#Kb@*KZ9)A`W$$XzZrC}OJrUXxM|NluH>l>E z{#wh2kKtnc&G0L!2E4C4<)|F~2DWAbu|C0Wvj2e2->Nbbu;j$&da(9;!8D}0C7y$MWUr9yku zt&PEFl_u*IXGgc7%9AP6ao&>YjL%^~rY?@fm-9r;n5OVGqu>);DJBohkJYkUY=F#i zm*@)<>bTOkL)GaKuprc*t1S}Gtmnv?cav?x?s7jHa6sDQqe3yApHRMJR#3`JmPX!V zEn|OF5hBb~8bM2HA~j_dixrD7o6lxTEC^MwQxA3=VW{CE_0emWS4h`a!WzXLKLK@E+ zA}5;g4oW5SXcdyck)7NB9O>@g@e9vQ$iUyR`;zf`iLIBqfILE~_~@J__{>8j6RvR+ zyuwvv(F!{K5Y9C$uWoA&zZQPj5bnUdzgsL_`}n*XepnsOB9>(t_6FOht1@_wuCH4$ z-4oU|Y182+4~x2i>x6zP?B+wfZJ7@tAzGR0`CdxruRx@`=#-PjgH5TgSs!mCziyPn z9A5Zod4w=_i*IvrtcxCn5 zU+?>}-V;!l|B#Jg%#z1Uds9bq&P&bX<{{ALC$v|1xrA9uf34@?H{0#9|OSZIEJ{(f#RX?*$ zea0SBfj-2;7W?8wS^;c4Z@AuEq*4PavWo!4D#O7q9`SR3TnF+Q4~vx%#7F17cKNgY z*j|$m8&|yK5gVnF&E2GaY}EE4RUZ$G=ebYOa&)g@R{}F`z0we)wHBWqJ-xnd7=$dd z(uE*+?d1gBs}y}0%&1g7zDgl*m}scnztVZ%vp>rq%}B^hM@Hg(aPiuLVTG*a{D7lz z&2uvNe;9km@XGpS?YCpw>~w6~wryJ-+nBL!+vs#`+fK)}ot!*tt-bfVp7ZW?&UMXC zfZx~DFa3_o zWZ6RnJJ5suFzYP|=gaUHkFc`4x9k~H1|`q191}y)gO*hr5kilKxT-M;0@SSKrc=Yt zZhaqM^K=M@F{nc-%;9`>roP4Ox_z|QoYA2iun}y{ju@}uc#{p4iD$t>n3DoznLrVO zk?Kk;E)%MydQl#`@GaU`L+#hDb*t49kt`Zm(iP*0Ckq2`%%Q)LP%r6Y-EomGcS_xI z+8(ZOEFkK0oa3OaO$cOU3GN44EBl)|Yj;?`j86lfLYKcgn&gJMPWQkd)vWYrDN$e6 z5Y@AV)6Ece4vPMG-O*PGy?7 zKIaXU5nku-M<)a)5A6`~Zx{9-j=m55WMLLB^sN=DvTf1|$lSz+Mf8IIg9GHcj=$N4 zv-JYia&qFLOF)ryLDCghsiu8wnsU^`X~MO#(v^s3uH<46af8^J#B-$dQm2R2jbsw5 zaLvYkzC)&cfc5sxN))5k#iozjcW=DF9{)7P*ROb{8qE61&SFi8u#iJE&mRiPXA%tF zu5xSZA3W(lcZEJcUq|Zxf8&VUNqYiye>2e-%0wR9|_z5N2 z8qGhlCE_5*lc3Qvk?Oi=F-f<W|%c`2ckV`h1gSMna=&pT*%zyv{6+uDUz${otAU z(i(EhO^gjaz$;xxv;Hlq!YJHIE3uej&;CZm|YPB zh5)0y3(PfX-Zyne`k1$~GOryuHv%p-J0{VqJb!X;p53%sYwWg_D9|3XS<7J6;tA4{=hzf z$xiE_df+evUQYS);auh-e~a({O?xmtKt)@ncHH)>c3Dl{3^;|BJX>7R>5dEl9-|J2 zK9EOM$Lgq4E8bw!k;6F_(wUlU*yLu`>g4}%kX|;0%JY3EPB6d|2o=VlFj^oJCSMvi zO4cK+QxX+yz-b?+-;5C$1}KrhTX4S##EYR{Pcd7~GE%L)L>$sfBwi<6Cq1j5w$Cp{bePw)p|E5g&d&c))4psjpPWrEmPu9T3#PQ3u z%H&_&Y2tr$+uZ(Tdy=I3`cugn_0y}%d;Q^|J}Md*WY7plYpL2A*4;UD%S~kvlM2C| z!u5PZ^=NhWPjB(Hn(s7blmJ{RCbDm87&b&+9|rq(|Nc$p^r!GJ(ND-IhHOXA-#w~u zv@2g@ahDu9w{L&e=srKLSaCzQEYK?ImLgP^hlmIF7)W2!?n;H>Yv;%I2oiWnLs0K3 zrfbzizS$$dGx6o;wkGmi9f)ucm(1=d_jm_Yay6J59l^J4y58#jsd zEXZZ1I{bAX)E(cicW)SRDIu_RWLGgiK{WRvkh{4W9AZ4EH7G{j>!3-JNLvHb3`98i z@~Khv<|=;3Dc~3JCFNlz^{E@cxo6RH(ZIEs z-7pa&*wt__gJwaPmCckT1|L_TS~$uq;yI{}%*5ty-KEM%8xE&dN(f@n%3L%8K%mJI zgt#~jaDm(KY6XYG#!h2q(1-wE{b-RY{{kQZJB*@Myw#sQQ9JHaR*8=SInKC^sTl#{wOZ|fc8g5Y_A*aFgGq|jfQNrkM zi$LeMekIFbN(H-ottGNLZsY*vA~vMzA{&o*N=q#0W`1!ryhonfnJbC&r28Z$(Sc-P z1D26(!Fi&^ceNQZ;Hz0ao9|CGGY2xPdRC5_TKVy8OFND2=q2wY7l#`F{t}ZhH=HX( zo}a{JIhDlMfN7af`DRcoWD@pNcA;owZR(a|`4&-C;Ed4fAi*8b_8S@Hk>3hbn>~up zv?l{Bl}Jk?hD=S%PaHVDFh*@-wc9vXiCYF2G(BV5G+%zbR6RrMJsfsVE2R^eEl-%V z_Auqma9vNJWBsT){c=diIeAK6(Gxo`_3PoKc<-FvR(SmoLTp>Dz`>^kGwv8Fc`>!%p9Zg z!~1J;LuhQsl$`kXBAHo*7YJOy)e_WUt$jc#x8uagqG-O(S!*Xi5H7+z zyXwOO4e|Nl`PrOPI@p84{R)Ra+Bu70&9@ghh^i+;7jVqN5;BgZ!N(-tKxD7U&_lb- zU5QVMK&%Q;qGlsA0=3{t?ZI=p8-u$Qz~OFXr2=jy1Iu@G5<_x_eFC_o)A5!qgscf<_2B1| zmz3PUJHzf|_Sd(3;{<~3CQB%EZzS|HL+@q^+jj(#1|~=D7LiQnwPo$baT@#va^?&X zA!u@mrc_!o#%a5e>e0$TC8fIA-W2A#+V7bY=Blb}CX(|DzTuG=H0j1Y`o=x`4*}gY zczbB97nIJ8$yr>Aop@(}(v8Z|4a=zW?|a#`K<9oHL3NQYm#@<2f6QMU%lM?cf0fjg zVgAqN+TRbCzw4d;x5MS1)x;zfEhQy2)DKpU9~khVNb{lOnv@cupmq1a=D$LdleORo zQ#5&q#X7|@CC`OL>4 z*sE6W;72|ykiofbWn%0qy6M8BIHV@_B|^;kSknZ^Ep8EMUu_w+q{Z$;C^|?~Gnet~ z3iJjR`jyZbEx!cN@AfX4h0wOn35nfsN5La;r$oISi!eNe$O(adB}$;p;JM&p7MA@2?R??C-u8#nY zOYskv_5i001t(69>0mD(DdFGh9$ZfT4rHNMr8j2rrExR@tEndvLhIEm*~X??`WQ|V@<{}oh6asK0be+Tb1~DK??XoP4fxJ7IY?@t>@yf z8u})u=a1cDrGuHNI~Nm7wj+)63Og=>9mWAQ`zv9LJQ_v!y&sN0ZM5@S9FW8ZpOc$? z+H9an1C%nCX;$1zvR)o_51u_u9_LMLL`Y_iU>b40nI+U8c9K7SbX#<}reNMwWgzZP zwfu4sush%u8+*rECUjHBA`Zh+>t-Es5`t7I;XdUV7lvvHp3#3o_UfokEMLGVNjl<6 z_Zr5FB2b9~F(9j@YF@aQC9_PxNLEz%&!Ja@#<8y`j=caLUeV`Iz-`wgx36f9FDxjI z88lBclUwk#Tb`unw68Z1nq4~Zra^hbiNDbL#FKlQ1Jg^sfEPhBQ+j#roJvydtH7+g zNOW%ubgxiy2-|j0?J--7N^NT(oxmqQg=`S44|Z@!53(aGc}CBu9!GP5bg8b$4!frP zx@IDM-5fy0r2G=NQ*8U9?Hz&qZAnVo{j}C&S_8r>sPOl7xA)*FZDk+FrrWl*9bhbl zK~6-7fDLg147oIg5p4`1em&hJt)CfasB-L+ZJ^egfDKa6*X0mx4##^)m1$iuHrrS>rzsjVhm*5`%|(!`nt^8@3PGMM)YvzEB)~V$JLtjATCdlJ2Fy9 zN4do1zDjNP+QpZ;twV+XP;W+1-A8p(iUu>@Png~h7t}A~Waq2yB{+d{8rwE=2=nzL(V5qIa|2cHkp>9Qm5_pnkigcB2^c6GKGkss*zo?NO4$pG=!7+o=9oj zgmM4*5AFKI(E`8C*CxIK{hu~*?*Ao6{YSIkLBQC+?k~@y|1Jdo)gk)V!+$l2RHT%? zypKL?K@yW8(cFiXav|Z+H1$GnkQEv=uYed&XlYzm>3{IYbJp7LkAB~Zlrqb-@9TvK zXtvuQP4eyT_<*`!XATG=Xq$D0XClf}9u!;z z{g%e+)jv(~c)>bZ>yDV@SVI!;#Q$pGtT0JaefIb!I#40;E6*xz-B0T@+yGA!6QBJq z2?{HQluP#upFqNqzlk$cj^zEsKJx*t(3yjsV7&oq5#`gbTWghp89IYKP82a-)M6>f zG-YnvVH8yNW@nB(iF8D8w<*f(4$ZYvXjKrZZjg&VM0ydQ(2nu2*wow%qSDK}f8BrYOxSXhttGZHoak^-G%=Ub6 zylC;b-XNRm4bXfsh62CVAp=~sdU;RzUyeOZ0e^^eBY?iicgKLfsdvkPz9|pj$hL>& za9lgK@9!n)v0v4|zs>slI_3k{RJdsk>OnoZl4(C7Kzt|-_?A8Wgz%}_@x^_L3ja*X za>aeB3g0Yy>Og@pd4M2G-f@QbmTnNrCjTvADeQq3YgP+Qh|fXks#u;`dkHF*}c9C3$9$^yLw zY#g0lta(z!BAY&wjtWMd{H8Xju{IHX#t=vflp3v8x=0H2mt?mCkZw3en z0*N9UcuSWZL>mk{5egj%8p?D1l4%vnU!0{A0_X6n$GPymcZ0%&=w}k7cZ>SmGs~wD zq<5GCR!|}L>Po{HF{kzctsO0Oo@!=}7(ELf)2_>E7&pNn&N^PqxXZ%iR^dUrP9jpuFlM?SRsrFAb435Yg!M(`HrqeR%1_ zC%2~*+~`xsQpPH4@^{K1bm&V)6on)Mk-bj13WJ7GP>piJ2C`nXJ>ccbdgIg&r2`O%lR!+GL5a_~} z0p<7x#Z(cFr8&8_<3WgJ;)MVEv{RUI(9BFZ>T#8~#|7M>mNG)0#_ThNu`F6WC@Tq* zP+Jj{%FM)UN?;?0UYG)IFI!7B^5rQo$YQ*@r8@?uoOVy#fR%>+WB#ptALGFnt6`Kg zoxa2}9}^MX#NX>|1#ItDP_)sUGBh2S2D+EDN@TlCkY-S1O_@Pmw|k-@oqZ>0VxE6H ztR=X36hSc~ZVM%7*cQSWI+z=nX4{-`22En{t+i*Cq&WI10fgGaiZjMc1x?1dZ&};a zC=CTy+M}6`Yc6u*Al6n^4LxE+d(_=|GWXKhBkfk!w~OxJ*6})lQR!D#S&@hxWq`jO zG3l|Zj4!=GGI5gtGy3){@qJw|U7-3borL>L|FHU)bg6M8kqVQP(p_OTN_lv(8DMp_*6 z8=^?GqEOwZx;y8b%(a|8w|_L71VmwHoli)Uq`c4pEodXVAr%AE*bM1 z$%ka$`xAA7*|BP^6P0=^+QFANnih_%Y)znzc~xe~{E3@a?8-O|)0Hd3#FKagUv5c0 zxrJF^01E05HbPfl`f#UipI83a7r%`Q}%8`#s zdg&l+1{wMoNUwCpP6D28$&FDvgxj02DkSRSI)mENNsfHybiwnsEPX?KnylZUlveTw zhCHO{*NnLmJRw$Yq%*e^1nylC;*3T5h$ z_0j4)H^J{$!b)rbX6;OHy4R%_2oGRzA~Nv!der)R9cBbra&C&PL1{2l9@l>Rokoo3 z34k^GNcqo?bW-~#XY7map%uILFyY2L+0sfxOTn_KcH>>=l|P~dr^nw?GUk&3YS+jH z1BLKQrfvB!4qRt2V4mK^Ad5PX3g3-MdOPK9_z!(j#R?Ljp#$#|IEV0!x833$9V7(8 z?a_-Ps}4;KCCWj*WLA2dAL1n!F`&IY8Ml+{b5X&#>9k0P44!;))Q;~dIAdN^o-cDt znPF)s2lZpL34W-vXFKCi)l6_^*UU>X%68zp_4;YnCr2q%?q_UgIV$1-!be;0xxEdP@LF)ua_x~u{pBm;uPKE z>)x-=Pq9Uj-STR<%{Wc8*^iSZTwbjkd9G@5t@w(9q%KVrtwvcVIOR#}FTnBki0h0^ zW{OXATt-5>U8}M?_UZArov&958?LKyL3pv99P1j23gD!;`>%Ma zkP;q1AIhpIV0B>FdNL-{bLN;NoCsphRDYLz5xfqFW_oX4HhTaDvvi=8UMFiHYCavM z+L+bUE0k))`Hks$eImi)ns6?-Yl?#@Gx!Qe0il7O!B_aIF8vsUY+tn3*`a~}f&4z` zSQq>gL6-q%XtX>z{{t!VB9Gjt^v&dLQ&2Z#mT#yA3YrAMmFZ<`lGn$J5sp+7S?-}< zNtaH_#4#jpEaAdoKnNV+RvRZIM?m)W{=qbnQ2Wtmf^$SxOSyBkF(zxHtD-@~p|FU( zeh~8p6eJ?fT7p(u-w^FP%xR?>1(CeCg)sE-X65npp;+@?0{A(Na>$8`$?&`lpSM2*j; zCwTah12%fi`&ex@U_z?I0E1sQo6}e>$s+7qiJu}+dc_%(w8cHIf0>y)Z{+Lh;MOV^ zAiTqjenW*L0BhlmEg+4>jQ&*H^WxxazSt@{Oo0j$ZZV(yRvPv9LU$e7fQJ4~rvIUK zpbouu#NI2a^>X;Rc@MMES>PIGj6pR+wsFGn6C+pV6`OUWiwoN{ctsH|NwP(%X<0X{ z6v=_QX^)Y;QP}`UjmeJ_>WJFKdQ6n`musXI(+(I7_|P-uCj4YL5Go*GV=lW$90=_IQFu*#5ztSwHwrfdE@r^}~`wwit~yk^A|xTFHOcr2qeU8%Sg}VP)^%F@PAlQxc3euUc=6LHVvgVmD-F z)=T6ZusxYE8eAnR*gjk25ZW`1jo;|QI5yy7)IA3@Ytur~>dGimQ@0z{;193{&ne&x zHa3OmS8y!Z&L4!(3=(Y9tF z+m_VV)K@xzPNhh;LT}44Lvz=sXrdx#-e;KTNx0nLGzrj9QSw$p93z z1vrR{#XV-Ns1IG`Wj80<60xFIAWqOHG@o@m)hQkyoAAjU8UOwlW*p-r7T?vIVx^#*)i<7TS~W<-ZA zmn-=aHubQMp~g9F-A#^-GxTw36s1klBE)7zjw|j)aq?1_&w~LGeOWw(?&g*q7p#e_ ze%jJGJ$d;-wbn1YeZJUib$5q81ukEhnG%_}6t@Z*hkn~oTeBZ$)Il3fnzCttN%mWq zOwC-^<+QGS+;=>P#Y+X5%Y4x~{V2l$&H=!LB*kG608bLDHHo5GH!a*}AUKr~Pb^V# zy?DHv!36z6#dKG|1YR`B-AytrCM8kisi_|GC&k!R)6T%pL`zB~=Jc}40uD(Y8imCK zwH5x;#HdCUi(INCnMSDgIl9=hS|sl?!h_0<)($TR`grFmZu zTf3-Uv;A&H>RHo^pGkRx^{s=gt%FUg{PZ9-CEl19s|rtHObe^}EN5nTB6N?B1zTi$ zVUK_48D611zL~J$j8Qw z_`zMJyOrHNZ%I=lQIu{Q&b2@e>3A4Ls81s;WD@%fpC`x>FLr8$QL@07y_h8(!NszF z!L6w`B$cMMVyJzMMp{JyP9r;$Yl2($nl^8?y>mAfuekSFTGs1|FjYA2ly<;Po>HD> zh1^I|(5!%z!`@&usSp&&Leo|pW!SCW;3%*JAo%q*zv$YodDj^u}JE_kW_{< zV{O!HQo!n&FmZqlxo=|n0ll`9ky_Rs{yh4dy-atk4rVW>m0}U-qLZ3pan-R_QpB1! zCY%9xl`5V&N1)OMbAK>X+<;~Wc>%laN1UetrcLIJ(&9T@>8Ms}`C9<>1y`zY-)`vX$OYe?iBlGwU=t!tCv0|L~zy-aqfI?tc1+10Af##I` zN%pzq_IKsc+$C=B6fT~;u6r*Y!6Ti`Q)oT-Ug{<0%-;HdQ*7I~`CH?G)0V0cL81|*Ataj%?s{q@&>``4eh0Nx z?mKC5)e__+cLK6?lp+>ze^fkxwAS#88yzNV4ELC?G%So5)N%ZT3|e>Y^x%?P2)x%W z-<83)I;QF;ddunjQgiWkeeiH>+jcQ!Fs9hfPNR&mXP_FUfx7Gh)`-Ukeb+D)@@xQ{GWE| z)Y$RNdfkN2DS)ee1}|@IDFFX5UFtIwOK%aNIz~wNDOxO)1X|~Z6s(yY>)FLWL}9)R z{k)uClALeJ|s5O0U!cD!S zM953C!((@Y%i*OU| zZy=luW2f5*2+gxx_q&Y1M7L)MLNa*q4?Ps-rrU`Jd^xDc0lr(g3G_u^`{Zxe2k4Vp zVpB-Vj_ zXLtb133!cMA@U+N7+PHN1~esG;VUdyLMsY|k=4bOK;JqRPwL)yq&U{laCLd5!F@A) zWq6Et4!#A&=_LK5HDkW&B=O6<_+#EtoVh1sdid{0O;bX&%VoOZ?a7|hxH{xxWz{~Z zH$1xK1$9HUF(0r62VABs2IQfp*^W2&`Wzv%;GKb@-0@`qV3s(({?!+HV zcvD;k^0h8+(xZps9HOeGlr|zH8En{fg#jv`82ZP33x|qLQQnisxZM+%NVTxR##)@o zT;oU1F|1w1;v*MkuT)kd6L0W~32`SluPQ%l9#Tbp4eg|u6Ml>Z4QSY z7H%V2`_>F%tTs&U?Db@t7~3q;YutivFZ0hw4pR4x-*ASm*XLD8IbkDTE3YQ9wwMw0 zM5UQarz;Ig4@Fuh!|Ie(nj9D+yV}oIg-M$-Tlcr{SQcA59=P+Ywb}lR0cGC=ItKwe z`!m^aCst)%Klk3lzt6}cI~tN@y_Oi;q%)N~_LJLTXB z3>+tGzS0osdg(5y)A2H(ih7Sh&1Qlmf#(<$W@S7l1St8~^za0AITDcKe8yiB0LJ?@ zJY0n*N{uH+5JONTL(KqAtbD{3o1A^a+lk;n;-(D3t3o$@t0tQq9{qCFWSCvQNT6D~$a%#IP~1-gAqWp?a>r+rTJs|dH>>t3wI z(yxhkZuu@e5xmPG2q)ZceP8y42n2chw%a4%k;L!uHjl#DwpW|l(h8d!XQj8<{R z@#~~(I=3@|^nNq7>LcVd!zR9pb_6KC6qg7kp|MGa-#pUd$0v#(iAJ^s0(zY$ngto{ zn&ihbViSc8U7jhZ%Iis=P-*A2)~*Vsj;KSRno|Ni z8Jp;hWHCzh5OJc)u1JLeyNU`Ok(^koreBk1-6*L{0qNdEr5kKP688yoxzXT@I{fd5 z*tE}bx8%&3f<&^rmYF@W8M6Dn**f#9HX)KnP4a4IT07GVt4@8X`8#Fy%{R)w9yF%n zPPi>XyqK-Mb~S#vVMcvfyW?$^tBK!JR(WKpzR!vcRdaT#%qeH$g^Zak;1qf!GJHOmEL`SqZ#!@e#RpmYSVru;8iB%p!6Qe3pIYEmSXo#q~9V^F3wf75Uyf` zgBx|K#ucsvHRzTjN1Kq66jT|Jvx9uVM2igS6EE?I; zrxzdDmdt<-iiAGI&I(F!Le9-E9-}aW^4yjyt>1-lY$9QWaD-x_vg;=II%|8dq|f< zcaxvrJt6xQub9$z3wo3CqAt1BzuJ-B2@6oiPr*6E=a&DQUc-IOG2aN~8x1wEBFOYS z0cph#1jJ2g+Gz(i035u0l?|Fvb7?-LC3arAe9hz)|3=zWsY!LpNe6s5s!0j<4@H=h zc~%7EoS!857*1cmf+a;%9%s0j#e4;wLjf*b#+m?GU9j_ZOPWzCXNWrWoD*6E^qhoU zgNbyW$R2>?{2Z9)`so!%6`|Jd#B`{7O$!*xmRYdS3C;5X`{@{8AK@;Op`o z`kPTzIflp*9&sv#*;&Iv zJ(OcM;TIdAc*;+;^nkP>-9fX$`Ag59-WZizUia?ryKhJra|~`l;ZzO zhT!<`8id3(TVw^y;3a?ypl@FB*RLdWn+SG4my_$_!60UaA6Qn2#mDF1F8b*P1WY({ zoe3D&R z5{7rO<1^!5C8bH+Nx<+BoYXm8u#mMSH_Kd#ATd?Xn>K4@wW`sslq#4rSB$2O=b-9A z_daf!gV&IJ^zpiyHlcJee99)d6rY6qsm!vip^xW7eYV}Ay+&f$%=&J{U>#r2TlLi& z@#Juwv{bgg-;_&b1@jMoRa<2<<|eC>!`OlvgO_4u0HtYkOh@w^TQr&$E7XVQC?DBc zw2#=T!TdFKORl)t&cjFrC!uXRl#U0@&V*T|jcqDPosR1&|<1*Tda}is0yW zGDAin73xe^pcWvflB_Q(qAFN;a#-0@$T|-vFM;rVvq9Mk58T_AZQPK`fU*kD_Ok5I zbYt}l%<^+kM%eg#oitoezF)uJLmL`!vD@V7=(C`aJjjv!kn`P2e}mpf1ZUwecS@+x z-T{U6s?`c!!w}|}3tLoVryJxTnH@4~_EZ5iu;?@I$3(x-(NA?Mg?t3(<;)a3u!}W@ zZ~zd5M3tD%;_p~zK|UY!-wSU_JX2$~b|J3VT;&da2a^r4Hk%h&zsl#D^mpb@YKiux|+xQ$E*4OCTRToclgid zdzPAp66%+r@nW36Z+aMA0~9Q(_ggP!0_Jb(VdTNcP(jrBer6^(X7~*o*O(q+%ZCY) z7>Rv|{zGa>Qq_SWYCggdE6SwuJ%mCBSvf8y9vBk|w8w{zN3TteN9&E-Q(wNfPy)b} z24+Vp!Y=G2pbqAcxLq+&tq*eBi>691AvZ`N5KNbtnAj>8pb&EFtlp1|Fy@tiJr^DX zW5B%2jZ);MzJIO^=ae0Vor+9*Q=kHY1CL;VPg@6AdbWrP8RKs6>C515C)o}Usz9!m zaMQ}Q=(ne~`Eg$QAg;)Ow}2dL)LN}sKrzsyqLu4n!{V%{67MyS&Q@7OZX;}CLc{4w zo&9AcHXX~1e5|74N{YslX1G$tyTb6v@S~hI-gam6GC@mKsn~MG-FB)niv)lya&I8B zlz9jm5ci=3oTotaRgbclQ7f6PfGKCGpe{5gt63l2+h*HFAkb~=L*sfkE^x>#cF&HfpT#dcDI%&$+xrpDtpSByI% z)#ZCOvq8umX`ydMs54@E3L)V z_Yi*N#yJVUP<6V!5Fy-u*hQE-Y9N<`NXCR&!-8s#DIcdnymvn3i@g8wJv%vD&s8zo z1b+slbH_n-PT<+c7T0)gHsu2Cae1*l68YvGIt>Bce9`Tjczhu(B5Xtjn!+){BT=!z z43oa^?;PrXiKH%eWu*zjEwW3RViwP9VR*OifGRgfDQu>t9qrA`IP}dP)EvGIH_!z0 z0Fos}^FswJfL+0-5H{?YNt^09i!>oGTaYh~_mqri5HOFR(E8k(Sn z^9*0729-{1@7y)EpGNBKNq(=%jT~-^$)7neVf(117!gTrLy>+<{!x} z(fad_!d-`dJZ?;Gxr2-LY4NE5@32^1%^#)3_o=5yCm#4B^K)zbam#1NwlwouaF;&| zk6k@J`ovJbCR>oQ9s*{Eh$n3FU{?d}a<~F6Zf$~g+VO{T6VRq%aL$jM&PT*Pfz3e=Q(1;C(WrU+emlk1N zf+QgoV+YD(^j$y#hNPgX5qng=19d?00AGX%{2pWIxqx*6m%3t8AhUhGDsd=Mp1IUR z{|216Pt7U@7bgMs&b%hl#P;zI+6F{*ZNS5qvXT-0Kiz8nKTnf?D?LVixsa@hqJE&` zj3LPqz$2Q|svrwS0c8{}@uw$FPZu))wzTcOFz=eWZIUJuNsFkaFVlQ8o6~A9z|v_J zFUe^iA#X|2Q=0fhxH6hn?P8pVT$?RtEANLBIle#q-MuPy8BJ%0Prtm5Wzz!y`G8<% z+avMqVgQ13X0I40?Y0qK&X&?Iuj1`wfC!uvr)c7*4GEvzZgjkB(jf+R@?3L?0Z9}c z%etJAN}n2br>Xcx6Ry-B1Mxl6Y(`?W^;UgMT8(J(-&!o&d)6BZ?2+u0wA!w0z0?T{2sBF#OA$?mW zc__TV)`z#Si&?lw^-+>w@pqwAu-0I}ciA7&G9Uz2k}7Q1%EapNE-%kITnh5M8k84g z3NmWS+M{5zcd%HR6MTe_OlpJ6B~PEj^bxGJm|Hrm(+MF7duW4nMXPAw61c*PNnzKD ztWU|HGWi|EG_{{aAd}m+c)=?m$do4S;bv}1uXWo@wTca95hc2+nm#XJ`vy9TE3f!P z1+^JZsv$W^G-;;LX|~0QX6MS9ZBB9+0dc$Jr@t_I6UmgfL+N2zg4d5Gq57Q8GP{aA z4omNlr?uY1kWS1~UZXWj$%^ZmW1S+W4tK6b8P~rk)K%LrCV%qhT;BPhkJ#nse~7)| z+SWECX_iPYE5Jtxe214q7SDe zy~?!SoSFFKsYW4`cv2<{Ikttbkzf0YsR`F?nFHx)fw zAHy(e__nV}ZAd6QP9e;Jeytmtsunt6Ouc6anI=sMO9BBq!?YfE%f1zW0$w) zcP)z)@3a=QO43hf{LZ4t+y`;T>$l$Z*VVCeiYz?oOSFmoZ=%h=Bc_P|CffWmd7zUv zakDTou>Lm;W>k!fRNof@a?{4DN#?zDF@S99I@c3jF3+M){wkI*pv1W?DAAZ`gz~z^ z{p!ohyf9%)%!a$U_H3N#_JZs7#jrARz0OxWmd zonP@8+n@#Rsz~{6zB`VJI|LieI`%Txq?YvhYpj2HxsyKfgTB1ggZSmd-fDpT3WFC; zB6upcf?DQR9jg1|?n)&qLPLr6u|=jiU|Tz-E`H<}^O*1XEo;?ZpQ zrVeaiPM9ses%BizNHOW%Wv7}GCZ=X7{N;4`k$k6+#yzJnd#hF(_?SE)tn_W*Dz`h7{tN%u!`}>H|kN-2hiO+cmG9P(hnQa^yR-9x>k^14BZey93l`R5EKx|+FE+x-B7S$Gq7tv zW*qsTEPoK0AQT}u3=p<@NW|N}IOOgBAfAQKjt?GxMdj%~#_jvx;`VR){ePw}HZc?M zJ@Q}R$NRY#GGrJ!f?r#_eo4Z_@c^*8E=vcM@$5{gyV*jX(O(rX{YC2 z0@!%UHiw0@nF?z<6@l^o(7!U%hY_4FCB|jBNFB}& zC_`78GWG6$w$g75#)%2>Z7FyBbn6O*Yx(%&gpwHsbWV7am{-K_h-2Zt4(d=7eG`FR z>OCokZgmq$LJ%vcs0#Ql2(CZT>rwhXyY4yJWvV)fhTjpY=&%L<*AneG_7)ua`p4A& zF(!ZimV|#AIotf5Fl-YyA^Sxb9xCyxzR4R7G4%Sj6j<#lD@-46z2pBEVwh1Qnfko= z96Ng=5MfIQtEAKqrbGJm^v&#J&c~<2mmjHmdp%GIVG@%WcC{0E1-A$;X-m}t9FI?# z6B_-NnBEKN?dDI=XPU=jR97Vp~hs9Uc{XcxpzpwAVBXj?? zR|*<9{tKC#rSuORA8$iZ<>C#II{y`dutk}?Eu3gT(-iHV7Lqjh2d|agewh$3&i*3p zMhQ#KjjfFqRE+DAoG4`#zmpY&r;p5Rpk_iy+$ucbcC9mT@SuO6;69l4syvbWo`3#o z71I!z-K#PbqoN@i3KBwD?D%;{6WJF86YMiykWmF8(>%t00UEa)SU|tndVVct=n1K; zR2&m@lHmg1ec-8SyCJ(R`F_6frnpz1OtErb0__w-o^CsZ@rhx0B`<(897>{_wrkar z)!A+K^oIY4qigvZHQ|S|-A<7_D0~9)hzxB~C@v2!uvAF~_sQzdvaKUTb$XnJj^~@Q zY`JcgZlt@U5tO_e)ZaOJkN)rVdG;4KANIU!X4cF*vt}B3QLc)N-*J*H&uUO& zUMAOzu!EXGOBXWdLy7abZN-kzIhHGZw6L?)%J_ng=O~v?e{krg7uJ?$Kb~pmz-45< z&s6!L999BUAD`wn^w}CcLZ?1x8z!O-;wKQd#8Xn&?L}lkNw$Lll~-gARrp@`l-?m2;}hh`fH9^-f_@jK?SXk;pLt># z$@z5C39vimhJ_hKE(QwYWBcj%s>PbbFAy=vHG(Q6)T4 z7RY1UWvHoMjW#1Z$>=%;!ZCqS^vek2+~(zc`faNP)wJ}}{E4+O?gmLMtYCeElk^050{63Bx`^O=?Vm6{Twza1J z>FR$Fcgi}C3mr?tQXf${Rac>SNb}*0$%34*z+XDqeoh5*eXH+ zvxrBriPS5K*p21kswY4;`iSC=-mW7TC1~_f@krt0>}Lly`)`DLt1ubLtjO^n6zjM{ zpq61s$i#}ZEkm?*eTx;REExBul!ZBQin-=deS;fPo^dL-V87kqtJ}<$0y#d1^h_7j zq^>gB!xj$Q$k=dB^UAw)$X_3?xf7?4B!Kgm4s6zH1h#Z{4gQ zj!o^ECcx-i&pDi|em)78qP9q7))2U%n)&%4B--g)FdyNKWGt*RBK3rOfevdxe(B2I zJjZ+b{2@=cgC2tIvlw~?hM{q0ge*mU%2j-Rd*FnKt5g17VtnL%q-+>eskrAx3Tg@R z2;Up)zni%VDgqt3Zz4CQvyvPtb z>M{1$^Uc~CyD z{8jx+Tm?>5Cr}S8P-J5r{1P*w=*ZGo`Xv4ppfjmwc%dBSj3HgP4S5HF*AFkZ)>;P6h~wh(Swv+Rfxcb_jP& zg%Oxy$ycH9ATV$6Y-Qz884=W}5E_vTdk_s8MTN)|=L(t`5sBTcWWp%u^w}v=?`hu# znxGKH=*v_z35A33`#6ayy1r_0u8jhDcL{WC4`Ub=kvuo2G3qq(a@5xYU)DWW-eO6U z_rI+8u+Q?+T1l@`OL>AbuFa56k7t&y%BNW4&}Y3dV0u}^!T^zg$h*olU#XYPu3Vxh zYvI7r%(0W>EU;N|Uk)-Cxt@FBnFC~s6zvf-*qlwHUHy9uO_##9xg|nrcIF}UPJHhz zBmonkzGyU8x4W^^ zmgN_4s5|0!Zb^kUkZB#elqVbb&*B3p&9kC|<8h^h?u1tkop=b$B)v?BioH`#*p~_R z7QHQXq6Z{r5koQKxPhAQPim8yheIQ=ubjfvgxIV@A-D#%BgD2PG-?*cr8m^db!zN8 zl^P<98hN{ia7aeFgJONAx9526x-xu+U+lYfDYk!-4X3`nbX#$6tSL)w|7Nnj@kWZ; zWp>(Po?$%Mkh4}@U~w+XGtW(NGuE->BiW_3e3{4&zAcM4ql>RTxL%gMFv@3mZ;7sc z%nZS_kTsTdX}FIMW`?flr`m9%BrQmtutByxC&cSkaP&kiXq|&WYKC7~bEYwMebL;9 zkJ@zZOO}MBR(ap7kMZ(v6LDkf<9DLqH$KBz+$J17oJ8bvP+ijAPKx4mU`=_BU89b~i6RzsLO4oE_merev5Lh4RgK;Cm78 z8;W=M7Qj$+f4TU6H z%;bH3w{-IWvPW}wb>DT+7rGoTr;Gc^QA9_-~p-;o>#+mS1% zUad#x0&b>MunTY@FsI6hag3ssQm1v1U4xH|PmN$+ z+A<4N=jZ;cka?`Hfc0YX)~3c#BqOS6s`|Bf#*RNz-DhLAhIIEW8TH^C#f1IBQH~e< zE(}b4IlH22U44XJb|G&SRbMiVbt9W=uJRfi8S5MC8v+5FqKoPaS1>RDS*Sv=X0db0 z$AODG0*SC=)kTSTCE@g$8mplk==dIuFp zi)ITtWzIY(^n+oho>!S-R?j*$qlQG*H4ZB)~RA^zDi>@8iMoPli3g2(PCW9Lm!Ds z?Zju3+tDX6@q|?J%DCiWVpUFca5otS25y}97+dIQLUNEBk$JmDlQE_B(~IkdYxfEH zR8h5RXk#|hfja!GxKvbJ&q<}tf~hr~<&Q(}X6=UpmGI^-90sezIhZPPu{-yy7zdt_ z8p3FrF4kgC#uj8z+sO6QhEK|5dL4zLr&(mMFZA9T64`( zt1KpPQxf8;fF%+5QxdSd$e=7L*t!%AA&)t&>nj$gLc)-7z#&~}=@5}IxPcJ-lfvyP z361-gZSRxk=aavT>aD!xhrsWg1TkKtp`YboAN3X`)bQCH0JhyFI1p1KhvmCUZP=xRY+pCvgKX-kQC}&zvtt;&;l~=r)Mam@!?}<}eNC z8WxOZ1p5t>Ea1&&S-6{p@Je8}^VX@ntp_jRsEWiIb#8pHimODkycI`ThiZzI3_i`Y z(s6KmnZSOqZk*|;lg*+EUp&0B7NcoCuS>M3PkXJrx~E%jXkP`=llQ_wAh83&8>F=o ztXY~?1mw%qmk*!rcgZwR4jGpVuZd-_8e<_8bj;EUCH>nzg)+dzCW5)7G~J9m>{=S} zVOww~2aNB2>j$DJ8l_O*3sBG>CZBCr{yMwCKZ8D6(3yoNS+qVkw_|X^3%#+cO-|Jz zQu!kc&|<>4Llvy%XmihCJCCcZKkqCh>6 zgR>HT{Q9gD2nU5VWCx8k7(lwJvPtV-8*TesTWDF~E31RfnvVM=stw_a!dJR89{;Q8 zV`_IV_o5S|vx*J`JCX9{$de`E!RMd0F$$b7;l*IbqJf8 z;qKqFeRQ<1d#~T30xqXo07d)fD318IDDLOwBQ~xH&qo&jv@i=gC>e|2E7}`eoQbg< zyi$hi8DNKtM`$06r=d{}+n8W&c@?URGz+?$xAPJqn0H%A+HeP`E9J%*rr{~mIq&)Q z-RqXIHdLNxk-5X;26mw|&xREe0}L3JrE4tkgL<`t9o^94oAggq^Cyy_C-YW!k@@m! zwfCGcEvbqGKZ-At2|YX{EwmX4IB)N0Mkf>4V({OIcaM^Dr!bAoR7VXI&dJMyK*^PmTOy6(o7<6=IsP6~LiVgNdQOq$e1XzJ>c zIabmfZJ3S;KG;%j;F>`|Kmy5eL!GB5EO)gi$|gJIHkq()C; z#dabEvhEf*(&_sr!)gw%f=8=6tywabt?xgQ6UwhY2Q5+qqbjN_sVF(IU?|R2AS6$r z0edz^)r5QG8aYN6W#k023ASY2F}d*u`cCc<>Ag(JTRedGr2|;VpOOCkIu)|D{{LkZ z_&c|Yk8FGM<2pJ~h_y%R+hN1_F78&_qX_kJDXHSWtbvj=IER6xf|9YGw7QS1f;9S1 zW}$GIOzQ$rk+8q2$?sQ(kg$NVfRc&Pe}zwfG;0Afj9$dv)v3+L?Rr1N2>!Pi#;-*o zfTLiZcI|mQ5i@y|s{?6bdGBbMtk$}QR85`<@KNlz%LK~>#wH( zeEYaF@~4u^JJ=eTI67L`m`T_;IypH1OAKq-r_zzfWZn|1X1KgS(`zY&hCux08XtM< z?CzTe4MD--fg{m7Yy4Z_drEtd8uSZ>^W~v8=cnJk+ge0$2PJaI2c*`$tYWs;haAHQ6aLdgEr*K%Np3(0- z|Klgu(d~s#kh8lpuG4hH+Ujb3v%v}V9x)Ht(0j+j-9{!X4{1k{OABeEX@|81p^ZyY zJRsSfNWejcf?;%Rb2kFsyzf9&je7hxyk0{Ft~}}}WMA^&6aWUUzlMCjd%wqu#&;)R z5?KLAD-Z)7EGIbO!C|U=#Ka-`+WP#2le4gho%LZykn$zd2ArRd_OyYX$OloENP_#` z-FQB{%De*r1B{S}Nu5TSMwN!7+;0O|uZJme3K#@D9LvdO62qaDd=|hE#b2YZ)2ytG z*hJ|`3}!fT=0;}S?(hm%>;bZiS&;qpWRsnWWdaOIM}En4y?~tf{Igz|P`Lnvnpa3F*t*BrsG z_pa|HG>ZGl_=$|+J-uw!1aeJywf=V7@aM61mtgHU|}m*Io^Rncw367kD~p>1|7dm2y1@E zf;^e+b>{IwI3f-WsbR1mA$Bhh(Qt_N!g$e6nPTDMtQY4z(=8ylO2gvglkdo@>4_17g04h;KF7WEED-iU1!h_P58Np1n=notwRNe@qw zd6%j(#Q>x#`>SNXd#}gAyvC2>$r#vumo8ksUDlT$HO;z0y|hZ@ou_v;f*d5d zMe5t)H$LR*Y}(`yI}53piZmqMR7x++F3iaoA3-o>gCCUC*w_{+nejArSE(e^P@(LA zY{WR!=LW<_TO@Jl7Pd!WTo#K@f8<|DegopdEQkoR= zdm5OhRAMXa^3258XUvUC?JEn@9SYk|c-9&MC!c~n+9L!JD1f@t{PjBfUF98J%;=R= z#eT+o-(j_uZL|SweoNb0+rUE^&zESBZ$pc#;>RW>6`$Z5>0zq$n6PJmNbo`E6BGF? zA)6I+N_S31XTi~g;qoTIg46WP;MFf+U(J{qVn|DtOFEK=dV8EcN*dcU;xa1Nv!=< zE#IJsV0vH>!z#Op(b1xcupp6A>5dg8)j)%#vYJkUd}&w;+gmqfJ^Gvg;LY0!RwK_& zhdvuSrmiMt7>~T+dE+wi_Wtg`mQ#u##!P9jz$5jUm7D3LW2)|)llf#M>z(oBDC?c! z{gauromg^eek zPqzDmhSI5C;~#W;_W8?*p}!Af36%p)F#P~Exrb|r;C@+xA&TiZ++-E|nz5%LU@l%$GRRza1Mb^?*VS8nC;KsAHH zY>w78u?EjpkddzcN}*KTydEh7GtC%k?pd?&KpqHf0~7W-v_jlcEv}g%M?V}B8dt&Tr7q9S zIG0(ph}o{pZP(5&Jf|3IdLgV+^tPQ#@OChuI8L4`LcAK&V-ik{t+rR$QM(JXuOp)R z%oUzu_Qglm?$Sy4?!`QK|5}!o_osN_wR<}LuXdY*VUCq_8Nu4tMrwEz9p5<*oi^^B=jaQtl(y1`D=2`~+ zB`^dB{TcEyYfA5XuBvj&WgB6xsyyMZft9qTx>lGsZ=VMIy6fu)^#U^HMCiX=yMzGG z@$caDhhO-`DL6+yv26hlp#I)&z`!UQ9bI@dPUv*=Azfe-BC$u7fZ4Mq0n%doAM2lr zngTHi!a74k{a1QSJLd;?pfZaFq+=L$h?t0)#SWv?9p>B`r5idl=jw$_POOuAaa-$z zdJ%8m#Rjd8E+bbvCy)ELMKP>4WK9hOjJqei3!jLv8(iussB{6lNd?w(J2cNP|$-ZGv68~=uSW17(eE@67W z8YH{D5W4Lg3SW~O@e`sn*P8*`#NfzSf-O`tY3Lnywy_(CN1uw2ETD4)KqmIDKK1vD z{Rei+CXP;yKW-qoMjOCJWZX`F5^mBQsOQ$4lrgl5ilD<1;@WXOHje74B6bumS5V)o zQQd(E{0)(XDecxOJ||Z+^SK|(ccXk_OkvdYd(&w!a4^A{5vd+HQ9;3dc`dOPcJ1Cj z)ujHsm66H=r?7o~k#r^yIQvaDt_|qUGJ3uFabBk9x3+h}I|Wk#(C-lrM{%PsWBixR zt5JQfnei^n{6sb5=r*EtLJDYM_2wZT+&7W&%WyBaD4gz>$d6%11jG4@RxuTX&+JLT z*S7ttQF@ACeeJ00eR>cc@d=e|b$g8G@&Ag??~Ke3e54I*%#B!fb-tyTOC| zi}`gKnIfs#TdOEJrfHcW`;g$CIbH!{qr=5af+i3D%ID~5LsUUYzyq?_4)E_WZ5SMK zAE)-M$6A@ePktL6T{LS)!wXIn;yb@Bj`~DzXESLRG4T(<8#6NkHm*K`BRQw5JPZJb z=da-WT-)$7EBtAAt^oGK#=uI^#PMmXw4cZvw`o&d+?D_i zOut<9I{_w=g`5_!Z$g$p#>BL%&xjr=1jgTR;fQ=b@#QYIQZZI)4igI#D+v=oarqz} zWeFbXV^)E0^$edUUa}b#4Wt>sXI7G>`jcwyz54=q<0ZfTIRq-7!y7b!8J)d4>MD)aArB3O^>B&oi|*JCafaAS z*{DX6uAU-{9;YR(TNyw}jTG91M^v6kxE zMoMh$XO&iBbumZ_+yi){nvosD!D_cUNUMCGX;&&`guwmrKTQ)*e#-$S`~ufmW{N2x zwx)fF-}6+XzS?+BvIamy?62zbCtG^l^ZXBB9?{K@tmVz&eI9$@^0>x-`M=N2~!JF5-amQ{%A5}>2_8h0*qOzNvi(}o)Z(i1MVD4(K z=5XwUcMx}(96e8h(tcrtVj`2qJZCV50I#6AUZ@Qrnm-@N8p=QGNN}A>*Zf-eO;TW0 zRfQ}wLa+AC^`IY12nzBpBgag3<;#SzCGGcdZ6-pR!%$AJlH^q3n+H}S$JQ=WN;<&a z=pkF2K5qwr)oZDp*Ww#|mlPM`kFq;kJX|x_B z3B87mde>&oF#)+=Ld+yi?<*xZHdxH~8s`|IL@hctTkkt7td~{wCZjO+`}`uhF$O+g z?Bv-KJ4)={ncww59U`NOy^iRT{sAy;{ zKu*NJBJqbTLDSaOTENCw-oWNN4kkZ2S!-&QTOoxm|2OL97`y`2{6Q{~6Y3;5ic*vO zl7VABys5B{OSP8`vPH;~jaxXb7F$0YN6PKiiB5La2Sa49K{k(%ooj2cgKC9kboriS zfP1@ltThjv5f6nBN+(u4<6U@Gc)ai`5-)$EX8#k<_;CxR3dz(%@qRIBx+R%CW1NGj z*@i$8(uJy)bCm5pHf<{&VoCZHWd;U{&1e_+NBYE2$|Ko{B)b8Tdv3N#J2d37P2!4W z8xl(zGu0N!(r`jS8Gj9nB(j7n&hT8HF&Zu0(YyB=Ylr+BHSpSJtndYRF9@iHOoLw~ zUrB14EYqI?v-p~IAr%ti=JpKqbJEMT*S17(-T*&B%>C@r6d3?-&0irV`fp_u_$A`9 zj&76%I6jdNLO~L){;yo2CJ4R3>ay~3prD>3PuOI=VvU^^ZPYDK2lov3L0HX2WEBYN z79dMZXL+AI1ix+{h&I>!yn3ydKZ8~g0s9X`=JQ|Z#7 zFjB!9lqh#a*3ME<=jAI{ITuV&2dHYxIt#LC$ii96T{uvQ&xZz=l6HFTM(cG!bCWt0 zE86p=$*-4Pg81;=Q_8ys9T8*4lE>E}aRM9i_h1M3@)sX#_R39Aj|ztC(OQt52MtBa zpp2ihOtQe>gdS?q1>RFMWHVMNn`-YH2H@U{6*=68?S3<=@qqvpf`_$nb{@(FJ~|`U z1X52oK$7C^tPFio>i*PGUTJA#q?1!JbtVB@|75;l!+Ch97ws|6^sEkZx6x z_cq$eRj?*&6DlZgQDjiYdT3<}#q*hm8LYodYkvjejXO0gL={Gt9{D!1$mO_paI=A; zx(fD8W{xdeA`6}A3#!=dmo<+eDE9Z4OAJX6Hn=BaU*f}DT_cL~qCQ#23mxJEADo3( zR)m1bNwfE%T?r34sBBlZWZ_9v$KE=B{_GlkJuRVNhIfm>IOv=-XaZS6?oH*S&Q5M> zLyCjQ-qQ$+)$oyd|FXMJrogp+**Q>*MEdfhfqF}l_&{0C1<*5c{AR64_$1@B%1I{% zu!#HTagj*oG!%0l_)H~GEa$0o4OjCl@4%px2|cWQS0Pz|>~#F8uE`r9$}D$FEe+%Q z0?4b8D_+dgL^qI!BhOD5HwwG73HY}{wNRH|JskkrNBUkm0QmMGf4kfPvzq?va#waR zuyHiCb+G>D!m=K!c;>@^3O;rNRGi}*n(CWN{t{A*0z*d}m*FU183Z^bF63c*74oZs zsJgT?=JGJ!h{y5hIXDJR7*+rrNq`rFM0_)*!Ze$;WQSWlOtr)}BZ}8KQo3x0sQjF-w>~C;;aJ08 z6J~+d9i-i26r3Nwy)(=5WWlMe<vdHPHHb-kiP6vH(U_Q^yyEtENVoG3Zk`?|lru6hFflNC0inQ>jJ4Ci z!SSb{34@x<@vp;uehOhHS`^8X0D?Y-v40l!XJ_|sA*>>xF!SS{h?D`;?r^(T;-Uq? zOAUR*vS8Ev)uQ$TSiHgPGzN?{6^jgdI_9_MozW(bh>>g0Kgv|o!ZmF8Gno*`AY19r{(KBckYI*0GW6dPC?RVgh>VWRI z6gvw*N8_)ahzRf({}JUr1{F$nCPv>;vW{#71Z|l9kqgK|7THxxb+m8{{1BoA#0m+L z%B1^kriv)_l2)5_KdT#j3LPRL#NX84j+ni@zjb@y$4SI=gkyik9)L>{pi84;?mwa% zCWAFHLT}pBbHB}bmPr2PBlo3m_nn+k0n@9_F^ZSjo8+hoE^rjXb2`LI#jyJFz_r`7 zcB*?x2GT>4n;mj~1uh)<+ej~VR81$g9b%dX`gmXprDfnBu4g*O`O@7!!4G{BbtplW z0LfEQ2H`v{sY_TZZ?7vuJUO^LX(EOX*nn8=Pjbphbj-$*#krS@hn4x_5b2#QqKAVA zq#I}ei_hO*p|kz0!Q@DF{#~UW>G+$fn(~LINQF-KO$jUj)sep<`-j|H-qzy(UFjzR zycc?U`jhaOSBgTI!ppD`7Ge$=jN47Z85yrSycd_HrR*OXr8YG~^rH;-qXbdBtq&#> zNk$_Q34Yye@lB*Y3~n2n_nXMx^;S>+_49A_*WD(2*X;&JE&3)iDRY}3XUyl4rQWRI zJBjFIg$*X#c}z?v9i$hP$b-mOSfq9q#>R+1#bcuqLsGL>as!ewbOK6;>&LKHp#OUv zR0+g0)Yj1kl&66;=e7QsUjdzP7#MZUZ@|u=&yM*7=runEhy*zV?~{Qx-}3>_1C&eV zuOR(iUjN~ZWSy-IO@36?WFmMT`wIM5KtOVkrJ8|J8~oMeOXGa}JllsMIwIHPMorg% zx#R53gJPw1mlNrezq#w#?#{JWmzS3tm&boLRJe!{xVrV?=K}78y-jN8;8A*gT-orF zwzNphc_ojj55{4Ul2`ABDSDU}!&iT9CVV|oXu#IFe?j0>LSH=+hF&<|HEEOS5R>)c znz2c`RvH2Ve#0Ds2NE?_rr*GzM-=0D&?UwTH5`fqXfX|=((jUbBxAS$5 z)l&MzkJ>v5gGu*t8YZMx_kH&Jg2Z0l=MYY$?Tp_0v9Ucb!iCu2G%7q_5L^RaXLIs2 zh8&UhNo~LKd>Ecz!o9z5yaUCW^P$Ja#C9i^w{IB!m|(%SWn3^2KxSFx^hrK_i*v zcp8>+L_X9?x7-;rd6u^~Rii>p8t}X*>e#d#`m&kVYa-&K-Ihkmr?D?xs$NpKd?hpn z_6BdBX}Ac;7(Z9nUsP!|V3H*pbmOF~Q8l>G6pdYSXdt<2*%h-Ahg=Mg2`)YA>*N@p zZYvBg4}{EUPqkD)KgnFk!Fwjg0u^@fp~W8mj%l6f5+B?yHInP)LtP$k@5Z~+=9({d z_FuiBrB~G`1<(pPLgP>-!DIVUI$m%3bck%mbSU*r!i*B~DY>G*mR))|O1;ail5+3A-tA8`M4S z?Ii8I{r83F@l9Km^8mv*`)j|@A3TVFjoDB7!C6s44$yky*-4yAN%-z2!(j}c+l^Qr z3dvi&&6T)1OhzI-rpD|3#Z%k&sWX@#@|$G$!GoLSrf=8xU%~ja+fATG1np!ANv>Yr zDSn)Z;*_&4Ua?+&p%p0uB211*pE~4%x_yCaBz@;a;O$e(ZzHwkR!yg(4N4TH{X#h} zh5GA^Um)^_6BP0HFxAP(gou+xlO_$5uL%@DJhOv}JNi!f(~5`<=!3lEX)mFK^V#Af zaPc+*SAFZqw&F^X|F&>P_XAbArq+|^k5JrOcw^*lt6Ds>= zI2mas+@^{qSIOoJppTeoG($;-H9KLFu{pwv@O;hK(W%~MSV_OS#YU~~Jj)x8wtp32hMv4A-T&b^_}tb2{^vJwpzNCi zNVw;TZXH}1_fJl5VTwaN3~;U&e+@qWVEr-%P7W47@_7FksmFu$KjzQ&g82%uwYE?> zMz@$$7bCV5L=yy-SdFeogU3XR@Q?!g){Aezbs-s18m)16uYP5ZC$=h6@0bA5AGWB^ zj;a$2xY*XM7A!|nL}&v-RIy4jkiUeHc_`XUp*MalP3#@F@>W@oPIx2dE9WEZ#TRub zg9^x<6^9xmH{os74ssfL>AG0^uy`d$c^_)HUdb#O&3rDX^h1iGH8W(IC6!lBATyDN zBIPOIDtrG1lb$-I#@%`7g%eIJ*;b}LITWw_&Ul4e96WRv))$`y8o+{9JQwNCT)5dw zE6XXg>&@Awl*uyri(*zh=FTaaRxY07dfZ)w5P;$K2zXyuU6pe& zNm`4Dn3$1eddHdFxc;lbn?uhF>J))n|VqY9xniE}H!p9t zmz@o-1))$bij65J38IN5&y{@OD$-VI?CIKHulIw=Az>hM%W%i85}#W6>=5>jqM~=r zC+I8eBGbUqc7}|p6hXazRt;e(IBOuZORl!Rh@8Ig)ZF8@av|dlIMBJjn&ls;B_)7W z+L-;*=wU4ns5QwW@?c1Yu7WC{qAb1CFvp-o zfe?F-m^zH4ahNf!@MY>zZeW|CYog17Ve^`Nn6wjb;5#x!EdViToJ1>f1(x6u1NHv2 z(I_TSuufTRH=r&;rNksp0Eo`6$Q{Vj`9)hcOf^OBb<9#L$I#2!=|_>w=a)c`^zw4z zF0`HGHq;&4R0Q}>9dwkC#Us&?UdR}5-+(enP-4@1U{{NaYa)HLPlvs%{F)cddq%y_$7*vAwkptWC+0)YGD zJla18LzI9}=|57CpBbs3t*w>G|9HKKW*9)jgx`)d3-(*C_wNm})xLs-@WtmLD$b?% zBM~R2k)H0%(*R0Ul8Z`+?X)h5wx;^{qYHTGJ-eLd9Ole*6*N0JQQq=!32dK`s63+% z4@H41wqC^bGL37jWt|5PSCV?XS$xmCm90%C$#hZM{)sXtZd}`vOoWvq=%YU7KKFK_ zMITA}**fm|TMD63*Lq})p}RYQ0J6?iw%QZ66{;5y0Wd@Atkr?=WAAfB7l~d@zDKdZ z^!H430UySAV&THd3fllOLjaKZGb;Z_p8j1cf6vnaNd!LNamH_X`p^2*Q{Uj-YD~^h zlapmuiXrKX9PA`XmQJq_?SDVJAcWxBHre)hVgK(`AqYIM-q#peN>ParV%J;R*jRpu zUUHV6O?F1Ee{`Cj4ir1GEDF$aY*7FB^uhs}#22iR72~a5ozVYEG0A{Zj4e6@1mW;N z8w9EuWJo2D#j`9Z3P7XWHb{&#+~U&}$`E7b(hop~{IBTz!TJ8)uCE{ixJ41uy+IUP zguz9cU4?FU+jD!sDzIZTrL_Qa;1pSn;jLsW##^`AlUyGsU4(sXp7VW^l+Jd}bbR>v zYIFxgrQtt>||34)^kYhK&YPwE!i01-;>H zCK(Na6QX7e2g_0mW77rYa=!7ruwR7L@&%sd*VSYau`{Q^Jw40@(oMt=GwqYFxYYZvH5iaOGTMWI>$@L9y*0IuNC4m$96V* zf^Ug@;Cm|6te|onQKiEz(lPQiZ7muL&w%jqI|?f@;%&zSi<*XqZ;F@Z_At!?*=SJ^ zCU}(N;pN175GEZjA=IGMnCnEbV!9!^RZ4K>WsdSDxNd8uD19DH6pS z@4lTNI%s`VTjw1YCJDfy{5|Xa1GD+lnEzp3{wb>dH@Rf-pXAb2*3>4lWsu?%wWRn9 zwS<&K{GD17ulPYNaif2Xif05+OQ`>&mVo{Lr;fn@byR**N0=OMCM!aF2$v@XbY-Xy ze(Zto1$_Q&o-BZG|Khad9ZVce99&EU904SXlj7qus^4w(zs08gZ?U~{rq-u&DwTWJ zeE{vjSzR$h?v_EaPbkR#f`UmF{&y76o82^mO@hPV+|;c)azh_q1IYdCe}<(T=>asS zwsir4NYjMzzy1Cu3K2fe05q7n9P|l>Fohzne1MRT&7FUSf$r}x{4W^#=lcA=&K>Q) z0f@@!YFe+l&C$*rS_dcq{*&nVzlg4p_42#uA#^|bLg8r&j8sPZ2!STDGh>qy%Z@YS z;#0Ic{w=#+`O|x_UuAba+nUV+NVfiq?AGEHRDl2Z-@pHhL;go*f5q>9XzQK&Z5skA z8cK7#@8xQ=FiI{aaujI5O(ooLOwEE7Eb`kF$j5M=9h^)UyCHCCDD`T&N&51U#;>%4 z$ACz~w(H6Itbf6D3Q^RUtLmrQM`$^%1$WjVQnsU#>HUob1yfk@TQ=~HvXq`^Oye0I z)}n@WKHklt>YUKl{MuB-o4Xyg;XAv$s@Wo28ytBfefbDiUSH~W@x)nE69@{U;0WTF z{&jND(KebBn04B#!~w^-l9LRSo6Mm>@LLqC1U^mz-RzR_a8Rk;tAq)dZmMcc4Y=@k<4L&$Cn*x;E~lx3wgb4=Z7PC zjW?I~XE4z0exTqmFsMjpsv8##rc9y9@C6z#R7+Adn+>(~cFh{>i%GKl8Fcrne8+48 z;TPU)LTAAmn2gCUjV0S58hAuama1M*H~6z%w5r{oAwRfjo)1d(%+kWzvbWfb;sk$K zIFFla&{T3Qo@?-+$J44kHbF%9Q!^>GNt$_`-{qM=k24%(>sN1HcO@)d&pp+Yuplaq z8d7ypyvh|tquvc67{J4IOJp^kAg@ng;1i(CfdId9runRp9}(KPbR_rqBsM{;Tsq#8 z7ol!tOY@{HeXPo&GMB5-lH{|CyP5~5%hbY1Gq#h?7h4?7*rhV`>98>i=-v63vpAOVxHD@8Ma6S7X}rQWe{b=vrBPP zoN}M~bcJ?t1SbY1kld9CU+dgW+s3dyU~k?80S+7 z7H!{HV)d4gPWPn?MbDxfPuFvVDa9tPsTACDrq$BK zJ1jrG(1cjvCl$aBE}pi>c1|`w3ZCA6t7|EGa=ntRy`Y}oBa$p%r;aJ;n@EiptV4kc zTa9cwI5B^-WBMY|4Hailc3Iili4xK*7Dg_x4cUhyY@#w|{px2C(k44K)H_FOa4q67iP+RAVbU`vWm-&2}a4=@Z%O#T$5K`Mpl`Z z^TWPEOfkEp3@)Q;^gtZk6b`iZi-n5I!$hgkqu%WF2#>}|kF$A74Ke3g6xg6EKQ*HY!DE}`sLiiIju)u?h1h8s%LUl zsif$@ZK=bg-DAaux}IvALNc9M*RqjD7WW)Sb6r_@>U+nc*_^v*@Mn45s=(djV*<@0 z4-BOaVQZg{K$K!BnRTWd2)~TC}XEhHhAfwgSjt;3#(6^Lq zZccgXIgy2K_wDW?rdgZq%+@XHwl$DHAI3nD+PO+jEYtr zimf@S@VP}QZuPG!AWB4w6OR#R*7uLGuPT&?6WN2L=B^jU*`#9`j^+&J9h%F}F8feO zH$mPuqS~s0(y>ru(523N%&(#uRTyHhj z3+w0Ju`Rvl29fg@nLYs?+ckBwaB}k;n}h>oG+(`Qn{ZjpU3_#Cs#WRtFo%T`zp zMcL=xU(@mtmcm83h39>BGYC=xAyF4b?!3(iv4J4nu4;?sr8>bpuWQ5FhW4gNE(FUk z9f9HQpyXD8&>Mu`KI1+=Fnt}i*g+3AxBFE(8=I#kT&0T`EC$Ojl@p({rda-1} zXHiWT3pBSte3EG@QK+(v%xQ1vhq(2wAf0F!n8w){^~(h{Y=nt;keGKb7s-@aq6``x zBj=8`2c@t~EDQ|4hQFVr{N_r-_Rc}?C|8|HTIVMPiTW)lVzVu0rYqHL~dV|HVxb}y2X2cFAUc)h@M3p*n) zMrblAPur4Q%;3yV!lHbz+$q|%t`I-nPTxe z+0P*n-`I2JY~}gb^Cl+M;Dmb@xoo7}yY21!Ypr}@LU}>PgyBO2Q1`(ihF3|S+}}yR z^zUdLZ1lT+BC9Y7c%xbYp!`b9{0_?hLCgHRaQO=+)D_jt{<>=@l-ShOh!c7-8$qNT z{gKyJ=z!3X%m!81E_7)t6)UOt+$GTa`87HxdIMZdOt<3Z1PY@sqrJA^Hv}e%vJE6H zJd zX`J$rbY@kaspo|p-{r!=1dQ8SRj+u4vS4DqEb3t>=92cZ!Gm8%SBSNV6@RC=TWc{p z=J{03WLA%6c*F$kuZltq_>2FDtAEv(UX9oDHbz(7Ziuil_2l15t{rV{W zd6we$^iMGKNB&QR?#PJ7{McG@@Tb<2)Bk8KIi;4fPXmbbSiSzUb^Iaw6S8nHvNHLt zRZdC@lo8cm?mEQwAXk$h2uDC*xFetX`Lv9{F6!0Z1*dFsAo)+F$XNz`ghMA_6 zi>D<<<6c}cwlBd8cZ(A_+H)Hj1$$ZQ;hj&InG|KS;RmL)!+jLX@WDgC0~v$w*- zEx9W|6a*5V+wP+lsEm4qiOc-Pfq}j0+7vr0I;34ehG^HyLKFk`ZfcK(0^>J-(@>1kz z?W>_xRJ;hZ2$cxdUhH1ZUWi`uUi4m8Auh64`ITp~4TW#gIR@?Arw%d5(dc(7#6z^_ zB&c!%Q>D_kCKM(nRb)jQO2;tZU=CGB_h3H7;Dfw9|~SW@KP#yQ@w~5*bu;OoD7n@oZHurKb5->%B$) z7~HrYt86^>7tj0^;Xlx+DmH)yW5DF3A8$qeFZ?58Xw=uJJ|H#1 z!G%%2#mH!H#-wQPSq{Drb)<|RNNE@gS>ls{p)j$G$5_A`A;2NoIUBEUfRhPdgoVMK z6}`MoZ_-W|O1l-h)8@WgOur@JA4tN)s`ELQ3XM@(Vscc(!UFSl6Fg^<5~PAv4E^%h zvf}Nsg^_=dh(mEuxVf{Bk(hr#^3LF~gJt4h9V`Z*4XNJHfMm;;6!9a_>r%pZm~&q4 zE~LDWQKP|KJ0NeuafY_PzX=F|Kl(5SFnF@R;>7Xao(?doz|PhNFu~(H-(}(;>TL7$ zX8sq|3ec;1qWRYmurf)8k{>FsH&FjGLJ1b+8aK8 zrU(VHhZ>3#LXsliBsoXP0BwRwgBwm|t21dB9gv2?efFZU$2p#AXRhcI&gApi;?xvJ zu!w+^cLgHh4VBws>8mqE({Nk36j{#oPJC`@ZQu4ZUW7GVYZd3$cJfE+HFC~icEBcW zT2sY%iAlR<*AX+kGc4UZzo6&_8wn_UPilTvwBL=~iGt~JE8l#v$;TKbZPbMtBSyO% z>%roaaonF5POB7j(To8@cd|wrv$WTRJ1asV&7gGZUX^a>$N_iF%VtP?bW#)(lyFVC ze-2bjuQx|cB7eOhpPK`=t)hOFyu0sm?q6$Xc^;YL-RgA?@&EAlmQh)*TiY-#-CY9G z-Q6YKEl77aNJ%5z9U_giG}6*tQqs~WDM$$4b>rG=Z`ZSMKYKslcz@huIEMc4I?iLx zbDlGfY3#B68jK(|)KM2_+Tdjff83h%XQPm!*djLmK>mz1p3j$vOfN%Jt6^n#UFf@I zO5au`?_CLV!8G%XGZf5KXSp5R+&{xiy&}Tj03^`v@SN9RFv^ zxJ42AZBJU;xPD`q*LqGWZ|URm=EIHeTnSPyx9uTD;GUU7e}yb}XCm||o+I#vANWd` zA-Bu2*iP*>ygxE|q`S)a^66LAx7umvEGFH>!;DS|#Ibohx*iuA$V29Dkzts&0a(I*Ye5eJ=WP57aR2l*fTKYMdQaV87~Np( zfcn;7v~bpdQK6LSb(7hjTHAkQew+R>P~@Yg4pIeh{TEdLVNx3U7pr@wRZ>@Au8(lY zDIxVpqa=76^I54_XsG^>$=Sg%gTV&IsZaq0F-V|B^|Seur1*d~4fxb8;P-HZ@Ia_2 zVFTP-&VLONSl_Pem3b|cslH2cJ=MY@hb}5+!0X!eDzRuU-j6;XYN%CM?%(VvYHFFkawpM&kLU% z`(lJEC&MN@CG+roFS{YGga3^>>R{h?U<_v=Cu#3yh9qMzme@!FQ9fl}oi-bHk5-1d zZq_(WHY9rc)g6ggo^WuyC3$v;G5nJHVur>EgQ5edmEKsfcpLr^23|8KlaHx+vJ0(x z&hVjdp`!hi)>PP9f8ZmxiqBQ4m(#N$$t9ixE;Ygmw`7SeU!!)gSz{NOq8H}NY>-NqgfJO3UDb31zX1R>^Ls?ktz5v9JVBh+mJO|D4o&T0y4?NN(-2M}F zrDcFovo-%zlKEE&7SM2-Pbxo1O(xh^!RUE&+s|@m`kq>Bjge246{jSOBn%~qnHd-$ z`;@Sy|#{{K&o(3s-_&?WA-l;H*b_HQETpDS6FoGfiET`b*9Rb342Obne&{?t?d z<9-f~1!k*&;<$Mr2Gz~06k#%GU2r0G{MTXPK@{kN5%#Wa{X&zTw#!igk5+S033@10 z>gVjk(vOW+?4iV|Xq+`is#I zA4eq{P~~m-*3RwBy<|PU7yYnEcBoU#nEbf>-p)O9C`cIBP-r9Qj1TTLAxb8q+#>}R z)uQEcub_AL^Jf$VkY}J-PLF6&$_X3^$OR(SjlsXvY|8YxKDMNb)IR!{DVyF_DPDBZn7E;H9c zJA*h0aS|kI*Vc3g>3a%@O>bUUjmkq5!Cn90K&KYh7~n`_aP3v)?Npoznyb7Mv{dZd zWZ!{_-gYooK%yUGg_Pa$SaR&&rH>d9g%1U@>=%V*{oXtDbg2XXbBp9B8c z9QQv?5s0Tk#=@}eXI{)MloD)EC>yzKhqD()VWx|=mZe+rks2E?cPss4IOb)q%LF`W zx6ox98=|>j`?8R5AV%?CRe_jxs4WpKl-v83{m~?KXWNDu<{uhAayNuH%M})zTt9h* zf*r$RT31V9V(mqT&`g0bLCmmhjd{VKL9`f?jGZkqOf|6D1avIp9u(Tv>E5MG!4gKU z9k}IvO;s2<(VMbcPQ??HevQhkj$;mWjuLaA1=Bm^IkwXm7l#M|DVrAXRIR$Lh#aSr z0-Ol??n@dP_w7oRI6jLsRt&TiTk&Q)C8@(%`%b=cigX4Qe5*E-f@zH2F{)-6N$|6X zZY@q~-|@FtHDPeBSK^N_8wB6%P-hC$U_{1-cQ~{tmW8TrqMbbUV<}}t!Ag)HcvA8G zrRUs@V3LpOn#__~b^c2#NXny+2Iz$b2ssd=JK92q_@~24***MRiQ6nVp(hYqJ-NCN zNG%OeL!LOA1{{xP4FrTd2zcII-sjmA$HsdDfzzG*?dh^Te7b*$oqsuF*BBAt?F=-3 z*SZ?N4KR-hP(tAdTjs~Ij3A*dJIns6AT~%Dci{5F{$6g1rPV_R&*MGb^0h&mpI|%l z2Sjst#HS1Pxb$UM0O^Mg7LJ5+_yC_*N zuugSI!x-u@K09P_h;1+tZP~1~nA`qlX3i^?`pw{u32hXGV=2|(+mKnGx}e?}$?eI7 zkM}HW(d_5<7_*Kvl+%wM*OHd-MOn)BcSye=H3A{ z!CCvPhOtcE78~Xjq)bk0?h&1i^e=RWUB-R_P-ke#`z3^XN_!f(=I^1-NDk!6O&N+T zNyO)};hVBWwonBX#+u*}Rnuo81d$*|#^A5|dar4o9LS?sHFqA$QaS9yl#{5DRp?z} ztgSAt<)}%Vf0Lg5TJTDMP=d2(I$uh3#H&q1RI;5IAsQ`tClsj>-nA4p+AM{SRThy} zMHqeUZ3THg1w+gs#_P8iZBjMBntH0p0I0nl~$#1R_PU036_HS)=yLO z8lX-MI_0Pn6PfFPlllHLT(lV^hw)wjt=`Pv2MJoEW$q;8uQCP zc3L7Iw7{x=Tu48gr7MJ25IMFHx#R_Mg^1qvUHQPlTmANR!ThkX*tyx;xBUyU8o6?an2)vN|W?_=9&RSmqJ=i}jae)h<&&%Vjr z=dk}&Q2?f_&%jP`;Ddvuf=8ke(vD%3%iFe@!+Mm9Ok=JwRv3hanxd5~yX@2}uC>eO zxy3B0NE6?Ag#`?%zB#s(yI9;^vDQFhElOiADHulvxao?y-W0oOgZK z{s#iA+o12d!9u~k>?1_Okf@A_-wB^%&IR>Aq{w({Z|NsBBGN&(g>XT)F&q<>VFQv) z)qU6ZU03bvhI3N@VSuij-#j%~9wLmmrJ0$lGayrDZs7uSvHrrC;MftF55OqCV&R5b zUk;vm2?19C8NRrC1xyy2p%Uq;pzYxYL|b@Eo#UUgr5<$arR$WB;!l^Hodp4fVzf2P z1l&ayH={_SNaF)|M8se|cSZ*fm-p1IaZETR!-Jw4QE_{_ZhJPlkfyXA`@=~cVc_c5 z1q#vyyhVNk*UeJ>Y&?c1y^JZY60-$w1KdOmiU${p*c-m&L-uaHdpy>azTJ`bE)(8q z&8C2W!C^A)42O)_jx^2M{Igiio5ad_z(2a$c<)!KpWB|ycYnNpxlR#fKY<2e{9BLw z8;qSDYyhzkkXj`mnD#5ianBUHm~lhe2MxpCP-k~+M7;{#SzjBa6BmAhyg{~yMe~eJ zwmv!$`7Yx=`Fp$=U?wunIWl`8pHnHnauGAjCDj3LV^vk!nGUm$Z-YvmTK=NNNt-j$ zD$mDWmtf>kAQ%hWXWF(MI$E`eW^h?BWcH1|L(zoD)NkXNxGZC0Y%E5}Vr-MdcbKS>?XI(zA9M3Un05-3rrOdD1UsKY6JqqQ_SO~;-I_*q>@&Zz0gvk& zWWx$*qI6Cx@Rl|>v~Q+`h>;DfbeGGqa)yO?2ug%Ojs#7hU(Sw3PM~7me$XW=8d#Np9L} z?QRe~SC)vxln#_6a5U8GGI@Ey{-QA7Oyta!6?@Lu_jKjPUS~(`^5-+}^Q6YGG9m6m z&`Y|)CFeDxYnX(isa`>W{3~WXQGyL{jP<__Mjq%|lavq#Jw5z%gMMWjO=gi0Mt+0E)734V-sFBTVhnVdAWPaBPqvS0m z!+Fjj8Z41J@ylq%qX}r;^K=)V@w1(uB7k+~lGROshj{c`en0qrlC-h6|MmT38#@M4 zJ?U+)t(&;I_$;DG3?*QJ+UmKNOBWm<+TrEK7L;fMvFp;Kc?yy}nLLm{J!eH^YfrP^ zy1x8z)r;%Sos=p~C_^YsD4Pi@M|8|82&=pDsY1nVZ=+h7v(9RYr(i{YYoZ}!z-m;m z+1x)(VeymFCL~-Y&Kn&yQi>MXX_e2{b-R%rGaaROuRFA3N)6tqR(?xQS82w@z20DY zl%6gWSaPkJ9fIj&FlayDknQs{UA~rbktfA`k73G;mV}x1VX2axrlc&FCv3mZR z#X<}QWw8o=$zmDPFJzuNBb=PRgcBTO$$$&Rpd2`P3khAsame_qnX<{%BQ{{iMvVW%j=mw zztlg=Emv_9*g-IyykS7Af5V+!4!e%I zRBY~D3CO!h6ss(X3KUw8dha%d-p=TMtK%%F@^UIPLByjj>?(Y7w+%s|>y8&E4@qc$ONZT5k|N08GjT-`V z0sv7Mgz5J*W6&hvUL6Qmkn}ogaB!HAUQ}t46@-rnsmAq?3l{xrjK9i|?b| zpq4YO4(M~9k35{*oILg1FocVQe1t88UWjjNtaK%fZNt`t1(zb9Ca7Ssv#P~^OJSR# z4S6?+wf>D3!&5!Hnc;&_tl@ZW7xlBS78glvDI&@2AIDT^$1G{&>=aKq5xx*U4O?7g z%2B7v>HD<8&+}GJ^xK%Ot0+^HTOu2wgv0K(WWmx-5!$y-nrDi1nzv-#bLh2j(1%%! zb+Zi8l{OW+zF%6WEH_HNvN4}^bZgQZ!ToS})(hW^k^I;Q#d-x4dxYFkUt9rjzWwju zls9$yE1Z!a=@HzZ%GYX+j!q66;I%+c4H++IV<(lDrVMgl5&qa=94FxR?Z;%TPCB_fdwYUpCX6mcfDHj^XD{s>b+l&&y$_ z=5Lg^RQNxZ^zX@h(xF)&vU__%JCWJbJdpGW^`^0ni{`24Ku`y&vd3r1laf(x`X-}- z6p2a7t?KQsk16GNbrWC3uX{6abEuEA{WxayH^7?*>nG*Lb%CpJL|FdWzwjB21~eq` z`$EtIJ!X;;^7c*+7C`&4x#usR9}LWlLI4dT_Rx6HenHye!Sm5+=fADy(_b zbSkN4)M=K|y9VBW42^bo83Zg8^6+r2G|9iXKE6Chrr{0@fX=|S(XO)XMD~ZQ)V5qv zZE%#euAQ`+3faJZT)gO8wlcG;ngwJw>6fW_*yYkG5sb4TbfM0DBX}7Zc;Lig5AI-+ zO6%6UQ`1Rf;TlT@5g7s> zcC;M5w)p@{C~qkkOc|@_!Dqr+Wmz=VqD3n=;Cre$gQuryAFE*aSv3VE7#9s#3Y zjzJ(eyvl9};|@RR;bwr%s#P6N+Cg}A36~?0lW~L)tFWQ?k^*env_HlbTBENynYw1* z*lpvUwrr^=toneR+W+>Q@Id2r4I|K)dYucrYBh*;;C=UB*? z$Z#d5O&6L$Q}0f-iOPK2MqQOPn=Q*ni4P^0)g>GI$+_+A;hwQD`(CExR5zTQb+@C# zXtyHsDC!Laac&IFfJ>*%&(KAcw!+=~1!Li=7fy5L z%6o9w#6#2OJrxu7NME4}Gg2fv4yX;G*mf5`^2D&NiQkZx1r^X^WX!$g50L2lhMZxb za?O6ss-WmQ41p)l=k`pWibTnz1WZldH-wm^q=DUP&{N+HI`F9kaHik}rpPW&a2PM97ZxX9Z=y}T$-B3I zXghGz(ZbR_Kj|9sVzXzpKV+&L4}OB{Jh#gHnR&fxz%W8&#o+x372^3hikSrS`mtI> zS-*rf0qG$l)$$gt5v6g}awZ#YyokoybIU{>o|{=uy-gYzr)Yw02-i)uMrv=oq?q>k z&z8y_Hgo>;rLP^WGGJQNY}36X%s%pq55{v3OMCHa))_g>#jh%&1S)T!D|kM!o8+;2 zQ~!+iX2)HJ*wovN))peWj-!Fms1b>?Vd5jT<$_$W4f^hrDO#g>^N!bI*1Mu8$zZQ% z^IXA-5CToLE)htxe8+K(v8PmoxgHhnKFyYD*>d$eRAO(}XD=?dg7y8r$g!-op``WQMe6zmSf=fS!C{lj+6YDW?*=<) z&$H@%@n&Uj2Y3CX*XZIcN#D`pn4YL})0LYyQo5H#oiCJ{pBTM$8W@+?Q#W%ewq|)v z*-g$sNHJ5S=wxYeZb+&Tkp8&1^|9H`tYbF9+wVg*q--@Xk0iy~Mmok{&q9q`PV{g? zgnj9tuEOvjoI~P=JDABAC_3YEsJ|D7>ZsSwItHj4^jjn!=y8;kP_z7Nk7KluHG~M@ z{VumZrowVss?5XckjqN((jg%E3kM)%OXQ5qL z)*;|A>2(HeOVQ)_O)$YT&JQj2PKPjCSu}6JcGHz0Y?R;X*>gus$ac?0-Px471UqO! zYw|jB6d8Hji3+B0yR~90Q$mT-l|~_h?V&bHRUp$YW52k+(tp(NU-tsY;Qkhw2VI<+ ztCNu{P;fT>HKGB@KrDjvJW%n0>bTOasLldXvBaC_9ntDlnVeQ8d2_j@Sn>ySZ2iRD z9yTA|Rk6Yr3v{RK7I`odNlB|5d1OXcZ&|jz(V(1pVbSm zq8}Asw9Y%)x!*nV*)H0+b;4zi>5NYrlyfc_^UO2`QuIengCD=v(YMdIeu_3vAvCUf z*7IYQf}`8uT|R&N#xo(xyLJ|iV|J4&jv4n)+i5ef-)P3F%8w|Y;(hvIR&}vy&7~ga z>4lkUn4YSQmWDYVPqv0HMx_{1tU&u7r`Br^Z51XRCzWN+PvGqn4#_;`z(``FeuE}L z%iKU&{ST(So%?w8!x(D15o*!SH!apCRjUO}@Ky4pirXLSf9N8erY48GMZ(Ga_!5qj zsiBRgFT$opiS& zU6O&4U%DvhaGs~fT6FB!bX6l-7A+uCS8jDZI?9cFWD}XbSE$doEwqw3aQ5ZLCf3HB zn1qqKk^CDH zh@Qk=<5!BHJ!`maSXhXaHT6TAN;UU%C!(Xfo^w6UH1y;e zxE+3C*|&iat$@X`Q(Yu#g@B2%F3)z9$#)pj8q(m&;_=!-RM-F!nd4W1N()MEUm-kP^b_T3S0>AzHi%;jj&v=Vtsv5?oY3< zEKfU`ZDidJ(b6@CcKrp-_rv3%rVUG7H}tmhv}t$2UK4KB@7lX3LZ1zB)?}u=mdd;5 z8Y9JIMRLL8QMjsOl1(0Qi`$;49wQOj-$!z*gK^fS)=UnpgtWj$hfX zG5~t~`xFLOrTFNRE4+l~armq@Q580+A&v0VBt17@hR{JbS$_jmcnp(9D-M8t%>TmI zetCG#_s+vd4B2ZA5NtD??+OoAN3h2J2%Y?XD8ah&D{sL`@Dz7>Qf0=>snwTKS`vQ$ zS9w|#lC;h=-He+ZvIbuj6-kq2 zy!FsNu#+3p6WkA|heK7&!$nVaF^m$AwH_0j^G}3Q;o)2zVLEyGTMmN}nzPJCoYI($ zh$_DO4hQmCNnHVaPQV!!{FeC-s51P|3=YU;iGuXZX|*~CXvxUl5ManpC+tjOA-pFi zPlsGi4rU`n=E1Q+*n4}wNx>M+NQ>R>N|ANthHdJ8Q2mr!Bq^_>dO-Q}+&Zka4>GtNR29jK`GfF@GF$_IX|O7BEVO^O+^a2V2BVhUXedbI9#) z2}jb!*ha0e4`>B3maMoY$ue~d$M;nkcV=7(V17A{I#}$DCDT|Em&C~DjTrAgD9XIj z(h*HB(lIbd73;l8#GKRu<8s920o%pwCQAm(8&cIv+uKt+)nX&>ZsyspI=&xI)`DoW@q-gnQhG@`;0|S}Y ztRXiy|DGu?I@5M8u4xIgCwai)zARSJ8vEL&{Gl42~xctI2QJ- z8XUSk%Eb7ZB2cHOfa0AHeTZZy#w)eBM!aYmm#4NdTPZ6iy2$-n-BtTuLmbH2COe44 z*9&brlQNV(tU}6iIoVXzg=pQ;p~Q0y;>Z!T*MbB(w5PGVE;5%mSx(!_VRqnfp4X#D_TWJ_eaUvg|F<^S=y5 z*Oa56FkkWH{oe=f3rPeHTC__ob}yMOXq zcmF_WBX8(r{nyY&RZn$F7_(J24i+97tIC`1HACK3=hJL5n4Ma3IZoSeCGTp1PEb4M z`J-c?xgAi}A+(=Vu#gQICU+le-OluS_wM>)$6HNn=Y0#i9be$SjQk`VwEK{OADViI(?6^hdLih zdV%`lYGgZl8R_bU%a>hhw)`Eoo)%X|ff>GG%oRBL)xF4IAnXG?o56pB+K;sUm($ah!~vF^v2o8u+Tr}Gjg&lY)R zjQzc)F>khH9ryyb2@6-@mg6jMMqh^5!)15TZ*9jL!;hf~J?=aW!;y4AJ6?zKvkbU1 ziWK6LU!`~t(b32sNmrHLJ1eG(-&<$sOT;~PU(_rASx^I7`;q^rzBJz74+8eRKg(3J4%4}x0o3_L0!F#2^yku$Dyu&R z0ieqYNlT1DgF(~(IvDhil_`|K$`osDT-=xJbYU=qRsJ9F=I%2MZp02ADS*8U0>6jT z+7GyFc|&LGUqhpxI#fPyI|AOk`R*?qiG#smg+eUg3G_tCQTr05xY75xMJz#YR(jrx zP(35>?d~0F8yE$$IcA_fRpuCDcAiqgeL@1l48muG9MQJXyiWsj31i!^_bxR;bXW+# zKCVq*cX+NS(5GnhGzzk>wS_;$ke>aLfhU{>i&yS5p4h0xW8CxG*;;9sW}!SGR!pQ% zp>1E;66HK3498~?5$srH1e#%=7!~9DY?Wdu%cdWktXN?=&XF(B#gL+`Dp+o)auuZsQ~ zZvBse$E@UMnt&$`z5qj)5P{nC#fsBl6hT#1u7*&bE#(?q_iwP|ORk!XR4Dv*GIj5X zbrlrgAt-HS9yh;B_i3BoE=!|qzq`2!cB41y>k0`j!p_$Aurr+MLO{SnU}CV*o-^BF zMEK#q-<^3hcol2NnKUY`Uf*7U{UyF^&bQoV`$FH8zo@H@y7jFFyr?bnS!%ODNt2iE zT(*ok-V4Y~7yhh?KCWKXc`5RF#FENv5~jhsa9+6yf{?X0=w|aBM7;I7yAiADhK#(s zo*R--o8@J23~bOjq*;T#ANb6pwh!RBX!^ABxOw_y)3-n1k4YzPf3V_CxRY-x4XAxK z6QG)}_BI6D8(-nZMwyMVz$S@cE9=#oZ`n!wdULiXLsG1FGd)~Ze1ihYJCw{Kb2VId zLBgI+ktb#r(Va>a`KhVWA&cvEYNIH-X;bnO8tV!UHuC7~J+^2>h1t=PhX|&0DQZ5~P**k~(qulHwRY20M$3NAyUsDnj3!pmGMvYFG|zZ3cz)d#N1dJ{NoJ*R zBZkIx5mY(S-%DnJ{-@Cb3WvabVJ8XG28gA<{16|xI_&})3zvkU`1=ckoZ};~ zElXI>7f?xm#gnF9LPLGk^HL?+GYybXw?K!NLgzkn`lr|-#22uIaGO|JBk4DP43e{A zKYBxF3S1&IAOG$W0rqYga94rhMIx3dr6b9_3$%DGgA5w|fxEYN+HI2Pdf-#pe;a!} zaF>8UP&NG*`O#qI0U$qtS!PB6g@cJB7x{ecwet}r*G9awk{spQGGa{ifXyzRn#;0q4Vqf7BM`korfMQB7A|x_nIy9Ov4Y=J>MwB~Xso)@iX^T^14v zJdn?19)e2Vx*+qql!Q_sPJfblnsDVg-d&ENy6R`?&^CBA_DjPnBojAY(s%hONNRg&kx_kNyp zwyBDg9zfpix7Wu5RQv;dF&lelQ_!FPs^RzG{qYKzi~fU}+nG1(YN*ec=&I@C;zW4b zsrA}Facc`v2x+!A((65rPyy}qHu}d-?=nE&P!fjb6aGWD$6c5~r6<6qlHcAQB*5SP zjcNVyJwHDqY8r^)l~7?;m#{5p&M?Fg-oR2b=qvlvRfLky=nB?Z#p&}QN#w63qC;)_JNXNqYr zDl_+np4cq=4cWP4-%`DOfrHB0hLhRUiL-k-dQnL%`d+QD&w2OUwAKEF$m%y#Y+2LO z$yUd@`o&`oyfa4LTY{j(gXb4I%PkR{>L#We;tYqO+CiIkW3z2UwY6hQbme|x5#3Ot zcGFa&OsyKiV|b#GqYbbUFH#Dnrq-sA**-%#$MX+ml8v#9B}@(DIVJNv9c9DmM;Kna z5Hfg9CS>9(&dAD?ppp7GK{G8UHixw`E{CNufh(13U@T2PwjovaGwUg*XQ(HR(OL6h z=k03U?CR#K{??4a`4tK%XzJ%dou30(UkdeKIN(26B5&_z>S8Zq^v86es{&{h5$Y{W zta>e$0AA(uL6M7940g-iR|cY@XHt&uL}NKjC34C`fhySyH&B{=6FP9gmv%W zgQrz_D+abJwTN9SjgcCpL*PLx7dA{MIY~ z-Y@(_NX69Vr$K=b0#XFGA&h$Tw^Fww5_WwC?lZsmd*kARh9 zWXKMWAy_w-^K=y!ku1<`?FIi1tHLON6|ul;1}k^fMmMA*;RIz^M?O_f#_d2#AgR^ z$S0796BjlXzM#NAz$T6kYU-u1mT0cauoa8bdswENcLl3pgzzlhnEvA76W7sZ=buTC;Dg)R2x}iZK+Ez`MVV|dO`fbWL18H+#&<>Hy)e(A+shhyr-!YwZ zE*?3L-+6H;l6>|c1gjW2Tz>^eiqiS@bikCpYC|t!-KR^{C|m3j7Q`Vc%^l=_&!Goq z1OISCKRG02?_~MH-p<9)=1+&@qX-fN#4Ixp>8&B`nRo^1GshImOb9zbzP=z?6g8}1 zZ-$@oqgLSH(Rb=&?yv{}HCpvU_087P%?lLbD+~B(s6B{7s1=I_N{^-I9c1kY?F45U zL3`i%CiNNXEg8oRh!(`KcS#i3b1^C?WjEb&Ip1;5j4Ie--_1>zm^2PN@^V!RY8#2< z_Yrrp7Bcl^KUqP|^^6!0FOX#9^djOBy>^Ap{l-touoV+13nl8m22TC`20a|i87^Rn zwMEc5Sh>}9^$R=*CqLo!PkjK9h<@vg{xh8Zq?8Y^;uoM)W>1K$9C2b8D;DM`)(r$M zJQ->-{X&FuGcJ#y$z#-G%lietHA*D-Dv^?GEo=({+2@ZuU?{>%&JVCsgr>3pNP98&c`? zl42Ts3kIqM<=|>KCUW(?|JGv=PP*{qqW>PJ2PSoX;gg1`lZ&PCFKqe;N*ibp6fzQU zqHE#a;ON})v2pa;GMl;2&+^8qmGx9-s7MbV^5eb|*g3b~YsG{p!JwgVKZ#H90~cl<6T1!qWc@}A0NgWogV&T1u8RoNnb%*HN{g6UpwTD ztM8y0^%;tV^(Kgm|DaoUWF3J0(wDdC)9<5AcP3GETV9j-85+ZG>cG;pi_?^AOcq&i zgZA@BOl!ukZd(Shs`@-XeC@wQ_|1Il+(kg^TE(0UrpbCPcsK{swc`zL_}%Y&mF^AE zA~`C40IcwnWOoN>Sgza;t=L@Hc5n+tNG?AGCEQSEjX-@KzXyp4_!key(PFNE#J7vR zn5&Vc@t;$%LZ)fb&%et$V!LnzBnY`T2<5*P~rj!sGE2jfHkBu*U?CDpRnT)@gP1@uV zWmYN{?LUb(Q-4o6Q-)yks23Ug5KHYxc4yzO-DHJd zix`7jES~YEgIOXV7d%T`$X`rslykGnA2Df=JWoBCl?ojYi6Ug>xl*)o~4%DXy)mN z_VD)X9wav7gtNom>ad7r$HzfAsIs>0gaNLj$?nj z&S5#KqkOJlQ1S-bd>{8Biu7h=4A*OeW7 z5}Qz_fx1q*fyOcIU|K3;z%J^5Wxg^FIUx|A$HeI@XPj_qxnqC}@E?^Rrcd9Vj?;DQeZmHfhiJ*UNG+ha+l1o}4sX|GV z9Bba#eWS_;KF%-|7e^kR?G`GB6`|+AtrsH}trsm2?GrL*;n#=i>P3ThVY+U&K)^SPIY8M2vVS{ z&P9VzchHJ5ZzGbuzCFGQ0TVkwut7M0Jpf%L45T|KMw~q88{GL z5i>14=&~)0(OMCb)(hWt@;)RraXO~sbt$tpHLBc_vYgir(`_udmJ~Lfl(ezTAIqtS zGrKe;jZx_+EalPD(%mtjy>OK`v$EU#?rT;{MR@xIdTo`8pFrO?XO$~a7XUfHmloN}%09=8OSD}umGQS9fkZkNrfm7IlsKo+j%MIueKor4Cyc?I7+E5M4M1fm^-h5R;))6 ziPNmFJ8fkiX8ZrdvxpmW4r>l$jw-0h?IP&4P}uw&6UO;QXDX^*JN1vx@b9W19u3We zZUT7HWWUp?MEce?LCvCG;-WjuzDAC>@~OZse#cuYsm{$z%QRSKtG98$)NHKKG7CMQ z#`)4a_j6vF?6d8Y9Q@o_%uRZ|&rXT*bxuJW?Lwr4KY}##77sD_phP36z{Zg-q@q}!6Gt{&%)lh$Ib_Utk?>eNK$O_Z7B z8~cmX@)))u>dMyUp)=&F1D|xbTBk1O>C06EYJ=m(aAX7*n&_>c+?AlckXPQ??dqQ} zDNK3-*gM?X4%K_YCGVWMe^Au?UnuH`?pf0&%E>>kOZqI^=8lqIz_+35^u9}m?8SNB z*MAG>1L}T%#EpOTo`0cfl;R(ce+}%t#}2IgB0Q_a9uRpS6GWzhIvlk*W#Os{mo#!l zAW=HR@L*UZQOF6~hQ0j~hR^q%1HpV;pemp$pml=A@r5X%9GMJNyc3ueUOW*!`<^?J zG4`n$)#CA+1hKHEiOsCDlmp2js6}~2IGfug)fcAE@eZHMattMnximYCjvW^Ed=UkV z-JvPz5R$>%jv``k5Ti8cV;g;nmF=cOGxGvQa~}$t-EBHb_x6hB-hC(uE9U#i{5|R( zY8mG_?HDE9M2z$8ilOe&^X^S#kck`7Y}_yN1a+}ITn_zj@cWaLf8vL&fk69$Oi+Yp zhu8zEE*sGb1ESA#o}MC@;!FLN4Kd&|!+HlCg#0%ampOL`MH8wR>XiMaWrBi~ z;)$0ntKP{)98E^@TrXmLzRFFuKKpuf-YNTBkI@3hi+-$V`IGUEWOWs`X4^OPR&6K7 zvTuSRW($_k&#B8gJqCXS<(}SQid{3kC;r6bSK8H~^ris3c>fGB5quIJQRZ#pUOqu$ zYPb!ylzdz{Lyr zTh#w#sO#UM{^|;f96%irK>aO%IxR&OykN$?zWZ`L1{pge<#zVz5})4+u=g8p?RGrcUUR$@K5CU!;dV zd#U2V($3VBDZkj3P&p%8f#Xlh=6|DGzHMfnsQX3~@~dc=cCyBFc-_*Gz)3Kh!ns{z z_u?ZaU)SJ#Js2|X91rK1Tq4PMrV8&{^fpJ16z|rU+-#SVjtrS)zie0`Gm9TWJ>xeB zmDd+TIkYUym=<_orIZ4Y5-)3^A|_c2D0g8f>M1jLR3=R5o|dLhJLOjlxJ4fra8Yl0GMVv>n7&bvk2{`{X3|2CYU}bV`m&w&e!K>@Pj_%fSB)sI zX>Dn(X>Dq4Xl>7}&H>Gd#jJ_mlMSNQ;WJtByoTI!iCl!Zo8r|ACy?G=$|vZj!hK&`U8uXFa6uXu7S~{+5&GR@VC*z#oIilzSU?}pasE}R| z_owoQxFWQctUydC`1N3)iSB8*Fj;yKw=PWO?@zqgSB*C}!0pc0t|Fw2eZ=JoE&+B) z*o|2T9>|tTWC*v3HfqY9vnCqeYdMi=taSwg@>1bQ%3-E}y}bLay*zYs_BNj8_P?H- zZJa!y#f%uN4?nGRJE$-667|5Jo*O)(3+7d+YPDjK8M`{AKRMCPjFtl!a&Z64pjavF zS6F_&FY1K=d70{$2nQG+;Ru4{MN_II<|q$P-Qc`}vW2PMv89~KmuSCE5%`2$mW}iA zj6>6=Yg27TW_7q(v`u%@$%t-uU-T9dx*3VKjy3rGV?~}A{m@r6`nM!;gw-g|SGnVw zBf91j2J=Qv6A!En%oB-g?(F(eEB zH?uR6wt|-<&~)&%RCX$TW~M;lc_(inuy1@0P0dZlkPK6t?btY2RzsieYwCKyQ; z?nIDEhuecse7r0Wu3C`yp%=~=t3+);*eABbHLpDC@V%a=f_|t1>v@*K#jg5W>Q>td z`}tyoxy+nR_)IPxf)DRY!qHhVj){^?&C|nii5Wss=1tUUBpiJ4r3Q%V~7a*-p{3<+R6vhH~nE zKCtfR5ADG4y8r!1Sr5m)O)kG_co|b}*C$RlY_*oTXDaHN4s`_sKP3DlA4NKG-`tOJ zq13UUfL50n{MKY2=#5eWOxEUqbQc3Q3p`$fa}Zo!-z2S&3BxwSykCW)hbJH}Ei^i$ z6iXbe?o@zm#YaHy$VEk#f`#*9spnteZ!H2%vGzeQjz1~G;DpTxVl<4XlAj|zKtG4Q zhRFIbsyoOPZ07&`#DTB&MFm1PQq6#drf_3X^8Zunmn**3ezPaD!oi24%`c z0!`7{J~QjZ&|~p*5h^PYKw0yU>1~e6D*J&*@F9HCwJ>$R|j!Y zzt*#8Et z3nlVsWOax9jUK!x^u=7r+$6%Z&i>o`Y5wmKY5D&jZ+{)s<-Wa-!$_xehjdGKNOyNC z-QCh4-Q8UxAV^7vbcYB63X;+Sf`Ihzexv)iXZy|5B&utiTml6&w{eFs?_ zb(=uYM8VsJ{L5)87N$w_se3p`XY7c6)|PTMG9Ry`-6M|icy5~Sa7e6VATo$Q0~g-0 z#{wdL{4K59#Qk8n9wTO2MDKwCXSS7PQ);%~9E93>)?G;PC|ShwA%*vbv*33thKqYw z)GOs|;t95E%>&#{YoB;;03$kao6zLKY{CF)rZE1n?^mxdZMTjnA=_MXR_Ul$D@yQ9nJ3k;#oaeW}>f=E6x(LpsjTaJX%U844jSM?3y7 z_KaYsg*pYF?_qcr?nD*5jkK@0l#NFgWICU}y#GA&p(0X^1#-lPaa#Etbi#-9*W$%A zZaLbmh!92Y{%QcdF1fEEE~aW@Y2N)@?X?j@DE*2x-J!;8Co(fKvUTeNtvv3mVPgK#-S4PqRg4@h>~DR8zbaZm6O3y`W@cMwxG)}sWLqJld=iT!Z^DX^SeEj4 z_ipgt_!7Uq7iIgYNkHOr<4Z9u zkwrGAFpo_O_R;61sZJdNnS$HJANL)E(^dK~D=>YPNgf4qlJLiomAR+Z(4KcD)HvWN ze`R+?oj4rk!b2dq>^<*lp2|kL=Z~jX8x3X!X6Y{ofwtHXjijEDiNs}l@R1hI+V`eN zEoU~aIs!~N_>W$GhbgN#+x-smW)lfI4ZsLo$90JkAfBO_fz#f=N><0RBzq1!V;7&2 zYmFww5w20Q4@M*%8KoKMZ-CR5HhumzFo@d&yiQOjmu#G31{I$Q(TO8)z`0JLM)Ff~ z8{&lK+O%X--#ia@&!D|MwP8#RX5N?QVrz%Tg=tLGaMOh;QERE_HC$z7q>*$!SJcAS zLsI4Ol02W%F01j>t$i+D9PC#l6*o!|PfBaOfXL;^^Izi>N_-;n<09Z;t|)dDpn@yl z=kAn!$KjBQv-|A>;1~dV8UPcF`KTC@m;+8DO#ku=7!i&Z4Sf_3q}t2g*Q6R2Xg$xz zHH;QP$fHrPmr6JlyI)U7Tbr)VuD*-nPjjtvedbz$#cc|69eX>2rEC#w&qOfxSvg$Q zG%WP7MfGa5uq*H612)z!8WAQBjV61_F?xv{|94x(YC`C9S2Q^-l4FtN7M#`6cqv(M_8seWPHU+)tiAZz|wnb>~= zekRv%rfJ2CAo3F-A&6BB+6m%6@H+hV$;-$4WmOP9BJ6n}gm8?#}5%jm8$ zE>SD;tg!wXp=$$5!Sc}=RB9YX3s@-T{+$)|RROLqT;B>gb-H%VcYeAFYb4bPaGQYg zBL64lx!V}pS^u6|V&$YEgiwO?#N;e4BEs=8kH9P$9U({tD2a`QkNFb}Q^#4$`Lm=P z*|CYR$A)}forG?Pgl*Si;YC39S6XV8R&HWGy) z;goAOxrAMWtVs3Bq6A;Ap`JlwTj)7fovKSh+4Upgb{E=$GTqifnSstN+W51h1<`IP zNvc;o2;|6BJG~KQwQ16qUAhXNZPd85P%4c4e5{;5WV>K1Nd)E0x|3|1HIvL;xk#eJ zTCrRA$u{eHr3h~1;%7HTv@+qIn@8BAc)+yYY{mOFU@R{JIs@Tq-|fD4jM-F8o;oXn zK!h#qZ2t`vG^QB@A`cLpxypjWor3d_E5E@?R1KBDqZ5K8p(gaKwKm?9K3?s3r3BD< zVHoCH<0cxeNfvlkunDy5Ets#MbwOT220#|W$C3D`;5?30*28ZFFie){=3ho;w?^A# zm9so2r7-(W_8MtnC($iP)4m<uytKzb7amQeof^i{{{I&Jt#)k=5m8D&xDRMyr z4P+It1TWNBVF|ySZwlf=w_(WOjH&H&bS5tZP+EuJ8R8Xj#1J0UQ5#hoiGO?CHbPV<-nPs21P9TF@MV{E}*~G2a$q+p&_2%5u%k&Fq;bB+v8H`D3f;| zzn=#=b{q~;4x6SlOnp`u+8*XiH%HaAnV~UDxts4Lzg|cCk|$RSVfT_>RwEHvWdM02 z--S`3ZkN%c^aRu_MZTrX`eCg_K$@k6axMRbDzAzK! z&K0y&H*CbJyz0s~u6)te)??cr4C(4LVe_@Cz?=Kr2hRjO5z8W&?J?f+1S`*WdBmw+ zP2dS4mOk8`IV#p$T6>uG`XvT>vT9OB#5oaP_Rk9v?TH7|`bD8s$lGA%4}`g^@GH}1 zBr20;Y-WUd8Cb&2>2PKPE@fB0M)jjVO%LM>SWoLm;F9EN3DmHF)MJ0Eae4FP*hD)^ z;sGkU;6Lta-cgLGDw~-87W{tg*x9;5yZ(zi<=*?zxm`L9@07>CA zB3NZu4i8xlCzd{Zu6lulbO8AwRy#30C3EnGUmG%T7?B>47+@KPCr`tfxp6*fzCg89 z!1<K73pQjQzXv8eV&u^FSwAUGALQ8WQ7>bJP#(+fAWZU0Kj;(6aW>m1#2^P3 zD+4G_ALkTi=VuEZ9rqM*sVSwVa_PSWA&Qr2pfyx}h&$d{cbX;=_0N*!YyQ}5r?OF` zpi!Qg9roOB0N;23oGLk?c+EsDH8#8Sl?9H)Xxs46RbRz(n&Tpwg-ta%A-2uCJ;5i)-^#06pdPm^74zD=SPcP~#?b`yw0-$CV}zVg|633w%i+asWp*PsE{Y~F$nA`s3`hH272Nc_BqfHRi_CYwj%lFbOP0r1 zGIKP*Cn2Uw{p21i89s5)_EEAmRFqSUXYXrJbjl$?IKS48bp`4MMnUAY33h_IR%>l;Cws&mn=j(?E7!CgU@a~xMs^hBE zDAdX|a)bfuJT3|9J1}R4omF& z&Bdatut++P95#~yWtv%9t*qs&4$ISqtwb&t#nY@V3XLN6P^sZrQ0MLuB{i(B?vtr! zI!*V%&F;Vu}LxiX7qzJ06jn1f{z!5MmFzb)e* zLeHgiAU)3ui3vbO>z4^x4zW+&$RHyi!>$+MFoGO4YI+q1=}M;lfO&WOcpIg4gVpz` zqqHy&!V!J26-O!3jzQ>LS7Igu`KmgA-aW1_k_|a&&QVF@uaa{=aK z0M)m5lq3QJH3M21nH3ShOFXCv(Lk|Mq*rwI zP%R5|5Y~lwAD|Uws3M6=p_a6k#-NZ!GYJb9RU_VvZN!|J{b&c7XT(qF_R^NA@>_pZ z`t*8n8?Rz;6Vd_UJKnVMJ;*g2+qsHOxWdL3;^|FXfBI<`J^asZ{rAClcY4p?^Wnu_ zkC?3R$+S;gX&a|^Fzt+|ZN~{l_h_U)KPza%qw$xP?L?N+=g!y4J|Nt#o-e*%AAXHY zQHi;3Hf_^X9Q%~PUl_4K?1Q<#q50 z7Ek!5qMsP?+D0m#o;`wvL6<(_3=(h2sk20_Rqa>EMnjR*j~0+YtC19P%o2wdq@`hs zf%0>32$xYAmUqCVGa44_moM|8tUSJ185x-Qj;jI~r0*XM@{VZoGrCIIg5czhOn%;5 z#dd(U?8NLod?)b=;)0Bic&Ygu!l>NYOeDyhOoVh(!)+F`%(ky5A#oSkeXgUKL=`8;|;WGGKC8HMxaK!JI zFs=0)_0j2|bc$?Kb`o_*q`aGIH7bv9cHkS9VB|o+9i)F$I6dGp|4QuwbbF)D`n z{xje?drcg!Z)EpM6KKr6x0IBmm)x0lsTS6k((h^3dJ2YYqHBqeWg4GyLUpLO*M|=A zk_iq4Iutg~G^6_Mv2<$RP%S`7Vwc!3nPkrUu=<^WhGS1J<@47Q)Su8U<{ZT|y9aXo zsmtu5mc5^_7#x=ux?4>L?G$=0pLBepl=ak0oG^Fb!+yCFD!4x$vz}1431N%O>==mh zjbP>GT5iluAX!RSh(wVE!eE^Zl z|0vcSVMFMrSii|+qaddMbeA(>l9HBTXvOU)vp0l17dHk(i7D|A)plP$vXW|+`GEQL zCw9cEw_woKvpdG7pLSY6OZTb{!O5K!!YT#|207!Qv&ZjF28LpD;L7XVSnn6-JGf%Xn9F+kRe`i&#^(o9;R)lqY`A>U+-QS3tZrkho@U{N^i(eED^yl3 z$X!-i2~O|hzVSYB)kU&h=Y002VDWBPa(ZWS~;(F)+9d|L(g=-4&fe;kC=b$3o=`lDz+D9G&`|Ig9x z^k33V#^!goEZ1J--->wUw*{Qz!2tyHxFz6`*`ESKXQU)6sB`h=k1`Sizx{{LC!(UF z44~`&D0AeZ<=_F9fZzp%p-qKw4kfo2TF#JfVIjLn>X~PWgJ{?+-K^f;<56W3Q;aw< z`%0hPcjy`t#jP7mB$8twh~ue*)6*BokD2C=+rVfzEo;bN~B&2jX1Nv2 zCh*8$5u87oLn34)b|ti6NHIqAk*Yx~Q>~2|7Xp@l1|*B)rEVWf6D1j4Wb|XKOlFaS zYoc&>BDypO0#`00C$$b>eQ}m$~+|jIrVDxx~B5Q)WGw9IC0$+mp8a_Jl`Da^tF0c^c87(pC)`NF^ zz6H3~SKilt5Xej}OPxV7kkij9%}A*;s1l_*jnS$!dKYlPF-URFi#|=3RIJp_(83H0 zF@0(IN;+VJO49HJ16%aFF$o!Cr8IJfw*)HrK6#YX@}VEXnRsDt+v_ZE|2!%(1FzAS z6ARcI{6T!7#+>$k`WVR{X;m1@gh?9UR~i*PN=lPPODd8o9!zgCh}mnXb6=&KJk|19 z9%1NvjNZ}R)F9~+ecGpOax}h!AgA2RM(czxMAdMZ_S*=y(}^ zukA@#qZ>^>KNSF3_wcSx4GN%T5a`6+q3e!(|99*D<=-GAUeFy?pIm6(Mbd3GGAfvaLbaD*mP<&OR~O)eE2X#ej&ovGXBzG^i~pwUn(T7fVE%05S2iJa{|I> zhQ50uu{2aRgX3Y#%?>OwqH!Ctl4ed>S?G)@E%<5OJt9XJ zE4@&&Ie?aqne^IH=Pe=(!0w4x)C#zeWKfr3eO=Ntitqt-aA_onCepihEiJR7RVlM@0Z0@(wkWYO+qxjXE9d#6c!C1oM+pw&m;Z(^Mv{W zkcszk-=l!3a=#C=iQQJQiLYrS*TJlg%7U5|vq~DDCz}^MzqzW!-W{lh{g3LsW4{2n zTye7d9hw@@Eoej@ShkY>_B%F|P|JpxqT+gNK{0U{>^*~m{62?zLe8DhgVp2E98494oD8DI>O8{VXSF4H- zWfbF@b$p1izWfRkxAfQ}>wr~7K@g$n&9C3!v)6Xk2-QWW6 z$L}{n4sC#MkVE=o5^q?R`ER^_^uFz83wLlC4dOEpaers5xLyC;Q7r(^OAFhZDY=TH z(f?8{q)gThw+sWNLd#;l@$a?Je^o6gYqE*l`P2-9@b&WpL<4Q{-0gDz)HDD(2I9aN z`!|VfVmd(CG|=qzT=lbD9U%q9FL`GD(f-0GYQCacN$;n&rg*-A@v9aRK6}GGyp&_N zm;+j2ih5{DKo-p$GQ_-;%F-aDwH?}`irPiW^`Nzy2}X5c^ zQmJl%9;Q96Jma`fl~kq4>}39|2kn~(cEQdhNeWXZd4t6=S(f3r>ikdjccp{F3810N z=1qCu%xZe~736=@Z16(wi_Q$w1hfnZO{&y z4Bm#fDALiBLm8dIegkJc9)V3dAg7e?xHwX9$l&T7C!ujpBzxw7kV~V(exY!**Rtig zrPMm@m$*}{(Qg~>ndae;t^@~f+KMa{ciZ>E^VDpK5VGVbJg+I(mcI4crHpH&k7;9~ zybwI#^hgy;D#P0XVn3`JNsk8;h*Ii>b^$!(pjWK&HOfYT+&%hlPEKZLfMMN(!{%Bsw`b#y=9cG@#|^IwZQAuZn7|%G z#1v~KOjA*Dk{f#;No~(}o-VxP@uIYlb;~brJWb0Gjk^uou@>imP5UIE3Rj7+!ZPg) z88JS8%eXTr4wIhW$FsS*mdf{Kkje+{BxCAV6_fbUfnw#o!A?V7RuCG){kY;Ge4 zEw)mUAM}LvvbGSTf7n{7QluU)U~9(zi>*n@+`d5kFY+kJ(2(~g^KZ3;{#!%4 z8!TA6(KYQUU{`s6w5>bxrIvs$Q?6rm0M(d|HT)}0~U1_CvWYh z%-+tQ7-FD$$KDSAAl;=yQ}j%;+^{cXoDwA|G%)o ztfTsr|7?SIJT%lTOx%8p+%B;Sz&s13XF<@QDqO!I&QC)wk>7r`FwCAL4s2=B#)e8R z!^%G&>B3C%ov!BfJ%yD-IDWIFcfQBeO1z(4Rp}dY zVdvu$N+#mGu4TFG%df5_;1tx>^7PBpnpQ6esPzt}IqC?|cIoylbYIHhE>97_2EYSk zm^)%22t^r?!bsWY=^@bRVEtsUwbDU!8dm$hH!sd-F;5)lfRC;T1faV=JSp%m{-MFC zZD(gA=K8Nmu1$;(NLN7%in;K#Y+nnnz_>Pmkq4HcVXWrSqRnF}IjLE>x}pnC)?8f@lXi4GTRvu9N|H6lH&eTJO4hpWY@SUS$3qVRx@+u#1Jy!{*LqqFgS zZ}2=aM)2`%w5E-FEa#ya?tv?&_gy`3YWJxQ-0aV8+H@AnL*(m#QhtA^Ti+Ui-|ldj zfOO@=_}BdVZ>swh0{%4w-(Ah0?2cERuD+Ro^CRWF?5-BQ0p7h_jL!$6oRwV8-vfYZ zY^R}jrH7R`G{bcG>f|%fJKhl3A|e*xYOkf{o_feil@uq`Pa)9AhW!HNr8crL3t0d- z);q;XW)@iDxy78sr1YDa_-D{eJUJ@PKhFQ>Ox(xlpJw8)JfS|IjXu!X@GsN3t%KW+ z_EQHpva1>ZB*Oo;2H^A8KA(SgBF2sQ!0u)IWXmL}I5fgPsNt3t&J4XVY~CxS8$=>@ zij_2;nv|GBA3Qh4!X{59H}mVk#WiNP$1^L(?dgB>SvxLMTQNQ@M`L*O4a_RcdI}ar zag)hfAvhtTI(EEfVzzcZj3X6U00F~0;!-~kl&h}_gVJ))@HER45cL^e3$?k!*fE=;>ORgh@@sp8Ph8 zwZ`@R>Afjuxp`lT2L~0e?9}lNIA<^Q$%7rk+Q4aEtEg_!E7ra^j;07_ zb^6NEGut@hSM{dy8G+z%L9SM2RiN4k`%5d^;fAn>BQ}ZbbgaAj8r}lO&bya4hbxbR zN>@S07s9{QX18tp4nM!KanN#)iLHs_?PV8Wjt|;*7l+=B>~2W}Hu`?}xfaqbb2hJf zq&cC@8X4zL_jf;rrQc1^(v43~(Jo9$(oF8}&-IfLkR>Dw0Fx~8kvDwO)aI+KZs`d3 zV;dEC0#q}B&-Z~FGFSe33H0FcGlT&K2V#Z2+ktOSTmNp7Vo!}s>_NlHpQ8pv(DDb0 zH-hA69Wm8!-AG@JkcrrzY{kdM2G>e1hb2~%$ZWh%e0WyRhlBnj34Dl1ZwQ&Kw{!h8 zoH6$51bNlLUmX`}ClPi}d!}aGm>Tk}E(=r4()Uka#XE_%6rjFX{?_*nCZA8~a^MGNwUtE7i<9ZHU*_b!lLx*dei z$<&47^>`%nkmr%nTA=HUiQ+AQCJ%+EOA!wMgYx|?-`*yCBL3$vpeA)=Qa_X(6x|9B zC_B(B%Hzt4CRtr7Ph$pF{Tckd4&mBL-W61NL-2vLmW&|eMUgNwl-DTqt}v#-b|k>0ju(3Nrhd7n$x!@Roa(JCrz+StI}2rjP)*j76~ zFK9U5g&i-3iergQ+_Lk6ocbY1;f_eCH?(Ns)c3@P^c&R`*~3nIcfhx9X8*GF5yr!S z+xLs2Jv_?5Q7huu!S1A${10a7g;{*XTx%Z%2^w2mf^z$A!7zc@?lXiD2J*%PX z+S6niCC>uCxfXtuSfwJ~5!g-nW!mXV=N#1Q;2X7H)nDlF4-g4<6#Q_6sl=w=&zYWO zvTeaoAuJU~L?4k8s=oBFbyhkiFJ8T^-^`{pUg?Xyk3xcHVUOLSW4;T)tZ+)6ZKfxD z(DSzeisDR}9O?6#P+qP}he{WN7M8t~7d$u3(LcY7LJZ5ROZCZ?H|5fLYj_%V z)B~{>Y;+Li(vrVgWpo&Uh{#=Y2u2GP4E`Rh%TSzZ#iJK(FgYm_AD5F=U8&}!(U2oP z?{n6!3T~&F^BYJNwa)YVpzRBa--6w3+q@&#$+3H!mp1I^;cg&u@Lr|--}%Q zl*(}i-6qTLQt5(LFAO>cQ7KKIrT(%YPr#m6888aO}Kb9=$ zP(%t$4-KWOvR?_(H+O9+;DUSk<;$FQw~UO&o;l&^E_#)egm2@M@4-5#DgK|!$P@21 z4z4=(aIjibCrRtJk(U}zdOpW8EO=Lxv7LuF^|ZVJ-iUh!wgiWW_q@ie=CbVg@pZ}f zc^Z*{nCSss#I8^Vi;EfG0$!X7*J-#*Ba_Rfnq&Tto*t-9w6Cu=r01c+VYxk!JU;ZV z__ZPMpeg24@9vX0ScD8wuhM|2f=$pytCX8)kJb7osAh0Yb*ump!mX;3LHFzEFLMOW&mDORLNp@L_$YD6anQ1zl84pK1NPO2 zGzJ1=1_n=c3D?za9v6L*sc1-ce$860R8-2Qqntxz!5G)jE8~7yfkwI$pM-6M6 z407zlT%cH2(Bj>|a<&}A&U+%=xuN$?aO+LIn=e z^{_KIXKr$tQ8(zi=5M5pQHYF~AN3s%b9nRG%gMkq+V6#;+t_dQ>PcIP7M?eD6;B`p zNJ=E+3HOSi$~VSF#C_?@T%wgrSFdc!`=a??`ICH7NGJP(9l;@cW~w|!8r`GWM5vrV z);7lv$As{V7}>%RZ}ChTj2|TzL~U97K^=)p{VNQ=N(;m8X0#m-6n%;)_+N zQUJ_qGFVmlO9#Bs(msrW5`LhLZ)jV z?i2ZHq#Nn?3uZkNZxw=|-X)P}kbfcWkQ2)XFZDb$fINAlb%dG`H{`{RakPD=ap?<+ zs%Z2v%&WFH4ZI zfwmQmqOy0~OXzveAJSlKU_w`{1iqk08*edYe4?(oit_-R(Ybi(v;DGV7%b95%x>q6 zFu@wkXGL0Oq~N}VxB+RRv{YjdjY@&8zD$`C3URHW6Wv&r>@o=m$Ey?y#n%fgu(PYS zhK;JM6&CptGuQA8ThNR$QcPzMM22D3t>K@KtVxb&N#Og^M#-IP)C>i3`i@18&HLPK zeYXSG_Vg~#8zZM4oFoaHStzb#&*0PtnLad7on?3#|@kTIMOXc#=+j zhY}y0ocjH6-A)qLhqVzQ8yLF<3ZP(lTFUMUYT6I{<`_1&9_9ZOECH4O+T?Hn*w29% zR?wbe?g1SGGW(8Sx_l8r+Jx;rZu|R z3IGInf_?~G*m;zlH2&XS_)cr=ohK~4C_^Dm6cn$M?VFNwd&#IS3w8lZUUEFH=9N;6 zB0E?=LZVhH7=a?`;sN1;BMlDiDP8ssF_GHeTIY*Zf~(5?ms3He)PB z3KAg`ZE&zY-m=Ate8d{OiT6o=R%P?cU~KkF>;ZcMspo99i!N!z+`11d$F~-6?cUKv zYtwzy|B_}VcfFDFBn(pex*K-2lW4M!o3*l*#m=^*HTQuRJ2BUD_$$AN%Jo+i)CC30a)i^~s-^aedjy?v z*BXT9n+Z2BEh}DmjHLWEgc=G+H$p z>(ewyO^{2*WOs{*$A}JKs>sk~WMt(p%W>{~S=`&OBx*pspE&FC(*8^UAKN-;4;xd( zNTUon;AwVSVUui`F8)UhwMSu{k}tNWBeQLkGIiZXKey<~wxFUv~L?G7sn=KXyrJ`AXn+@W@!kZR>F>EjE zN|aDYL*c^N)j10%GNAfHeKu$>qe-QeeiD!zlNCSRmSjorIgff&rOQ)T_uISN@0#qg znpaPsM49TOoWxh2vATp4a!GNR6o1}Su3;hZU+m}s(DoqxzTgVWz;-$ew}ZU@a|Ca1 z8X!eG@bfDz-Zq@uui2l5qv&X11FX)tn*1&D+Dv+aa1y}w`QZx_l|R{eE!L=!(6%X6 z6b#$iG36GSo%-;zcU=;(X_rTS_iZtu)!fQ%xe7y(oS8)OISl zOrcDRy`2@uLW1f|)izw7(ZgC8 zOm7kMFKxFQFkg>?U-wB76DKi_&mKK{F?WCavZf1Zt<`Y}jE=pX^I5`+AgZzsm|?4{ z9M04ecoROA%w4g0_2QCcCwIHO7e4CKACKf!_KG?NP{B9R zI^d#r*{WREy&Z24?(-;^ey0Y#X2!gLgy--WA%*#tN!!POZtQe?YdUw@fAbqqYxFG`V(;Oq#Ij&||E`d)_3Heji)Bsr~d->GSwa8GVqk< z4ENCK8^T&jZ14Is-Av+G)$~5J#HR@nB!POSgZtrO{Tw)9l5oSKg@{R_#xSK}{hl+Q zQCp6U#op_Ith%aX}CNgtdO=_lxp!y#lX)3lGX2b9KWIj9*sBb zpdgeG|DBFgBM90g0CX=+Xa} z&+S}*4cLF{xdFp>pzQ`6n0*4y{>Kt0TjGanhe2&+RN%hs-`eZq&_uZ`pw{zZ{9vXk zEGO4%;wtJY@&_-%{_4b`)30ahrEA1%7s9Xv#|iQMjV({0u|e|z?MOedUuB;F4IO)9 z;NQE&yT%6kU=twzMNtT~N(f*!e;Rw4gr7-7yRg`0d}D#Gn`kLah7w z)|2N2-4J>g^eZ4BywcAPvNf3-&2k?uNoCm6J!inH?G@*l zrvB<1Hzx9#5;loTVp+38!IYAx6=)7`gCt9(tqV33ONDW#`c*Qg9p&sBQA)p=!Vs=U>ZY%02!l(wJ}j5Osjui?@uWRokEF;D+{hywBK4Uz z6vlBjciX7#mr8L%{&ds#8RfDPcnL@Z!nwIy=6@=bl_i94c5#2m{cD8sug_cu00QJr zV*EQK!0NK0_xj?ZU;gkMuS-rt zZY8HdtnNcM@^Y`QuVQbSP$W~Zut?_OBP5uCpaI5zK?5)t{6*Gm3XnCc{2*&iG=+F8 zh`A#eALb8n^PP|7k(^!t@{avc<~xcUDI0q`N9SMls!epOCBU&6H0Baz6e&OgtB!>w ztlUkbtPP)ENot&}|Jd$*(o|9!a|eLwcJDy3qnQJtV|n!9=*c{HyYD&zcuPUSxT-l# zEgY?ZK+T2NMq67D5X~mEY87g~a?Dd12|xCOdi5@p34^pg?CLc1h-blKT>-ZlsmARr zII!d}zgCo4%rrcb>HB)m=w=u*1*v@3ss#Qa+eqp@>86)kfB7|^DIcvi>Y1B-BFa)D zeY>s=cXEuUTOxP`DlBFin4lts>Q}J-3ZZ#d!kBnTI(NFKO*goA#$QunLEtMqf2>^Y zhurK)KfA|-G^I=uWGx34~oJ*lbh{QFKxt-%ODx- zA9}d*u1})fzZ#I|(luc)eP_~k-+w&b5@MfEDuf*umhijWp5fz}Y@?zRsM$Abw4|>o zoDe?dfMUzG&c(zPpv}bpMVmK;_20A!z-|GXWMX^9DO~h1K#wsI*>X%hkS%mt(ybbI3xMP4d>RBKeyD}4V)c?qP;0X2aT*zyOfPQ0zHvj_Dc*{=9#X(E%M5gLb zq~pfFk9tAjOH~cD>*4aZT@Q*##AVHIei(Nh`$lf6S%DTKKoB!`2in`qk|0TbZbSgD zWGPz^2JekE+>W|{KtBdr(LmI_Ntxo%F1PNsf5ct=%9k>hj`D^|hEk?J+3aKxf8je* zN@gVfSm}jREHQf`Z~BB*GvMcPFKv^*CMGLDiArf?T zP__h$LO>CUDU<6I7LpT__){MvBuBY$J0m;S!wrD&=1!>tEjnv(W{o_159=3p6?+l1 z;n{YfN^ken_O%-RX=>rj`!g z+klmPvR5E_`qAKoa30N^v0mef6b5VFNn5Hyg3B;m@h74f(JPM&VH{oFg=UIcg*2=o zOy00h0vexQz|NOl`gYR#E21UdQxt?%L{-Pcl2m&JvnlhG?LdjH`g|M8dEc$&Q8anHTh6D;CySRSDN@<5upUe)l{?CqbN9=2TXefcz(Jj<`= zFlCbBN#$v#+Cs7?Ao58K)2@(gVisMfKF3zAWz+jSCHk!IB5gc|hjoMvE`OA}I^<<` z>-p26E0!Y|q0%`48F3o#|Tz3k!FidVt< z_zF6!eDV`f$J0;D*u@reNpMLC+MjC3IaG8})#oeM{r0Abv*j9Vm}!uti)9X3n2{o> zvT#34Yj8WSg&S=QV`^DcP!%_XoirTCTfsXes}gnJTl z9Ii>$nW$No2UmQNQu;$NGGk1Yv~MO!^y1~B8&j6y&_yd^d!@02XYvjS{H4W=#VsLB zI8y^Vrls#=l&Z^^ZJZ2Q~POfxm@&0Ut!#)fKvFrA4W`I*q8ioBTZ4 zZ=zJYDw1!O7HvT#Q`|hpy{eH@sBf(bct}0i;!G^GwZF>5opl!xqlLUwsNJp_9=H-$ zpRL3k8-V_5{b84mDDE8_Q+8$Zw5umLs~edM{rz((s?cv$OeycIT4Pfl!rZ`D zG!V#}D@;DYP@rz^eN-n_-O`x0&}^$LhP?S2LWKW3>ta7aCEBtFo>SU2$p%++G+B(h zbm|k!t4aQr%x`rUq2Ks*F{IBds2O2HX?hVlN;&1}X*}#(HTfxNJecsy`i9ky2+#*i zaUM)NG19VkVYbhYGMKV=wYuTz%h# z3Na3sJ$8hmbDbd6IjAY-%>~)yBsr^sXi;WH%zhBFY7C`qH#%?Ezd*d^`S$ zg9(qnHv9W-c^-UdLcXH%>U)n-%DFmp@w#j9&aetxk9U;|l#%RgPinly&lF5 zMYkl{=OmFH)g{a~ZP`%ijf}-SQ=h|f65<_S7=xS4o)(LTekjnLqU^~aX6dti4@%-0 zljPT9{pl^I_ba&+!`p#p1XMVqJi_jdN4QKzuh*l>i7~grB3R9)EqNPC9;V_uf4kS}3onS5Pm5r8H2uO?I!Oae#(@LW#*tD;%4RJ0)AT3&WLeUl$+FHOH1Z^jx2KT6eo;0Qs<88{a@5Jkdi;Hc97i1M6-)5y`O|6yw8J??}7 z#MNY3TPW^`f!SCc)<&e&I$2woM*aj|!QK8VH1cueHjW7wG!pW%w!I?wGxYeDjeEqZul*Um5r?D=S__3bMjhw6ClqddkDFc_p zCuRp={Say2W65N-V>!_8%^FYmTQkEEOQczg2va_m>?RNXmdXbk&qN|QScuHsyUJx8 zGQhA3nE)d~)VZ1$8^YX(a$rvxbN+N*W*1fivZpA78>i4e^-i0YSf08Xxk37bT-#OYA@dF{9}LfG3vLf_UIa z`O2>)exQu_mFWRqzg1ex{R0n5JHM8=fed0h(*vx2owOFD16RsDzm|l7X5u~51EPKt z*-r@W4-!s97|agt^~0oj!5$b;KJfQS9Oxr{V0Hl4PnG5c?+BHkAo8edwI+6q`IK)J zLADL{6fJ>Kq^)zcEcO-iDbFgtY#ZDuR)U>KTi0rH>>l&!qg5DLAJ|jWga;x%ovX#M zIn1ZrtJtzWaHp6FdLlkutM#!9%%}XT$g)?kr|1a+A{E95*!_BG7f1(gl-GV2?=VkK z^c=n7PxgMaRnQ!D`)4losoO)&M#)wxU|se!Hup$5EEx7XTkY!7Cf;$q4cwhM z>Dwk=Dg4awc5fZBbKE%Y0+$9iow4LV_o^5+>tj*Rx_H^M{WIfraO7R8gr18tg&;xd zDta)A4E+K``*Oib9h2!bZKJ6%NIYNA8|e$rCobwQmzy z1)@<1+_SS%*``&W+&L34*H63N=TwqJChI9q6b%=cs{-psDjevq5Xy`ErVS)= z^9ZhME+F#n?U&ouKmz=W+eI=^6Dt~+nfy)MXnxSEFlYhvDinZ&g+zlPrU8xC<5hEs zBR8U|UPcY$xf8_;K8?#WZ3Qf!U7KO*;#wcfiiq-J{cTLb(;&)@ll&i;;fn)5D?`CXw9&5d2a zsr=f~`Y9aYspaehKxNp|0!E`b*y-v!JYY2b)s6ZJh*AFC0gL2`CsjQ>{Y}p!*&RLF zc;p{Zs<;mW_&do;S_<*Wu!++{5>%1~2GKoC!0OK*kbxQhh78mm_!Svw9Ny9p1|Y5; z@cG+S{J#Hd*0sDsp9z3b>4(Wj)K6|wFWP`!O#v@^oUEp?H}wh3 z^AWDi%8a0w`O^)isgXndvl~3|#0_qmW=?yc^g*!w`(;uAzWwJ5|0ku76h5X^|4t$V z$Z*5^%AxN;K>CJ-ILo1*!bN^1B_@VX2Ra@C>6Y!jnRa1@Kv>HTZylVVv0TjGy*Y93 z>O%_y()A8TG)oM3qki5M5f{HU(~YBxQXtL}uCa2F*9@D%@XcgFX;@Fm%F*h~2k}#n zBh{5!gOu8BPAN;Zd8j78+C5&iW%uN{vgWBq#wc9U1_~rR6}ELVBto(axR)KI&l&yw zWAu>n*)!-208#V5ko`0tNdA8!`^O^~;(aH`ksKsv1Zpo3?srY+)!RGAhdu-*o3Nrh?|Dc;c@6D5Ty?vN zA&n`oNQG&_l!QbKg*ix0sclkBn}*p5YW-|<&999|V9?eT zg%x;URO_7dC0E4z0z!sKw|7Do5M{i&7SC$;OebunESJsuqWsHYGE>qU#;{}<#M!QT z3I&W(oOs#_-IeKI8(MkJyW4(c;bXhwh1H$5FmKngwcr31fcfgc-9qW&J%i)$@@%5a z;YFLo4Z2dZs{KtJJbg91KZsj{&E+EiiIL*d8YnM=O`H!uCC zaD>k?PerJ&x1`}b%k5}KSz1hjO{aCvNg*-5UiU>`$NMh4wI~Lev|!|A1I8BX4p-~* z6Y~=vnsWM6n=k9(h+7u@>APDYbBT1Yxh|Qlq{U(%w4@IdlCCo3jDngWFS2)1)_6-5 z%gX@q*7fvpl#}G4qRX2yVqFlzcFkpy&LMVyoftKhoSKq=daNc z{Tu`$#_dhnOjb;ECKr$U{rnRozh=}$@Lf6KjnF6#?2qz4i@wt1D*zWp|8km7qf~!7 zO(|0=^FIrr$B-OA{s3AjGCvVN8-V22v|hAUl_y;=oXS&W(zzX%k_4AH`$Ln+^%{a} z5j<#;qJPsQ8Ba8cy#zaO2!OhVKfc1JrOW{B=wxVTuWRw2S{Xp2s2_jwRA2J^Y?Pb* zqh6-td%O~${asFP>~}(uK=fbW^d8ag>c~Rn06In8Ox{)xUTu<^5u$L8LjolVGkN!E zJIPi+fEAI|A2lyOknFQT0kAfru;B~*VekdKhnx`X_z6(F5oo(XJd3!fxhIyn(bPQtn=1#{K0XND2$pfmP``C5?Z`A<1;-|uqcaL`Z z0Olm53VwWud~V3h z^j7p=-IkMHep;IdW0OG@7VGN$Bt(!+RfbL_)OM}?(0NzlKqQAq%cUY|SNHSg$pOx{ zN;plhdGbzDKc7@xiFFr_?Hn2mx)(T6i%}t~GNZS%ipdZ_=Se%kC|x9j*naI&%>^PE zN}2o<-1W3vD@;{MG56g;{9a%DDMtMR%wg}|iS438z)_%|<_m-l)mp#slX!WVP2)J$ z_X&0>M=YjmUY1f4^Bc5r5tOK!mRx1{CON-?GB{&VF(=E5a&tA&Ox>nQ)9>}mhf@6q zjH!{!lwVmKgIKH$ke%bCXJRs2i>JET!^7{Rrm=6yOZI$a7>5$y0D9{h4kGv-5mesE}*VT>-1Z;0c6o+&ojH7HP$h<)C0Dox1Yb_D}UJ<-1_c_fv(k*vQpv# zYgVD*?orP6i>vXM18$!H_d|x={{Sk0oFVfEDAEs#+Zi3#> zIBB0kTJ<`W){&fE`%zjFTHB(zWP6@lISg$3M*>|`RX4mr-UG}2hzAQrUG$2y$WV~& z&ahTwWC8VMnMf%)h66d8S4s)hDP!7v5w|d z${4InvNtNFi!uW$V77*>C~tC%Ny#f>KRSiLev&b)W6vmVBE-IZdl*LSAUP|kjOLo# zPXY0b41(9=Meg3A61kv#n!o@Ycgg?92d89bXsD`dVg3_$VEI?2))=J1*DPP(W}9_jw8a3)q~MSc z31A^)XF)gbu0_-Qp1!|IwWb(+`Hd$kw$tzL8IvArVZ=JY0Oe^7Yso&$A}a|BjD<|8 z7YY#veF^$4-)21HXB6uMDzMTB-;CCXFsh(5QYjZ`Zl zFO*3EFvOf?k*FlJ9Z8mAp>7HpX}m;*$qNV zm%}-Vpx{J)Ib9ZVq_x=CKX;$Ux2`pyK93?Od#Ml3j+gXC`;*t_l5__qrWkH^MHvT{ zml7TUY-=B3iiarP+JhV4zwQ_5&%&m#jJnZpVNA~vM3B2VXx`;29gElN)PcxR7MnEW zNA_-nDN06rr*DLh#c2H5l{~satem(?D5E-MALA<)F1iYANnjAtpqtPtPNBzRf7K9l zGCT#q4e25StiG5^p$Ra>gJ?zY(l7OARQ#cReW-Swj?Kq2a& zcxWK`@fRifl;)?f5E<(qxvL*kD~JDw>RM%+bpnTM^+pF;$Q%LLXi|cAwQ$o)$7VEK z-a*JHLcM*)Ya;-2eFZPLsyA6rC`Nt@v`OXbbW$A>r#M|2?fLT#8~dd00SbNzolFyI|(@Mv&$d$sTj0+N8 z4C-f+^3efhQz9g0WSwE>t$0VyEBcoc%Ki`hPX`+-qbQyt#e=a_^|!IaFzyaz5J7X- zZbSAXO$$g}!oZA+!cy_^PzFQ1Tks~_hs8D_Oh-3sl$!yfXN?}|?fj9=q;q#7esJLg z{wSXQiH3NHOWEt{(<&NT0MJ3!c7Ge(j*(UHz7K&Z2+%HJ=M~*?_#e(27r*7*G_t?H ziU%tMUS|+Py!xjd#K=}eQmx(h$uc0yu^5&()e7xgKcpO?( z8}bJY-8^LKi_&E_97ti#kEDH~Q;fQ2AQ4qobAv6!rS}nnL6xx76GQxAQ%xuMB#4Bd z!XdnVphrA{Ur+?l?0&#FHFA2!ABOXG13rIyt522QKjA=6$^3EmjV^~l|!Hd#N3|xg2x-dFx_fgsqdr5$vtC+)92gG zGdKnt*dX@#v94#`fks?g63wsHC&u z6-DAx=piT(VRtH$N1kuTmtJz^PLMM-0a0T!F%*(XxXVeeTL77 z0@Aj>*GUshhaY@U)iOC4JQaP1<9tzXh^f1xrj^|k zO>;x?0x@xtlBTu!MlglH@LfozY*lnqQusX$PZ-^*Od!WD@p0uG!Yf>4f2o6DBh~S? ze$Vvu6-RQV?{?|SqOwRMZFAO~V+B63rSp zfw~;gTD=ucOj9`^!=cQ1YW^eHLyQr&m0UR(z_!GHG-Uo6R(*P>fF@`F2L4NcmnjWC zSTQ&?2^rOg_+5F}_z;oo1kjLB&j@XV8%GNpB{n}essA-#9h-!yXvNn*IKJ<2!TRIy z{KMeiApZHF17wSMow&}IabnE4VQgEeVaX!TLCqwGr!99EQ_dwHhdpPaT()EJtG1uVI{fkohO@g=;m zmt*F85ucLR$ON2u$tBJl84?TqY}0r3PdWT=3tvn$eg)I`*7&t07^@rkgJMhH3jkbJ zG#Izf>s>5EM70Dn^+37dt*mb1DM8Xl=|OV}^p}SIWBPf9OR0_*{n%ddBj#_YQdgL@ z$FwLcg1UQ2NQKg zN~AJa;8)S93r=<$aYyL9erzj?n4dQAFk;;Dk1*DMIyFBz0U+279-ABf!U_@bnv#G) zp8c|)YdH>+wA0gGxTpA@^CRlgevwNLM)^F|8B`ipr!X~PWY&?2;0eSVpS-yE{+$F& z-pFD432zeV?E^c|&-+os%`(sPRT?ycGTI41PzS+N8L^{wX>We8mA?JdISw~A#ci=u zRd*F-O4fHi-9T;>ndU-3p5BIOfKJ5)$AUx^DD0q>9cVXD9uksrCIvcl>@`zFLJr;P zJtO!1{c$@~J=oQXNXwj}p@Msp90?|#e)$X@{WrJZs7s7Jmi+vWpPbBClqVHqQZ*B- z-wT?D;e911F&1h1B=rUDNdaH%x09ok~*=TKJckl*Yf^p#79 zUu@7hE!^W(iOh=rtCub^HaQf4+b34=HVql>EEW2!^NJ9rl01fl#7v!lQZ8OhoWQV9 z%s`nySq%lM!~8op#2M{_K-j><7OMfU!RtS=!9RoNKiNRh^Z}RiQ=>gq^ZyE}T3;Jp z_D!E&n@*qJ0t5!0f~o+xq}z>NgZ~0m@$rj*L&0*(&HRWY^9>IJ0fz&0H2}!@{LwO7 z9Rk8~2571W!{y(#6&~Q*pVsJ4LjJ?gf2%7%8ZFQm^ivi&#Is{}9xW4EcVC5`e~|_K*xiklXN}r(-JrcmEMgG=hKu%VmK!u*1uc&Ec0&H zX;~IuDVGw`)_Ml7xBGBVUA_cqE(s}Ap}}!BoRbprW`a3o_gl;Ts5C+P2c;DYjbTg2 zCF;1_Bx#~}gV{>Q{t!(J|ARu#es`0j4&(*(`}76vITQ7B0iu$cJEGSPOE7hFh#%xF zNBswdmWL-cPkp0F&!!P>a-j5g|3#DKsgG73 zBX6Z@L$=LNfN&^?7CW)dneHyJFA3VnyOC!!gD|OOV@=d$&{TpIp$kG7p^ZaSpT8m+ zrJx#Hl4FzAl4}&xQgDfDEVT(}EIvZBm0q{Z!3l59E&5;As%!BplX^sU!FK^VmTp^@NGf-a1c1DN-|w1`-ypW# zK`E^>T`VoH?Q3BN40j=^hjL3<3~t^@Nr|Al4^G$j`37e+fdps6F&z4WS*#b-O$0*Vwp8VB0H=qeR3QQ^>dET^;Tz=?VA zI!FKq@$bC-JA)ID8GOy%Sdr3lmacT))FwVZ6 zFh_JUM^ud|wBua&Lg3WPH6jGhc-xH4`B~p%!vjXQin>uAw+3EM&znecw8~P!{uvsF z^;G{oWGSc`4yxh7saF30P&AZEFd=Cjos)>0k98Nzc7sk|X0o)JDWjcc8TvBPYcfVG zO05m>P;0KZb|X8ZOSkHwg^i8f+$djPDoPHvo^YwExuL~+#4feg;Bnn+a~H;&R=6gp zQuV9)+R43s9-LYun=(>pacCrWZVz$O;#s%$^{Y76iA9tGonGc%MXQu(Ao~tJu%I0zV<$@suOb20~V)p!@a z$>bWQV6KBG2>vFTAv$p!u7{5o99fNl&PN=ijbSAyzEdbqqZ+~5rCzmUfqAZG=>YV- z#>f`Jhclg3Ys!4hzV1DyyiS~?hRo_i=*kdFl3)ZkF8`qe87D_DNL+#|0roAkW zmU~|n?5I(Sd^oYeLp>Ycr)HuXfYw}%UcfJzw&4ZqB6dK;<0!cMUT_6kdD6AAsOIxR zOWo1jK~FH!+vt=6Kf!)r(T1LvNthglJyp^g{o^t*@!9;r89ADPw85-Gxjo;&kjd>- zX-&7QDWYa5v|y>p($d&OPW2TrRR*t5vq_y;@r3++P= zj*3Si7m%mv+S^Gp4h!3SdNeeUnzNZKfq{UkLI1?OzcVys42=PhPp5y?F@Wj<_@8wo zT@T5sEqZU{+=p$*tyBZ{DR-e;BQKU5P; z|EwkehGt+GSZ_#wj2J@&r(mF?111zkN+fSk%rGzNF} zeX`*h?f3A?q@7nIIHLQu=7x?!3e_N*Vy`IPmvrKTNRuc}dZ=KcPE2UES1VTU-wB(m zAih!t<*D`2tnWrC4f!k6wpJ~@xr(KF1?O8j+C3pI7Ky@qqzI)PRwAkUD4DrozV1@m zKGRpGckDDiIw>{J)Zn|ifarFeOdIEHVLKk=^`7{!+{0X&gFl|YKa;utk=Fn`3&6K9 zv=h>G(EarsEF=Dd-pF;dwXw57aTte`?eUrw=mjgQlydS<#-xZ0V;}dfg+B1-#IF;&3ndgtw!k?#c0dfQB+axcD&l&CXH(p?Sxz2jKB=0DOQp z3317c6W!g5-4bCg0eNMRzFCM~Yh01hi1v2Q6J9kB^%BPl!8*ECoJUT^pRbyE5eWh4 z67~GAPpYgmvy3(PR)OwHica$pDz7E!;~$7^W}l|_HA2%)<^Ka@=f@*lJodX-6AckQAFOmKt( z3<-d<;I1)$owlE~JzafZhMGk0-5LPJ55*4uuDAXfHvh>CLWcJGfDsD1Rt~=&#E-gH z0I-Faexfi7Ao>gemDakZB*6(fF({>bh{$?`3x&=#M?km|%c%U{DFY#_+pUvtHsAO~ zP%PrQBS<4q3(#)qrM#RKPJ~FWWDrM>Buk@0=rb($pVTlZ5~|ZiY!-pe>7idwVz|z0 zr58E%+mEMwB?^UdO*tDn)g~1NoznM>YNTvTaFsY)v6?W(l)S!WKHk5prjT2?=?QS`9{$z+XBbpH5%JFx1?Ht!_QI;u4ZNx3W}r>61^;f^0qwp?E}=E!ZXkvx?WcMpBWz zK3Fk{m{vmi3SY4=JTog`s*L@i%cfVd`>e_tMhn!A%Xb^xHJuKvF&LXGn2R+~(Ywn3 z8~B)Lww%S#IcF$|i+W1Pn_1NXSXP9ZQu&-$Xy-W!O+u}Eb&(g%ceH#7)as3>1Jnq+sK3+-_zMt2*o=e@{V=&m;vb{TB+)U5Z5M}sjP~vwhJ}RF;h@&f5Ml7@=$NgjUP25rCNwP@a}UktsphC`GqZ9_^S>2Q(F@*x)#PSO?tW6D2!SSXO~= zyyV%M-CWPrdsT0Q27SlxsXdQ5eAeb|pEcrk3BpxsK$O(V7vHiTIIZzMR@k;XLRS?7 z4&WQ$^S_Boeg_9TQ$5Frk#2v*Wq$avhLJ;NkL?Nd74+MbUV!b^Q)=%}H9L?5_#&cW ze#vRE#qJRs7GtP7oPF#}My7$fzoB(!-)_&2?R9ZP$H&RX$Vb_Ul8s}|nt+vIoj3XV zElRh21z!0lnNXqps$eanNf#j#26PRQxY+gqlad5=j5cDIwma7B_kB%L&|l|>Gz}!Y zlKq99_gzMEY_3=GB{##RgFZoZmyGBgpXB?0u#b@>xr_53J;+$lD@!11T^`du29(I? zo&a6)boGOf`G0v0E63U2ufV8k{F;CBu@BSB6mi)pz#%=1=K1%7A_Dx4r+QXO*UI?G z8EO9w3(a*zvbD9D<7Z^!fR+IZ;^7Y`coz?v`qQqcCg)hTg;-sAFe~~o^#cidg0l(f z$^@uONrw|lnxCt7wWztGywN|4lw_GAdD!$K z_MXpw@Z!wHECJU4>VC^F2~+?r0VK;;PA3}q!w$y$qcM@3>nj`&AffM%-0(Y_89*SQ z$)Up&IxWM?0Bx24Z(-#>+K?+MiLLvllDN!f&FY^6nkTPcpiqa;ze-JZ4`-qc-0&9RF0uuoI7Rb_={ zA(B%mi$)J7+XZCJ?!fFW(n{;a;a7r4?VEptG;Kmx*ISJ(nSXGuT1s&{8<+p>14RZ8D)#uwWN7jf3Y3Iz){L}D&;uH)ak4tz`#cOy&@V8{rYIgDh;wB;H2uzX^)TB> zm(7mIBP_7)wxa(-!t~4SduX= z7FMQmQ7xo-S}+CX?{g@h8OuDRQ&y)oYpGbbkc>r&&COQJ+LtqN`!htp288c*M@|yp z84R{bM{@h^Q|7(<65bkTcxNG|E?vxoAWgZkPP84^>6EA(nHB$gcO10 zX%ZidB~vj!)3QaC6S~NLjEn7=Ht&{fX`@(IRBW54?V9b7JVQj6QC!zH2|5Y^dr>gv zGY$?0BU4#y5Jx#xJVD;&I(kQmdBp0oWd8!DB*oesy2#%Yj^zlKmFBh`Z8manI!xcq z6F97Gxi+-i@wSMIYdssX)EJEjma`@NW(!^5`jZ622ogRW==oq2;&)XMI=sH&_t=EE z;kv#rz)@&qy5qxKlbvkAjh4c(zijD@>IT5FtQJ^jBdGWb7qoy5r7S|18dWl@-ACxw z`z#<@cs>FJ0<-#A9uSImf4qHy-`u{qm5rl=qP3&l&so@xaniDY=vCmV3x&=QN)LbVegXpJ5cD2HrH?G(Tc zv(?fMcEC;}=%}~kVm@u2s6B<7t4f=N1FySY{#3gu;+H)?QmJ`uW?!)BWGNwWl)q3c z|4eY!-GVJ}*KRwD`~_;6eeQdl4^d6^n%lK3E+Z`H@o7#|PS)~7c`4L^I|?Nt1q;kA zgNKfo%3m!om1AC0;aJL}!X|8S`j^x;-RO8E01qKR=cQD#=2ILytul&AWFMjq*E+H} zUV6J2kW%>4KCuMM|wLdbwrA6?zU~CPJm3{wkDO z!EObO+gL`28M~)4&^FvG`F(OA69Z=TfGIkvJgy)nG~r7^LEb3&3dZm{Y)LN`>n}zv zWesqOhq;qDZO>LKtn8=yP(3U$fxtj~WhcBFyEP$hxwW^-z`S0c&Qc|tL_7F9Db_M* z=zqGe4wv%C|6hDOX)yn++7ec_k zX1L!qi*7|iTx5LPi?{oPlVj(_8N3d~j>5LSEeks48n$BP#IR(6o%^;rtH`m@e>_Tw?XL=-m@MKiQ|J~a^Jp`2fs;j=t$`Z*2jB^ z^40Ya!LQKXX+>aPPTUB z&!(Br6IvzZheX0A9rGu!1QhBUWR5>hOC={Pt@wE9&hK zOul1@DhN%0fdWMkY|Y~J0orl%uO#y~Swr`Fv`$g)R3|e5@3Z-jI{J4nSjy1FRA1LZ z888m*hgs?|v+Fb^f)2ih0c?97L5v9OpW#1J>maLHET(T9N>!vGkOh|8SiCnK<7SaE zsks;RijTIq;4qx*vWC6jDwpe!wdMUe@BQ5wYnl#%`YXKyWX^R9lIs0tyx{TB+e)jO zy3{_5D7Lf)PS*;tlMQ^!iyEjv-qA!+4G1gbB49kce9|`lPq4=3xe2`yhHLF|eIdtI zG3LTI#de7`c@tLcx!>$Jo7iBLcm@|X#J;|NNfXhpj3etYu2JZ6?KjJjiSgQyN?TOb zh&@gD`R+lO+?VX_kD^tDp>o0}>C#2ysEH-5oeS@(3n{2GzsQ+})R^Y+;X<#tEI1@) zmLV7g)PNakx>S{hxX|^v#?8LlgP)q2>T)j?0W&wM)D3zsp|?hV*R8l-_hWgHFj1dm`pB+_>V?JX*;yDjJwx|Jy`h(4!vtS zR;lLC`?61q&p?KxPdBVmKx#JBXz%N#!$!MIp5rW|Slc8zkF12mayu#u zA_?dB*R$hre27#p^>g0IU}+5^NL61qI@E}$&DbgLK?OZ#&Fnb=k zw97K&#bp|g)%L0>iRHt)E*j W;lUhBBEB)=5Vsu#^|-jC)_A+A>A;v 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%0Atv{A`#6=wDL&i^ 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 literal 0 HcmV?d00001 diff --git a/lib/w3c.jar b/lib/w3c.jar deleted file mode 100644 index 88faff7d858adde2500cc2c1a9cb4779adfbaba6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85340 zcmbTe1z46_&^1i+(A|x6w{&-R2uPQ7x6<7Wk^&;#-5pZWDBTSLg7o*Gp7)%?d-VVQ zPrWa%OZFqonwd4T*X(^O%78hGo$SesZHn8|rtn6z$N8k}kcWk}vy(Z4k(Gg?qqV|E`7S|pJ`p$!bWt&~uh5?Z z<^5zd+R{?YH6si<%j%49l;7uNTwk+cz4jq8X~BH=t+IhDo^{*)_{+^lS~`6FmF#W( zS)r^PG#SU!lC8khC0=?m|4k3S9JzB7vRWlqX;XN<+2%CJOHc(c0!IUu{B@%sib45J z)!h$l@&hRvdu1oB%p&`1%n5M0${9R!+L)@&b+o*1EXpq~7Tas%Srqcb zFs1d#jgK;6n00jRzZaU#DO9Hj;0N+bZ}Sd2zKo4o<#BT2iO(^>zBST3yjb7&a=LSt z_V>*ZHv%=EbAsFhF#wkjwKPwf>*6ltkTgN73*FT}!Pt2Kr?~1@f^caG=wtRMo zpdcU(z~}D}ynf;|!v6+W-N4G(3fP<-QK9r`x@dfU>H|~xF}J!sG$BVzeGwfM1XbJhE zQsb2w`${MH4NAztW#wei-DqI6XtA~0a6}+Lyhe%3EJ0qm3_zFQetbud$_>LxU|&S8L++ z6$Zw=x!xZs@;0(bEf_u*a(u1w@Ve&%=?=y@qMvzJlJxf7+je_37=W|~4#+DLK1EfK z(&^MR&8z9pviq9TN9>0Tmb$aX&m?fo8DiC=tlnjidpMuBLF_|6y275!8j~651}7j3 z{~i5LT|xOfSJ*ljn>eW085mjEnEfJ{n2++^Oz5Kha%qBY=R$&3^W<<95N|r38TvOd z4J|dOC(!i7W`J!@YMy|4p|6o9hSh25L^_*p4PDG$_EYkvuXFZL^>Fr}bblB>Y^~gE zF4WfIW569*AurU&j)}MYlC&4yZ>jZ3Qf&s(Kg-yn4|%bbda)+IP&XvS;I_PdsISaX zOaMhIO{L%2iPT_AeYd1!2a)o*u+B?7o@p1HhLl09K|52cPQ7yUtTeN-^mT2apjF!h zjVgxk8y4@?KH7a&`e?#Fi#Kz)VeqZZ$2Uh}9Tebo4SEhbp)m? zZxz$+EXCTg!5Pi0(9MJ# zxXhjtG$HIu+Bq5nuOAu}VI3PINI>U|R2Hh7&ryZ8QqOz>{#_|VCRjM9dslwhbFA&= z*5g4iKn5P-8cYJLKj5WJQFCLZ+E-O<1#Gh2J5tX<)fh<* zfZKMw;+}FiN>UCcu6KvI%YrP3hRemtu$CIFs^WN)_x0SsTjH&txxE<3TFPuMB2oYc z#N=X-!?Mvt=e_jqyG!j=?v=*CZrjIroTtLBI{+f&_eTsV{*0lriKEG1_(gRB!x353 z?5$$5aE@Rsr-Lk_K1>uJW=xD=V#SoFq}&G0+<=RZ?Rp3FiBgC)A|z~ZqK2*M%-Pqg zizo<6Y#4aR3y2FCf9d}H#=1|u*oQE=bnRN`V}T`b+EN&;mD4HKtM!LWH~T|o0r#7h zg<0?HIRN;`9$xqIjwvz5jfTkT#3QPBN@ZX3+gNJ1n$hw{DatC9Zf0DXZiDO&yvX%N zWw>0UtKfyoZUEiK!jm_F3^)XL@o5;&xwCoUyN5-t$$~p4WFQj>mWKXV!dQM5wo+G% z#uNSO#a2cqDy#FWt^SL^wg4KC2&SpN14IVc)%+osiGPQkvxB3p!!IgTXqN95L{5*C zL+pCCN=`yEl;;y47sn!qfld~FzSW|Mg+tWD1HLTY`3M>UAch#dcz$~LXt=G7ubsG) z*#*50y$P1jkA~}|CmulJuCwP#Ss*HcVIhNqWXC>fICbKjzHffIu}@hVo)_)ve3NzeZuEWfve0J;VHq0Gn7jaVS|5G9J#dXm3M+{@ zRXg2RBG;H4%b<^l0aEmsHh_4%`Xgeb|Bcv>+AnM2_$$(!qgr9RnDBd!m(`7m{cI4M z>itdaoX`V=J9AbDjY8<}d^o0E9f71r#Y}+DgAd)_?0@5>XWKAmIEu_9i(?9*M;re^ z`YlfDNldu)!h&Nl>&q~? zA?ztORn;6>>qwMe+Zxy!=F~JQ*OHKz(4;y!mdhE?Hf^BWop$EW_8*sGBi_4hH%I0? zsJ(GuWlg(2e9*9g%urwuc$3P)RAc@bgd0Z04^fZ@lF~VHD!?T<0e&B@s?y2o-f7(G zQ)A!~-ecg*mgHui0wGHKW8hHze}JfAVeDk?_;<>IGb5*u5HNGSBmol&{SXI6CnN=< zgCS{8Iu&I^5XE3-d;?fc@}c!o6-*wdmh(C- zVnA5^Ab>qO^)?Q}NK4dq|1^l)fSl{-K@Gky;NV{O?X0;j0R$pW^`Q}K7B&&U>|o!E z8f*52{G!et@`kligxYjU4nizzRTulqw+rg{4qYFM7p9ptKJ$LD@PbJeC=57zV>Ocy zaJ1L;$=KA1EZrtdPkS+v@HLSI8i2kGLNE?h*$R~R3-YiH>)X=IM3xr z?1D0r^0t7;So{&Y-y|K2qJf!-iiO9orrTO^MBZNzJDt9USlPOEI_*1%ogylqhiWKA zT3Sh=SwNzV|9HntyTsWF_;UQ*@)x!{|l5UXB2?ZM)k8+mW<)M_`5k0Prd1B4fi zMv=<=G!qDJ^0N${e>6J&%5?tjUTCuR zT*O}-Tz~Hz&m1hE6cU%I-3}77QGGBU?Q>p@J`xYb0X?-J!B%xsd^ zo>)ML&;AHA*>6Hr(aOMG)Y;*G+B)ax5&14f7yNWRl;7hC&!6 zLN;4AawJdH?M8PMH$GC_dd)jIA*^^V*S6F~Gk*T%rJNNA30y=rC-!sfv`k4`?>21X zO8Ax=F*0oQNeApE3N2~+Ut`u>B zIN$%jVeMdRXX4;wVe%Ih%t5>1OJG2sw32BSI8bJg#g7X^<4Hom@Udaw!EH!>qDBp9 zYQxKz`TT|N;&48WI;UXV^SJdAllUCdVh|F=K+jn9Af?x2Ge+y)+Asy0Uq`mdS*}K?x7LW1C!5oVyWXN^&jf<&Zy{Km8dsQk^wv=pem zBON(O@UAs!R?tK+Z-rf2>17p11veL+1v>&;dCwv7$N0&X@PEn<_vqmrzE?MwNM)QW^fr8i-U zZ6(S1D~q1pi5s{P%#2RsQchLi=NBVQG3|6YVuJ~dobY@_YbRo!$%u5#U`3{ zWTav5#%Nz0WiVy$Zux)_mvM#L_|0u~YgmOVmC9qdFpC&-I-J4#dS4Ybs0z`U5jv~G)K5^_NFVPuPRKHy&NJJnrs%l^fRP| z>XwPMVXN=<3`X*bPYZlHULU?_^fIM8NAunqD4o7yREKuH50@?l+y1t$8uJozSkt;1 zx2BF%D6gKn=#}X_Oqnvj>b9f+(iGRkv+4PS@|`bDXx&XxNH7APa^))2*v|>JFPcfe zig;T$4kqks?Mjr^L~pO5BS>2|X?ze#S_6Ep<%ZoO5#@w6EirA{B7*6SYsb5^H{teu z!9LR?&y5E~z?)xM1*(f&%Gs%d+f$8ujhX9maipB9j9_bXW$iqR`}`Y(7k%uI;~TLOkQkV=z;hvtn^j^a4G}%AO2juU_wiLQ42CNq)W1 zpWSnuS?A@}7RK4gmKLqlf{KLDclcCU>OUf?Be1@m9%=!iz&d^s+3!#E~WxNAI32y?A+4ci`k zQ@(Zhb?Sk7K=@ueagfP4V35i5QWWd5wJsK?j5=T!Zlq zs{oDA@t(p-DfmI@AB}OUx;A(RXyPf1BL}ZyoGI{PJeeDxZ-7x;`Yt37-VtA#oq`O2 zr+$xlCi^0W0}XWEc*56;8HQLQ)k;K|LRYefEa*Ii7ZArpA~}?Y#MQUKX&gMrumKSd zEkf9}krNZl+=zT?M-lDA8#kCs9Bq1vJz$io1JRf=NFF1T%8PjFMxo%t8#@?JtYCVI zKA@7yi*V{hG3LV?KUhsXW_pT0;F!vbbm~RH=+hE27*5P+dWt$AliC7*>OfKM(-JpW zOk8eyiaTJL+JboML1F9D5o*w*wEb3i+_1>w|%;@GDpez2MN*z}Zez(jTl&YdX! zQiQ?m6m$SO)eCTHKtbf|l`z;(Ok{QnGeDW@1?vDAuOPzTy-^)A#(c%Q0VmrAxI&F* z6lv?)D2^#-zT)1%lWl{!!i={SY3tr-jyYz&;@^OleGRxmi6;_y-L+8=lf`_+wSgu3 z8s-WkUQgt8_eOopGV>MR29oSO;0i5XK%~t06l*{)^%mjOmEytYb`s<2QqRFF?(+EO zJ_^-AC+;0I2uL&jpY~C|>#tNz+?-U*4UBDFf3^Qntzlq7$N|O9&bJaw%rW6(9eCs8 z2N2B2@ah~y{RXagnN;vAe!mov!E%x~Oe=eJlt!u1}d zdBKu(tc2v8Q@@2H8Toi>CZqjgFAqS(_$rf1xPB#1Em*aT!!s8==i#W9##eET8a#wl zH~^L?U{9o1#4?aYV_R2v9r3XdGG0_1>jt)zNdGU5kchc~15mh8cDDMfyN_zM=@LW^ zFsoesj)a=6sPsk50n$X82?GElb3S@y9D%QAj2CB?y8`M)l^`Z52+?a^TfIDb^tDEy zqYLjBCgUMatNB9#_P8h>Q9NHDnguC@aHZM@=I->V+Jmo0pRJbxoR2kjk4ZT!7*4uc zZR=7eCOJO^9L-(!?-Q@*ZE}1%-iGKJH;%orX-e6Ew)aI@KLnY*OD@xw`Z$!fkEGkJkohHogZi;Prmn=)zKr8F!&68znwmk zIW3{KGwBGv8GSWEkPwM*hl5pj&jvGspEYO~cS(OCbI-6*y2mQXRBFpP9^5j zp|2RXw(`$hjS)lBYTC;4S4g!DrXV55t0s-KIsqK3uRrm!`e$cr5e#fu+> zhI5Nbc^D7ACsr(~J_Ze+GFAn@AeI&1EViC&l;qg11&$ftiV*hRC%j_2oSZ5*cTJ99 z)?2m6Zsi!iEA~Ny;AS`ehdfE(!GPcabYSwoc?RB>{*GEp%%`AeI0j_Q;K zs%$|I)<(J3(=WszP&!o{#`)Y1Drq1{L9tr;okFOYV~1z?tK|X?N^L8jK=yk4N~Iek}%j^!{gAS{F%z$>M%00@)c(}^_3L#HLQvn5T7K> zJD1p93*cc{1s-Ezs2FJ!Bl){!w&gX+7VF@BL097s?UMYkKO2#0t)y{aq<4*zXl${0 z>POXrH8K@Wk^8pG!l=>kKwD}ncHm`0DJ*5`;2C%AqA;7rQ2uk-?J2BtKAHVplU-Kx-tA?isdn;ZT*Wo3a~J`q6o*N{=B{!z3yJSaXD{3V z8idawj<5`%%YL~1G5a^edHPa;Ry=balX^CmH$8w;Tj z8Y+Ab?oqAHD=CXXm++HW-tXYIN`3QC8{LEp-SQVBp0+NgZEXVlvAygJPU*XxW>gJ2 zF7I|y$H+xS%)j+t40Cw%*vZMjGTI%7pjq4P_324liss!kb{9;*`AbT~=Lq+SpvX7I zgvTECr?1k;rKwjmDrHr_%DzCqQNeu(mmTz94{QM9&ls z|AcGOAXj)wBsxN@aPLjna2iQsS>pkpMtLQQP@4SNT*`X@lQ%}8Qh}Z$aw(2=w2n|Q;sk#UKxcp#F9RdA+-Ku z0EpV5?5+SzzLtM6+S38xZx~I=+RoPD-v#>>m=Jp4m~*62ga8RZ9TQVnxrbW$1?;;D zQsYd0UE7(&>BLm#PL1jl&{M_EW)8T{wNd)f%SEpCH`{PvExEbls^-)+Ff;}N)wg0h zZEb;Hc6cVVY7}a|ax79B3G4bmmQRK-p_A5!-d}}$<6gGdR={aSsCK;$3Mf2#S0l$QYO7_q;U}eS9c4fe<`_x9pS!YJ)*g< zeLHavL^I)!X#R%u9|hpQ!L*LzlLyM?fy>6poOA*(00>lQV(JcHlNhI(O&qZkSy>V} zjO$JS(8yf@!G~prTa$?CA{=>pJkl~-zl~+g*;Uu^UQi=jVu$-}!nc_`eScc6Z=C_iH2H@B>vy@?CKw~@O03^zIM&ss0I~b&XGE$q3sT8caa<;ej4mYduH36 z!RAb_ka(RERq~a4udja_7GvwvoYefB$FPpM8RPa6;q&J(&@wY#Bv#*HI9gNfO}my* zyD3{9JXz8*-}Ku8h4a@qK6I2DnxGAJB$|g6X^y%k`5m~f0nYc@b8bI!RWww4Z5N1} z<-c%yS}cDvtXFifum+x%a54GEnHB3PPnAhQWRMd+*t`VgC0nnRYBds?Hl@lui^3R) zcyycx`&T1QLkU3^;CmWpNCG}YL-v;*o$TZC@9z!|H!m(e-`<~{Vdd!~=pa}j;3Hf> zM&M>%HkuxP9+lAcIf014F(|;A=J_Pl>W!NRq6fy3U^-i3J((YZ9FsfHwu}4z5Q~;V z3>v~5ot-{9CCr_Qi%MT}l#2|38VA!tb1-fqp@@T;VC+olStY!(IK2`JZI6;zy(XzC zWL_x7W~Cd3mV$f-vXr3?!l4(b+=rWk3oa?S9JQh(3r{tPB=-EYwJV$Hq+*3)E%tip zbQC61SEVjQC4Kcom2>a;99YE=uDsB-`&~l zH(=C`f<5$05fdjej?aJd`>=qxe^=d&u+{3Y3PQ`?{@gGALm*{wC-ku8eb)1oOIQb;}5UZXTN-tS2;$qo$XvO zsQWbD9@OuVJ3FZcwPnVq0Z#a>9>GPJnZ_(eGBZG@XY%he2e{@yE^Liz%Ae|#U1=E;EMVh=gjdOZYw#a zZ+n(@E@7;4_5?~|X+i`+pq}XzF)Va|13Od_W>_>2K2g*dx+rwOb8Zu*<-%BOM(>do zifBl#LV;Ci4Dz2X($nbv&kfSgqZ2=O(mda6XZfK_p>&~aT%hD#pcurVmd>Y8#}cMm z;)ZL6r%1)2P!Qy@N_wh9@6vl(obFcQ-VL`nS&BmuX0v1suf?sz4W+9Bo^#d`S5j4y z5q$`yl+FRk)nm|dt_{&4>D1rn1&z=x}8sn=53KxFeP|I}=PUbSp!({}d=$ByE+uqgW)2 zGd-Y^KI>&ABpw>ozlYlhz2D=R+lh8Kq8hO4G3 zdeSFUfeuH^hPr$=HN`6qAAmNG{mak)m)*mUPWbPF=N#SqSn$M-9}8YI82|#3PYRTQN+m82Osp$p z3EQ$ZR_j?g`06Ybu=|H)hWd&e-9>mc+UVFn#u%+IU>8E~E9YA#7(GsJtvaKH=G{>7 zQF4wDUSa!MUZ!AQxd^+c37>iH7Qz*(y>XR1CxtGuH8Qar&zCIsiQLP=xw8 zIB`2<@euhL#APhH<`c6{_Y>?T&{oJFG59nzN9>VXn0`N6|;O6Gv2*;m!YT()v^ zcimqRkG+p0%*?Wg%z@>O|G&yzJ7C|dzTzwFW2giw4`puyA+!EhxqAxRZxl8)8%rBo zSDU|q`#WHOq`=_<<>CT`C=OM&ay#*EL$!W5T~!>)02n0WEe9>Pr!CnN>8h=d93c+X z_%xJM)gs`*h@G#wLfv<-@1?W~2gxJg*EG+4(5snQm{^!VnOVUBOe_^3z(iO7k?0Y- zYL;$5OVa-s0RMF|OjJP**koJ%I1%<^BLv(V{p308sOHD*uIM&J+IMpZS~wm!dM7v; z86sj)*23A!y79aF?Jx22;BX7Mj#-C~ns;p5X>wB3%> z`Hg*am%~97_#Uy`v?#@F$P*g|xWh$RvB{gh4YIX!CZXf~x!=2n0raUE4kN`(roy(X zwljkyTLCJ$vMKpuUdqZa{(2MbbU9~BE4I&OdZ+HqswW%(5XCVFKCc3B_wxN!bl{HQ z9(_vw9Ui|5hywb*eEM`#_+PD`sI8In%FB(?XNfl1@=`hWM zGjpmsSTD%7=w`UG8tuMbI*8VqwTD{)ArHWb!N3!iQo zZ1HYjxn2uo=ed;b+R>X7-0P@!eZyJl5@64&c-?h6aM0E{hDPFxJT(a>Xf2FK@P?$s z)n^Cc5eV%iiNPiy5Xk=m;%RWx0#`icezBj?0K`Gc#>&FRKvMis z(Zr#g|C1K=D@tTuImjC-8A_SH&SZZEu3`7uLdl^>n?mw!f~EW`n^!Mk6bsE>%A3BV z(e!_*Zm322%%7&oR}+Jk1>lpgzfHE4zkfq%l24Ib@gw}1eL$YUJsTgPBgO=$jWIUV z|4D-H=1m_`faVMUpTCRUQ_ufbc~`eEas7waD}kCYe9#-{H1wVEQao1pO{hLuDtfe6 z!SQp^-C=%l_)RIK`=*1EL3qu5<{t)va~&mt@KslALN;OO^5q9rJs!oHON*Ilr*cOkQi8_SLa1Nv`fC zFijn;&@+aQ-q$dE$8OLnc-C^Op|gH6zuY=D5><-aS8s>cAr9QjyBXzchr@5c5Gr<$WFCCyD@` zNc0{M!dq?E<-2?5EWKkQ^L2O${yu&R2muqvc6Wm=GJqNF6@?f>xT>hQi5NHeIlWz~ zMdL6RNsYgqf#tQ?2pr}rxPgA>Rg=E6Hbt#&p>kzgh?p`zoJOsSk<6l0Z(!&!#r96< zJhJ?o&d=X!_ANfyOtY>2Ldd|!K zh(nO`UI5-;%F41$$KHw?LKyDIiLaT~&1agxiRRmsKa|HtEi<*Ds;?thw>Avcp{`j%Q|67W*juv{ z{pq_Kp|eR$@VRc8EfhtPLppMY%E?z5il)I$fXken)D?jem9kRcu6;Fq9PKRSa1dcQuU7sM9!T7uXz+oB3msY02`FaJ6!kB-d`7}zPhMu%o-@p2JR?5U!p#gG%Mz-hdNQRkzQ5r+F zBKn^x?b8!VYn)<#8w<2_5cvF_(&+xLGV<@>36$qU^i#y%hX(kChq@|apCd#aQIL@# zrh|O_2;Qa8bu;D04vn;u6VWpGiNX5w``w!}ug+e~a1aBZ5ad@$5uWrIossbgE7M&B z251FR91$-TFY}w=GgwZ|=T(OdRc)MYzWE|=c01EuY1YeX-n}c~sIm;x7SenmsB!@3#vF2`I9iH8lE~e^iJ`@jxihg zM~5FjG(fzQqN<~ukOH4H^--Em#@INfn+;40eWYLWLM*%mLr+Ma|E%O?9itiPnrZOXKC0%T+5aJ}j z_^!HPGe0o{U(dFk= zx&J#r9#>14IH{;h`~}KWZxjBtoBxsbOs;=B-2I8e*Q%Vn$slJU;C0F{1`8p{Q?J~6 z58xLBU;k=se&ABU6Xx!r6>1V10q?Lw(Udz+1EO4z6`zt^cAS-vmI<0W?I{ykY`&=3n-39Am>8i;TyHT4)5kITlLY2o)CJTz z!Np5h2m$h5&zHe~+cNjjvyL{}1weD=)0DgnMoF*Z`sP4c4sz;n4kKiFi76c#IJsV8B1WTHv1{5~yzJi6(~a zjYSHl>LI~Ek1ocBLPqm){6k6|48&Uw(@C&zO^Xq`Yo;7W2TAAUSC2LK^y~0}vE$p7 zMuou+h$Smdj?F;m~%&t|NqPHAGf);qNHTF7~RvfcBPU<9ln>Zom~aWf&=%#BkuEpHR-&tW$YVnY z*AFQyCCbuj)Ia1%bs<2c(J3Hr5-W!Lr`_;H@N$Ic?KFn!7gFaV5zBTJjAAYx$cQ)` zGRMA%!Gktj6J&VdZw;Jo6Fc`~*-7&WOj1$2L#<$-N$Q)PNBAO}qaBQB+mRe&8G`baQFl2UO5gZc{Aqk61{1HkxU6aAW2HBLH7B!ND;RmVfMOiHuww6{pL zAofZWw$*Ygc(8Mgy%;>g9_aaXXj`Y1wf72|++X-Bz`bv_Ejj9dXh6zf>TFi}mf!QS z>Xm8iO%*_u6`l>=4==d&BI+g0YT4LDhM0yN91F^NhW2wDu)vJWeS;Ry_f_7Snax7+ zFts7(RRU-Napn7I7Iq6;N3m7$g&I4J_R_Z4J4G!8n+Od!7b8vhK?e21Ul6d$mq(N` zGxS}RN+iu2Q8Ka9jRA9rt)fGDVDwEaxN9&<35)gkW`x)RrC5=o1zv0K$uzXQ9cE2fU4GKtW;kcSXh&(>D@l_0WyS2xggr!^GzSmh-%B*7KvVn#?q@EaX6$E+||fp^iA zr2IM1VOOf_X1D^g-vf{C6)(S|@{zq3BM;QGybWqo`!2ce%H1ye7Pj78+aRzAmS}%4 zQ&DbJrL^y|CbvSq8TPW~HNrKhiuP2`GV8|ej{%35zJ5qQIPiD{%%2)6;{PVnf02T7 z^pD%PK@Z@8z8;{UXzN`)1awZA4D(?<5EEkYN0zB<zw*2up@?Pr73%ADCm<{QgP%&l-sj&KsQ&mkIog9DC zskK704VVx-es|zAUb1%pYHMz)IC^De@DV9VodiD{N6oilc9brcfU8<`FA$@tW(egK2+jiJ&e}FI}McfkGm1Hv-Vh zdYmZyJz(%g)(~jOqhe)T#QpFdTPpGc)O*wsrfkyLu#G9dxZ&FtLl>ym;!rjroxPBu zgN1@GnOUO$XO{v!fC7)`cnOM&2_H8Jo(dc;#Oo!L>Di>0WW{9_>*+w%0HhFry=oWa zUm7Ip0JqMq_iEYyh|-uqQF>d;2VNXX9f~8HlSdL=(h)?AGlxaz1B>7=f-x)e$z!5H z1El9(s*V7`;rk;vEWb%SH{iWh8v`rgwM$!P2O|?lWfOa63kMV9r!Cz7h*GJ*o_01Y zZt7i2PkQ#$+M@(JwU#~AH8K3|QNL&Z-woZ}3X^Mp%kV-^+!T7j?QQy04=+%_FVnA3 z|0&&yWuvAC?fq2hcl4PtqeUPDo6a3k&nCXz#aAiE%gkZpVB@4<3;M(cqU=y(B8U58 zNU|_j{CojK#FEri7SOm|;Pd;99Lay1|F}yvF#Ml0i!q(jKz%;wp{7>b5;EG)tdh_Q zk&rJ@x)mJ*taa>tcNO{DKr-#!;%|>vlGYBw0Qp?T#PP>BlvmgMUhkrzbxa!un3Ph` z(=nqAz4F5_Yzi)mxzVrJKkdos?l#cYXtfV}YbmWoO68pQ#&=0F#b3zBG(YR<`+(Kw zv}jfr1(siR0j3LgPRLoMu=t5Ll)*Mm(sXh<$t91#9p+Y!t57%IQd7rB<$336m6b$8 z9Lg8oA%d|N(On~<8n?PAD*^}f%T;nBkb#7sr-`Vp-hmQ-gYPag#g>v-)wv+-`ypUm zu2Vl-1)?GG$8h;wF4-CxIQ`#sqqc$LW?I+utk;%yrSr^PcnK!=#HD>q+7a9k9Lsri{lU zYc5oX(QvdJQ5(8(&7W}WK~k+ocDL&|{RW-W>`W5pW`5(MfeU*_XXPE&c4QZ6kI4~r z3P6Y52+c$;opsJ&90@_`#ae+5lz9GpFh{uHtRvC&TZUG5QO}g%nwm;^R-}HNo9mAO zY+-1qJIq`&IaRNc#us%;6FN*pUW@>o;G`*NA~*J}Mvtvsrc`u6eKEr}x&7V@foj&% zI^vvBzjCmP4tX0cp$DPf5i6b{mfrHC2rxQYWujI z6t;EynSI{Td`O*&=t0XWMERKhnh2OsHeKdLzGA}C2O6Fe3s4%Li@$w=2fpir+y>2G zD1DR6HgkJ~Yi#z;7gpT7(Y)yd@N(F+ydh;DFGm2o%n3K#5I0OROEjt9uvzcg%sDP7 z*GGi)nNw+%6xTYNnLzU#Q;fJp*GBt&cct}`y53|A*4{usR4>-h!TENcJ*lJA&Yk&P zAK(xbUBW%8_c~_on%j3J8^1vMVw*Qc(c-)Ww zEgVrtFw2rbju=I%aU0j=Li^*(A$A(XCwm%0p>kHCTR)AT>1cC;Ye!`E_@87#`g(P( zwho_?4u=uTCRZZze?crb{^A-Ib)giL zb9HU!7~6YX`gQ{3qKr$bOe{2;u^z~3#^i9SBl(FGyCJcA-sh8c7^r0%q?JoH&n)T8 z)Z3&>B8i3N0<|ns$dfL)BXj-6>9q03?n<>*4+Yoj5OhvC5Z)886VVKthPtL+O6!;` zF@6PQ^Ec~3DImqq?Hd~8W>n~`Z;Rr-`JvVEB3_uH0t2n?kHPl8l+T|VF(DfZYXc_} zV_6d$v%lUi^LJ%r0M6HdTlOE75w)Oa4LEhh7l+dNZ)(q)YB`UCw+t}^a=cE3;lHMG z%-Jk4vW8NxU_~2$Np+-{XNnjskJE>}|C&Ca0jCe0bnx(kX&9p5CUb&o@CQGN+(er) z#p49xvC#dV<)2O$Xy z9}N1s=5_2qki>55*|H7d25-K%_70DIz45_?a;veoUHA2+wb+8MZQE8EH(Bvse#^qy z?M)^i7iV1)d1P^Ij~mNIH4>K}I=EMDt$f3PhJkl_y_O+$Q5%_;l^2)8p4t{^Vw|aA zK*(}lRf^i2EJ;^gJKl(jVQLrdE7={1+G(h!uJES6ymRNaj~m=SaE*=A8-P#TDwN^z z_J#b57*nxyS_kde84L@JytAzF)@QbzcR%hiVg@Y6&jQiW`eQhd09X8nknu=6Dt0En z?uA!dOP*q6a(2|>5VRhfcGw3`CBOL z+v=thTMlupLj!!U1+sDo57#r@p9C^IJ|hf&7I!E@l>*CCQ3d1vTGWuVTG821hJ3Pr zaneGH5VQ`pGMM7@F4-{$M;`B9ArVgQn?tm3j+h=E0m#c>12{s#!AjjN#3qv?_4(o| zJ+e=pHFXsaKe&wHrDqWw5Y^E?BKw=}T+!CzulIrconIut*3ktDR2(YlvGWv%GDVPk zPF#RJYycdYz#AE_IFw4t(^Cx&kI|Z%AqP-J22g=1-!_Jli=|?ah=scMT3m@WM!;|3 z@?VMVUT^jdUQ=H+UiX^pUUwQCwdtG8q|I%BowA-um-uo(ZYN`s7c`k{<*~4wbdjA` zp?*Zg!6CD=Fn)R*LP+HhsF_`Y|D~8#RDtjfcXV}t%EYN`A`614SR0CXN0TylQ|iRiz>Pu|(u(B#+qE99bp68hu(1q|#Rs!S^= zdQ+f=Vo8Eu!0XNtsIKT$g)!4rP~HT4^N@JimrKcvsaL=^G3?BB)>c$h7*`}77%H8| z30>a$2=ah-!`-HIa`CCSA6GTKqA&R%;k=y3G63taK*g_j!xB5fkL9mFHxs!QEiz>5 zJorWEtCYTGG%TZNzFW!$%ON($!!>h@Y`rWL6vDbW6dyErc6uk74GKGz_2(<|j;kLe ztkYJ}TLd)f-$!De*16x9{ZI0Bj@MTCEQsDe28+$`Y8p1I{$*)S>HFk<}uXDKhn!}FB24uEeUq6h@FXG?dH{XHd%=t0mV&i&|D%v-V zR3}+HU-Z5_AK=}e3wF6_mh<6+c)yPl-q`OpyRZ8RekEFvtFr4zvw5pBCP0v#Bzkzg z$)cG@P6dJjFiZ*deiIOnVZfeFvTC@=O(KK=Cx%B0; zu2;n*$9gS|RKLc*a;bSm>GGY}7}OWCb*AY&DD%^qrv8Fjy8(+l`9}|KsycOp^B3ar ziw;fCF57k_tR$fqBI80!jt089K23KNL{V6Z+7-8Z&j8HtlI%7__hS^{*`+;CtyM`W+2KZ78zCo^5m)DP&yI8t@+RS{GeiKY zXR6o7{hOthtLyvk5CS@#CV)|4J9*+~m#^-Wt7l@k6|4)Ft(VxfqvgOvDUcc84!fXl zoueDc-uV#u`qc~C$ZUGlGN|c*lf>w-tLCNAexC^lMlC-6As?w z_p}rle~ij!jTC%A#St_lih>YmvBu~bF7G*#iZT;vQ$v@lV)M-f4whvsQ$>y=Cux$o zHOhzhY}MG&s<5UAkJApnysU@K|7G){9scA*&u%0Q;;_c2O#S`TD3XWMn#^ETXWk>} z{nz%^c;7)ff_VVKpvy8KO5?huR>X+(t4wPHs8OU*^s90`U&&h_QFQh>$i92T$Eo=KL3&@NxHKbxemw{KlV5+6 z{c;9Q4i>*U{lGYxN5=*p3+DL1euvsz{Zci~u#nOaC$Shp7Xp!7i>XXUz(SAokOue0 zM_|b9ODeJ~M)S^Y<$WSJ#XR81l`Q3R0jz2_+_^~7eRO{?>A9%gsKiznaA(x(9M zD{gB0Htmqhnw9Gk#JwmTPo_QJ|?3gdcXwk2({O!2&sgMhVrimsi9@3;|v z2Q5SJe#~D#l}O2Yaksd18*~O`fWB|Pbn8|ImFl+2B5EB1AllLHLVimt2qqXQgue|W zhA9a7IKMn$W3iZNWGyr@0#Y2IDv~OO0r3#4E_J~=12f<61*1az#GVyI=0e}!osgdk zEK{u`X5j<)&0YqkcYnw6{4?TlTaf1M5Z4ewG=dXZMe0J~c zydxu4w$rt;H?p>~{3B)ibHuNj|AEK>33GJXmu>v~ z2$?qc-xUU~YTI3h%OD+yXhNYilPuF-+99FDiSpV`P3%C|kRz{&S#GPF!%JO^n|;{T zr8!}D`c#XIm)EVS_N9-oCk=1bT8_>;XJXUPu7egcU{1}qNYNTPGyfEc;DpUZIU7qZ zH_yx6HzHSK@XXbxTy|-LT}$bv_Y*g)5{pH^K)5SSo_|%=wi~BZe_Xo@iD_2xd74{VCB8C;?RH5VSJN+7Jzn`VD|1E&#|^D9~uX}&GWZ154=zhi*T=OvBA#ZrPpYU z9`2nRz*Lj!S2hK6+1F3c%I~h|NKH~KKB{3$PQD2Z!;ZDNx@{2jZ|)TYaYJ(5tM`BF za{4tR6|}atF#K2M4t~9rm{BcrQV}-J!1p@XTRdy=raezn50~+e-jE9o zyL?2|7`VO`@F#6wWUu+gzCgta?GHbo&Q=}paHKR#^b3*Mcqy7Gwx3756V%`>VY2x%=_|4|)1etNb051(FD$wEpt9JpCVAE%2m26mVv}=X_1=c14V68PKG&JF0Ukfz4F-&kJnCYVoSaNab zo;C0&X~ZwLPbfo_u~RRg9kP41bBFU4anU!l`D?_`^5=+Qsu#FolQ5J>ql?hhMr(E# zWCd=Nru6gTv?N6~gNGI}rlZZPtqCsQV7_OEzHglNd7Y5Te#ErDyK^?Yj`ej3mWzs_ zTp_PP#oGyv4JC#!g#oe(<&(wP=lUAawd!@A`K>f74cKY{3d{<6y{U9k8YBl~%_vTm zxhBSjV~Y7)gBfApFpK$P0`u>SiBH829r`!5vFk{_A_p65efy4|IamFb{LQ90v$ixV zcUWyg+FreZSwxZMu5x%_4Ud|Zz71+*hgU}xBoOQGwuO)^eQLMqnn=zv8W{?wg zTz6uU01oB;toIHq^G|r`FXZK~g{*p(XK( zKcFQZ%=Zzoi~zKR{x4|hf#1K(F$ge6^r=7F-eT9Exk3x*kwe`*1<@sExeS9OcF>=58;=E(7pGt$3U;G;yK80zY2 z>1pWz1DB==<$qJbzyM~diu^D}7b1wc{AY`As6qjEE+FLby=wTKyz|czT0q2RSOb223ljR&*@^MFj_V?Y6OJ;WhLTZ)Q4FM1k^W4Frbi@1Bz4_w=Q6A zAo*;*LHcz2as{o@<{=hz3a(98#*WT0(*blreYUFa%N|1W$>)fNZ6amsD(PP5ENIxm ziszXR)|I8SMWgBu32?q>SmqL3?y61;tRJ^`kR~x*x$*Gzuu(raJ*VmB`b9v@N zT^viCF)@auFbstxj_p?~2N!9jIfh-UwMgt=II1+>><#naqFqD*4fmCA@m8Md%K$OW zA#4^@ADTMT;tXVO)ezl(qU`$5R=>XQC0QGl)X&?s zTd1h_VTAWCDlY1_GCqeffr0byck+7RgV@nMFpA`j57zjK0@(^VDZ56z2Q#5r-0Qmt z1pvX_lWTl)nn>9KlbBhwVOlKAFi55{Zd_1 zv)h!Hp4aRfB4hfh8J1Wje0r7J;SooVHyCK``_ZKK zOj!IQ&qPDqtf)A8aMf|)B6kFhdMC7?KQH$ck;Q17yv`F{Z+~S@q=yTKnve4Nk>LzV zhO+m+MaPMiOUIf&L#ka^)%@0yI#Oj?nay2q{&dI5P0gLlX<~M$5!d0xi8Y?Ce!z3!-4W8k85AEF_w>3<_~OO&q;(YA58SVp0bpzt?FmvnN0<0pdryW9G`v5)8uxAjZEg=OT=v7~oGff6o$&MvTH zgkF%f897<7u#~7{RvFH0(UYR}FUwP*Jl@_iSh5KOwhg*`<(y)kx+SyVOwo_mkIf#e z=&Bg1Xszh2=&Ts5Xdl%z$uodatnaaLv-?c%NcEBqjgbmLw@A4oyk?4uIwx1b!ZB}* z+Fw;m)=`jMLl)6e?%0k>d?qBQgrwbLBT~Bqj)%mqP|=nzMSi*L6x^HdhC<#gaE}-_ znk=>!h3kPHe;2O54}amlX1ClJ^|0VuZCX>(qric18MM(OmT?w%ypY}JbOATyb(xG+ z%0^mSdj9w~Vg+_Lp&RG=AH1On2GNU4=pVikhn(wGX` z8#EcTkuF-Y&TaH%iR)Vtf3_s!=OgXJ{hp$ljvP zj2YAmJGBV-HN!Shm!I9*IL3SWZaP5uw!h>PzaPMVdXxStS6dELJo08hhZ?yAE6nl< zN%qMmGlLN$$9f@-&#;%P4E`V~CiutNBFuLMQFUo)?D;{0A@}{^BPcAqP#k~6r~aM{ z60wcg3X|-Xl5MUZ;j1Oi^~qmlNxfvJ3@^(Uij8e6`byqj^5L~0@@9SHRsu#agZUCt zV6FVD7K?ZJ#;fn^u;a3ag36S9-5;ak81^;%G~s7y-N0K-hoSf%x3*`Pf17pq$-j}g z8c34|+}-V8UgO^-r@P~J|54lf7c}wLtNfp$FpPhW!XmOd8kVcBvb2C1TOb^Jd>e>7 z{v{C6$T0gEhy>I9F?;urCQn~wxQ7sIEc374T&=dhMIoRKP9c)XxtfrbDlE7x-nllQwC)ZOr%iWk z2rhZb$8V(dz8`_7!<>FNVE)*aULw&3J@g`e)7q7NHME+SejF~JEd07g_A6iF0Da!! zWN`F|77Gqf7%+GIoY{Gp`L%Iy4h^~E`U<&u15&%WMzsB>$Ybu8PFfGG*112y`Ua;^ z;e&+}?9W~gUIXe(zt=(2|FfllSls?x zLID6izi8GEQ~>1%26f4tq`~3N!MR8jTQFmk1I2Ku1t5ti2wqoN80<@)ernF}z8f6vet2oF`7j6t{Pn8@t4X}I_0x~E(U|2$?ZWXge!aC% z%V6;fRG482b}u*i@t~V9W$*|0SRM8*l*^ZBc6kBZ%P8y_erF`1&G$EXt@`PH%C!%~ zE^x<6r}y8NpHw@Evb5K_^wXJ96PDZM|eG4 zND(7&kTO`5MM0`Fg3vZF7h37cPW5yjQx!XSN_e$fo0nd5G!S$wd8U4R{IuMM`h!%rs>d*25cX^DNYr8b$T>HK6 z86u_*+`b74<|vg7Omoc=9nI59VtT|cLT^}C7sQ%l4ySZ-1IdxL!AzbAa#rA#Cr*o% z$4*;L3v|&j1)ES~&-h$Re?55HgXWSH#N)G`*n_|!&ehN+t&)WI_x6sXFUvegh{||&dpq8`!&qCjkxBhw3 zB38gW`QO>afR+^yPz-qNQ4_Z~@5TGwPHJYFG&q@uDzqoPHryW{J?Pw-2A*TkDs?F*McH`~J3c zoZ{SthP~KMdoNp^N&3Zp2D(C@PP}T+fL}1}a26)wdm5y3$JHZ3DHnx+tL9|gk}Doe z)1K6EjSJHDoWwb{iZxA@)o{eYcT04r(9QUy@AIPeQ{efg*kh91|tON>o`Gs5OcoDo6gy8$|& zaDfEc7Pcco0&SBjm0wg`%*Fd8-Fly589jjPRC)(tf>-iMw?Mjs@kS0h3Ajk{Ds0S) z^qjP;H2#y*&Rh-^g@gnSof5%Vs?B0G)Y|gTk*7QB_EV3Ay;7xl>Syb%l{Rwa)Jjv* zg7Q3j@eF#w$>XB)*9=t>BGQW9nPQs`H4XINbeH8(p5{s|Y^ulzu$(_&3Zujy;Ah7* zkKcI+XHN%j4n&Utpk-aA^(=dKGiKAcM&M+w>gKCH9ZR!7O3xF@ zVRD#rZBI0m1S^iAozOni8=RTiuKZC^Y$gf5Im$9OhTgUEgfQAS>ju$bIr4Nv0196{ zox4gU=>_7dI(*6vPIQRNftC>r)1hSzJ4tw9*M21TnW=}4S2Tvzk&_00hUb+E;>}}h zuqo8Of#d;Pt)n665*#HXcPN!Lwua-yQIS(Oo*d z0dDiVd%gQzg8j_lZb@_gE5UC2?UmQBQm%;q3&Hw0PK?&p1z0QZNM?d_RI$AQxoYo~ zjS~3louE0e`|TIO9D(8uI3uz`#73jcIJ5ZzHe96WJ3J*|is*q*JUw(}q0_(+@)nQwn1avkxN^;#Kw_rk!b0hz#a! zH>?M6L-~dUD7_@%Hp5KpW**G**Z#N_-7huyMkDnoYPcc%A>f^q%!4Z7+3n)O)RIq}Ba&qbRTZjo$RCQ(wOGJ4i%LTxvO zg`s1z$M)(3I+hvp-_F%asUU>lo;&ox&rorAO8V*Iaes}7n0~HT+Tt!)Cox3KlcPr7 z?E7;treZ)>60`yi zb;k_cncJBT&xFJWkk~lto+M}x)WDkuZ0Au~Bz6bvrtDtJqP@?u3}viAHNpR_T#0|l zwQvOt`0)HH-O2CL;rD?Y0`A`iRlEfII9Q*u+;wS;t!D5%fgcW{j=B4JXSi3ie_=ZR zTj|dKCEdio(41cdEd5=;FI?DwfUds@cw&5?V`vK%XZ8mqXt`I$J0QD1qr1O#y!~a5 z|6D)A`R5S6yWu!R**sA5HhS0m1*lReFZwx(RBrYMwgXj?M^vZ}YKNWpCw4G0U=Yjv zCp%ambYHnw2hQ|u>!;IW8<%)M%)Wa?y$jI!1EZ4w5^3WvpIbp>_lBe4;20 zPjrnF{}dHXVkq4hU|$9Jq_YXVpYPBu47Bj1)o{~eYk0o#nMYq^{m1am08nIvyZFZj9-j^uC`Tw8m{fz}Zk*&YQ8upE)^0AI=Modj3o^zH?&?Cg^%pQWCwz7* zmNxTiYwoZ2y|@jdu%A4OXa*GWYqP`ez~%i8$>8tpz`y8(x}uud@8uF21uk_p@|bqi zN+1bmZ}^1;CQytbwL%xR37K0>#!2WtatiRGyujqbtV8?|)v5S(42{u;(N;_F9Epj% zYz5`HHpD9`;?y-v*Ys)Pw^23S&o-D4a_~B%bX~r&#S+8g?DciT&+JePdFz%ichVnu z25>E%YaH-BZO^DYRL=?Czs^R4_aC*ks9x|0VZp{WE9hb<Gt2hLtEZh+4t3BPw)p z!U2@U{X5sh&(g9p2`j*^fXe^E1Lz?S;!IR2q@=j$^i&Lcl?XJLo1nsrqjDVE{nZKr zz6@eh#$NC`@Ye{0V2Q|JYf9P|<+JV-2bEa}jfOBwdx$k=noQ{t#QhTAY=>a0-eVot1Qf{oHow259$9H;} zQ!hkK#E03#{ydI<^gw(IZVOJiES(@26$84$3!;lkJ}4^9mB=f^homWjc*=c71JGg@+2fIIQo60bZ*PRfj$i%hbnmBG3{8t9#=G!h5y<(*oa4yigjKM}}UU!!)5hMiWNJ zf~BC@WeAI_)unnYI(hrgHk~f>Kk;=#FHI1{ zC2D&>jGon6Xo4MPvenI$(y=FN(T+%N%f@JqIh$C=t-w7F+qv{$>olWGk*`c8YclaQ zL=ll!IoIRw@>2_+>zK_XWDyJVG@KS3Ue_k$)|ZUgmndH66_uN(`>t*nRdMq%<|K{5 zQtM~>>yEdI@+QKeOh$>QUtYeA$`|CAETB4jm$KFW)MEZkzm+rQ4SBIE7BW*4R?5d# ztj+VGvv-dL8Awzj3XF2R0AvG8lNXVzBK-b z`75M-6iwZ^x}5hx`z{aW*V@P zqIeyz(#Q%lM<$K; zC&k?@6AZRIL=pHO&$tK;un zT2xlHb?o-T&4VZ$A>}hir7ey838g!ZA1~8hMyz52>{q3DW+(&EVG^|K$uQRUxiO$*Tm~+ zC=5nrLOURMShcj6{IE57kjj4<2=1_6u%T}qAog(N74Sh3@G?E-E%ID3WA^zVIo6+v zFXi>#ktoqWen=UZ8CbA=Ep(Vr^dr62Iek6;g(aIc78Imi&&%HBH(pRSv>81OgC(7; z+ZLHThQTHDnQdR#oG_K^r=KgTsM%EK_Fjv;5rql04>)(_MW>au3&~Shpg@tS1 z3J>0LYWY7FO4sGbeyxDrSucYRwLP-XIXglgL0J1zV?z>Ch4@Hw1`Iosyze5aXfc7h zO`e2WF0giJa+w5AA|Wj%5w>k?D1-r)%%k(U+jdY+I?mQ&z?{bJHMlz>WFb>KeG9{1Vt>m>DJcj>bU(R^ zVC(H{%_o6)0s@0=xzv=CG6EauXPd`dvWWp?o6|R}SfHs87qJiugJ?9n=GV3BYb!^) z1S(oOa#@rWL=}`3q!qNIQPYvru_g!;Pwi3*TY5J&=-DG(8{sD@n^_jcSPty7N$0!c;h!^H-Z>^eY=S|uFyPuJi!%E zK%Fvz6eGgmtKg0HHTYQPZUMUpUnePCz#hXdK?rz#QK#Oo$xfULAFgp8SVSiX!w6Fe zW9!E4=IVy-ChNxRW)tEjbhJYc6lSUimzG*yOxZWl%Ce5M;GyCFB{KG0n6uQ$0i;>AxoJC4cd@ZmG zclC7-pO6^j&!5_8Mp-g4u(VuPCnbpVtJx>Ov?O^ntCvvIoY#1*(u1;fw|$ir(7^kr zdo_HA_f)Y0Cf;A!82;NM0kk#0yd~xs1zI7$%kvFKe2?e>QzPu39p?KI9_huH5a~6= z$@i|7gz+5-4P!n_Y~ll0Y#f6T7RY*NC>Rc|`isj4iG-}7p@@eCW>={VTB$-QS3=iX zJl9`Rub%SvC1B&!dLK!JL@CWN*((BRyqBxs5tEc46@p^O31~vn%V`xWcRL=Bd^`W^ z`W9Av?)KAST~LNN_V-wVa#ydsInvz*pe6J%!<`zpPul{ zSBsrB&ZeD?=<9F^y*&9s$nwPokV*>79dWf8?s`ZC(j|s*B04)8Pvym^A|m$(jH0xa zbDy)qPC^z#s`#hma*H1Rno4`FO{EPllltDDWhDq?&}5fFC5F)ToIJE+sKMAWkXXDT zq1MbZzKFgJt-1S6e$-_+BHZTbjo!L&N+<=crrWk@qtKuZs7GSp?!PDkT^AwMwA)IB)wDSkO0B zL~FF6E}KWDkxqU*{7zV}BWZQ`Dq$#4k0KI?XHZ}DaRk5KP$o{@x{Yj{F&+os4kkH=_$5OsE?12EXduNI6&T=_wP&8h^B#c;htEgVQ@bWX!eFFn&DQEp= zOQdHlV!fDfY^nrBitpx&)e74WjKgW>~Ghla5M#X-(|4h)Xv90MP}j< z`9$Oq3Sr|e7-k!<5MZ7b3C^8(`^OHOBo!aAyFMuL`We)j0x4#3>zSWbwowbqa zzrA0#F&k)(8rv^{7C|G7N{-Qy z*&n4cvpe7J1=3vv=M7^M3s{L*3C!-74;Ox>tQ)~lWogWTfa#SC$z*q})y-5#_LMp_ z>;+~Dqfqvb$HA{2QzzQuGuxP5VCQ%j?YuKnScBt4=~seCL`Y=D{;-19M-^duS^TNV zbuzOy1Z~T9Iegz*IqNuDRY~$9NL->x>rtmonZwtn7k+!fxmF)C;HWMA*M5+S(letd zP84%I|DKQWZ3fRpkE$wy=%JIUZj9B$i+C$Bq|R&&U`z1@Ap{v4m^zsc)T5D?-DIQC zxn#S~V=R6|rJ~Ms&IhwpG|QS)7nCh6-gf#D^$D_rn2+G@HPJhsF-1cw14Gb669{Sg za}wP$QU*jGEZQwI%bzLlLB+qLUJgO;>WwUIh_cgX+r|W6h*1q67L&JXMZ*CWAULfd zBH4I2&hsW4=f{ov4^Idr2FIl~KPkv5?{Z^eie&N_i8ce&3bn2U9B_1E?91HwiNdm# zs%a{i0Re{Hh6CbWOBABoU34tr?*>Fq>B}XNTHVD^NWPK0l~_LVM7R*m$!Mxhb@$37 zf2!*?R5G@JwZZGh6KKG0GJ$`Mt5NE`Fjvs2`KToJ6N~_rTM#c{}q{90=y-Fnti)v0yD2- z#{@f2=z6^_S|Xpm5d;r5D?E!xqEIn=+D*%Y2lLo7K+r)4LAQVAKZrL{yv|Mk?BqbcVAuVofpPGtBAK!qdV#{M-^0F~^t8-N}9zOsv z1@jpRnn=-=isd1+WcY;JmMV8Hfe%(^l)Q$|l{lTM6mxZ9-4McOl)j}wKgv+|sK){Npmz z(<@V;+Xsp88_p+WFlEk9L6#BQN|sUYKaxDhsC=6WH6vmkJ2Lllj{g!56e(cs^;W|E zNA+_4v!4~R29{M>0p|M?{x-A|b+pp|H;n%+FhqOXU^}f@)wHl*LuQsmQ|I94XckDD z;Ek&`Se43#jg5=#cJ(t7K6te2?Pp3#WZblr($2qkJN&Z<{)lCIQb*3m9lU#J#WGv4 z-)VRLL&0jDW4j$y)x1smzUfM9-TNK#5HMTVffykaDYCCmkI>Q}8emfp2b0-r4eN&c zq+#(NvDSAv#!{_M7ktJWr<^KGPO^s#^G_i5ZIZN;Z#<$vYv3{PRmmOb!dS zI#Juvu$`{t8;`&8F@{R(cc4d!(auM^vv{ZN_vXB%RSG@3JN74@^kjV-4mzZx6! zqwp-RX3ryNeV6qNFuaHWTP>^!9Z!Fr$R&xddj9zl`OG{%JjqL(U(XTgJ^hs`V5K%4 zXxb%o`YfbEhj(op!EnAt=MwA;DRIA!z(ExA6Nba##N2XlHM2_iIQV zF(?TE+P=DyH2NJ2N}ypwL|%S9B0HZj2=;+)c2>7-4FUVk(DH!A!26%O7*z$3*OcY2 z9Y-fYwRZJ394E+6P;8KFP#+*Kz-N7h-@hTmCrFnzD_)%?jDGb(f_=))^$jbFNG{Jh z8r$b)t*hm5-}x#li>{R{gElKLdc18jZmN%ZE5pWSWv~H}EpPBM7osYaMf;QUag19( zhg)19z(g*+a7{gAe$J-BVMH(ZrSd4u23P8(%Lma|%KCIsy49(?@)Tz{-$zm3K0@|y zfNzjMdSMW5m=$|%R6qOllbgG585Lp`xE}`hI;cA;V?aNwDG+W0Wicf?{a^I=7d9h% zS7$7!G6v8X4>SN9SgsltvkZPM9Q}_fV~Xl5LU;DY20^^>^aMn!0KU6@?;W5pAe#Lz z5?Mx!$^w;S5$gvy@(PgBp|~qBf$ob~!rIc}>TRzz{2%7jQ(J0$n{xXG@ts0n4HYfw zG&9v<=*t)G%k+2F%A?(^03SQC7BU^2WgAAO&<3h2c)mgtBV#iiD}qDz<}3pJj=X(e z;_H`%f^a-v$s%V3Xx3j*Sw{BgOJ=;VQ!J*5%$^C>|KW(2aK3I0J_z^R7-|oq)R`XN zymiou}BIQn5zjDWgGq!2q3I^y7%^4K0^5)kpot zS<-D~bcFH`&UvS7yzAcKnq={KyuT@1+_}wg_Z~shuLDX8yw@h~RGj@?rU0a0kA8AC z1GNQU$P}0`{rj?&rCWno{>=`4S+)Y|k^c8(EBr*1G_H$VhUMZHV2&_YBxDdTh~A2D z)#fmfGg6ZOq-%!Tz%qiy1XvG|f$cmHz@X?)1}MUU9jZh?)U|tU4c#G?4*Azm_b>0!kr7PE5?+#*Wq|p3zSZMH^MJ2 zCy-QmKTr~;E05Wc&(lXpmY;2R*zYQ43TfcN)KCT4 zrR#HC#gD4(xo?SUoP7d#iaui@%=8OsBvLXvdnJ(^)A>Il2wN4Z<1m3XvJ&D{gj?Nv zlkUiak*G6$&5a?%{%$pBgt0k6+A!hAwQ>4D!IuNwFlt>&$yBdQ!D9Ff1^ohDIKod$ z7#2DobgO1Rfmsg8r(Q7T78P@x9d z{jE3x9R(d>@=KPa0{d?py%1DzLA{={6<&7OOamJZJ{RVXfiAs1b%E9deb)dc@QA}z;Q zH=eSr%a3rO^AbeN7Wr)AWjCPWlbwu2rTDl5iVqLoeRU?MyVxxGae$Th3ok{)M$?x( zlVLCQxvfIw0nSKR7&OTfc0bXE^bckzRmwebX{gBJI$?ZLsPDxE>{3Oc`Kc%w!l68E zZG)wh24rn(CXpY6 z!8-cZ@6*i_?hjOgUBx>PYBx)@!(cAsK3!A*32b#h;NMY43NVL6k7SAwvhk zW*Q||j-E;;boW#Esxc9G>(k5SB{UVX6>QSazY_o67ae!J}c zl1cZpH0PE1l;2Ly>*cf7c{1tO+A(7$wmeuRJAwS)M#9&li#H*xkQnWJk&p3LZZr2w zTIk6vz!^Z?>-+AgQixap@ZN7W3S>o~4kZ5tV)^DydSMpPM`TF_ye`KEh^|D8xfQ;B^{4B=N%0=7+suP9|VzVWe$QS-zxemx+{i9zj7>^*y1xy z5Lcct`@cU5d71b0zymES3QvPAz-xd2-g{>f?b+Jw7l_Wnaq^&L^h);|gE(I#lw@-Vn#s@4el? zWQzD)S~1ij|G>FfRpgw)muziE#-(xJ@;}mHc@C% zXfi@0BQStt4HHy+hQIy&BnY+X4uHvkHX_^|XWU^jq9TG8Kr;PHsNo(3qN>LB`;p0y zA#%_)D7D-sEK_w*X|Iw=m`Upk-i1NwFcwoao+EuQ_j9O^zMwF(BHCeX8z2aY9tVNK z$cyl@!Ue%L6m5~P-H?4<<(y^|;YC?fVw(A7q0p|+_j$G<0|f}Rk7h!XLy=_IbHEpc zGOD6Rxp`$&pC%#~l=OV&->s?Jk}?n{U45%5r*JHe8TGa9i#h$O!&uOy>QQ0y1T(waQKU zPQUx{%v7#>m1P4uY~99K_94wM6NJ>7%bab`CQZnoAbbFrX^$Wj)Az1^vAGu9L)TFI z9z4c*;h}C9gjd{MP+wEA_q{!1cUy0=>U{P;!sd2{E5CH1(gxYz)~I-|793B3Iq5UENPFsL-#MlRo{3&GUTxK4=A7<+(x{0hR<*kWLNt+e5J`_Leo14A-jHnJav3 zrLwah9lyK|06Tz1H?I&!$Jh$5@6b?C1CSHm0Kk&%et5K@WW zV#*aw`6O7aqz?$7e(WZqaNI1E3*$0MV1z@NF&C^hlM&e*H*e%9#7iWT!#8Ts%NmBi zI6zh_A@qA5(yq=%;W1K-Q5gv5cp(gfUh^z#gCd2W5-l_$xW%Skt|UNd73J{B8^$6g zB#da8-lt{XJzq^#{9%0!WdAEHH67L`Q#!nSE_j^p&u=*@<%UPPe1MZ3yZ2@=-*Gd5)BO!# z`Q?lq!v%m6BS6Vm<)~lmZ5-|`kHi`{&x2taLP$|^oVF(`)JGP%<8W>L`0Bw81!JR& zCXP!3&itiL)0=0_3>}EZ@cMp1Z9#36ndLNcOK~==jUHjWTjBMRQ={7--q&fpTWfvw zR4YD8s~pK!0_Uu7IoCYFCK0W_Q~!9M(I%qCK(Kzb%4B-|#K@RSDB(os2R+IV66;)o z&Pl&fx5~2@$AmYBXYOuOu=!J88_=d~Daj_tChdEzEl%4k1qcxj5gEbxpSGa{`}p*6 zwH(|QuH@LXnn5c)neM#}cZ}YEZUdk%dsByBgIvF;QQ27r;4WlV=`yfk`v~CR;SoN} zp~bbSDK3Ji(d$q_tD93XH5VyE&9_TEw9?vn;6l-13rB%!DUow^Ub=tP{b6W#Ztx97 zt20OWVhEHr?eu$qrC`cBwPrYltKNcP;b97!Ime)8OVTd&ew+RqUdUsVxa~sxE%_}~ zY~u#VW5ONjQbXE&Q$peCH29Bc0&B?6WQRY(BPu0LhCF)+F*po=(cN`P`E*AH$*it* zUy9sj8@iNGnYir5Ioi_V>{7b2$mxm1)Lw27FTMy{=R}UU;Na^fRYB3_#|U94aT@^- zYvCP>ki(4PxtXL8sT3t}45=DjKIX@h5|lkYU(u4Y;}uaq9+!4JPYmP)&4dh?GKmKW z+LN!r#b1c=;rmUP3MQ{Jv<0{Ba>PUqa=Fjv=5G0pk>5BdmIbn^JtRfV>D9;=C}Qx zcNkZ%%T0nm>FV>yJh7W2=`+Fj@Fb6BDpiXQCpUC>C3NmJ=ovwDvu?`)4&Llu2ifn)W3tzT_ z9-2z$;*-y-vllHe-xO53!~CQ%GG6v}8ygMH%uIg27~ZEYXeFPnT=aq3#gt$SUL&OL>hui%|o$qJYq zveMVDS}*5Ss07oTmG=vk!)>&M9pY4|W}Hpgm@o`EnjF~MuyfDdTA2^$5_Mbyyf6A# zojMFnF540C6-*4hZ}M)oN$gQ@CSK6$=?eSv;(qqrZegq%XJAbj7!htqFU6G}*Yp=- z5JI7TBI_dU_MvUN0}tcI_q&!KpI;ZtAi)3xGF{Af{Fms{zMbIll5QGn+Of5W)KE?S z>`+a#2LvUUz^bK+?#o*)q~>Ma>2bhd0Ir;S;zq{1ysNOOk&&alp|q*7iNn8*8UyfU z2LsT)k+-7UosMH%h{x_tj4SM12AztcD^Ile%yPd2(GuQN^WY~dgbVd@(J~oK)X|*1 z{j+Ba^C(N`(b%($PI{qwq53=Uh=_jN&U7{|4hgA# z(t1nc`xJP)C5v1C~KS` z?I{#U$M<^Vdvt7XV*xDr0Iivo(Y5*I{ql=^F4x9@?cdy|8<<6r*0S<8C}3lGX^2{w z|LLO@;w=oy=gd+c!eSo%NWSfnIhge}5}05coH~<9euon9}Y;Kzy^yG0?mud4)IJm$KTX~BTEU9|^>`$Ta(RvoUstWpV z4BxhFGXz;Yi0tlT#_;|~W}lerCZV%$T}K5TE>ToV?@ycNQPq>=K}f5*vSj`NxlD!L zrFmU33v{}b<$XBb^`CbFhzV!WC1Ga;Ob9&sC-M${25F1rp@)gTx}=>ihuU(r7hL|XvI_~G7Q}I>V8Y3;l~eo?ebbW*){B3#hdYRmo=O zTdfV}deiXPiGKj8=mY2nZD2xz6n=BhV#{`78ItLjvto8CWHnSxoZgX24F!}cBt4HL zpms-D^=GgfdxphYQ^a8Pl(L8kBeD-lcgxqLS;@Ko?c3M}wj9i^GOLC)-&g%Us%Z>X zh;jB$XEyE73X92TPt*5NUz3O>%G_Io|kjn|oFpi&lIDJOs?W_I+pW zDQaPD{cG-N88HmnR?^j6RXuuf_EkXcF(j`Ea^tJ5Olm)G!Isxf%)T)e;F}JeYDb`T zC1X1x$frz*%*~0`YnSKO7hTxS9I*)!_>%Y%_);mb(gX)g&tSC{zLY6CZLL%&uvMFl zbLK8+uZ`CD_nHkot26dWl%4$|zX}1Df|aGIOhj4_JE8dXvU)SLWwNE{M@EZAc#%$) z(z}zSB*i*x?8_B;n4}~=pTbL}G=Fq=oj&WCnlyK@B$+C*SZ;PNnddbZ#r&#kpg7ATIk~SK9nuBf48xKy^^y7t8q{01lwBCU&)&u?7RN zU&|Z+qp>D^n$Iam_6UbZo?L>#s7Jx$iXr@YF$Tb>%tO7~HS^$lMz?_W0|3x2xituN zwRe{hfRIhV_g{b!pc1Iye=j8Y|Ba9~YO8DipF;k+G4OwNlFt7(Lc*$XxBh<$srX-? z$iRpGExBE;=f?3pM8=&nZ2kWj#LL^ zmns&)gjA5hkJ)>XKak)}OE16K2BEH~YA6D*JuL$a4a07YZ!G2+I&i`S@qH6~6Z|qGT#%}L` zwJah9inD^edFDfIo3#NqliDZMY`NvH?eduPxMYQAwd&pIZX`^pzl6g2desntg9$9| zxAlRSdb@jsgj6^mBHU|~{@I*DhVr1F2?hp~J@ zh4xA%xQ@1iFG6=DvyI|;V7-H=hB$#}+VufB$^l~{2@9zh8^SKWSm5j;eYy&HdiR$F z9?oKE!INPvM?w0xPBF~*A~u`rqPcS$`6wr?l+Wd;)ozH}r%|imp!QSgs;6ir-dU7s zdF(cho30e@F*6*uw5!qR!Cl)t?}D#Gi+iGnWWE53J^X)AoLvCwEdKA*DPw5&yE;Qb zq+!^;?=qBaZS8DU9#jDg4iFqTGU8tlu1qE2NpctKIYE4FD419urL1b*oI#XfPq<4s zIJ&*{dr_EtO~+?aP%Q&>qvwYu+=z-P*pwA^Pjh!jg(lQV9|vfm%aDG483bsKH><5j zGss+3@tN{$&`da=th?Dt&wNQ))i`gi>?gmf&R)*q_d^PJ3=A$l?gI?Ly3cX~7H_BS zZaQLbG612MfbZ_7R%lskgWv2ZbQsiE-?6SVUMXd~FF;@x6qd?m0(s2|J14`3 zDWXX?2|)-3{HZt>m>)CofB3$7inO*%f&{74~dN ze$k{{?zbvFq#8}>tm}>af_zom#7-&ps@Jy#S;6J2=waay2hB&l+<1{OvbBo!y(eVS zTv{}$+#Hn>_rUti4~c$DX0|_j3^RKB{p^3 z{-APiZ`1MqoX5$@zVK1T_445S^bsY8k2h2@riDhiW$Pm^h<6&M3raP%Qsz}-X5;=V zm`@63JxUfPH1Vx!u999jb#8Nz@ET#HFKxo{~rsdfhVqy_S* z*&3mB16T*&&KEAtw4n3Oo=ym^6skMF((p}bp<6awf4M0j=SSt@DEQdcbm-Ee0~TM# z^qC)7gq#bv0aLkY{&2lIm2|Jik=i(J$cW9{2r;T?Xl($*QQ~O`w00>P-m`&47F}p( z_%RnJ9ZV+miYTHM{EKtAbdmJrZwL{xD{`KsU=xNt;f_$M-F0ykmD~DGE4OCLoPfln z4ct@fd-H@lO8TNAaz;k>hQDSAe&KS!V}jnX&dOSRqHXOhCNSbdm&GpU_kkFl3bMgE zddg9%(reIs0)QNm76VXgydRSgBF(paOZGbd?)F;D8vzmH6#W$A5&9#zLc@<|YQE#| zk2DBMJOJ`81+_ZU(xJ!uqVp=EwLK&p*4A*(85umzc3q)`b43E{sN>a7RQ z;eMXy_rBNtSv|L(bA8Y5?Ci|!?CeZ!SBSL$;WRd3Xmne4*dvEn0?fu6SldW3zHe_4 z1s9clFS&U7?%=t-Gj2~03`b|NJpyQ@9~}sUklzn3X2IE9MKl~7`hG^ab&vkFu60%4 zdDarvrl9*+A*vV8q!PE#G^6joXgRr(6E2^XnOOu# z?OR(;Gat|k9@>hw3gz{Ns&6`tn5!;gk(}usG=EmwZ;$&4Ek89;s%e?g5RGf$&1->3 z&PmB#s^Wk=R>IVg2ST@`I=-GrHBj5(UgcC$_U%C-Q@rSQ^*X~j6_Y|F4MpFeGv^9x zxUIT8uDhY%J~-D16Moeq+nq{1> z!0xbz{tOd_Q^e^x6xSJzT1IcO_{gWDA1qaG*o^qI7G*hFrD8N_*rs@gnY|X0?26&< zk@XVNeq`h@5;LKE^0w+UfszM}-GG4Az3QvXyYue4XH31_m~Bxq9`V$$8P($Q*7Uz- zv>a0iv>{ladBtorYTlG3VZ9)JG65-TIL8&K0Qv!otIg(8ZiHo$LOUTRazjSc+;&aQJTIvYzO`q(J zpIUgsSUrY$VJ^0-$7HK2OxgXL!94!8^lD$SVfnqT1wYwImKaN_N@h~iHBEk&67yPm z_u{)7V@2j`Mh~1i`xNyx&7AIAb7axC(w?WF8!AwCvb5MRq|&;Ta`t}XS+n_J#|-QT z-@0w6xGFG?NlQF=(bShUjMit_|BN3c_+t}e8Q~3z5nLgx<)K{Rf-igy)dzRrnyRm) zuL9N$IFgbGLLsH4H2w;uj}Wm2x1rnSw&q?ZVe(q4jbiH3%F76{VB`9W24F7?H*{1u z)f`(|-?bz0MG}dt<-O&ABNQ~b86=Q?@^aN`sDI0C@#~YSlOa($3HJL+r;M5jNQc{pNr<8CFui{tL(1M!Vm%4+gPYS=3Ks zwz3prPnYcJ+w+I@%eM~S-M1-n33Sjw*A{f-DKPT36Tg(m@7758o*qq{rReSnq(!`X znbH%??@2rlRQmVorJZ&_nNvqn2BC=4aCI_r1&8&a&|fBd``xT;bH7%8Ml93y_h4`_I#bJ%Z(pD}uFP)A{zeOvx|n`wLV5?OT*p@v?VMuhWjgSAQ7 zL|)zTGDRxox!2X-^>Ejd5<=a=vE;sg3?)s|x`KaQj7x{fgKL(P^W7vd#^6}t%HDM3 zgIiL?s_9J8nCFjwnJ*2{3p`&Ee`=PzQc#~ZDZ2)vQsoZDiMH`C(;PFbRB zR;JYc>5Fc{nEFc#S*DLr$3wSEhaL+G40gHWJc@MbE$HK5?&I+n_;l%H{KN1?byk_x zvAa#P`x%0k!!A~tt5^MH+aFn_Mu-MoSC*}#q>0)ge<+53wPvqoY%EIN@S`@(PGx_M zy}!#)b$uyDP17=T`zEJwhwM2+Gp==ortWkW_HFwvyT2-UU zUShef#CVN&8RMP0O#QRgI06FK4ZgE!h8}#Kdp$Ik9n*vnO2j<#=LxNwBgf((0Z#4<@OlI0oWDf7F2HZVwMnMz7ai^POGKsTR?8;K` zV-5UPYW}m073{~P1c=QNJEb{`<^>%_Y5Q;}4O8CXNGXMQC=Jsim^4gGtlL?O zh;lI1(!Nsl0)r_yazKb&JwFE|4QgT;!dmD5!LUYu4NEdh##hzOD8yRH%FgOq$j{s( z(!Q$ozIBcjzH+{$zK&PwFR^`v#zuK)Z1vd)$A-r1eCH+@SLKmoL!?=Lj!ntX_P?Gm zDBawz347Z1_RysL-_yfYN6F9M|AqR|AF)^WuMO-%WCe=Nzzob* z^`Mjk#T^=@8$s@vnEmHOQA$B22brwkfVi+5aWCIF)yD|_HQ`y8x*rDYo3S)C=%ewcJvXi^)F=&q4Ud#)3 z^5Rt^q;r@*H5Y@;Eq6P!NNA%VT(sM8?-d`VNoF`tTBn$6o#RTbc!c+q)sB_y9P`KM ztt&6T%zLC+grd1otTjE!vr_r=^mAyorrjCrbVWL^eLC*RFYWe;ecCC#y2N<*Mc4Q| zlceGwkS`($McUu>U_&GEbzCJ)lrtIUd`isy<2p^itD9m_v9e=FYAY%rCg8*p!k$S$ z_xw=Aa60yH%X}xrw{P(g4z*-dOLEcwSLawnF@($I@m)f-_r7cZ-Jf zWT{K?p10!Hs-8y=IU8?37sa)-4plhGfUT70a+>VhoIUjmj-3hOPc$X|tV-_{nFlhA zte>JZw2a{Ie8l%{JKJ41ZK>x*@T4Sp(EU=o3BUTcD+_BP9}Gz+R}vY<%i+b-`W7&Fme0m z!pWhlCec8=9HiujU4dJN1q-(+qzD2JDT0)V#k_JEj6{uDTKbvXpNaXXxKOcCG1)oG zpz6iE2SbZ7ey$Y^hSqkZRzRS_4~7PceZY*)Hu`7H`o5Ouk)g+LWf|!`!v5Hjca@Q& zKdMj0<;tRtyqx@4=!z8^s9x7~BaFDO!s4ay=0#^`^KGyck+Demr!5?~1tJ8L_?5^) ztAp!5d9MwS_TmsrHBu(4t2-<9z7A(}5ZXx*pY*(6l*_evGrKSOiV=ap6H=$DQ)}G1 zo43o!R4GfXlDALd#N1mnX$g!b7CwWY(~(Ipo1o_^4- zFcabfZlHi;5ug0PvP7Tjv`ROR3pjkx=r0Q%(2~WzY?6|lD@Wm=mvDU=3dstV#lL?G z^Q@4kul@U;k%LrWC%i^Lfoa3hme4>=Y-^I&=n0RzW33;463kl*e8pc9|1foE-Rffz z^En~^kQ^O4X=Z1pR<@ZYd4o^NN{t#y0?{*bf*r(j_oLTPQNqZ)-!XliPixXh?FmWn z7472IG$8PQ_c2|r_|3*EvF?rO=SpYZ@TSIT;K@on$*IS;w7jK5>16G*g?nDp>GYCJ z*0-k}krf2ALHfs+r`}n|?4c(&jF6uCI#p`d?}#@rj598k7DatxhjNP%y_z$0S8Xl4 z@b!s2t2d8QPdxf&K}YlX^3!B7-gjJycCxWnjuOv`znDwtcJ}4v4tq`wNbvQwwHBL_ zt(o#&`@}>xb*BSqZP#?|R2$ys?lShC0-6OvqqtR_vuDhO`tLB1k#4ULIeGY7_8?K1 za}0;AGnu^*SFZeaa6u)$<<>-=KzIZfrAsvkzC7#(e#;{@FJnJF4@ zm@>Z*wl+_y(nLR5_k8d8nAU0VxqHe67D8b8Gqndafzg|Zm~YT zn_pEPtt@Q$PWvd4jL3D8Czo-Is zb2*aT5NtseEbU;edRvgs3y2Jg#OhhaY#}+ZU~B@Jo0|MiQ!2F@;#SOPm-+O?i`tOi z;I3FxfD^#ulYN-}AHvLSdyCCqLx-tJ%~)d;4=AiD6eCS4IA?F z3oV)o5?q+eK4n_S?m>I&&5}HE!N9=%%ghy#r0RP<1%v7FUU$~Tc>AgJpJ8!ur&o}& zEYiotR1`qhfrOR!MOcHRn+ZcSqHD<_m|QN~M$RUVuj!q5uG3n!^RfWt9hVp#;)`&Z2MrtHagjMZaI<3pR9<|^iw?&%nH1|H(4jHxZ9numG z4za`Lb;+twtg8bZn&aE-ZE>S*r&z=caiQD9{DL70?jd0|>T> z5U~xNF2j@5ws(b(gCsZ7Px~!)JFrJE#aUfc(Tl zDQb%~eXs4UbzGTz5%#WZCU3ZBPVp3%p@9P5AZw*9{p~2%ClLZ1Nz!ZdSW2A*147yR zJd&)B2pZJeo(SN|FN-`>I;WwaiL67?EdBx~z*DTjU|K%bI^~+!(g6#aoh7%0GW^mU zNfiYCD@8*mYg5?x2p@HjXi=1?Q9c^;I685eH%r#}oZ05f8Ppi_RkRAcwqFY?tH5;; zJND6)RdA&l6g8!=A5gN859*CV3ps zeLS7K7qJ`3lYDc{JtPE{?626;*)gilxOm|E}z&Z4vTVMO`GW}tY06M zTD$s2V940tYmjJnR^H*_?Kz7439R?gmb))+2H9g}w6M<3#TXy&#S=N(ydF#{?SQ{J zh302@Yu_kbrcbBkTd9!4(*NDHGjT zpSgv-L!bFsDe5Y1dux05lg^jm9Lo&4p~D_&%q>tvu|#p2B9-DQ1y6)+gy7}d*%VPv zNEWxWf^<13KAo+K<#xEHEZm`Nbonl7M`MFfq9H5y)_H+YCSpN_4`dQAEzX|W*c+~r z#i$p_5#c1leS7E0C$2b!8&ZaS!#LP>oN~hTm^4QB$$e&vh*cHTGI82;*q3$ccMUl- zI5P;b$oTmhkv(P~*!AzOStpnzYE%d3(+%+kzRO+-Z>G6A%BNUJqEUpPeaLaN)a84ajWtW}9BrIX}-axJNCAv?frg&5DB2 zt&=jfhNEq!)7dw#{o>-CNA{3+?|OU*rT~}*wMN1IHWoQ1s?&csT*m%#>RL^4N!vvrTt6m9Uy` zKWn3Bc=dUAzbDzUcW!v+7{SOLR>P|;5dr$*FN@QMyBX+8)auwsmoz_$zk0}xk{l4e z==HI0ttDm1vx0Eq4*PJXL0V?fcAlLiGydA`Ax~LNuWBms>hb&qT@E#y7PY7Mv~Y9o zYkJnXmtz!37bbqjdp))InS8TcojQ>}Sbk*tO+TMPEc>Ss!%?TkvbBxpgtQ+}{2GYt zwNTl(SxDJZUsvW;vG%I=usaCPC4F_%?(KA}Q=!Ry^R6g>W;EPuuaar94`qhB&_1^LWY*AC+-j|zM^*G0$r%|GWc1#jHdeKAWB=j>9Yr0v4eaqf@O{39jX z=S9vH<3xGh&Hd(S7_5y#qa#Vsx|rmb{sM;Y?Qzm(Oiep*WMF{XILx5Q>{^SY@}LCYh?#s^x*#ckQYB-INS)_LiT zWXPG5d7`Gd2&MOT@U^Rt%FvGD6h6#2ccE)PR8XP+bkO8I0<+O3O2KNqg|LYfLpH$$ zk7;SNnUZ3x^IYheROwyqZ5Pe&&MhD3W9rb!;TPzTPnl~Y@0E?4YqR2y-B+wDx>a>` z=$3k}#)BXdZ*rww8&xj0Je&B_v*{s|zQt=XQ}r1h=i{Ti>shhVV``L6R-Q~NFxNQc z4oajoi_w@_L^P|E<|ZY{2ECbjr1A3PLh>uceyu4b2OC8K?q|06l=&GE(x0(S+x2=M zr=fWl-4jSys}8_@^^#W*eJeC>JBr{T!#h=T?AQ{~$qN-HzN+ZhJ*R(WMO(?b5zYJTu>8avpToat)dC871QQFXx!?rTYw%N6@(-O^?k||AX zrL-%7&$k)y@Wu0XYP%U6{{3W9#il^UWxn%qq{|$cx~uNb5{q&qLkziFGKR&Ba!VpDA7RQ z7-Ah|StH0r_A^PkgpIwkDfIbp#(0EECj=@y{v(6@T-xrG2Hw>REaj}x(P9Em8TFsO z<-a0AC!+ndmR0|3n3^;Oa+J~cw6@1CKKr@Fph&wk2Gd)FMLqU|4IX*`NnCj3*7@l1 zDB8Q3y4Z^u{md5XssvTj#oNP((ySsDCVP0TOKfw3klS)0#6Vp9i;QEXcodJRRA$K? z5H2#r4`P(=-Ra!Cn7lPo%IDyC*V(_ksZdmArK(~R&7I&GYyE{u#VJMxwDnE3#*wb7 z^rq3$?J^b)v}6zcc;-@asoLjj&-4v5Ir9i#u~_GKf68auzU5%5rTgSv!dkyjcj@q2 zBr_F7R|S*q`B$bTa`Lsie$glQPMBM+trsbu;}>E>>Ya9XYzml=DD&d44ZpmMHr~1F z+v42vwt1cqvNG0e;^evkbvTaPHT)+OQZu#rG2;-0z&2_xh)th$?;OL_5Vr91GdIxB zGpHHIVnn!(7DsiZxRqQ=JqDB(^@-P~6hE+U`7&^wZK!cat8G!4(wI^(62*J{4V~&# z2Ugg&e6SP>|k4xCz5J<$;&B>*j=##fFcAM7(`aKU%Z)m^aZr;_I zZ*jaO??JI=vehG}$RfMq?E<+|%iTq+)mnL*r*niSr&g%X?owVWSkKg!K*??;M8dl@ zE|rKy6<|_R<4zVi67nQ=Z#-Zw$>SJ9CPbh+1NY{-{*MHL_MCsP&~H183S^sg!vJY# zLAr5{}cgCAF|U)84twv{kqL%yeN} zCytX7^Cr>K9PMo0(hh@Z9(^J^r_AJQ%qqMq1JA}uKWY4v!NS16zz|t5(VzG^ux*SD zj)gkil=SCjPzk_hZoSKl+9o8*ONe^mz}`_?c%Rer{|Sly;Gv6lfQNi;Q}Uj|j5?l| z=YPv4ng#9EO;H{3Y?mG@4yVVM7cwjJCXgtOb9fW^ONRFEM3`;d8K8kd zpjWa?+H6_vO)`3=R`Dqh{f%_nToPVhOL~)a92yAu#}#j0*A_`~4tbDNTx+sxUX%-ysKk0`u*HBGSW_b;q9zgcna+xOy8 zKKJ1U1yX7E=cy1Zs*}y1);mpE%ck{Xr+iw}jWQ&*Fd-gd(4If>?>uw?kPyz1&o8m+ z>IBIl30EUaz(swjW>PlSts6KF#c*b zV3SRm_E5QCi6+KO^D+HUF|nzLsR$YSS$6a5g{MuV&ajB2v-pP@?5+@{B#P3tQeTMg z43dg#uZez=5@^aeVd_CWZf~@e)+nb>?_?~NrLOrwNRQTu=!J$2nrG?~%Dbm4c3-~j zxXFuVi5VkXy!j%Sf@Fz(BJXP4Sniv+S_L<&+!rP_(i=(3!!ma|#qLsY3T!J|L|EES zd^pJMXv2(Ew*#m)bENS4&*}P`{ov9St*R8KogOVA@4cQpGtWocnNb}m{@#(9Fvn6y z;bq$Tiz_{I!;7dSZ2is-ixWL!+D)&!6wr#F%*A&4g}>WuEWhbh6F!(4@=EH{gtw2N z{@G~m2U9$jFLhNn)Hh<0*O8q!;_Jn9O`_MPC9(9-rgu8}9;3;f3@g^4rzEN5_f+c~ z5@MA=zVM>T`)SAr=WXV7weGv<{z{tBvbB9q+^G+qV}9WsMz8mq{5U_k`7z<9=6ZsY+H3b`7_N3u0cj>*e|GO3+*cb7RvA4Z>uy-hA);`Al6kK)z)rcOSHU7yzr zg+NysjwUODoDQ(;s_JTJ0+q}B&9Xj`AZ;R)HeT>meuUpwQpbfN{lRmW{Hr2Z3OQ9= zlJlvQ3hyd#=JXzfMYUbz4OVk;6cCteU~m{0xi*fM9Vro^A0Zs!6EtGs*MaBi#YDDg zI%PL@nu|8^f}F_KTQ-W0W~Z;db&>`-}5T6 zIH|nG#`7~(QJ1ty3Ec%_<4xw@v;@yN)8%id)^-K^$>XHg)6Y5?wpnn#>f)l<|Bl|; zugp)O@0U4jWMI)Ji8RKM9!xJfhEh;hfx7FAy09Dd1@8gTo@)N25%04^tesT@ z@!*%&t31{UQ%O<0!iE~25y&^NMd*Y{TaSIy&1s9T<8@3SYf0J&hGt2&Yd{0+JGb_89Z@y+#3>16c(I+Pugic@g z%^aq}(-lI#Y4@Dr9&VZ2IsT7MnFsdviI-DPoDBU&m{8Uy?Q@G>mybMLF}Q-ol~deG zUXa+EmlO*BeQe7hX`!d^Qh2VxeGf`9k~N7_fFXzxfkVMHe~UpGNB809sOaQ=FD1X{ z2JgMUc_%2`Qz7T?yqdXAAH!MKfvr}^{WY;GR;%+(HYR^OxXI1fxNg+^al{=(*@PjI zF>$Hx{pq~K`~5c?CcG00cGCoX z?I&Le8m~C96@R@HWHx4revPrX`9|0Gfb8{sB8i;~kI%fl;8)brq;fA0`To)uoH*ox z<2Z5;;udpH$0dc@kjN-Tm!K4~3@}FJQ@=s4xcx4CIs1|H2C;w+UDcRIqQkd?`x44A zcSWcH`*I%XiuzZo|HHMe@TeZLjYbQojsvLv08pKoF8%nW)C0%H`)WdJZZ`V4jP-XH z{l-Nyud_P@sbinVzDyE9roc3H86)SF>+}1ANt6W_P0H*qd2@tyOln-=@6^q#ppT)h zYep{|NckrJQMUVompU0H^H4>xs^^@P+863^ETQBKp?i8Ib7tmodiTUpKZyrlNzfV$ zee`ZccrB1iX~V9z_06#hzOI3}`WV#wnKzsxvni!xE|hxj5j=6^N%U@v%+7FGYf6=S z@0WooVrKDOU)Xki1KdGreybk+2!0&4vxESHN? z2Ay(CJKZ9d4fyE1EQ+Ij6i;YjmCz5NQ|uiitR)k`Zu@ttA1ye3Se`QWPL`e^(#p{0 zAIA4lhH}Oe6`KdOS5Q3b4?*=Axe&!pf!RqrH6~qfw@1m|j6C&wmGJVhZ;Y$_!C}H0 z%$lDyXByXMHcy_}wm3eBwutf>ZQP=U{>Hm&P1H}ZpPv4r6|ng2;=pybYD>001IjT8 zl7(|h+}VVs^zt)q*}RqfLobzVN%ltu3r%V}k9oOj1Uz{WF61NWWG!Oq%e@9fyGK~3 zWS%q|uNS3&_>L=j_E#Z_^Rtn+<=$JubnIZ(CHcH-kfzDPgO zska?KCQ$w#1nglt{llt0$_$T)FeYv-`?F%#Je?V zU!=`eDMh!^C0M=0Ii#9k-EuW8+^ox|V@v_W-dwCUt*#7I-_o1=EdNL~pf5q%Zl`d! zLZo8s)Ruj4pJ0bc>2aEZO!;&{@i|}gY@dr13L>S)_%H*=TTxZkx9A3uXED$kPA+fv zM21g1_Mbfn7u7pXEB^0vLXhaP!zO2UzOTe{l**WEqaOBC|lGr#)vy*G`$~Wzuv+|&gdt-fj56#2+~3qsZQOc zAsJE($gxNx7z>N#&Aj9+Mb~GXUh7k+7zdIhC=3k8uf1s-sVQcEpO^n7S!>HiU(tOr z3zJY=*TcKtY5J0hYuQ>RX0{)0ryj9Z`%-#;#>y9WWWyCN{>a2ltDdbOtoooq`24`<9cT~;(5(M%{b%f<{SPJd1^!Y@t+=kj#QRRGR$(w>C>FYH|j8y z2yTy+l>E*z<;dBI`LQEs#^<@u6_zhj1$!kGX&=xD?OrWgnzrzo^7YD}xHQfD;Wd#p z+b6eK15EYn0^fb@zlQk@eQjRA#&4M*8VF=czjo>K2u91iH?rY3zi(xFyOeKe@yKss ziqa&wJD_9oWw$kw@R8VIjTPX!{K&`Xc5>LL{a=a11HSQ}ZD`bO?d@GG{t-@rz(xeO z=>mIg2bAtYHsZ&7`tvt0`D;weft%TEv5qq8V-Y6wKPxj#-KCUdnwoN&P5YeT|HG^) z;3pa(9w8iI2&i-049F4*9v!(rxG~+Fgs1xZ}aS8=Dl^|AGw+7m@RRaUscd?%QT~0%h zGvQeMLtz8TY?WbZ69#qLWqL-Ie9xR;4_Hey+H=dBfnY%Dq7M)Gk%D@7|s*A3_+7okUUykMy29m}rdNhAK{TlS08-naF57H99pN(5hy ztLGf1?@S27E66DzotY~v-!#2O_W7DTPj`H;OTE*}-p~2ZK8gdI+o3N0GwOMBJG!v0 zF2bUK*H2gzt!!r;>epM>3+wG;CY@Hj|UOW(hm=eCn%pc<|;uZ65F!$24^hY}H zjT`E%Tx*><0a@BcOw-7tfPPR^3*sP)|Al`4Fy%k=BhkWU_N2ZfCNO{I2HK+x94kVU z4%1OqxX=jZL+}E7{)p zukxII_pH|51Qrn+P8??$$IyNGRxROC{QiA{`a2apLtR~yE{0VMdiy@XeLI%#Pi8*3 zZi$bHD~)sxXN!{CgR1JBj}I}PtrE*@AOYL`d11=jf6i?|9HUKzW1IEb z`K+k8OP@kWo6C&Jz9c?ZQ7TkA7x(#XmDh)q2RvcRcdkF;{!BiMyQrej#p9^O8cssD z@X%gI*OjY&l(cZIkM|qTU6xxIbU6$RxSnU8CkX|)VmB6!qx38JJtO%dzNqDL!ScqL z#<5qqOZ}cp>M`a9r&@Eblu^(}9piIFmO|R1XeG)=zRi_HX^1t0|I(B{b5cCC-LgN; zSZ5mpnz>M1)nHS=^p!_$b`Z^+y^V+Yp%UOw(Hm3_oWSeH2UYgEu8ZBoTlQz=M-FSj z2q{u8S1vH))};5RrJNtqaX>l|`21!-lnhA-v7fJJwFtSFX#4@Q7 z`ei&fEU$nJQHDyc#C65OD_M!cZ%-6wkiP!HqixeNqcJ2m(Niz}L~q8)h-G0(d=C}9 z9+&wMXW-+r$^wzs?}Sub-#ZsgQGW8;1b=jWSj%W^SI&#|xMgbt^SCn=`*zPyZh2@4 zW?)j#t+4hyBIgs%%(vk;-OX_wI_b1VIw@GcSurj|GjsgJ!m3_sg_=JD>Q(6{=g;-E zIO%m!C-h-Fy8)78T{hr(f4?H0g%(?ujsfRMT7z~v0buu zd$j85+(d^oonGl5h*c{i;fL#XvG_y%FAvx*|C} zMwC~?e|n61#TMD0B%xK8q&$F^@v(NFm@}G|gstJngWY(alKBfLaZBBi6h#pJrUoLE z4Q=3uzrAb#SU z^2l3v55id3i)c`jH(rXm#-;q}mJDb3Jc{-=|KR2DDA^}>O%zzgRWXAspWTl42%4;E zrio^JA`&=|(_ee<`>-`9`=G@T@+sVH9-NytR*JUrZ}#Lo!ZyeS54Jd1xLh<)#p|Q9 zt0D+rQv2&tOSHW5fph2_`vl>$V<;SU3f!s<4hvoAi?`Zx=`JNmc%7&7nRgNWX3YjA zpq(z^mX5WXZRiwmo_&AuXN{M70>u#95Ktp6L^vd&?TO^odo(H=okGV!rI#;+AFtYz zmd?;c$1C}C*FCKZy)8qwwoSBS=2BNCf;D*Rq`$c|iYuEv)5>M(td>W@-2$XKZZRQl z3xb%kS)Crdb@`-flH~$t9~2VsGv4?bDW4U+Rjl&ti7OvPC3PQL?fQ~EaWJZ!B6HvQ zsBMbn$Bc=mh0cejlMR#~x0UmgmbLXvM@td%SMq%MdW zlY6FaBMxewhrcGWKLM?u5gD;YT~YRlEZx}`M(75mvwGci8O}83G&FNIYgbxcANY<7 zI&EID1I8piQhFkA6{#CLSvtT*&qG&S4(34AlxSatgTu}RD?|`G!A{Kh9+hRh4`u0# zD9(~s$OlO(h2mCUOLC7r`(XBI>*e>WzKb?HuB{V9E0`zbMJMStLz#so>3uqj-vX2XQH}pBmMr06r?=XqpEeNtMhy zEwPo3UYDyM-jH`NcNC;5Hii0}|T8yvz<3=+TweT^Qz?Ls64-F7jB zx$R=gs!OrX=}aikxxSu-@F?E7Gh!FICYTQzVtW$7(o}b`hs~^M8xDo)5(UhWx!x5y zH^MZ6r3;EhXpvaa=$PFyAmlQ?VfN2D{S zt}wCQ6-3i4Zhu6rZAtJfzfaqE0!sIM7xTO7snSoYTQ3{y_qO-GNuD0&pW~n5pT;Ds z4{_`5A0bh*402$n=$%mu)i4VQ*0-$q5Fze%aquiRS1XeQyQg-&1AQ;+$e0nouR|Or$;UjM3Tnc(#7~tiQTA!+Jul< zVd1al%SpHk(in$n*waDF|xB*gi(BU37c>EdTJHky(<=h7ZCQ!1P=uK1i` zTi6ruPMLylvPR0zgWdsu{gbw|VrpBtNug$*SE8y0$+ z_$!jt1t(OhPWp2u;v2%TMoE2KCBo^lPCTS%nj}Jm*(7tVRnfn`zx{A=ed#;u#T#wt z(@~CX{AOwFN@PCmWYcMV^2=SOoXp{PY_VJXqX~sP5;S=ldzOW#6>DqQw3o#4Nvbtm zV;}5a5`XH-oby1hF;~8`Wsx~%`|G%5o2(4OLqTlXljY0pVGpX3<-WJ-DbLty@?XI# zHNNRg}GZ3?Zg9k4=X{gPwPy=zP}cjJmK!cCsCdFb6!( zV~qy^xqh`oQxkw@P$7u_T7qdDzNhzFB-B}l1}aGZ6Uw8BtC)F6fqn;Z$Q_S+-nPXI5@ilP{t|;@ z9lR!U=<2CqR!h`i=pj`sz}ik#Xatple)YQ)G{*75slMs7Ol_1w)ZwC=iu$TX*Bo`B z`~_-C%%^EkX;2CAIJwH$!BYhu-eHx5-jB1sNl()46U1PPDk8MvS zrRRS&8SN!Oo+5ajfN}{xJdEVDqAGG7riEjQ>Vt$5%yWKUTrFF3^W*|(G1J)ahB@Rk zA3WZ!Ch@Z6E>z6I^D?i#OF$R3u3CF5u;tTNdPYn=y=z0a`i93p3pJh&|JvCz{7!3h z;x-52ND0-Z)P9DjZm28K_bmB|ZNH8WuQ-Afa8THuDSVkay^irVu^Bf%`%dI-e1hll zcc$(*B+aMNP|%RpNbnk?y)>?W7>(veqji?!)6&KgUgJEM-wh`@aY5{_tU=biMYzj` z!EamR(%5J}Xo0lXeFhR4XoD8KWlYYVOy(x)8{t zU)hUd1X8#LSb0Cj$jx@IstyD{wLng&)cGSbwI=c3?{p#%L|T@n?l23^ zHA)$5RPmmTiyD@P8q`ML)K-iWcKDDR;y@LRG&x~w%b=L*#%I@^*$c7{f}l&gkYgvl za(X0hrY0u}WIXXx>EQYVT+w!DV<Thll#b;g9#6GiGqtQtI@;OLZcd8^(Z_DF z#XNYie10a}m4oUVOXVYE<>@#qVe|M`ejALc7iZiwSZlK|-^Iih4n%wJEATs%?CoF1 zQr4W!Hh7>}|6!Mc@%q{@Z#4zMCzcgUy<$bOsUZr?+s8qM$z`cK*m=jjXj`xN9r%!LMP74)3V`bzsd=fvH{du^b?xnK|0n@w8z~0SDsWsS>o_y_ zYVIBq|NI#tPZA@eD4nkpw)zZ;vZIRCdAock_mKQRC3}Ja)I0AwyLaAq_w;@q=A+i5 z32`JbCNfr#;VgZhepRHhP;EN-{G=17kIN3hnD>*dDeckR`@j=O^xq#BQL{LAE%()Ys>Jcz) zcEZi`RMiT@n!CgH!DTMXsczaiK$Ktk8jpj|NJxjXnd5_hgCU!(r41-mgNjCkgbDsT z{B?)0skvsUM=a-s?!d+i5N@K7Mhkh8m z1r>QU0^zXI7?(_>B1BDD$?XhW3q6<|N`x>^$Y5zZ_*$wu6|3KIeP{ zLC?W|K~we*rVWf}1lwH@=5^O|&zdPgOEz131XJtQapY$4s>Go95(C{X&#O>_PK5F*sizP8++4dK^88Wqu;0 z#J=!Z0aH^wQ}(=uXqin1-Js_EFYW0CoPz=7jY6RsE206Ht}p2X?wQo=bhxIU&#sPm zS$8w1O4eA%0=bmQ^@*@K;&%$jaA@#b*!CT4cycAdH=#!K>y3lIg~6Zyys9XsBnuL7YOpCvLkP!_e$3=o%^yGh z>qXd~ZUz4gEt8|(!2I>~v5q20m^)ijEd!;6TYMAm_#JM+vYOJTm;mRWk)iiQ!{n zCS7O$0D!Cj=DFX1;8Q3T0?dPY=kU?Si58}E!MjtSQNy4;1`7#J4-Y2&ca_(}6F*#> zleGqLQb6w@bxThK93M!yr9uv{_CTYB>1EPM1b8-v z9+Iw32$_<=NiXIeV7~^6!-!}=&BGhFij%zq6wURk3gzK3o4ix$g+$-Uzxw#?6nsQz zOQ>#PXkzaUe{Mcrc$)#KQP#f@amnE#N>~^=0oGOniBdh5NNs5D%H4NzFqU4EHgh-huK3&_5osb8sOK zhAe4n43bxa$bLjZ*JL#@3i2Nb{zb{BfDUj5E(4NIxuH-5r2D=WzfKcJxZGBvrzar8%ns&_rcq}puwvA3qTG2g>zZ_pn&V&SkM#%s&!?}0UX=Erj!OG zRy>Ra%!dQkgFgolUigBhHMFZv0}WQ7>axPc)3md;vv;>cj7awlhoS;&q0GyQvQDU!0o5Qa6flz08Q2oimo`ID*S#Xi_u+b0%*vfpRf$b$o@Almw$G1sVBxIshF3 z4e<3J&(0CRzi9y5WkhpC@CPmu(i#tJm)*cr|2;eA;SDum;Js?lU>6`YFTD3b#IK8! zp|K0ZIPe*8SMT;Uh=_H6A@0LP{6#)k#9w2C1R((W=YicoP4U6@(b?_CcJJ5j6q;1Y zmRqga;C<*u7wib}`2T+UvZ;%@*5zM)fFx-N0;Q%6xGx1Lg5E}8xWHEgxkTw?d?;O;ve;$QPZ~>1*3zK{5 zIS3HW05n+j5i9~1O~cgL1&%!q^-ON$n#K!&1y$>VwFvHu!o^ZBv@?e`bqMUp@b|J? znE-DAG_dUdc%F&D#gn=Lg=revfUTFktCO**vzn=+tEH2v3H+JfoMxh#1gMumf2saJ z2kAe>;o?I}*3bx%*{eg8-irgERzQOt{uc?ja0>RuASDn&JacL3uo}=UNGHMCmMT(k z@uV$XH0+^;CT@QN{)mN6Y?u)MxN6W~&1qd}xR8*uRt)Ut4dHC%p(!7DqDG$t`Up)s zte|eZ3>Q$$&Jtt;H#Jc(wKGTL#UKfI7YkK=yaIX&tK^Dg;DW-pj-dXrUGpk}JUA~w zqXLk>pB`DbP!Rc`QZVr8*SIHg5QMD=;9yq^y*ymFgBm;VvGkslJu3qJfeb*fSNP+R zSAdJ9I5Gw{_#x3DCpE0kTkGh;)-y=j-vmYK>-~o5aA2T;Za&B!vzzwGe@*2 zQ2E2QJOI|Ezd9zW3K#1~F>Uyx3>g2S=nud~K*wNL7=}7rFbyX|J7+VHfF3?x(9=$F z$XzA~@L-q2um)T_br)!_538^L)J8(#r3Fo3CNTggtTm*p1sCwwauBz-w=qSu$k=1d z-8um(JwSzBWTx6jqWvxpB$@Kxk#a((<+rTu`YS#-JMrF|I&51$gs6<|1=~ZIO56+9c%!~5pX~3jGZxr3#X|j3!-LBouGO;f726!%$^Bm z%?CYO0u7d)nMQCS|Dh**H3(teSeqHn0(euPK|$2NpJZdWn7_ zz!K14w*>Jf@Ud-N4pQDp9?J54n6}QFUN61_&`dyISV3T8dL%GHV-4!Ar0`WdNL@gF zW3Z3><9TWZ7xf?<__tln*QJ^~gtcl6=aU~V^h`X&H`yiMmp`~Aea90jUq59!_` z``Z#O!xaSZnm_~Ipg$fv*Q22S5tK)wyPa{kkq9umK!cU-YHmlNn;@_bq2+Mu?4_uu z0Pk;mN!a~JOj#gy%;6cs5Gt2WG&_U}`K4gzP3^{!sE90V2$Xs5Ttqbh@HOUeT^SX0@?r;A7uJ8_>&Vly(@wy2Y4>(2P`@&xk&yS=pxgo}sZECIrLsC}mVE$G|d&K1-JsOJ zd{kJVYp`mGEf_A`0Twt-H9K4!^Dq&6K3%PZTrALYx2Z%$ufOVWIZ`>=m$K0p7?z9_w%fu;3Wa4s`Q}kT-Rb zcC|D9S54A2MSwa3z@bRBLrWk6{?8o5Cmg9iLQwr~-UOKCpusA>l1R9iz{a)&{0g+* z;c8@uiT&vW#)UZm8w|P&D@22%5J5X1+1YdVmzk3R;w)&eh|R$J4M##rnmQXFiC8;% zOc5%QKn)lemd%P|;3ED+leKepF+{lG>Kyq-rVdd304l6KNf`$hRnz%s^JM2d#?U=5 zXjA|SyUv=y?jFv-4|NlAY!11|JFCWIxeb~2Htzd&~fukTsL2f+~Lnl+v zeTbpUmk$qn#1JYNF^GMLeVm|cZy+_x4fkekqlSi=fh6jOu|Bw7U1eK^YmE%ub))G2 zf1T?(_oMQ_^X2)S>zwwtLkyKmLJ1et!!LRaRXh*jPm3v)02i8(^ zZOVqee>4IujrQlqYhE3&q4kpRH|EgH_T;YYANwWisnP0VS8QmREPY+*ThT~w*6$vD zDDBxDbb=SZcA#Z-ZQ}e;_g-nXjs0nKC-`vw`TGxq-4k?z1K&98&>Txc=LXy7z7*&s z`EVzgkX^dj3gr#0P4Q{s?A4+d4ht~3+4KA}ELjjAT9Mlo2fxzsRLMJ1{hSP8zL^ev z>w$BvEzP-Xu4!-d!tLHRSDds#vOwe2#QyIc@|%r~^3-0GTDh*F;zyw-8)uI9_zwAi#!vmeSIogkZvB{xNx@MxQH7|uLPTEY# z2}e5v+Ddch&75+Hfj72}6AhjDhW3oyGORAJ_|&ptP_5bMsmxbwCe98FqBR+9jk)8F zND3g?cr$?9lvFwnd^GO zy*y~+vU^+j)ma@O+L3bCed3Id)bE;WDw<<5^^+l+YT4y!D*9A%_3MXCYG|{mk!Y*P z$d}HU$n-lpng{aqGA5a3V*n(Qr_t#JjrVvW*gE189ScI;0O-fY6KwM2lM$_9`*?ng;6RxEU{)a%mP? z=5TBF$v)g@&D1O_n$~bCuR}ID4za4CNg40xK+)-ivCWdx^|8wTMq|+*g|P>JPsc84 zL24{|iZHh4LJYegP`sohtFh?B!PxV1(Cs(E0@jTdjVLxyhq^5}X&?KVW$K}0Mmq+E zmrdpicOyr40#3Gk{zo40(BDBvkBa?Vz^#ibDZs4(iqrEHx%qOe0JH(nL8J6KGkdS3 zFx@y&rkopM{k0f#q3anE?mB4H_vQl1r&dycTLYBF<_uBWpXmhzqTxDz6qRQDq3ikM z-RMzaSsrGGzy2FBJdRN%0IX|(n!{W~@$|}yaBG3GynG<@?yWqESQ@V>H9`4WE~e|R zl^5gI2DMf>y>j_)ub4m?S6>BG9A)UIcWkI3+Nz-_y2(qN>ANm8o3?aBy-Hp>ZkaKu z5&2FXF)A_g!ld>eo2~UPH4!BVc~-n|&m + + + + + + + + + + + + diff --git a/src/codegen/elements.xsl b/src/codegen/elements.xsl new file mode 100644 index 000000000..9c0e3cdd7 --- /dev/null +++ b/src/codegen/elements.xsl @@ -0,0 +1,146 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +"", + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +package org.apache.fop.svg; + +import org.apache.fop.fo.*; +import org.apache.fop.layout.Area; +import org.apache.fop.layout.FontState; +import org.apache.fop.apps.FOPException; + +import org.apache.batik.dom.svg.*; + +import org.w3c.dom.svg.SVGElement; +import org.w3c.dom.svg.SVGDocument; +import org.w3c.dom.Element; + +public class extends SVGObj { + + /** + * inner class for making objects. + */ + public static class Maker extends FObj.Maker { + + /** + * make a object. + * + * @param parent the parent formatting object + * @param propertyList the explicit properties of this object + * + * @return the object + */ + public FObj make(FObj parent, + PropertyList propertyList) throws FOPException { + return new (parent, propertyList); + } + } + + /** + * returns the maker for this object. + * + * @return the maker for objects + */ + public static FObj.Maker maker() { + return new .Maker(); + } + + /** + * constructs a object (called by Maker). + * + * @param parent the parent formatting object + * @param propertyList the explicit properties of this object + */ + protected (FObj parent, PropertyList propertyList) { + super(parent, propertyList); + this.name = ":"; + tagName = ""; + props = new String[] {}; + } + + + protected void addCharacters(char data[], int start, int length) { + this.children.addElement(new String(data, start, length - start)); + } + +} + + + + diff --git a/src/codegen/propmaker.xsl b/src/codegen/propmaker.xsl new file mode 100644 index 000000000..bf9d1671a --- /dev/null +++ b/src/codegen/propmaker.xsl @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + SVGStringProperty + + + + + diff --git a/src/codegen/svgelements.xml b/src/codegen/svgelements.xml new file mode 100644 index 000000000..ddc384112 --- /dev/null +++ b/src/codegen/svgelements.xml @@ -0,0 +1,1355 @@ + + + + + id + class + + + xml:lang + xml:space + + + requiredFeatures + requiredExtensions + systemLanguage + + + xmlns:xlink + xlink:type + xlink:role + xlink:arcrole + xlink:title + xlink:show + xlink:actuate + + + onfocusin + onfocusout + onactivate + onclick + onmousedown + onmouseup + onmouseover + onmousemove + onmouseout + onload + + + onunload + onabort + onerror + onresize + onscroll + onzoom + + + onbegin + onend + onrepeat + + + + + + + + + + + + + + + + + enable-background + + + flood-color + flood-opacity + + + fill + fill-opacity + fill-rule + stroke + stroke-dasharray + stroke-dashoffset + stroke-linecap + stroke-linejoin + stroke-miterlimit + stroke-opacity + stroke-width + + + font-family + font-size + font-size-adjust + font-stretch + font-style + font-variant + font-weight + + + stop-color + stop-opacity + + + clip-path + clip-rule + color + color-interpolation + color-rendering + cursor + display + filter + image-rendering + mask + opacity + pointer-events + space-rendering + text-rendering + visibility + + + color-profile + + + lighting-color + + + marker-start + marker-mid + marker-end + + + alignment-baseline + baseline-shift + direction + glyph-orientation-horizontal + glyph-orientation-vertical + kerning + letter-spacing + text-decoration + unicode-bidi + word-spacing + + + writing-mode + text-anchor + dominant-baseline + + + clip + overflow + + + x + y + width + height + result + + + + in + + + type + tableValues + slope + intercept + amplitude + exponent + offset + + + + xlink:href + + + attributeName + attributeType + + + + xlink:href + attributeName + attributeType + + + begin + dur + end + min + max + restart + repeatCount + repeatDur + fill + + + calcMode + values + keyTimes + keySplines + from + to + by + + + additive + accumulate + + + a + + + xmlns:xlink + xlink:type + xlink:role + xlink:arcrole + xlink:title + xlink:show + xlink:actuate + xlink:href + + + externalResourcesRequired + class + style + + transform + + target + + + + circle + + + + + externalResourcesRequired + class + style + + + transform + + cx + cy + r + + + + altGlyph + + + + + + xlink:href + glyphRef + format + externalResourcesRequired + class + style + + + + + + x + y + dx + dy + rotate + + + + altGlyphDef + + + + + + altGlyphItem + + + + + + animate + + + + externalResourcesRequired + + + + + + + + + + animateColor + + + + externalResourcesRequired + + + + + + + + + + animateMotion + + + + externalResourcesRequired + + + + calcMode + values + keyTimes + keySplines + from + to + by + + path + keyPoints + rotate + origin + + + + animateTransform + + + + externalResourcesRequired + + + + + + + type + + + + clipPath + + + + + externalResourcesRequired + class + style + + + + + + transform + clipPathUnits + + + + color-profile + + + + xlink:href + local + name + rendering-intent + + + + cursor + + + + xlink:href + + externalResourcesRequired + x + y + + + + defs + + + + + + + externalResourcesRequired + class + style + transform + + + + desc + + + + + class + style + + + + ellipse + + + + + externalResourcesRequired + class + style + + + transform + + cx + cy + rx + ry + + + + feBlend + + + + in2 + mode + + + + feColorMatrix + + + + type + values + + + + feComponentTransfer + + + + + + + feComposite + + + + in2 + operator + k1 + k2 + k3 + k4 + + + + feConvolveMatrix + + + order + kernelMatrix + divisor + bias + targetX + targetY + edgeMode + kernelUnitLength + preserveAlpha + + + + feDistantLight + + + azimuth + elevation + + + + feDiffuseLighting + + + class + style + + + surfaceScale + diffuseConstant + + + + feDisplacementMap + + + + in2 + scale + xChannelSelector + yChannelSelector + + + + feFlood + + + + class + style + + + + + feFuncR + + + + + + + feFuncG + + + + + + + feFuncB + + + + + + + feFuncA + + + + + + + feGaussianBlur + + + + stdDeviation + + + + feOffset + + + + + + fePointLight + + + x + y + z + + + + feImage + + + + xlink:href + + externalResourcesRequired + class + style + + transform + + + + + feMerge + + + + + + + feMergeNode + + + in + + + + feMorphology + + + + operator + radius + + + + feOffset + + + + dx + dy + + + + feSpecularLighting + + + class + style + + + surfaceScale + specularConstant + specularExponent + + + + feSpotLight + + + x + y + z + pointsAtX + pointsAtY + pointsAtZ + specularExponent + limitingConeAngle + + + + feTile + + + + + + + feTurbulence + + + + baseFrequency + numOctaves + seed + stitchTiles + type + + + + filter + + + + xlink:href + + externalResourcesRequired + class + style + + filterUnits + primitiveUnits + x + y + width + height + filterRes + + + + font + + + externalResourcesRequired + class + style + + horiz-origin-x + horiz-origin-y + horiz-adv-x + vert-origin-x + vert-origin-y + vert-adv-y + + + + font-face + + + font-family + font-style + font-variant + font-weight + font-stretch + font-size + unicode-range + units-per-em + panose-1 + stemv + stemh + slope + cap-height + x-height + accent-height + ascent + descent + widths + bbox + ideographic + alphabetic + mathematical + hanging + v-ideographic + v-alphabetic + v-mathematical + v-hanging + underline-position + underline-thickness + strikethrough-position + strikethrough-thickness + overline-position + overline-thickness + + + + font-face-src + + + + + + font-face-uri + + + + xlink:href + + + + font-face-format + + + string + + + + font-face-name + + + name + + + + foreignObject + + + + + externalResourcesRequired + class + style + + transform + + x + y + width + height + + + + + definition-src + + + + xlink:href + + + + g + + + + + + + externalResourcesRequired + style + transform + class + + + + glyph + + + class + style + + unicode + glyph-name + d + orientation + arabic-form + lang + horiz-adv-x + vert-origin-x + vert-origin-y + vert-adv-y + + + + glyphRef + + + + xlink:href + class + style + + glyphRef + format + x + y + dx + dy + + + + hkern + + + u1 + g1 + u2 + g2 + k + + + + image + + + + + + + + + + externalResourcesRequired + class + style + transform + preserveAspectRatio + xlink:href + x + y + width + height + + + + line + + + + + externalResourcesRequired + class + style + + + + transform + + x1 + x2 + y1 + y2 + + + + linearGradient + + + + xlink:href + externalResourcesRequired + class + style + + gradientUnits + gradientTransform + class + x1 + y1 + x2 + y2 + spreadMethod + + + + marker + + + + externalResourcesRequired + class + style + + viewBox + preserveAspectRatio + refX + refY + markerUnits + markerWidth + markerHeight + orient + + + + mask + + + + + externalResourcesRequired + class + style + + transform + maskUnits + maskContentUnits + x + y + width + height + + + + metadata + + + + + + missing-glyph + + + class + style + + d + horiz-adv-x + vert-origin-x + vert-origin-y + vert-adv-y + + + + mpath + + + + xlink:href + externalResourcesRequired + + + + path + + + + + + + + + externalResourcesRequired + style + transform + class + d + pathLength + + + + pattern + + + + + + externalResourcesRequired + class + style + + viewBox + preserveAspectRatio + xlink:href + width + height + x + y + patternUnits + patternContentUnits + patternTransform + + + + polygon + + + + + externalResourceRequired + class + style + + + + transform + + points + + + + polyline + + + + + externalResourceRequired + class + style + + + + transform + + points + + + + radialGradient + + + + externalResourcesRequired + style + class + + gradientTransform + xlink:href + cx + cy + r + fx + fy + gradientUnits + spreadMethod + + + + rect + + + + + externalResourcesRequired + class + style + + + transform + + x + y + width + height + rx + ry + + + + set + + + + externalResourcesRequired + + + + + to + + + + script + + + + xlink:href + externalResourcesRequired + type + + + + stop + + + class + style + + offset + + + + style + + + xml:space + type + media + title + + + + svg + + + + + + + + externalResourcesRequired + class + style + viewBox + preserveAspectRatio + zoomAndPan + x + y + width + height + contentScriptType + contentStyleType + + + + switch + + + + + + + externalResourcesRequired + class + style + transform + + + + symbol + + + + externalResourcesRequired + + + class + style + viewBox + preserveAspectRatio + + + + tref + + + + xlink:href + + + externalResourcesRequired + class + style + + + + + + x + y + dx + dy + rotate + textLength + lengthAdjust + + + + tspan + + + + + externalResourcesRequired + class + style + + + + + + x + y + dx + dy + rotate + textLength + lengthAdjust + + + + text + + + + + externalResourcesRequired + class + style + + + + + + transform + + x + y + textLength + lengthAdjust + + + + textPath + + + + xlink:href + + + externalResourcesRequired + class + style + + + + + + startOffset + textLength + lengthAdjust + method + spacing + + + + title + + + + + class + style + + + + use + + + + + + + + externalResourcesRequired + class + style + transform + xlink:href + x + y + width + height + + + + vkern + + + u1 + g1 + u2 + g2 + k + + + + view + + + externalResourcesRequired + viewBox + preserveAspectRatio + zoomAndPan + viewTarget + + + diff --git a/src/codegen/svgproperties.xml b/src/codegen/svgproperties.xml deleted file mode 100644 index 1a689e871..000000000 --- a/src/codegen/svgproperties.xml +++ /dev/null @@ -1,259 +0,0 @@ - - - - - - width - SVGLengthProperty - - - height - SVGLengthProperty - - - x - SVGLengthProperty - - - y - SVGLengthProperty - - - x1 - SVGLengthProperty - - - y1 - SVGLengthProperty - - - x2 - SVGLengthProperty - - - y2 - SVGLengthProperty - - - rx - SVGLengthProperty - - - ry - SVGLengthProperty - - - dx - SVGLengthProperty - - - dy - SVGLengthProperty - - - cx - SVGLengthProperty - - - cy - SVGLengthProperty - - - r - SVGLengthProperty - - - fx - SVGLengthProperty - - - fy - SVGLengthProperty - - - refX - SVGLengthProperty - - - refY - SVGLengthProperty - - - markerWidth - SVGLengthProperty - - - markerHeight - SVGLengthProperty - - - offset - SVGLengthProperty - - - - style - SVGStyle - - - transform - SVGTransform - - - gradientTransform - SVGTransform - - - d - SVGD - - - points - SVGPoints - - - - font-family - - - font-style - - - font-weight - - - font-size - - - id - - - - xlink:href - HRef - false - String - - - - requiredFeatures - RequiredFeatures - false - String - notpresent - - - requiredExtensions - RequiredExtensions - false - String - notpresent - - - systemLanguage - SystemLanguage - false - String - notpresent - - - class - ElementClass - false - String - - - - xml:space - XMLSpace - true - Enum - - preserve - default - - default - - - spreadMethod - SpreadMethod - false - Enum - - pad - reflect - repeat - - pad - - - gradientUnits - GenericUnits - - - patternUnits - GenericUnits - - - patternContentUnits - GenericUnits - - - clipPathUnits - GenericUnits - - - GenericUnits - GenericUnits - false - Enum - - userSpaceOnUse - objectBoundingBox - - userSpaceOnUse - - - viewBox - ViewBox - false - String - - - - text-anchor - TextAnchor - true - Enum - - start - middle - end - inherit - - start - - - - - tref - tspan - - x - SVGLengthListProperty - - - y - SVGLengthListProperty - - - dx - SVGLengthListProperty - - - dy - SVGLengthListProperty - - - - diff --git a/src/org/apache/fop/datatypes/PathData.java b/src/org/apache/fop/datatypes/PathData.java deleted file mode 100644 index bdb91cf63..000000000 --- a/src/org/apache/fop/datatypes/PathData.java +++ /dev/null @@ -1,302 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.datatypes; - -import org.apache.fop.fo.Property; -import org.apache.fop.svg.PathPoint; -import org.apache.fop.dom.svg.*; -import org.w3c.dom.svg.*; - -import java.util.*; -/** - * a PathData quantity in XSL - * This class parses the string of path data and create a list of - * object commands. It is up to renderers (or whatever) to interpret - * the command properly. - * eg. m at the start is an absolute moveto. - * - * - * @author Keiron Liddle - */ -public class PathData { - Vector table = new Vector(); - - /** - * set the PathData given a particular String specifying PathData and units - */ - public PathData (String len) - { - convert(len); - } - - protected void convert(String len) - { - StringTokenizer st = new StringTokenizer(len, "MmLlHhVvCcSsQqTtAaZz", true); - /* - * If there are two numbers and no spaces then it is assumed that all - * numbers are the same number of chars (3), otherwise there is an error - * not mentioned in spec. - */ - while(st.hasMoreTokens()) { - String str = st.nextToken(); - int pos; - if(str.equals("M")) { - float[][] vals = getPoints(2, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_MOVETO_ABS, vals[count])); - } - } - } else if(str.equals("m")) { - // if first element treat as M - // otherwise treat as implicit lineto, this is handled by renderers - float[][] vals = getPoints(2, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_MOVETO_REL, vals[count])); - } - } - } else if(str.equals("L")) { - float[][] vals = getPoints(2, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_LINETO_ABS, vals[count])); - } - } - } else if(str.equals("l")) { - float[][] vals = getPoints(2, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_LINETO_REL, vals[count])); - } - } - } else if(str.equals("H")) { - float[][] vals = getPoints(1, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_ABS, vals[count])); - } - } - } else if(str.equals("h")) { - float[][] vals = getPoints(1, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_REL, vals[count])); - } - } - } else if(str.equals("V")) { - float[][] vals = getPoints(1, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_LINETO_VERTICAL_ABS, vals[count])); - } - } - } else if(str.equals("v")) { - float[][] vals = getPoints(1, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_LINETO_VERTICAL_REL, vals[count])); - } - } - } else if(str.equals("C")) { - float[][] vals = getPoints(6, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_CURVETO_CUBIC_ABS, vals[count])); - } - } - } else if(str.equals("c")) { - float[][] vals = getPoints(6, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_CURVETO_CUBIC_REL, vals[count])); - } - } - } else if(str.equals("S")) { - float[][] vals = getPoints(4, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_ABS, vals[count])); - } - } - } else if(str.equals("s")) { - float[][] vals = getPoints(4, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_REL, vals[count])); - } - } - } else if(str.equals("Q")) { - float[][] vals = getPoints(4, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_ABS, vals[count])); - } - } - } else if(str.equals("q")) { - float[][] vals = getPoints(4, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_REL, vals[count])); - } - } - } else if(str.equals("T")) { - float[][] vals = getPoints(2, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS, vals[count])); - } - } - } else if(str.equals("t")) { - float[][] vals = getPoints(2, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL, vals[count])); - } - } - } else if(str.equals("A")) { - float[][] vals = getPoints(7, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_ARC_ABS, vals[count])); - } - } - } else if(str.equals("a")) { - float[][] vals = getPoints(7, st); - if(vals != null) { - for(int count = 0; count < vals.length; count++) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_ARC_REL, vals[count])); - } - } - } else if(str.equals("Z") || str.equals("z")) { - addSVGPathSeg(new SVGPathSegImpl(SVGPathSeg.PATHSEG_CLOSEPATH, null)); - } - } - } - - public Vector getPath() - { - return table; - } - - public String toString() - { - return ""; - } - - float[][] getPoints(int num, StringTokenizer st) - { - float[] set; - String str; - int pos; - float[][] ret = null; - if(st.hasMoreTokens()) { - str = st.nextToken(); - str = str.trim(); -// pos = str.indexOf(" "); -/* if((str.indexOf(" ") == -1) && (str.indexOf(",") == -1) && (str.indexOf("-") == -1)) { - int length = str.length(); - if((length % num) != 0) { - // invalid number comb - } else { - // how do we determine the length of a single number? - } - } else {*/ - { - StringTokenizer pointtok = new StringTokenizer(str, " ,-\n\r\t", true); - int count = 0; - Vector values = new Vector(); - set = new float[num]; - boolean neg; - while(pointtok.hasMoreTokens()) { - String point = null; - String delim = pointtok.nextToken(); - if(delim.equals("-")) { - neg = true; - if(pointtok.hasMoreTokens()) { - point = pointtok.nextToken(); - } else { - break; - } - } else { - neg = false; - if(delim.equals(" ") || delim.equals(",") || delim.equals("\r") || delim.equals("\n") || delim.equals("\t")) { - continue; - } - point = delim; - } - - float pd = Float.valueOf(point).floatValue(); - if(neg) - pd = -pd; - set[count] = pd; - count++; - if(count == num) { - values.addElement(set); - set = new float[num]; - count = 0; - } - } - count = 0; - ret = new float[values.size()][]; - for(Enumeration e = values.elements(); e.hasMoreElements(); ) { - ret[count++] = (float[])e.nextElement(); - } - } - } - return ret; - } - - protected void addSVGPathSeg(SVGPathSeg pc) - { - table.addElement(pc); - } -} diff --git a/src/org/apache/fop/datatypes/StyleData.java b/src/org/apache/fop/datatypes/StyleData.java deleted file mode 100644 index c1c2548bc..000000000 --- a/src/org/apache/fop/datatypes/StyleData.java +++ /dev/null @@ -1,81 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.datatypes; - -import org.apache.fop.fo.Property; -import org.apache.fop.messaging.MessageHandler; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.css.*; - -import org.w3c.dom.css.*; - -import java.util.*; -/** - * a StyleData quantity in XSL - * - * @author Keiron Liddle - */ -public class StyleData { - CSSStyleDeclaration styleDec = new CSSStyleDeclarationImpl(); - - /** - * set the StyleData given a particular String specifying StyleData and units - */ - public StyleData (String str) { - styleDec.setCssText(str); - } - - public CSSStyleDeclaration getStyle() - { - return styleDec; - } -} diff --git a/src/org/apache/fop/datatypes/TransformData.java b/src/org/apache/fop/datatypes/TransformData.java deleted file mode 100644 index 067712b37..000000000 --- a/src/org/apache/fop/datatypes/TransformData.java +++ /dev/null @@ -1,228 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.datatypes; - -import org.apache.fop.fo.Property; -import org.apache.fop.messaging.MessageHandler; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGTransformImpl; - -import org.w3c.dom.svg.*; - -import java.util.*; -/** - * a TransformData quantity in XSL - * - * @author Keiron Liddle - * modified Nov 14,2000 Mike Crowe - */ -public class TransformData { - SVGAnimatedTransformListImpl trans; - - /** - * set the TransformData given a particular String specifying TransformData and units - */ - public TransformData (String len) { - convert(len); - } - - - /** - * The following is taken from CR-SVG-20000802 7.6, Transform Attribute - * The value of the transform attribute is a , which is - * defined as a list of transform definitions, which are applied in the - * order provided. The individual transform definitions are separated by - * whitespace and/or a comma. The available types of transform - * definitions include: - * - * matrix( ), which specifies a transformation in the - * form of a transformation matrix of six values. - * matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix - * [a b c d e f]. - * - * translate( []), which specifies a translation by tx and ty. - * - * scale( []), which specifies a scale operation by sx and sy. If - * is not provided, it is assumed to be equal to . - * - * rotate( [ ]), which specifies a rotation by - * degrees about a given point. - * If optional parameters and are not supplied, the rotate is about - * the origin of the current user coordinate system. The - * operation corresponds to the matrix [cos(a) sin(a) -sin(a) cos(a) 0 0]. - * If optional parameters and are supplied, the rotate is about the - * point (, ). The operation represents the - * equivalent of the following specification: translate(, ) - * rotate() translate(-, -). - * - * skewX(), which specifies a skew transformation along the - * x-axis. - * skewY(), which specifies a skew transformation along the - * y-axis. - */ - protected void convert(String len) { - Vector list = new Vector(); - StringTokenizer st = new StringTokenizer(len, "()"); - // need to check for unbalanced brackets - while (st.hasMoreTokens()) { - String str = st.nextToken(); - String type = str.trim(); - String value; - if (st.hasMoreTokens()) { - value = st.nextToken().trim(); - SVGTransform transform = new SVGTransformImpl(); - - if (type.equals("matrix")) { - SVGMatrix matrix = new SVGMatrixImpl(); - StringTokenizer mt = - new StringTokenizer(value, " ,\r\n-", true); - if (mt.hasMoreTokens()) - matrix.setA(extractValue(mt)); - if (mt.hasMoreTokens()) - matrix.setB(extractValue(mt)); - if (mt.hasMoreTokens()) - matrix.setC(extractValue(mt)); - if (mt.hasMoreTokens()) - matrix.setD(extractValue(mt)); - if (mt.hasMoreTokens()) - matrix.setE(extractValue(mt)); - if (mt.hasMoreTokens()) - matrix.setF(extractValue(mt)); - transform.setMatrix(matrix); - list.addElement(transform); - } else if (type.equals("translate")) { - float xlen = 0; - float ylen = 0; - StringTokenizer mt = - new StringTokenizer(value, " ,\r\n-", true); - if (mt.hasMoreTokens()) - xlen = extractValue(mt); - if (mt.hasMoreTokens()) - ylen = extractValue(mt); - - transform.setTranslate(xlen, ylen); - list.addElement(transform); - } else if (type.equals("scale")) { - float xlen = 0; - float ylen = 0; - StringTokenizer mt = - new StringTokenizer(value, " ,\r\n-", true); - - if (mt.hasMoreTokens()) - xlen = extractValue(mt); - if (mt.hasMoreTokens()) - ylen = extractValue(mt); - else - ylen = xlen; - - transform.setScale(xlen, ylen); - list.addElement(transform); - } else if (type.equals("rotate")) { - SVGAngleImpl angle = new SVGAngleImpl(); - angle.setValueAsString(value); - - transform.setRotate(angle.getValue(), 0, 0); - list.addElement(transform); - } else if (type.equals("skewX")) { - SVGAngleImpl angle = new SVGAngleImpl(); - angle.setValueAsString(value); - - transform.setSkewX(angle.getValue()); - list.addElement(transform); - } else if (type.equals("skewY")) { - SVGAngleImpl angle = new SVGAngleImpl(); - angle.setValueAsString(value); - - transform.setSkewY(angle.getValue()); - list.addElement(transform); - - } else { - MessageHandler.errorln( - "WARNING: Unknown Transform type : " + type); - } - - } - } - if (list != null) { - SVGTransformList stl = new SVGTransformListImpl(); - for (Enumeration e = list.elements(); e.hasMoreElements();) { - stl.appendItem((SVGTransform) e.nextElement()); - } - trans = new SVGAnimatedTransformListImpl(); - trans.setBaseVal(stl); - } - } - - private float extractValue(StringTokenizer mt) { - String tok = mt.nextToken(); - boolean neg = false; - while (tok.equals(" ") || tok.equals(",") || tok.equals("\n") || - tok.equals("\r") || tok.equals("-")) { - if (tok.equals("-")) { - neg = true; - } - if (!mt.hasMoreTokens()) - break; - tok = mt.nextToken(); - } - if (neg) - tok = "-" + tok; - SVGLengthImpl length = new SVGLengthImpl(); - length.setValueAsString(tok); - return(length.getValue()); - } - - - public SVGAnimatedTransformList getTransform() { - return trans; - } -} diff --git a/src/org/apache/fop/dom/CharacterDataImpl.java b/src/org/apache/fop/dom/CharacterDataImpl.java deleted file mode 100644 index ed7d39e68..000000000 --- a/src/org/apache/fop/dom/CharacterDataImpl.java +++ /dev/null @@ -1,114 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom; - -import org.apache.fop.datatypes.*; -import org.apache.fop.messaging.*; -import org.apache.fop.dom.svg.*; - -import org.w3c.dom.*; - -import java.util.*; - -/** - * - * - */ -public class CharacterDataImpl extends NodeImpl implements CharacterData { - String str; - - public CharacterDataImpl() - { - } - - public String getData() - { - return str; - } - - public void setData(String s) - { - str = s; - } - - public void insertData(int i, String s) - { - } - - public void deleteData(int i, int j) - { - } - - public int getLength() - { - return str.length(); - } - - public void appendData(String s) - { - str = str + s; - } - - public void replaceData(int i, int j, String s) - { - } - - public String substringData(int i, int j) - { - return str.substring(i, j); - } - - public String toString() - { - return "Character Data: " + str; - } -} diff --git a/src/org/apache/fop/dom/ElementImpl.java b/src/org/apache/fop/dom/ElementImpl.java deleted file mode 100644 index 9e10b6daa..000000000 --- a/src/org/apache/fop/dom/ElementImpl.java +++ /dev/null @@ -1,173 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom; - -import org.apache.fop.datatypes.*; - -import org.w3c.dom.*; - -import java.util.*; - -/** - * - * - */ -public class ElementImpl extends NodeImpl implements Element { - - public Node replaceChild(Node n, Node no) - { - return null; - } - - public String getAttribute(String name) - { - return null; - } - - public void setAttribute(String name, String value) throws DOMException - { - } - - public void removeAttribute(String name) throws DOMException - { - } - - public Attr getAttributeNode(String name) - { - return null; - } - - public Attr setAttributeNode(Attr newAttr) - throws DOMException - { - return null; - } - - public Attr removeAttributeNode(Attr oldAttr) - throws DOMException - { - return null; - } - - public NodeList getElementsByTagName(String name) - { - NodeList nl = getChildNodes(); - Vector eles = new Vector(); - for(int count = 0; count < nl.getLength(); count++) { - Node el = (Node)nl.item(count); - if(el instanceof Element) { - if(name.equals(((Element)el).getTagName())) { - eles.addElement(el); - } - NodeList subtags = ((Element)el).getElementsByTagName(name); - for(int c = 0; c < subtags.getLength(); c++) { - Node node = (Node)subtags.item(c); - eles.addElement(node); - } - } - } - NodeList val = new NodeListImpl(eles); - return val; - } - - public String getAttributeNS(String namespaceURI, - String localName) - { - return null; - } - - public void setAttributeNS(String namespaceURI, - String qualifiedName, - String value) - throws DOMException - { - } - - public void removeAttributeNS(String namespaceURI, - String localName) - throws DOMException - { - } - - public Attr getAttributeNodeNS(String namespaceURI, - String localName) - { - return null; - } - - public Attr setAttributeNodeNS(Attr newAttr) - throws DOMException - { - return null; - } - - public NodeList getElementsByTagNameNS(String namespaceURI, - String localName) - { - return null; - } - - public boolean hasAttributeNS (String namespaceURI, - String localName) - { - return false; - } - - public boolean hasAttribute (String name) - { - return false; - } - - public boolean hasAttributes() - { - return false; - } -} diff --git a/src/org/apache/fop/dom/NodeImpl.java b/src/org/apache/fop/dom/NodeImpl.java deleted file mode 100644 index 7a2c263d6..000000000 --- a/src/org/apache/fop/dom/NodeImpl.java +++ /dev/null @@ -1,238 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom; - -import org.apache.fop.datatypes.*; - -import org.w3c.dom.*; - -import java.util.*; - -/** - * - * - */ -public class NodeImpl implements Node { - protected Vector childs = new Vector(); - Node parent = null; - protected Document ownerDoc; - - public Node replaceChild(Node n, Node no) - { - return null; - } - - public String getNodeName() - { - return null; - } - - public short getNodeType() - { - return 0; - } - - public Node getParentNode() - { - return parent; - } - - public NodeList getChildNodes() - { - return new NodeListImpl(childs); - } - - public Node getFirstChild() - { - if(childs.size() > 0) { - return (Node)childs.elementAt(0); - } - return null; - } - - public Node getLastChild() - { - if(childs.size() > 0) { - return (Node)childs.elementAt(childs.size() - 1); - } - return null; - } - - public Node getPreviousSibling() - { - int ind = ((NodeImpl)parent).childs.indexOf(this); - if(ind > 0) { - return (Node)((NodeImpl)parent).childs.elementAt(ind - 1); - } - return null; - } - - public Node getNextSibling() - { - int ind = ((NodeImpl)parent).childs.indexOf(this); - if(ind + 1 < ((NodeImpl)parent).childs.size()) { - return (Node)((NodeImpl)parent).childs.elementAt(ind + 1); - } - return null; - } - - public NamedNodeMap getAttributes() - { - return null; - } - - public Document getOwnerDocument() - { - return ownerDoc; - } - - void setOwnerDocument(Document doc) - { - ownerDoc = doc; - NodeList nl = getChildNodes(); - for(int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if(n instanceof ElementImpl) { - ((ElementImpl)n).setOwnerDocument(ownerDoc); - } - } - } - - public Node insertBefore(Node newChild, - Node refChild) - throws DOMException - { - return null; - } - - public Node removeChild(Node oldChild) - throws DOMException - { - return null; - } - - public Node appendChild(Node newChild) - throws DOMException - { - childs.addElement(newChild); - if(newChild instanceof ElementImpl) { - ElementImpl ele = (ElementImpl)newChild; - ele.parent = this; - ele.setOwnerDocument(ownerDoc); - } - return newChild; - } - - public boolean hasChildNodes() - { - return childs.size() > 0; - } - - public Node cloneNode(boolean deep) - { - return null; - } - - public void normalize() - { - } - - public boolean supports(String feature, - String version) - { - return false; - } - - public boolean isSupported(String feature, - String version) - { - return false; - } - - - public String getNamespaceURI() - { - return ""; - } - - public String getPrefix() - { - return "svg"; - } - - public void setPrefix(String prefix) throws DOMException - { - } - - public String getLocalName() - { - return null; - } - - public String getNodeValue() throws DOMException - { - return null; - } - - public void setNodeValue(String nodeValue) throws DOMException - { - } - - public String getTagName() - { - return null; - } - - public boolean hasAttributes() - { - return false; - } -} diff --git a/src/org/apache/fop/dom/NodeListImpl.java b/src/org/apache/fop/dom/NodeListImpl.java deleted file mode 100644 index 8a800eaf9..000000000 --- a/src/org/apache/fop/dom/NodeListImpl.java +++ /dev/null @@ -1,86 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom; - -import org.apache.fop.datatypes.*; - -import org.w3c.dom.*; - -import java.util.*; - -/** - * - * - */ -class NodeListImpl implements NodeList -{ - Vector vect = null; - - NodeListImpl(Vector v) - { - vect = v; - } - - public int getLength() - { - return vect.size(); - } - - public Node item(int i) - { - return (Node)vect.elementAt(i); - } - - public String toString() - { - return vect.toString(); - } -} diff --git a/src/org/apache/fop/dom/css/CSSPrimitiveValueImpl.java b/src/org/apache/fop/dom/css/CSSPrimitiveValueImpl.java deleted file mode 100644 index 484925726..000000000 --- a/src/org/apache/fop/dom/css/CSSPrimitiveValueImpl.java +++ /dev/null @@ -1,116 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.css; - -import org.w3c.dom.css.*; - -/** - * - * - */ -public class CSSPrimitiveValueImpl extends CSSValueImpl implements CSSPrimitiveValue { - short primType = CSS_UNKNOWN; - float floatVal = 0; - String strVal = null; - - public CSSPrimitiveValueImpl() - { - type = CSS_PRIMITIVE_VALUE; - } - - public short getPrimitiveType() - { - return primType; - } - - public void setFloatValue(short unitType, - float floatValue) - { - primType = unitType; - this.floatVal = floatValue; - } - - public float getFloatValue(short unitType) - { - return this.floatVal; - } - - public void setStringValue(short stringType, - String stringValue) - { - strVal = stringValue; - } - - public String getStringValue() - { - return strVal; - } - - public Counter getCounterValue() - { - return null; - } - - public Rect getRectValue() - { - return null; - } - - public RGBColor getRGBColorValue() - { - if(primType == CSSPrimitiveValue.CSS_RGBCOLOR) { - } else { - // throw a DOMException - } - return null; - } -} diff --git a/src/org/apache/fop/dom/css/CSSStyleDeclarationImpl.java b/src/org/apache/fop/dom/css/CSSStyleDeclarationImpl.java deleted file mode 100644 index 194add272..000000000 --- a/src/org/apache/fop/dom/css/CSSStyleDeclarationImpl.java +++ /dev/null @@ -1,394 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.css; - -import org.apache.fop.datatypes.*; -import org.apache.fop.messaging.*; -import org.apache.fop.dom.svg.*; - -import org.w3c.dom.css.*; -import org.w3c.dom.svg.*; - -import java.util.*; - -/** - * - * - */ -public class CSSStyleDeclarationImpl implements CSSStyleDeclaration { - Hashtable table = new Hashtable(); - - public CSSStyleDeclarationImpl() { - } - - public String removeProperty(String str) { - return null; - } - - public String getCssText() { - return null; - } - - public void setCssText(String str) { - try { - parseStyleText(str); - } catch (Exception e) { - e.printStackTrace(); - } - } - - protected void parseStyleText(String len) { - StringTokenizer st = new StringTokenizer(len, ";"); - while (st.hasMoreTokens()) { - String str = st.nextToken(); - int pos; - pos = str.indexOf(":"); - if (pos != -1) { - String type = str.substring(0, pos).trim(); - String value = str.substring(pos + 1, str.length()).trim(); - if (type.equals("stroke-width")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("stroke")) { - CSSPrimitiveValue primval = new RGBColorValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("color")) { - CSSPrimitiveValue primval = new RGBColorValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("stroke-linecap")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("stroke-linejoin")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("stroke-miterlimit")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("stroke-dasharray")) { - // array of space or comma separated numbers - if (!value.equals("none")) { - CSSValueListImpl list = new CSSValueListImpl(); - StringTokenizer array = - new StringTokenizer(value, " ,"); - while (array.hasMoreTokens()) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(array.nextToken()); - list.addValue(primval); - } - table.put(type, list); - } else { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } - } else if (type.equals("stroke-dashoffset")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("stroke-opacity")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("fill")) { - CSSPrimitiveValue primval = new RGBColorValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("fill-rule")) { - // nonzero - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("font")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("font-size")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("font-family")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("font-weight")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("font-style")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("font-variant")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("font-stretch")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("font-size-adjust")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("letter-spacing")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("word-spacing")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("text-decoration")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("mask")) { - CSSPrimitiveValue primval = new URIValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("fill-opacity")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("opacity")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("filter")) { - // table.put(type, new Filter(value)); - } else if (type.equals("stop-color")) { - CSSPrimitiveValue primval = new RGBColorValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("stop-opacity")) { - CSSPrimitiveValue primval = new LengthValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("overflow")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("clip-rule")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("clip-path")) { - CSSPrimitiveValue primval = new URIValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("clip")) { - CSSPrimitiveValue primval = new URIValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("marker-start")) { - CSSPrimitiveValue primval = new URIValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("marker-mid")) { - CSSPrimitiveValue primval = new URIValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("marker-end")) { - CSSPrimitiveValue primval = new URIValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("text-antialiasing")) { - // boolean - } else if (type.equals("stroke-antialiasing")) { - // boolean - } else if (type.equals("writing-mode")) { - } else if (type.equals("glyph-orientation-vertical")) { - } else if (type.equals("glyph-orientation-horizontal")) { - } else if (type.equals("direction")) { - } else if (type.equals("unicode-bidi")) { - } else if (type.equals("text-anchor")) { - CSSPrimitiveValue primval = new StringValue(); - primval.setCssText(value); - table.put(type, primval); - } else if (type.equals("dominant-baseline")) { - } else if (type.equals("baseline-identifier")) { - } else if (type.equals("baseline-shift")) { - } else if (type.equals("font-size-adjust")) { - } else { - MessageHandler.logln( - "WARNING: Unknown style element : " + type); - } - } else { - if (!"".equals(str.trim())) - MessageHandler.errorln( - "ERROR: Invalid style element " + str); - } - } - } - - public String getPropertyValue(String str) { - return getPropertyCSSValue(str).getCssText(); - } - - public void setProperty(String a, String b, String c) { - } - - public String item(int n) { - return null; - } - - public CSSRule getParentRule() { - return null; - } - - public String getPropertyPriority(String str) { - return null; - } - - public CSSValue getPropertyCSSValue(String str) { - return (CSSValue) table.get(str); - } - - public int getLength() { - return table.size(); - } - - class RGBColorValue extends CSSPrimitiveValueImpl { - RGBColor col = null; - - public void setCssText(String str) { - super.setCssText(str); - if (str.startsWith("url(")) { - primType = CSS_URI; - } else if (str.equals("currentColor")) { - primType = CSS_STRING; - } else if (!str.equals("none")) { - float red; - float green; - float blue; - ColorType ct = new ColorType(str); - red = ct.red(); - green = ct.green(); - blue = ct.blue(); - col = new RGBColorImpl(red, green, blue); - primType = CSS_RGBCOLOR; - } else { - primType = CSS_STRING; - } - } - - public RGBColor getRGBColorValue() { - if (primType != CSS_RGBCOLOR) { - // throw exception - } - return col; - } - } - - /* - * This should probably be moved to dom.svg... - */ - class LengthValue extends CSSPrimitiveValueImpl { - - public void setCssText(String str) { - super.setCssText(str); - SVGLength length = new SVGLengthImpl(str); - floatVal = length.getValue(); - switch (length.getUnitType()) { - case SVGLength.SVG_LENGTHTYPE_IN: - primType = CSS_IN; - break; - case SVGLength.SVG_LENGTHTYPE_CM: - primType = CSS_CM; - break; - case SVGLength.SVG_LENGTHTYPE_MM: - primType = CSS_MM; - break; - case SVGLength.SVG_LENGTHTYPE_PT: - primType = CSS_PT; - break; - case SVGLength.SVG_LENGTHTYPE_PC: - primType = CSS_PC; - break; - case SVGLength.SVG_LENGTHTYPE_EMS: - primType = CSS_EMS; - break; - case SVGLength.SVG_LENGTHTYPE_PX: - primType = CSS_PX; - break; - case SVGLength.SVG_LENGTHTYPE_PERCENTAGE: - primType = CSS_PERCENTAGE; - break; - case SVGLength.SVG_LENGTHTYPE_NUMBER: - primType = CSS_NUMBER; - break; - } - } - } - - class StringValue extends CSSPrimitiveValueImpl { - - public void setCssText(String str) { - super.setCssText(str); - primType = CSS_STRING; - } - } - - class URIValue extends CSSPrimitiveValueImpl { - - public void setCssText(String str) { - super.setCssText(str); - primType = CSS_URI; - } - } -} diff --git a/src/org/apache/fop/dom/css/CSSStyleRuleImpl.java b/src/org/apache/fop/dom/css/CSSStyleRuleImpl.java deleted file mode 100644 index 5d6e37a35..000000000 --- a/src/org/apache/fop/dom/css/CSSStyleRuleImpl.java +++ /dev/null @@ -1,323 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.css; - -//import org.apache.fop.dom.svg.*; -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.*; -import org.w3c.dom.*; -import org.w3c.dom.stylesheets.*; - -import java.util.*; - -/** - * - * - */ -public class CSSStyleRuleImpl implements CSSStyleRule { - String seltext; - String cssText; - CSSStyleDeclaration style; - CSSStyleSheet styleSheet; - Vector selectors = new Vector(); - - public CSSStyleRuleImpl(CSSStyleSheet styleSheet) - { - this.styleSheet = styleSheet; - } - - public String getSelectorText() - { - return seltext; - } - - /** - * Selectors are comma separated values (except for attributes) - * of all the selectors for the style. - */ - public void setSelectorText(String selectorText) - { - seltext = selectorText; - parseSelector(); - } - - protected void parseSelector() - { - // need to handle "," in attribute selectors - StringTokenizer st = new StringTokenizer(seltext, ","); - while(st.hasMoreTokens()) { - String sel = st.nextToken().trim(); - StringTokenizer subt = new StringTokenizer(sel, " \t\n\r"); - Selector last = null; - Selector current = null; - int compoundstate = 0; - while(subt.hasMoreTokens()) { - String str = subt.nextToken().trim(); - current = new Selector(); - boolean compounding = false; - if(str.equals("*")) { - // all - current.type = Selector.ALL; - current.value = "*"; - } else if(str.equals(">")) { - // child of - compoundstate = 1; - compounding = true; - } else if(str.equals("+")) { - // precedent of - compoundstate = 2; - compounding = true; - } else if(str.startsWith("#")) { - // id - current.type = Selector.ID; - current.value = str.substring(1); - } else if(str.startsWith(".")) { - // class - current.type = Selector.CLASS; - current.value = str.substring(1); - } else if(str.startsWith("[")) { - // attribute - current.type = Selector.ATTRIBUTE; - current.value = str.substring(1, str.length() - 1); - } else { - // tag - current.type = Selector.TAG; - if(str.indexOf(":") != -1) { - current.type = Selector.TAG_FIRST_CHILD; - int pos = str.indexOf(":"); - current.value = str.substring(0, pos); - current.subValue = str.substring(pos + 1); - } else if(str.indexOf("#") != -1) { - current.type = Selector.TAG_ID; - int pos = str.indexOf("#"); - current.value = str.substring(0, pos); - current.subValue = str.substring(pos + 1); - } else if(str.indexOf(".") != -1) { - current.type = Selector.TAG_CLASS; - int pos = str.indexOf("."); - current.value = str.substring(0, pos); - current.subValue = str.substring(pos + 1); - } else { - current.value = str; - } - } - if(!compounding) { - switch(compoundstate) { - case 0: - if(last != null) { - Selector compound = new Selector(); - compound.type = Selector.DESCENDANT; - compound.last = last; - compound.current = current; - current = compound; - compoundstate = 0; - } - break; - case 1: - { - Selector compound = new Selector(); - compound.type = Selector.CHILD; - compound.last = last; - compound.current = current; - current = compound; - compoundstate = 0; - } - break; - case 2: - { - Selector compound = new Selector(); - compound.type = Selector.PRECEDENT; - compound.last = last; - compound.current = current; - current = compound; - compoundstate = 0; - } - break; - } - last = current; - } - } - if(current != null) - selectors.addElement(current); - } - } - - public CSSStyleDeclaration getStyle() - { - return style; - } - - public String getCssText() - { - return cssText; - } - - public void setCssText(String cssText) - { - this.cssText = cssText; - style = new CSSStyleDeclarationImpl(); - style.setCssText(cssText); - } - - public short getType() - { - return STYLE_RULE; - } - - public CSSStyleSheet getParentStyleSheet() - { - return styleSheet; - } - - public CSSRule getParentRule() - { - return null; - } - - /** - * This should probably be elsewhere, in dom.svg - */ - public boolean matches(SVGElement el) - { - for(Enumeration e = selectors.elements(); e.hasMoreElements(); ) { - Selector sel = (Selector)e.nextElement(); - if(matches(el, sel)) - return true; - } - return false; - } - - protected boolean matches(SVGElement el, Selector sel) - { - short type = sel.type; - if(el == null) - return false; - switch(type) { - case Selector.ALL: - return true; -// break; - case Selector.ID: - return el.getId().equals(sel.value); -// break; - case Selector.CLASS: - return ((SVGStylable)el).getClassName().getBaseVal().equals(sel.value); -// break; - case Selector.ATTRIBUTE: -//System.out.println(sel.value + ":" + el.getAttribute(sel.value)); -// return el.getAttribute(sel.value); - break; - case Selector.TAG: - return sel.value.equals(el.getTagName()); -// break; - case Selector.TAG_FIRST_CHILD: - if(el.getParentNode() != null) - return (el.getParentNode().getFirstChild() == el); - break; - case Selector.TAG_ID: - return sel.value.equals(el.getTagName()) - && sel.subValue.equals(el.getId()); -// break; - case Selector.TAG_CLASS: - return sel.value.equals(el.getTagName()) - && sel.subValue.equals(((SVGStylable)el).getClassName().getBaseVal()); -// break; - case Selector.DESCENDANT: - if(el.getParentNode() instanceof SVGElement) { - if(!matches(el, sel.current)) - return false; - SVGElement parent = (SVGElement)el.getParentNode(); - while(parent != null) { - if(matches(parent, sel.last)) - return true; - if(parent.getParentNode() instanceof SVGElement) { - parent = (SVGElement)parent.getParentNode(); - } else { - return false; - } - } - } - return false; -// break; - case Selector.CHILD: - return matches(el, sel.current) - && matches((SVGElement)el.getParentNode(), sel.last); -// break; - case Selector.PRECEDENT: - return matches(el, sel.current) - && matches((SVGElement)el.getPreviousSibling(), sel.last); -// break; - } - return false; - } -} - -class Selector { - final static short NONE = -1; - final static short ALL = 0; - final static short ID = 1; - final static short CLASS = 2; - final static short ATTRIBUTE = 3; - final static short TAG = 4; - final static short DESCENDANT = 5; - final static short CHILD = 6; - final static short PRECEDENT = 7; - final static short TAG_FIRST_CHILD = 8; - final static short TAG_ID = 9; - final static short TAG_CLASS = 10; - short type = NONE; - String value = ""; - String subValue = ""; - // pre- simple selector in compound selectors - Selector last = null; - Selector current = null; -} diff --git a/src/org/apache/fop/dom/css/CSSStyleSheetImpl.java b/src/org/apache/fop/dom/css/CSSStyleSheetImpl.java deleted file mode 100644 index 97ee8ef3f..000000000 --- a/src/org/apache/fop/dom/css/CSSStyleSheetImpl.java +++ /dev/null @@ -1,194 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.css; - -import org.w3c.dom.css.*; -import org.w3c.dom.*; -import org.w3c.dom.stylesheets.*; - -import java.util.*; - -/** - * - * - */ -public class CSSStyleSheetImpl implements CSSStyleSheet { - Vector rules = new Vector(); - - public CSSStyleSheetImpl(String sheet) - { - parseSheet(sheet); - } - - protected void parseSheet(String str) - { - // get each rule and insert it - // rule ends with } - // need to ignore comments - String newStr = str; - int pos1; - int pos2; - pos1 = newStr.indexOf("/*"); - pos2 = newStr.indexOf("*/"); - while((pos1 != -1) && (pos2 != -1)) { - newStr = newStr.substring(0, pos1) + newStr.substring(pos2 + 2, newStr.length()); - pos1 = newStr.indexOf("/*"); - pos2 = newStr.indexOf("*/"); - } - StringTokenizer st = new StringTokenizer(newStr, "}"); - while(st.hasMoreTokens()) { - String rule = st.nextToken() + "}"; - insertRule(rule, rules.size()); - } - } - - public CSSRule getOwnerRule() - { - // since this is for a style element - return null; - } - - public CSSRuleList getCssRules() - { - return new CSSRuleListImpl(rules); - } - - public int insertRule(String rule, - int index) - throws DOMException - { - CSSRule r = parseRule(rule); - if(r != null) - rules.addElement(r); - return 0; - } - - public void deleteRule(int index) - throws DOMException - { - rules.removeElementAt(index); - } - - public String getType() - { - return "text/css"; - } - - public boolean getDisabled() - { - return false; - } - - public void setDisabled(boolean disabled) - { - } - - public Node getOwnerNode() - { - // return the style element - return null; - } - - public StyleSheet getParentStyleSheet() - { - return null; - } - - public String getHref() - { - return null; - } - - public String getTitle() - { - return null; - } - - public MediaList getMedia() - { - return null; - } - - protected CSSRule parseRule(String str) - { - // a rule is "selectors {style}" - // a list of selectors followed by the style statement in brackets - int pos1 = str.indexOf("{"); - int pos2 = str.indexOf("}"); - if(pos1 == -1 || pos2 == -1) - return null; - String sel = str.substring(0, pos1); - String style = str.substring(pos1 + 1, pos2); - CSSStyleRule rule = new CSSStyleRuleImpl(this); - rule.setSelectorText(sel); - rule.setCssText(style); - return rule; - } -} - -class CSSRuleListImpl implements CSSRuleList { - Vector rules; - CSSRuleListImpl(Vector v) - { - rules = v; - } - - public int getLength() - { - return rules.size(); - } - - public CSSRule item(int pos) - { - return (CSSRule)rules.elementAt(pos); - } -} diff --git a/src/org/apache/fop/dom/css/CSSValueImpl.java b/src/org/apache/fop/dom/css/CSSValueImpl.java deleted file mode 100644 index 9b7b2986c..000000000 --- a/src/org/apache/fop/dom/css/CSSValueImpl.java +++ /dev/null @@ -1,82 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.css; - -import org.w3c.dom.css.*; - -/** - * - * - */ -public class CSSValueImpl implements CSSValue { - String text; - short type; - - public CSSValueImpl() - { - } - - public void setCssText(String str) - { - text = str; - } - - public String getCssText() - { - return text; - } - - public short getValueType() - { - return type; - } -} diff --git a/src/org/apache/fop/dom/css/CSSValueListImpl.java b/src/org/apache/fop/dom/css/CSSValueListImpl.java deleted file mode 100644 index 91053618b..000000000 --- a/src/org/apache/fop/dom/css/CSSValueListImpl.java +++ /dev/null @@ -1,80 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.css; - -import org.w3c.dom.css.*; - -import java.util.Vector; - -/** - * - * - */ -public class CSSValueListImpl extends CSSValueImpl implements CSSValueList { - Vector values = new Vector(); - - public CSSValueListImpl() { - type = CSS_VALUE_LIST; - } - - public int getLength() { - return values.size(); - } - - public CSSValue item(int index) { - return (CSSValue) values.elementAt(index); - } - - void addValue(CSSValue val) { - values.addElement(val); - } -} diff --git a/src/org/apache/fop/dom/css/RGBColorImpl.java b/src/org/apache/fop/dom/css/RGBColorImpl.java deleted file mode 100644 index b937df46e..000000000 --- a/src/org/apache/fop/dom/css/RGBColorImpl.java +++ /dev/null @@ -1,89 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.css; - -import org.w3c.dom.css.*; - -/** - * - * - */ -public class RGBColorImpl implements RGBColor { - CSSPrimitiveValue red; - CSSPrimitiveValue green; - CSSPrimitiveValue blue; - - public RGBColorImpl(float r, float g, float b) - { - red = new CSSPrimitiveValueImpl(); - red.setFloatValue(CSSPrimitiveValue.CSS_NUMBER, r); - green = new CSSPrimitiveValueImpl(); - green.setFloatValue(CSSPrimitiveValue.CSS_NUMBER, g); - blue = new CSSPrimitiveValueImpl(); - blue.setFloatValue(CSSPrimitiveValue.CSS_NUMBER, b); - } - - public CSSPrimitiveValue getRed() - { - return red; - } - - public CSSPrimitiveValue getGreen() - { - return green; - } - - public CSSPrimitiveValue getBlue() - { - return blue; - } -} diff --git a/src/org/apache/fop/dom/stylesheets/StyleSheetListImpl.java b/src/org/apache/fop/dom/stylesheets/StyleSheetListImpl.java deleted file mode 100644 index ebd0ccb46..000000000 --- a/src/org/apache/fop/dom/stylesheets/StyleSheetListImpl.java +++ /dev/null @@ -1,79 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.stylesheets; - -import org.w3c.dom.stylesheets.*; - -import java.util.*; - -/** - * - * - */ -public class StyleSheetListImpl implements StyleSheetList { - Vector sheets = new Vector(); - - public StyleSheetListImpl(Vector sheets) - { - this.sheets = sheets; - } - - public int getLength() - { - return sheets.size(); - } - - public StyleSheet item(int pos) - { - return (StyleSheet)sheets.elementAt(pos); - } -} diff --git a/src/org/apache/fop/dom/svg/GraphicElement.java b/src/org/apache/fop/dom/svg/GraphicElement.java deleted file mode 100644 index 682bdad1e..000000000 --- a/src/org/apache/fop/dom/svg/GraphicElement.java +++ /dev/null @@ -1,257 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import java.util.Enumeration; - -import org.apache.fop.datatypes.*; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; -import org.w3c.dom.events.*; - -/** - * base class for SVG graphic objects. - * - * Graphic objects include rectangles, lines and text - * - */ -public abstract class GraphicElement extends SVGElementImpl implements SVGTransformable, -SVGLangSpace, SVGTests, EventTarget { - protected SVGStringList reqFeatures; - protected SVGStringList reqExtensions; - protected SVGStringList sysLanguage; - SVGAnimatedTransformList transform; - String xmlspace = "default"; - - public SVGElement getNearestViewportElement() { - Node node = getParentNode(); - while (node != null) { - if (node instanceof SVGGElement) { - return (SVGElement) node; - } else if (node instanceof SVGSVGElement) { - return (SVGElement) node; - } - node = getParentNode(); - } - return null; - } - - public SVGElement getFarthestViewportElement() { - Node node = getParentNode(); - SVGElement viewport = null; - while (node != null) { - if (node instanceof SVGGElement) { - viewport = (SVGElement) node; - } else if (node instanceof SVGSVGElement) { - viewport = (SVGElement) node; - } - node = getParentNode(); - } - return viewport; - } - - public SVGAnimatedTransformList getTransform() { - if (transform != null) { - return transform; - } - SVGTransformList stl = new SVGTransformListImpl(); - SVGTransform transform = new SVGTransformImpl(); - stl.appendItem(transform); - SVGAnimatedTransformListImpl atl = - new SVGAnimatedTransformListImpl(); - atl.setBaseVal(stl); - return atl; - } - - public void setTransform(SVGAnimatedTransformList transform) { - this.transform = transform; - } - - public SVGRect getBBox() { - return null; - } - - /** - * Returns the transformation matrix from current user units (i.e., after - * application of the transform attribute) to the viewport coordinate system - * for the nearestViewportElement. - */ - public SVGMatrix getCTM() { - return transform.getBaseVal().consolidate().getMatrix(); - } - - /** - * Returns the transformation matrix from current user units (i.e., after - * application of the transform attribute) to the parent user agent's notice - * of a "pixel". For display devices, ideally this represents a physical - * screen pixel. For other devices or environments where physical pixel sizes - * are not known, then an algorithm similar to the CSS2 definition of a "pixel" - * can be used instead. - * This is the matrix that converts from the user space to the position - * on the screen. - */ - public SVGMatrix getScreenCTM() { - if (transform == null) { - return new SVGMatrixImpl(); - } - Node node = getParentNode(); - SVGMatrix matrix = null; - if (node != null && node instanceof SVGTransformable) { - matrix = ((SVGTransformable) node).getScreenCTM(); - } - if (matrix != null) { - matrix = transform.getBaseVal().consolidate().getMatrix(). - multiply(matrix); - } else { - matrix = transform.getBaseVal().consolidate().getMatrix(); - } - return matrix; - } - - public SVGMatrix getTransformToElement(SVGElement element) - throws SVGException { - return null; - } - - public String getXMLlang() { - return null; - } - - public void setXMLlang(String xmllang) { - } - - public String getXMLspace() { - return xmlspace; - } - - public void setXMLspace(String xmlspace) { - this.xmlspace = xmlspace; - } - - public SVGStringList getRequiredFeatures() { - return reqFeatures; - } - - public void setRequiredFeatures(SVGStringList requiredFeatures) - throws DOMException { - reqFeatures = requiredFeatures; - } - - public SVGStringList getRequiredExtensions() { - return reqExtensions; - } - - public void setRequiredExtensions(SVGStringList requiredExtensions) - throws DOMException { - reqExtensions = requiredExtensions; - } - - public boolean hasExtension (String extension) { - return false; - } - - public SVGStringList getSystemLanguage() { - return sysLanguage; - } - - public void setSystemLanguage(SVGStringList systemLanguage) { - sysLanguage = systemLanguage; - } - - public void addEventListener(String type, EventListener listener, - boolean useCapture) { - } - - public void removeEventListener(String type, - EventListener listener, boolean useCapture) { - } - - public boolean dispatchEvent(Event evt)// throws EventException - { - return false; - } - - /** - * Convenience method for implementations of SVGTransformable - * that have children that represents the bounding box - */ - protected SVGRect getChildrenBBox() { - float minX = 10000000; // a big number - float maxX = -10000000; // a low number - float minY = 10000000; // a big number - float maxY = -10000000; // a low number - NodeList nl = getChildNodes(); - // can width and height be negative?? - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof SVGTransformable) { - SVGRect r = ((SVGTransformable) n).getBBox(); - if (r != null) { - if (minX > r.getX()) - minX = r.getX(); - if (minY > r.getY()) - minY = r.getY(); - if (maxX < r.getX() + r.getWidth()) - maxX = r.getX() + r.getWidth(); - if (maxY > r.getY() + r.getHeight()) - maxY = r.getY() + r.getHeight(); - } - } - } - SVGRect rect = new SVGRectImpl(); - rect.setX(minX); - rect.setY(minY); - rect.setWidth(maxX - minX); - rect.setHeight(maxY - minY); - return rect; - } -} diff --git a/src/org/apache/fop/dom/svg/GraphicImpl.java b/src/org/apache/fop/dom/svg/GraphicImpl.java deleted file mode 100644 index 72dfc5c4a..000000000 --- a/src/org/apache/fop/dom/svg/GraphicImpl.java +++ /dev/null @@ -1,76 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.datatypes.*; - -import java.util.*; - -import org.w3c.dom.svg.SVGElement; - -/** - * base class for SVG graphic objects. - * - * Graphic objects include rectangles, lines and text - * - */ -// use this so that the SVGArea can also hold style, defs and transform etc. -public interface GraphicImpl { - public Hashtable oldgetStyle(); - public void setParent(SVGElement g); - public SVGElement getGraphicParent(); - public Vector oldgetTransform(); // ?? - public Hashtable getDefs(); - public SVGElement locateDef(String str); - public void setStyle(Hashtable st); - public void addDefs(Hashtable st); - public void setTransform(Vector tr); // ?? -} diff --git a/src/org/apache/fop/dom/svg/SVGAElementImpl.java b/src/org/apache/fop/dom/svg/SVGAElementImpl.java deleted file mode 100644 index 66206068e..000000000 --- a/src/org/apache/fop/dom/svg/SVGAElementImpl.java +++ /dev/null @@ -1,81 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * class representing a line in an SVG Area - * - */ -public class SVGAElementImpl extends SVGURIReferenceImpl implements SVGAElement { - SVGAnimatedString target; - - public SVGAElementImpl() - { - } - - public void setTarget(SVGAnimatedString str) - { - target = str; - } - - public SVGAnimatedString getTarget() - { - return target; - } - - public SVGRect getBBox() - { - return getChildrenBBox(); - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAltGlyphElementImpl.java b/src/org/apache/fop/dom/svg/SVGAltGlyphElementImpl.java deleted file mode 100644 index f1bec3848..000000000 --- a/src/org/apache/fop/dom/svg/SVGAltGlyphElementImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -/** - * class representing a line in an SVG Area - * - */ -public class SVGAltGlyphElementImpl extends SVGElementImpl { - public SVGAltGlyphElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAngleImpl.java b/src/org/apache/fop/dom/svg/SVGAngleImpl.java deleted file mode 100644 index ec7d44daa..000000000 --- a/src/org/apache/fop/dom/svg/SVGAngleImpl.java +++ /dev/null @@ -1,205 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.fo.Property; - -import java.util.*; -import java.text.*; - -import org.w3c.dom.svg.*; - -/** - * SVG Angle. - * - * @author Keiron Liddle - * modified Nov 14,2000 Mike Crowe , Fop internal - * representation of angles is in degrees, added convert before doing any trig - * function - */ -public class SVGAngleImpl implements SVGAngle { - float value = 0; - short unitType = SVG_ANGLETYPE_UNKNOWN; - - public SVGAngleImpl() { - } - - public short getUnitType() { - return unitType; - } - - public float getValue() { - return value; - } - - public void setValue(float value) { - this.value = value; - } - - public float getValueInSpecifiedUnits() { - switch (unitType) { - case SVG_ANGLETYPE_UNKNOWN: - throw new SVGExceptionImpl( - SVGException.SVG_WRONG_TYPE_ERR, "unknown unit type"); - // break; - case SVG_ANGLETYPE_UNSPECIFIED: - throw new SVGExceptionImpl( - SVGException.SVG_WRONG_TYPE_ERR, "unknown unit type"); - // break; - case SVG_ANGLETYPE_DEG: - break; - case SVG_ANGLETYPE_RAD: - break; - case SVG_ANGLETYPE_GRAD: - break; - } - return 0; - } - - public void setValueInSpecifiedUnits(float valueInSpecifiedUnits) { - switch (unitType) { - case SVG_ANGLETYPE_UNKNOWN: - throw new SVGExceptionImpl( - SVGException.SVG_WRONG_TYPE_ERR, "unknown unit type"); - // break; - case SVG_ANGLETYPE_UNSPECIFIED: - throw new SVGExceptionImpl( - SVGException.SVG_WRONG_TYPE_ERR, "unknown unit type"); - // break; - case SVG_ANGLETYPE_DEG: - break; - case SVG_ANGLETYPE_RAD: - break; - case SVG_ANGLETYPE_GRAD: - break; - } - } - - public String getValueAsString() { - NumberFormat nf = NumberFormat.getInstance(); - return nf.format(value); - } - - /** - *The following is from CR-SVG-20000802 4.1 Basic Data Types; - * : An angle value is a optionally followed - * immediately with an angle unit identifier. Angle unit identifiers are: - * deg: degrees m - * grad: grads m - * rad: radians m - * For properties defined in [CSS2], an angle unit identifier must be - * provided. For SVG-specific attributes and properties, the angle unit - * identifier is optional. If not provided, the angle value is assumed to be - * in degrees. - */ - public void setValueAsString(String valueAsString) { - NumberFormat nf = NumberFormat.getInstance(); - try { - value = nf.parse(valueAsString).floatValue(); - if (valueAsString.indexOf("grad") != -1) { - value = (float)(value * 360.0 / 400.0); - } else if (valueAsString.indexOf("rad") != -1) { - value = (float)(value * 180.0 / Math.PI); - } - } catch (ParseException pe) { - value = 0; - } - } - - public float getAnimatedValue() { - return 0; - } - - public void newValueSpecifiedUnits (short unitType, - float valueInSpecifiedUnits) throws SVGException { - switch (unitType) { - case SVG_ANGLETYPE_UNKNOWN: - throw new SVGExceptionImpl( - SVGException.SVG_WRONG_TYPE_ERR, "unknown unit type"); - // break; - case SVG_ANGLETYPE_UNSPECIFIED: - throw new SVGExceptionImpl( - SVGException.SVG_WRONG_TYPE_ERR, "unknown unit type"); - // break; - case SVG_ANGLETYPE_DEG: - value = (float)(valueInSpecifiedUnits * Math.PI / 90.0); - break; - case SVG_ANGLETYPE_RAD: - value = valueInSpecifiedUnits; - break; - case SVG_ANGLETYPE_GRAD: - value = (float)(valueInSpecifiedUnits * Math.PI / 90.0); - break; - } - this.unitType = unitType; - } - - public void convertToSpecifiedUnits (short unitType) - throws SVGException { - switch (unitType) { - case SVG_ANGLETYPE_UNKNOWN: - throw new SVGExceptionImpl( - SVGException.SVG_WRONG_TYPE_ERR, "unknown unit type"); - // break; - case SVG_ANGLETYPE_UNSPECIFIED: - throw new SVGExceptionImpl( - SVGException.SVG_WRONG_TYPE_ERR, "unknown unit type"); - // break; - case SVG_ANGLETYPE_DEG: - break; - case SVG_ANGLETYPE_RAD: - break; - case SVG_ANGLETYPE_GRAD: - break; - } - this.unitType = unitType; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimateColorElementImpl.java b/src/org/apache/fop/dom/svg/SVGAnimateColorElementImpl.java deleted file mode 100644 index e39f1bf5b..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimateColorElementImpl.java +++ /dev/null @@ -1,63 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -/** - * - * - */ -public class SVGAnimateColorElementImpl extends SVGElementImpl { - - public SVGAnimateColorElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimateElementImpl.java b/src/org/apache/fop/dom/svg/SVGAnimateElementImpl.java deleted file mode 100644 index 6c45033d2..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimateElementImpl.java +++ /dev/null @@ -1,63 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -/** - * - * - */ -public class SVGAnimateElementImpl extends SVGElementImpl { - - public SVGAnimateElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimateMotionElementImpl.java b/src/org/apache/fop/dom/svg/SVGAnimateMotionElementImpl.java deleted file mode 100644 index a6c98546e..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimateMotionElementImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -/** - * - */ -public class SVGAnimateMotionElementImpl extends SVGElementImpl { - - public SVGAnimateMotionElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimateTransformElementImpl.java b/src/org/apache/fop/dom/svg/SVGAnimateTransformElementImpl.java deleted file mode 100644 index 99512eedf..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimateTransformElementImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -/** - * - */ -public class SVGAnimateTransformElementImpl extends SVGElementImpl { - - public SVGAnimateTransformElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimatedEnumerationImpl.java b/src/org/apache/fop/dom/svg/SVGAnimatedEnumerationImpl.java deleted file mode 100644 index 585e390aa..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimatedEnumerationImpl.java +++ /dev/null @@ -1,80 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.DOMException; - -public class SVGAnimatedEnumerationImpl implements SVGAnimatedEnumeration { - short baseval = 0; - - public SVGAnimatedEnumerationImpl(short base) - { - baseval = base; - } - - public short getBaseVal( ) - { - return baseval; - } - - public void setBaseVal(short baseVal) - { - this.baseval = baseVal; - } - - public short getAnimVal( ) - { - return baseval; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimatedLengthImpl.java b/src/org/apache/fop/dom/svg/SVGAnimatedLengthImpl.java deleted file mode 100644 index 3e21499fb..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimatedLengthImpl.java +++ /dev/null @@ -1,78 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -public class SVGAnimatedLengthImpl implements SVGAnimatedLength { - SVGLength len = null; - - public SVGAnimatedLengthImpl(SVGLength l) - { - len = l; - } - - public SVGLength getBaseVal( ) - { - return len; - } - - public void setBaseVal( SVGLength baseVal ) - { - len = baseVal; - } - - public SVGLength getAnimVal( ) - { - return len; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimatedLengthListImpl.java b/src/org/apache/fop/dom/svg/SVGAnimatedLengthListImpl.java deleted file mode 100644 index 0c1feb8fa..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimatedLengthListImpl.java +++ /dev/null @@ -1,79 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * a length quantity in XSL - */ -public class SVGAnimatedLengthListImpl extends SVGListImpl implements SVGAnimatedLengthList { - SVGLengthList baseVal; - - public SVGAnimatedLengthListImpl() - { - } - - public SVGLengthList getBaseVal( ) - { - return baseVal; - } - - public void setBaseVal(SVGLengthList baseVal) - { - this.baseVal = baseVal; - } - - public SVGLengthList getAnimVal( ) - { - return baseVal; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimatedNumberImpl.java b/src/org/apache/fop/dom/svg/SVGAnimatedNumberImpl.java deleted file mode 100644 index bc3a0b626..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimatedNumberImpl.java +++ /dev/null @@ -1,84 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.fo.Property; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGAnimatedNumberImpl implements SVGAnimatedNumber { - float base = 0; - - public SVGAnimatedNumberImpl(float b) - { - base = b; - } - - public float getBaseVal() - { - return base; - } - - public void setBaseVal(float baseVal) - { - base = baseVal; - } - - public float getAnimVal() - { - return base; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimatedRectImpl.java b/src/org/apache/fop/dom/svg/SVGAnimatedRectImpl.java deleted file mode 100644 index 5ddc97a62..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimatedRectImpl.java +++ /dev/null @@ -1,78 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -public class SVGAnimatedRectImpl implements SVGAnimatedRect { - SVGRect rect = null; - - public SVGAnimatedRectImpl(SVGRect r) - { - rect = r; - } - - public SVGRect getBaseVal( ) - { - return rect; - } - - public void setBaseVal( SVGRect baseVal ) - { - rect = baseVal; - } - - public SVGRect getAnimVal( ) - { - return rect; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimatedStringImpl.java b/src/org/apache/fop/dom/svg/SVGAnimatedStringImpl.java deleted file mode 100644 index b65ad9960..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimatedStringImpl.java +++ /dev/null @@ -1,78 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -public class SVGAnimatedStringImpl implements SVGAnimatedString { - String str = null; - - public SVGAnimatedStringImpl(String l) - { - str = l; - } - - public String getBaseVal( ) - { - return str; - } - - public void setBaseVal( String baseVal ) - { - str = baseVal; - } - - public String getAnimVal( ) - { - return str; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGAnimatedTransformListImpl.java b/src/org/apache/fop/dom/svg/SVGAnimatedTransformListImpl.java deleted file mode 100644 index 5144008c5..000000000 --- a/src/org/apache/fop/dom/svg/SVGAnimatedTransformListImpl.java +++ /dev/null @@ -1,82 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; - -/** - * Transform List - */ -public class SVGAnimatedTransformListImpl implements SVGAnimatedTransformList { - SVGTransformList base; - - public SVGAnimatedTransformListImpl() - { - } - - public SVGTransformList getBaseVal( ) - { - return base; - } - - public void setBaseVal(SVGTransformList baseVal ) - { - base = baseVal; - } - - public SVGTransformList getAnimVal() - { - return null; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGCircleElementImpl.java b/src/org/apache/fop/dom/svg/SVGCircleElementImpl.java deleted file mode 100644 index 8a3ee7e71..000000000 --- a/src/org/apache/fop/dom/svg/SVGCircleElementImpl.java +++ /dev/null @@ -1,114 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGCircleElementImpl extends GraphicElement implements SVGCircleElement { - private SVGAnimatedLength cx; - private SVGAnimatedLength cy; - private SVGAnimatedLength r; - - /** - */ - public SVGCircleElementImpl() - { - } - - public SVGRect getBBox() - { - SVGRect rect = new SVGRectImpl(); - rect.setX(cx.getBaseVal().getValue() - r.getBaseVal().getValue()); - rect.setY(cy.getBaseVal().getValue() - r.getBaseVal().getValue()); - rect.setWidth(2 * r.getBaseVal().getValue()); - rect.setHeight(2 * r.getBaseVal().getValue()); - return rect; - } - - public SVGAnimatedLength getCx( ) - { - return cx; - } - - public void setCx( SVGAnimatedLength cx ) - { - this.cx = cx; - } - - public SVGAnimatedLength getCy( ) - { - return cy; - } - - public void setCy( SVGAnimatedLength cy ) - { - this.cy = cy; - } - - public SVGAnimatedLength getR( ) - { - return r; - } - - public void setR( SVGAnimatedLength r ) - { - this.r = r; - } - - public String getTagName() - { - return "circle"; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGClipPathElementImpl.java b/src/org/apache/fop/dom/svg/SVGClipPathElementImpl.java deleted file mode 100644 index 77c333bad..000000000 --- a/src/org/apache/fop/dom/svg/SVGClipPathElementImpl.java +++ /dev/null @@ -1,83 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import java.util.Vector; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGClipPathElementImpl extends GraphicElement implements SVGClipPathElement { - public Vector elements = new Vector(); - SVGAnimatedEnumeration units; - - public void addElement(SVGElement g) - { - elements.addElement(g); - } - - public SVGClipPathElementImpl() - { - } - - public SVGAnimatedEnumeration getClipPathUnits( ) - { - return units; - } - - public void setClipPathUnits(SVGAnimatedEnumeration clipPathUnits) - { - units = clipPathUnits; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGCursorElementImpl.java b/src/org/apache/fop/dom/svg/SVGCursorElementImpl.java deleted file mode 100644 index b777e2fc3..000000000 --- a/src/org/apache/fop/dom/svg/SVGCursorElementImpl.java +++ /dev/null @@ -1,86 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGCursorElementImpl extends SVGURIReferenceImpl implements SVGCursorElement { - SVGAnimatedLength x; - SVGAnimatedLength y; - - public SVGCursorElementImpl() - { - } - - public SVGAnimatedLength getX( ) - { - return x; - } - - public void setX( SVGAnimatedLength x ) - { - this.x = x; - } - - public SVGAnimatedLength getY( ) - { - return y; - } - - public void setY( SVGAnimatedLength y ) - { - this.y = y; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGDefsElementImpl.java b/src/org/apache/fop/dom/svg/SVGDefsElementImpl.java deleted file mode 100644 index 79766a989..000000000 --- a/src/org/apache/fop/dom/svg/SVGDefsElementImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * class representing a line in an SVG Area - */ -public class SVGDefsElementImpl extends GraphicElement implements SVGDefsElement { - - public SVGDefsElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGDescElementImpl.java b/src/org/apache/fop/dom/svg/SVGDescElementImpl.java deleted file mode 100644 index 7784b94fd..000000000 --- a/src/org/apache/fop/dom/svg/SVGDescElementImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * class representing a line in an SVG Area - */ -public class SVGDescElementImpl extends GraphicElement implements SVGDescElement { - - public SVGDescElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGDocumentImpl.java b/src/org/apache/fop/dom/svg/SVGDocumentImpl.java deleted file mode 100644 index 66e613507..000000000 --- a/src/org/apache/fop/dom/svg/SVGDocumentImpl.java +++ /dev/null @@ -1,213 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.apache.fop.dom.ElementImpl; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; -import org.w3c.dom.events.*; - -/** - * - */ -public class SVGDocumentImpl extends ElementImpl implements SVGDocument { - String title; - public static final String namespaceURI = "http://www.w3.org/2000/svg"; - - public SVGDocumentImpl() - { - ownerDoc = this; - } - - public String getTitle() - { - return title; - } - - public void setTitle(String title) - { - this.title = title; - } - - public String getNamespaceURI() - { - return namespaceURI; - } - - public String getReferrer() - { - return null; - } - - public String getDomain() - { - return null; - } - - public String getURL() - { - return ""; - } - - public SVGSVGElement getRootElement() - { - if(childs.size() > 0) - return (SVGSVGElement)childs.elementAt(0); - return null; - } - - public Element getElementById(String elementId) - { - SVGSVGElement svg = getRootElement(); - return findChild(svg, elementId); - } - - protected Element findChild(Node ele, String id) - { - NodeList nl = ele.getChildNodes(); - for(int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if(n instanceof SVGElement) { - if(id.equals(((SVGElement)n).getId())) { - return (Element)n; - } - } - if(n != null) { - Element el = findChild(n, id); - if(el != null) { - return el; - } - } - } - return null; - } - - public Event createEvent(String eventType) - throws DOMException - { - return null; - } - - public DOMImplementation getImplementation() - { - return null; - } - - public EntityReference createEntityReference(String str) - { - return null; - } - - public DocumentFragment createDocumentFragment() - { - return null; - } - - public Text createTextNode(String str) - { - return null; - } - - public Element createElement(String str) - { - return null; - } - - public Element createElementNS(String namespaceURI, - String qualifiedName){ - return null; - } - - public ProcessingInstruction createProcessingInstruction(String s1, String s2) - { - return null; - } - - public DocumentType getDoctype() - { - return null; - } - - public CDATASection createCDATASection(String str) - { - return null; - } - - public Comment createComment(String str) - { - return null; - } - - public Attr createAttribute(String str) - { - return null; - } - - public Attr createAttributeNS(String namespaceURI, - String qualifiedName) - throws DOMException - { - return null; - } - - public Element getDocumentElement() - { - return null; - } - - public Node importNode(Node importedNode, boolean deep) - { - return null; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGElementImpl.java b/src/org/apache/fop/dom/svg/SVGElementImpl.java deleted file mode 100644 index 6fe052d79..000000000 --- a/src/org/apache/fop/dom/svg/SVGElementImpl.java +++ /dev/null @@ -1,199 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.dom.stylesheets.*; -import org.apache.fop.dom.css.*; -import org.apache.fop.datatypes.*; -import org.apache.fop.dom.ElementImpl; - -import org.w3c.dom.css.*; -import org.w3c.dom.svg.*; -import org.w3c.dom.*; -import org.w3c.dom.stylesheets.*; - -import java.util.*; - -public abstract class SVGElementImpl extends ElementImpl implements SVGElement { - String idString = ""; - CSSStyleDeclaration styleDec; - SVGSVGElement ownerSvg; - SVGAnimatedString className = new SVGAnimatedStringImpl(""); - - public String getId() - { - return idString; - } - - public String getNamespaceURI() - { - return SVGDocumentImpl.namespaceURI; - } - - public void setId(String id) - { - idString = id; - } - - public SVGSVGElement getOwnerSVGElement( ) - { - return ownerSvg; - } - - public SVGElement getViewportElement( ) - { - return null; - } - - public SVGAnimatedString getClassName( ) - { - return className; - } - - public void setClassName( SVGAnimatedString className ) - { - this.className = className; - } - - public CSSValue getPresentationAttribute ( String name ) - { - CSSStyleDeclaration style; - CSSValue val = null; - - style = getStyle(); - if(style != null) { - val = style.getPropertyCSSValue(name); - } - - if(val == null) { - // this checks for the style selector matching - // everytime a property is requested, this is bad, slow - - // get "style" element style for this - SVGSVGElement svg = getOwnerSVGElement(); - // maybe - // val = svg.getComputedStyle(this, name); - StyleSheetList list = svg.getStyleSheets(); - for(int count = 0; count < list.getLength(); count++) { - CSSRuleList rlist = ((CSSStyleSheet)list.item(count)).getCssRules(); - for(int c = 0; c < rlist.getLength(); c++) { - CSSRule rule = rlist.item(c); - if(rule.getType() == CSSRule.STYLE_RULE) { - if(((CSSStyleRuleImpl)rule).matches(this)) { - style = ((CSSStyleRule)rule).getStyle(); - val = style.getPropertyCSSValue(name); -// break; - } - } - } -// if(val != null) { -// break; -// } - } - } - if(val == null) { - // get element parents style - Node par = getParentNode(); - if(par instanceof SVGStylable) { - val = ((SVGStylable)par).getPresentationAttribute(name); - } - } - return val; - } - - public CSSValue getAnimatedPresentationAttribute ( String name ) - { - return getPresentationAttribute(name); - } - - public CSSStyleDeclaration getStyle( ) - { - return styleDec; - } - - public void setStyle(CSSStyleDeclaration dec) - { - styleDec = dec; - } - - public SVGAnimatedBoolean getExternalResourcesRequired( ) - { - return null; - } - - public void setExternalResourcesRequired( SVGAnimatedBoolean externalResourcesRequired ) - { - } - - public Node appendChild(Node newChild) - throws DOMException - { - Node nChild = super.appendChild(newChild); - if(newChild instanceof SVGElementImpl) { - SVGElementImpl ele = (SVGElementImpl)newChild; - if(ownerSvg != null) - ele.setOwnerSVG(ownerSvg); - } - return nChild; - } - - public void setOwnerSVG(SVGSVGElement owner) - { - ownerSvg = owner; - NodeList nl = getChildNodes(); - for(int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if(n instanceof SVGElementImpl) { - ((SVGElementImpl)n).setOwnerSVG(owner); - } - } - } -} diff --git a/src/org/apache/fop/dom/svg/SVGEllipseElementImpl.java b/src/org/apache/fop/dom/svg/SVGEllipseElementImpl.java deleted file mode 100644 index b92234fe8..000000000 --- a/src/org/apache/fop/dom/svg/SVGEllipseElementImpl.java +++ /dev/null @@ -1,115 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; -import org.w3c.dom.events.*; - -/** - * - */ -public class SVGEllipseElementImpl extends GraphicElement implements SVGEllipseElement { - private SVGAnimatedLength cx; - private SVGAnimatedLength cy; - private SVGAnimatedLength rx; - private SVGAnimatedLength ry; - - /** - */ - public SVGEllipseElementImpl() - { - } - - public SVGRect getBBox() - { - SVGRect rect = new SVGRectImpl(); - rect.setX(cx.getBaseVal().getValue() - rx.getBaseVal().getValue()); - rect.setY(cy.getBaseVal().getValue() - ry.getBaseVal().getValue()); - rect.setWidth(2 * rx.getBaseVal().getValue()); - rect.setHeight(2 * ry.getBaseVal().getValue()); - return rect; - } - - public SVGAnimatedLength getCx( ) - { - return cx; - } - public void setCx( SVGAnimatedLength cx ) - { - this.cx = cx; - } - public SVGAnimatedLength getCy( ) - { - return cy; - } - public void setCy( SVGAnimatedLength cy ) - { - this.cy = cy; - } - public SVGAnimatedLength getRx( ) - { - return rx; - } - public void setRx( SVGAnimatedLength rx ) - { - this.rx = rx; - } - public SVGAnimatedLength getRy( ) - { - return ry; - } - public void setRy( SVGAnimatedLength ry ) - { - this.ry = ry; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGExceptionImpl.java b/src/org/apache/fop/dom/svg/SVGExceptionImpl.java deleted file mode 100644 index d1104ebea..000000000 --- a/src/org/apache/fop/dom/svg/SVGExceptionImpl.java +++ /dev/null @@ -1,68 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.fo.Property; - -import java.util.*; -import java.text.*; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGExceptionImpl extends SVGException { - public SVGExceptionImpl(short code, String message) - { - super(code, message); - } -} diff --git a/src/org/apache/fop/dom/svg/SVGFilterElementImpl.java b/src/org/apache/fop/dom/svg/SVGFilterElementImpl.java deleted file mode 100644 index 497f6b879..000000000 --- a/src/org/apache/fop/dom/svg/SVGFilterElementImpl.java +++ /dev/null @@ -1,140 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGFilterElementImpl extends SVGURIReferenceImpl implements SVGFilterElement { - - public SVGFilterElementImpl() - { - } - - public SVGAnimatedEnumeration getFilterUnits( ) - { - return null; - } - - public void setFilterUnits( SVGAnimatedEnumeration filterUnits ) - { - } - - public SVGAnimatedEnumeration getPrimitiveUnits( ) - { - return null; - } - - public void setPrimitiveUnits( SVGAnimatedEnumeration filterUnits ) - { - } - - public SVGAnimatedLength getX( ) - { - return null; - } - - public void setX( SVGAnimatedLength x ) - { - } - - public SVGAnimatedLength getY( ) - { - return null; - } - - public void setY( SVGAnimatedLength y ) - { - } - - public SVGAnimatedLength getWidth( ) - { - return null; - } - - public void setWidth( SVGAnimatedLength width ) - { - } - - public SVGAnimatedLength getHeight( ) - { - return null; - } - - public void setHeight( SVGAnimatedLength height ) - { - } - - public SVGAnimatedInteger getFilterResX( ) - { - return null; - } - - public SVGAnimatedInteger getFilterResY( ) - { - return null; - } - - public void setFilterResX( SVGAnimatedInteger filterResX ) - { - } - - public void setFilterResY( SVGAnimatedInteger filterResY ) - { - } - - public void setFilterRes ( int filterResX, int filterResY ) - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGFontElementImpl.java b/src/org/apache/fop/dom/svg/SVGFontElementImpl.java deleted file mode 100644 index dd45ce697..000000000 --- a/src/org/apache/fop/dom/svg/SVGFontElementImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGFontElementImpl extends SVGElementImpl implements SVGFontElement { - - public SVGFontElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGGElementImpl.java b/src/org/apache/fop/dom/svg/SVGGElementImpl.java deleted file mode 100644 index 95330d4a7..000000000 --- a/src/org/apache/fop/dom/svg/SVGGElementImpl.java +++ /dev/null @@ -1,75 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.layout.*; - -import java.util.*; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; - -/** - * - */ -public class SVGGElementImpl extends GraphicElement implements SVGGElement { - - /** - */ - public SVGGElementImpl() - { - } - - public SVGRect getBBox() - { - return getChildrenBBox(); - } -} diff --git a/src/org/apache/fop/dom/svg/SVGGlyphElementImpl.java b/src/org/apache/fop/dom/svg/SVGGlyphElementImpl.java deleted file mode 100644 index 98938085a..000000000 --- a/src/org/apache/fop/dom/svg/SVGGlyphElementImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -/** - * - */ -public class SVGGlyphElementImpl extends SVGElementImpl { - - public SVGGlyphElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGGradientElementImpl.java b/src/org/apache/fop/dom/svg/SVGGradientElementImpl.java deleted file mode 100644 index 57f6748fb..000000000 --- a/src/org/apache/fop/dom/svg/SVGGradientElementImpl.java +++ /dev/null @@ -1,107 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGGradientElementImpl extends SVGURIReferenceImpl implements SVGGradientElement { - /* - SVG_SPREADMETHOD_UNKNOWN; - SVG_SPREADMETHOD_PAD; - SVG_SPREADMETHOD_REFLECT; - SVG_SPREADMETHOD_REPEAT; - */ - SVGAnimatedEnumeration spreadMethod = - new SVGAnimatedEnumerationImpl(SVG_SPREADMETHOD_UNKNOWN); - SVGAnimatedEnumeration units = - new SVGAnimatedEnumerationImpl(SVG_UNIT_TYPE_UNKNOWN); - SVGAnimatedTransformList gradientTransform; - - public SVGGradientElementImpl() { - } - - public SVGAnimatedEnumeration getGradientUnits() { - return units; - } - - public void setGradientUnits(SVGAnimatedEnumeration gradientUnits) { - units = gradientUnits; - } - - public SVGAnimatedTransformList getGradientTransform() { - return gradientTransform; - } - - public void setGradientTransform( - SVGAnimatedTransformList gradientTransform) { - this.gradientTransform = gradientTransform; - } - - public SVGAnimatedEnumeration getSpreadMethod() { - return spreadMethod; - } - - public void setSpreadMethod(SVGAnimatedEnumeration spreadMethod) { - this.spreadMethod = spreadMethod; - } - - public SVGAnimatedBoolean getExternalResourcesRequired() { - return null; - } - - public void setExternalResourcesRequired( - SVGAnimatedBoolean externalResourcesRequired) { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGHKernElementImpl.java b/src/org/apache/fop/dom/svg/SVGHKernElementImpl.java deleted file mode 100644 index 28a563270..000000000 --- a/src/org/apache/fop/dom/svg/SVGHKernElementImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -/** - * - */ -public class SVGHKernElementImpl extends SVGElementImpl { - - public SVGHKernElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGImageElementImpl.java b/src/org/apache/fop/dom/svg/SVGImageElementImpl.java deleted file mode 100644 index 1cb4ccb2b..000000000 --- a/src/org/apache/fop/dom/svg/SVGImageElementImpl.java +++ /dev/null @@ -1,76 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.apache.fop.datatypes.*; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGImageElementImpl extends GraphicElement implements SVGTransformable { - public String link; - public float x; - public float y; - public float width; - public float height; - - public SVGImageElementImpl(String l, float x, float y, float w, float h) - { - link = l; - this.x = x; - this.y = y; - width = w; - height = h; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGLengthImpl.java b/src/org/apache/fop/dom/svg/SVGLengthImpl.java deleted file mode 100644 index 83f1c6c69..000000000 --- a/src/org/apache/fop/dom/svg/SVGLengthImpl.java +++ /dev/null @@ -1,191 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.fo.Property; -import org.apache.fop.messaging.MessageHandler; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * a length quantity in SVG - */ -public class SVGLengthImpl implements SVGLength { - short unitType = SVG_LENGTHTYPE_UNKNOWN; - protected float millipoints = 0; - protected float fontsize = 12; //?? - - public short getUnitType() { - return unitType; - } - - public float getValue() { - return millipoints; - } - - public void setValue(float value) { - millipoints = value; - } - - public float getValueInSpecifiedUnits() { - return 0; - } - - public void setValueInSpecifiedUnits(float valueInSpecifiedUnits) { - } - - public String getValueAsString() { - return null; - } - - public void setValueAsString(String valueAsString) { - convert(valueAsString); - } - - public float getAnimatedValue() { - return 0; - } - - public void newValueSpecifiedUnits(short unitType, - float valueInSpecifiedUnits) throws SVGException { - this.unitType = unitType; - millipoints = valueInSpecifiedUnits; - } - - public void convertToSpecifiedUnits(short unitType) - throws SVGException { - } - - /** - * set the length given a particular String specifying length and units - */ - public SVGLengthImpl (String len) { - convert(len); - } - - public SVGLengthImpl() { - } - - protected void convert(String len) { - int l = len.length(); - - if (l == 0) { - System.err.println("WARNING: empty length"); - this.millipoints = 0; - } else { - float dvalue = getFloatValue(len, l); - this.millipoints = dvalue; - } - } - - protected float getFloatValue(String len, int l) { - int assumed_resolution = 1; // points/pixel - - float dvalue; - try { - if (len.endsWith("in")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * 72; - unitType = SVG_LENGTHTYPE_IN; - } else if (len.endsWith("cm")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * 28.35f; - unitType = SVG_LENGTHTYPE_CM; - } else if (len.endsWith("mm")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * 2.84f; - unitType = SVG_LENGTHTYPE_MM; - } else if (len.endsWith("pt")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - // dvalue = dvalue; - unitType = SVG_LENGTHTYPE_PT; - } else if (len.endsWith("pc")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * 12; - unitType = SVG_LENGTHTYPE_PC; - } else if (len.endsWith("em")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * fontsize; - unitType = SVG_LENGTHTYPE_EMS; - } else if (len.endsWith("px")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * assumed_resolution; - unitType = SVG_LENGTHTYPE_PX; - } else if (len.endsWith("%")) { - dvalue = Float.valueOf( - len.substring(0, (l - 1))).floatValue() / 100f; - unitType = SVG_LENGTHTYPE_PERCENTAGE; - } else { - dvalue = Float.valueOf(len).floatValue(); - unitType = SVG_LENGTHTYPE_NUMBER; - } - } catch (Exception e) { - dvalue = 0; - unitType = SVG_LENGTHTYPE_UNKNOWN; - MessageHandler.errorln("ERROR: unknown length units in " + len); - } - return dvalue; - } - - public String toString() { - String s = millipoints + "mpt"; - return s; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGLengthListImpl.java b/src/org/apache/fop/dom/svg/SVGLengthListImpl.java deleted file mode 100644 index a3e5466ff..000000000 --- a/src/org/apache/fop/dom/svg/SVGLengthListImpl.java +++ /dev/null @@ -1,197 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.fo.Property; -import org.apache.fop.messaging.MessageHandler; - -import java.util.*; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; - -/** - * a length quantity in XSL - */ -public class SVGLengthListImpl extends SVGListImpl implements SVGLengthList { - protected float fontsize = 12; - - public void setValueAsString(String valueAsString) { - convert(valueAsString); - } - - /** - * set the length given a particular String specifying length and units - */ - public SVGLengthListImpl (String len) { - convert(len); - } - - public SVGLengthListImpl () { - } - - /** - * set the length given a particular String specifying length and units, - * and the font-size (necessary for an em) - */ - public SVGLengthListImpl (String len, int fontsize) { - this.fontsize = fontsize; - convert(len); - } - - protected void convert(String len) { - int l = len.length(); - - if (l == 0) { - // MessageHandler.errorln("WARNING: empty length"); - } else { - // could be an array of points, as in for svg:text - int pos; - pos = len.trim().indexOf(" "); - if (pos != -1) { - StringTokenizer st = new StringTokenizer(len.trim()); - while (st.hasMoreTokens()) { - String val = st.nextToken(); - float dvalue = getFloatValue(val, val.length()); - float intValue = dvalue; - SVGLengthImpl impl = new SVGLengthImpl(); - impl.setValue(intValue); - appendItem(impl); - } - } else { - float dvalue = getFloatValue(len, l); - SVGLengthImpl impl = new SVGLengthImpl(); - impl.setValue(dvalue); - appendItem(impl); - } - } - } - - protected float getFloatValue(String len, int l) { - int assumed_resolution = 1; // points/pixel - - float dvalue; - try { - if (len.endsWith("in")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * 72; - } else if (len.endsWith("cm")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * 28.35f; - } else if (len.endsWith("mm")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * 2.84f; - } else if (len.endsWith("pt")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue; - } else if (len.endsWith("pc")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * 12; - } else if (len.endsWith("em")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * fontsize; - } else if (len.endsWith("px")) { - dvalue = Float.valueOf( - len.substring(0, (l - 2))).floatValue(); - dvalue = dvalue * assumed_resolution; - } else if (len.endsWith("%")) { - dvalue = Float.valueOf( - len.substring(0, (l - 1))).floatValue() / 100f; //?? - } else { - dvalue = Float.valueOf(len).floatValue(); - } - } catch (Exception e) { - dvalue = 0; - MessageHandler.errorln("ERROR: unknown length units in " + len); - } - return dvalue; - } - - public SVGLength initialize (SVGLength newItem) throws SVGException { - return null; - } - - public SVGLength createItem() { - return new SVGLengthImpl(); - } - - public SVGLength getItem(int index) throws DOMException { - Object obj = list.elementAt(index); - return (SVGLength) obj; - } - - public SVGLength removeItem(int index) throws DOMException { - Object obj = list.elementAt(index); - list.removeElementAt(index); - return (SVGLength) obj; - } - - public SVGLength appendItem(SVGLength newItem) throws SVGException { - list.addElement(newItem); - return null; - } - - public SVGLength replaceItem(SVGLength newItem, - int index) throws DOMException, SVGException { - return null; - } - - public SVGLength insertItemBefore(SVGLength newItem, - int index) throws SVGException { - return null; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGLineElementImpl.java b/src/org/apache/fop/dom/svg/SVGLineElementImpl.java deleted file mode 100644 index 34168c864..000000000 --- a/src/org/apache/fop/dom/svg/SVGLineElementImpl.java +++ /dev/null @@ -1,135 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; -import org.w3c.dom.events.*; - -/** - * class representing a line in an SVG Area - */ -public class SVGLineElementImpl extends GraphicElement implements SVGLineElement { - /** x-coordinate of start */ - protected SVGAnimatedLength x1; - - /** y-coordinate of start */ - protected SVGAnimatedLength y1; - - /** x-coordinate of end */ - protected SVGAnimatedLength x2; - - /** y-coordinate of end */ - protected SVGAnimatedLength y2; - - /** - * construct a line graphic - * - * @param x1 x-coordinate of start - * @param y1 y-coordinate of start - * @param x2 x-coordinate of end - * @param y2 y-coordinate of end - */ - public SVGLineElementImpl() - { - } - - public SVGRect getBBox() - { - SVGRect rect = new SVGRectImpl(); - rect.setX(Math.min(x1.getBaseVal().getValue(), x2.getBaseVal().getValue())); - rect.setY(Math.min(y1.getBaseVal().getValue(), y2.getBaseVal().getValue())); - rect.setWidth(Math.abs(x1.getBaseVal().getValue() - x2.getBaseVal().getValue())); - rect.setHeight(Math.abs(y1.getBaseVal().getValue() - y2.getBaseVal().getValue())); - return rect; - } - - public SVGAnimatedLength getX1( ) - { - return x1; - } - - public void setX1( SVGAnimatedLength x1 ) - { - this.x1 = x1; - } - - public SVGAnimatedLength getY1( ) - { - return y1; - } - - public void setY1( SVGAnimatedLength y1 ) - { - this.y1 = y1; - } - - public SVGAnimatedLength getX2( ) - { - return x2; - } - - public void setX2( SVGAnimatedLength x2 ) - { - this.x2 = x2; - } - - public SVGAnimatedLength getY2( ) - { - return y2; - } - - public void setY2( SVGAnimatedLength y2 ) - { - this.y2 = y2; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGLinearGradientElementImpl.java b/src/org/apache/fop/dom/svg/SVGLinearGradientElementImpl.java deleted file mode 100644 index 3c38b9afd..000000000 --- a/src/org/apache/fop/dom/svg/SVGLinearGradientElementImpl.java +++ /dev/null @@ -1,110 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGLinearGradientElementImpl extends SVGGradientElementImpl - implements SVGLinearGradientElement { - - SVGAnimatedLength x1; - SVGAnimatedLength x2; - SVGAnimatedLength y1; - SVGAnimatedLength y2; - - public SVGLinearGradientElementImpl() - { - } - - public SVGAnimatedLength getX1() - { - return x1; - } - - public void setX1(SVGAnimatedLength x1) - { - this.x1 = x1; - } - - public SVGAnimatedLength getY1() - { - return y1; - } - - public void setY1(SVGAnimatedLength y1) - { - this.y1 = y1; - } - - public SVGAnimatedLength getX2() - { - return x2; - } - - public void setX2(SVGAnimatedLength x2) - { - this.x2 = x2; - } - - public SVGAnimatedLength getY2() - { - return y2; - } - - public void setY2(SVGAnimatedLength y2) - { - this.y2 = y2; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGListImpl.java b/src/org/apache/fop/dom/svg/SVGListImpl.java deleted file mode 100644 index c7aaa3e93..000000000 --- a/src/org/apache/fop/dom/svg/SVGListImpl.java +++ /dev/null @@ -1,120 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; - -/** - * - */ -public class SVGListImpl { - Vector list = new Vector(); - - public int getNumberOfItems() { - return list.size(); - } - - public void clear() { - list.removeAllElements(); - } - - /* public Object initialize ( Object newItem ) - throws SVGException - { - return null; - } - - public Object createItem() - { - return null; - } - - public Object getItem(int index) - throws DOMException - { - Object obj = list.elementAt(index); - return obj; - } - - public Object insertItemBefore(Object newItem, int index) - throws SVGException - { - return null; - } - - public Object replaceItem(Object newItem, int index) - throws DOMException, SVGException - { - return null; - } - - public Object removeItem(int index) - throws DOMException - { - Object obj = list.elementAt(index); - list.removeElementAt(index); - return obj; - } - - public Object appendItem(Object newItem) - throws SVGException - { - list.addElement(newItem); - return null; - }*/ - - public String toString() { - return list.toString(); - } -} diff --git a/src/org/apache/fop/dom/svg/SVGMarkerElementImpl.java b/src/org/apache/fop/dom/svg/SVGMarkerElementImpl.java deleted file mode 100644 index 0d7b8fc49..000000000 --- a/src/org/apache/fop/dom/svg/SVGMarkerElementImpl.java +++ /dev/null @@ -1,148 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGMarkerElementImpl extends GraphicElement implements SVGMarkerElement { - SVGAnimatedEnumeration units; - SVGAnimatedEnumeration otype; - - public SVGMarkerElementImpl() - { - } - - public SVGAnimatedEnumeration getMarkerUnits( ) - { - return units; - } - - public SVGAnimatedEnumeration getOrientType( ) - { - return otype; - } - - public SVGAnimatedAngle getOrientAngle( ) - { - return null; - } - - public SVGAnimatedLength getRefX( ) - { - return null; - } - - public void setRefX(SVGAnimatedLength refX) - { - } - - public SVGAnimatedLength getRefY( ) - { - return null; - } - - public void setRefY( SVGAnimatedLength refY ) - { - } - - public SVGAnimatedLength getMarkerWidth( ) - { - return null; - } - - public void setMarkerWidth( SVGAnimatedLength markerWidth ) - { - } - - public SVGAnimatedLength getMarkerHeight( ) - { - return null; - } - - public void setMarkerHeight( SVGAnimatedLength markerHeight ) - { - } - - public void setOrientToAuto ( ) - { - } - - public void setOrientToAngle ( SVGAngle angle ) - throws SVGException - { - } - - public SVGAnimatedRect getViewBox( ) - { - return null; - } - - public void setViewBox( SVGAnimatedRect viewBox ) - { - } - - public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio( ) - { - return null; - } - - public void setPreserveAspectRatio( SVGAnimatedPreserveAspectRatio preserveAspectRatio ) - { - } - - public void setMarkerUnits( SVGAnimatedEnumeration markerUnits ) - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGMaskElementImpl.java b/src/org/apache/fop/dom/svg/SVGMaskElementImpl.java deleted file mode 100644 index c9efa34b8..000000000 --- a/src/org/apache/fop/dom/svg/SVGMaskElementImpl.java +++ /dev/null @@ -1,97 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -import java.util.Vector; - -/** - * - */ -public class SVGMaskElementImpl extends GraphicElement implements SVGMaskElement { - public Vector elements = new Vector(); - - public void addElement(SVGElement g) - { - elements.addElement(g); - } - - public SVGMaskElementImpl() - { - } - - public SVGAnimatedEnumeration getMaskUnits( ) - { - return null; - } - - public SVGAnimatedLength getX( ) - { - return null; - } - - public SVGAnimatedLength getY( ) - { - return null; - } - - public SVGAnimatedLength getWidth( ) - { - return null; - } - - public SVGAnimatedLength getHeight( ) - { - return null; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGMatrixImpl.java b/src/org/apache/fop/dom/svg/SVGMatrixImpl.java deleted file mode 100644 index 6e764724f..000000000 --- a/src/org/apache/fop/dom/svg/SVGMatrixImpl.java +++ /dev/null @@ -1,235 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.fo.Property; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * @author Keiron Liddle - */ -public class SVGMatrixImpl implements SVGMatrix { - float a = 1.0f; - float b = 0.0f; - float c = 0.0f; - float d = 1.0f; - float e = 0.0f; - float f = 0.0f; - - public SVGMatrixImpl() { - } - - public float getA() { - return a; - } - - public void setA(float a) { - this.a = a; - } - - public float getB() { - return b; - } - - public void setB(float b) { - this.b = b; - } - - public float getC() { - return c; - } - - public void setC(float c) { - this.c = c; - } - - public float getD() { - return d; - } - - public void setD(float d) { - this.d = d; - } - - public float getE() { - return e; - } - - public void setE(float e) { - this.e = e; - } - - public float getF() { - return f; - } - - public void setF(float f) { - this.f = f; - } - - public SVGMatrix multiply (SVGMatrix secondMatrix) throws SVGException { - SVGMatrix mat = new SVGMatrixImpl(); - mat.setA(a * secondMatrix.getA() + b * secondMatrix.getC()); - mat.setB(a * secondMatrix.getB() + b * secondMatrix.getD()); - mat.setC(c * secondMatrix.getA() + d * secondMatrix.getC()); - mat.setD(c * secondMatrix.getB() + d * secondMatrix.getD()); - // e,f? - mat.setE(a * e + c * f + secondMatrix.getE()); - mat.setF(b * f + d * f + secondMatrix.getF()); - return mat; - } - - public SVGMatrix inverse () throws SVGException { - SVGMatrix mat = new SVGMatrixImpl(); - double det = Math.abs(a * d - b * c); - if (det == 0) { - // throw exception - throw new SVGExceptionImpl( - SVGException.SVG_MATRIX_NOT_INVERTABLE, - "Matrix: " + toString() + " could not be inverted"); - } - mat.setA((float)(d / det)); - mat.setB((float)(b / det)); - mat.setC((float)(-c / det)); - mat.setD((float)(a / det)); - // e,f? - mat.setE(-e); - mat.setF(-f); - return mat; - } - - public SVGMatrix translate (float x, float y) throws SVGException { - SVGMatrix matrix = new SVGMatrixImpl(); - matrix.setA(a); - matrix.setB(b); - matrix.setC(c); - matrix.setD(d); - matrix.setE(e + x); - matrix.setF(f + y); - return matrix; - } - - public SVGMatrix scale(float scaleFactor) throws SVGException { - SVGMatrix matrix = new SVGMatrixImpl(); - matrix.setA(a * scaleFactor); - matrix.setB(b); - matrix.setC(c); - matrix.setD(d * scaleFactor); - matrix.setE(e); - matrix.setF(f); - return matrix; - } - - public SVGMatrix scaleNonUniform(float scaleFactorX, - float scaleFactorY) throws SVGException { - SVGMatrix matrix = new SVGMatrixImpl(); - matrix.setA(a * scaleFactorX); - matrix.setB(b); - matrix.setC(c); - matrix.setD(d * scaleFactorY); - matrix.setE(e); - matrix.setF(f); - return matrix; - } - - public SVGMatrix rotate (float angle) throws SVGException { - angle = (float)(angle * Math.PI / 180f); - SVGMatrix matrix = new SVGMatrixImpl(); - matrix.setA((float) Math.cos(angle)); - matrix.setB((float) Math.sin(angle)); - matrix.setC((float) - Math.sin(angle)); - matrix.setD((float) Math.cos(angle)); - return multiply(matrix); - } - - public SVGMatrix rotateFromVector(float x, - float y) throws SVGException { - return null; - } - - public SVGMatrix flipX() { - return null; - } - - public SVGMatrix flipY() { - return null; - } - - public SVGMatrix skewX(float angle) throws SVGException { - angle = (float)(angle * Math.PI / 180f); - - SVGMatrix matrix = new SVGMatrixImpl(); - matrix.setA(1); - matrix.setB(0); - matrix.setC((float) Math.tan(angle)); - matrix.setD(1); - return multiply(matrix); - } - - public SVGMatrix skewY(float angle) throws SVGException { - angle = (float)(angle * Math.PI / 180f); - - SVGMatrix matrix = new SVGMatrixImpl(); - matrix.setA(1); - matrix.setB((float) Math.tan(angle)); - matrix.setC(0); - matrix.setD(1); - return multiply(matrix); - } - - public String toString() { - return "[" + getA() + " " + getB() + " " + getC() + " " + - getD() + " " + getE() + " " + getF() + "]"; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGMissingGlyphElementImpl.java b/src/org/apache/fop/dom/svg/SVGMissingGlyphElementImpl.java deleted file mode 100644 index 976a5468b..000000000 --- a/src/org/apache/fop/dom/svg/SVGMissingGlyphElementImpl.java +++ /dev/null @@ -1,61 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -/** - * - */ -public class SVGMissingGlyphElementImpl extends SVGElementImpl { - - public SVGMissingGlyphElementImpl() { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGPathElementImpl.java b/src/org/apache/fop/dom/svg/SVGPathElementImpl.java deleted file mode 100644 index 6834d288e..000000000 --- a/src/org/apache/fop/dom/svg/SVGPathElementImpl.java +++ /dev/null @@ -1,301 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * TODO: implement properly - */ -public class SVGPathElementImpl extends GraphicElement implements SVGPathElement { - - public Vector pathElements; - - /** - * construct a line graphic - */ - public SVGPathElementImpl(Vector v) { - this.pathElements = v; - } - - public SVGAnimatedNumber getPathLength() { - return null; - } - - public SVGRect getBBox() { - float minX = 10000000; // a big number - float maxX = -10000000; // a low number - float minY = 10000000; // a big number - float maxY = -10000000; // a low number - // the bounds of a path is always within the end points and - // the control points, so adjust the min and max to be these extremes - float lastx = 0; - float lasty = 0; - float lastmovex = 0; - float lastmovey = 0; - float[] cxs; - float tempx; - float tempy; - float lastcx = 0; - float lastcy = 0; - for (Enumeration e = pathElements.elements(); - e.hasMoreElements();) { - SVGPathSegImpl pc = (SVGPathSegImpl) e.nextElement(); - float[] vals = pc.getValues(); - switch (pc.getPathSegType()) { - case SVGPathSeg.PATHSEG_MOVETO_ABS: - lastx = vals[0]; - lasty = vals[1]; - break; - case SVGPathSeg.PATHSEG_MOVETO_REL: - break; - case SVGPathSeg.PATHSEG_LINETO_ABS: - lastx = vals[0]; - lasty = vals[1]; - break; - case SVGPathSeg.PATHSEG_LINETO_REL: - lastx += vals[0]; - lasty += vals[1]; - break; - case SVGPathSeg.PATHSEG_LINETO_VERTICAL_ABS: - lasty = vals[0]; - break; - case SVGPathSeg.PATHSEG_LINETO_VERTICAL_REL: - lasty += vals[0]; - break; - case SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_ABS: - lastx = vals[0]; - break; - case SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_REL: - lastx += vals[0]; - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_ABS: - lastx = vals[4]; - lasty = vals[5]; - lastcx = vals[2]; - lastcy = vals[3]; - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_REL: - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_ABS: - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_REL: - break; - case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_ABS: - break; - case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_REL: - break; - case SVGPathSeg.PATHSEG_ARC_ABS: - break; - case SVGPathSeg.PATHSEG_ARC_REL: - break; - case SVGPathSeg.PATHSEG_CLOSEPATH: - break; - } - if (lastx < minX) { - minX = lastx; - } - if (lastx > maxX) { - maxX = lastx; - } - if (lasty < minY) { - minY = lasty; - } - if (lasty > minX) { - maxY = lasty; - } - } - SVGRect rect = new SVGRectImpl(); - rect.setX(minX); - rect.setY(minY); - rect.setWidth(maxX - minX); - rect.setHeight(maxY - minY); - return rect; - } - - public void setPathLength(SVGAnimatedNumber length) { - } - - public SVGPathSegList getPathSegList() { - return null; - } - - public SVGPathSegList getNormalizedPathSegList() { - return null; - } - - public float getTotalLength() { - return 0; - } - - public SVGPoint getPointAtLength(float distance) throws SVGException { - return null; - } - - public int getPathSegAtLength(float distance) throws SVGException { - return 0; - } - - public short getPathSegType() { - return 0; - } - - public String getPathSegTypeAsLetter() { - return null; - } - - public SVGPathSegClosePath createSVGPathSegClosePath () { - return null; - } - - public SVGPathSegMovetoAbs createSVGPathSegMovetoAbs (float x, - float y) { - return null; - } - - public SVGPathSegMovetoRel createSVGPathSegMovetoRel (float x, - float y) { - return null; - } - - public SVGPathSegLinetoAbs createSVGPathSegLinetoAbs (float x, - float y) { - return null; - } - - public SVGPathSegLinetoRel createSVGPathSegLinetoRel (float x, - float y) { - return null; - } - - public SVGPathSegCurvetoCubicAbs createSVGPathSegCurvetoCubicAbs ( - float x, float y, float x1, float y1, float x2, float y2) { - return null; - } - - public SVGPathSegCurvetoCubicRel createSVGPathSegCurvetoCubicRel ( - float x, float y, float x1, float y1, float x2, float y2) { - return null; - } - - public SVGPathSegCurvetoQuadraticAbs createSVGPathSegCurvetoQuadraticAbs ( - float x, float y, float x1, float y1) { - return null; - } - - public SVGPathSegCurvetoQuadraticRel createSVGPathSegCurvetoQuadraticRel ( - float x, float y, float x1, float y1) { - return null; - } - - public SVGPathSegArcAbs createSVGPathSegArcAbs (float x, float y, - float r1, float r2, float angle, boolean largeArcFlag, - boolean sweepFlag) { - return null; - } - - public SVGPathSegArcRel createSVGPathSegArcRel (float x, float y, - float r1, float r2, float angle, boolean largeArcFlag, - boolean sweepFlag) { - return null; - } - - public SVGPathSegLinetoHorizontalAbs createSVGPathSegLinetoHorizontalAbs ( - float x) { - return null; - } - - public SVGPathSegLinetoHorizontalRel createSVGPathSegLinetoHorizontalRel ( - float x) { - return null; - } - - public SVGPathSegLinetoVerticalAbs createSVGPathSegLinetoVerticalAbs ( - float y) { - return null; - } - - public SVGPathSegLinetoVerticalRel createSVGPathSegLinetoVerticalRel ( - float y) { - return null; - } - - public SVGPathSegCurvetoCubicSmoothAbs createSVGPathSegCurvetoCubicSmoothAbs ( - float x, float y, float x2, float y2) { - return null; - } - - public SVGPathSegCurvetoCubicSmoothRel createSVGPathSegCurvetoCubicSmoothRel ( - float x, float y, float x2, float y2) { - return null; - } - - public SVGPathSegCurvetoQuadraticSmoothAbs createSVGPathSegCurvetoQuadraticSmoothAbs ( - float x, float y) { - return null; - } - - public SVGPathSegCurvetoQuadraticSmoothRel createSVGPathSegCurvetoQuadraticSmoothRel ( - float x, float y) { - return null; - } - - public SVGPathSegList getAnimatedPathSegList() { - return null; - } - - public SVGPathSegList getAnimatedNormalizedPathSegList() { - return null; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGPathSegImpl.java b/src/org/apache/fop/dom/svg/SVGPathSegImpl.java deleted file mode 100644 index eb68a8258..000000000 --- a/src/org/apache/fop/dom/svg/SVGPathSegImpl.java +++ /dev/null @@ -1,185 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -public class SVGPathSegImpl implements SVGPathSeg { - float[] values; - short commandType; - public SVGPathSegImpl(short type, float[] vals) - { - commandType = type; - values = vals; - } - - public float[] getValues() - { - return values; - } - - public short getPathSegType( ) - { - return commandType; - } - - public void setPathSegType( short pathSegType ) - { - } - - public String getPathSegTypeAsLetter( ) - { - return null; - } - - public void setPathSegTypeAsLetter( String pathSegTypeAsLetter ) - { - } - -/* public float getX( ) - { - return 0; - } - - public void setX( float x ) - { - } - - public float getY( ) - { - return 0; - } - - public void setY( float y ) - { - } - - public float getX1( ) - { - return 0; - } - - public void setX1( float x1 ) - { - } - - public float getY1( ) - { - return 0; - } - - public void setY1( float y1 ) - { - } - - public float getX2( ) - { - return 0; - } - - public void setX2( float x2 ) - { - } - - public float getY2( ) - { - return 0; - } - - public void setY2( float y2 ) - { - } - - public float getR1( ) - { - return 0; - } - - public void setR1( float r1 ) - { - } - - public float getR2( ) - { - return 0; - } - - public void setR2( float r2 ) - { - } - - public float getAngle( ) - { - return 0; - } - - public void setAngle( float angle ) - { - } - - public boolean getLargeArcFlag( ) - { - return false; - } - - public void setLargeArcFlag( boolean largeArcFlag ) - { - } - - public boolean getSweepFlag( ) - { - return false; - } - - public void setSweepFlag( boolean sweepFlag ) - { - }*/ -} diff --git a/src/org/apache/fop/dom/svg/SVGPatternElementImpl.java b/src/org/apache/fop/dom/svg/SVGPatternElementImpl.java deleted file mode 100644 index 446482206..000000000 --- a/src/org/apache/fop/dom/svg/SVGPatternElementImpl.java +++ /dev/null @@ -1,151 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGPatternElementImpl extends SVGURIReferenceImpl implements SVGPatternElement { - SVGAnimatedEnumeration patternUnits; - SVGAnimatedTransformList patternTransform; - SVGAnimatedLength x; - SVGAnimatedLength y; - SVGAnimatedLength width; - SVGAnimatedLength height; - SVGAnimatedRect viewBox; - SVGAnimatedPreserveAspectRatio preserveAspectRatio; - - public SVGPatternElementImpl() { - } - - public SVGAnimatedEnumeration getPatternUnits( ) - { - return patternUnits; - } - - public void setPatternUnits( SVGAnimatedEnumeration patternUnits ) - { - this.patternUnits = patternUnits; - } - - public SVGAnimatedTransformList getPatternTransform( ) - { - return patternTransform; - } - - public void setPatternTransform( SVGAnimatedTransformList patternTransform ) - { - this.patternTransform = patternTransform; - } - - public SVGAnimatedLength getX( ) - { - return x; - } - - public void setX( SVGAnimatedLength x ) - { - this.x = x; - } - - public SVGAnimatedLength getY( ) - { - return y; - } - - public void setY( SVGAnimatedLength y ) - { - this.y = y; - } - - public SVGAnimatedLength getWidth( ) - { - return width; - } - - public void setWidth( SVGAnimatedLength width ) - { - this.width = width; - } - - public SVGAnimatedLength getHeight( ) - { - return height; - } - - public void setHeight( SVGAnimatedLength height ) - { - this.height = height; - } - - public SVGAnimatedRect getViewBox( ) - { - return viewBox; - } - - public void setViewBox( SVGAnimatedRect viewBox ) - { - this.viewBox = viewBox; - } - - public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio( ) - { - return preserveAspectRatio; - } - - public void setPreserveAspectRatio( SVGAnimatedPreserveAspectRatio preserveAspectRatio) - { - this.preserveAspectRatio = preserveAspectRatio; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGPolygonElementImpl.java b/src/org/apache/fop/dom/svg/SVGPolygonElementImpl.java deleted file mode 100644 index a247c1267..000000000 --- a/src/org/apache/fop/dom/svg/SVGPolygonElementImpl.java +++ /dev/null @@ -1,96 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGPolygonElementImpl extends GraphicElement implements SVGPolygonElement { - - public Vector points; - - public SVGPolygonElementImpl(Vector p) { - this.points = p; - } - - public SVGPointList getPoints() { - return null; - } - - public SVGPointList getAnimatedPoints() { - return null; - } - - public SVGRect getBBox() { - float minX = 10000000; // a big number - float maxX = -10000000; // a low number - float minY = 10000000; // a big number - float maxY = -10000000; // a low number - for (Enumeration e = points.elements(); e.hasMoreElements();) { - e.nextElement(); - } - SVGRect rect = new SVGRectImpl(); - rect.setX(minX); - rect.setY(minY); - rect.setWidth(maxX - minX); - rect.setHeight(maxY - minY); - return rect; - } - - public String getTagName() { - return "polygon"; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGPolylineElementImpl.java b/src/org/apache/fop/dom/svg/SVGPolylineElementImpl.java deleted file mode 100644 index 88e774406..000000000 --- a/src/org/apache/fop/dom/svg/SVGPolylineElementImpl.java +++ /dev/null @@ -1,76 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGPolylineElementImpl extends GraphicElement implements SVGPolylineElement { - - public Vector points; - - public SVGPolylineElementImpl(Vector p) { - this.points = p; - } - - public SVGPointList getPoints() { - return null; - } - - public SVGPointList getAnimatedPoints() { - return null; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGRadialGradientElementImpl.java b/src/org/apache/fop/dom/svg/SVGRadialGradientElementImpl.java deleted file mode 100644 index 978b6bd40..000000000 --- a/src/org/apache/fop/dom/svg/SVGRadialGradientElementImpl.java +++ /dev/null @@ -1,119 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGRadialGradientElementImpl extends SVGGradientElementImpl implements SVGRadialGradientElement { - SVGAnimatedLength cx; - SVGAnimatedLength cy; - SVGAnimatedLength r; - SVGAnimatedLength fx; - SVGAnimatedLength fy; - - public SVGRadialGradientElementImpl() - { - } - - public SVGAnimatedLength getCx() - { - return cx; - } - - public void setCx(SVGAnimatedLength cx) - { - this.cx = cx; - } - - public SVGAnimatedLength getCy() - { - return cy; - } - - public void setCy(SVGAnimatedLength cy) - { - this.cy = cy; - } - - public SVGAnimatedLength getR() - { - return r; - } - - public void setR(SVGAnimatedLength r) - { - this.r = r; - } - - public SVGAnimatedLength getFx() - { - return fx; - } - - public void setFx(SVGAnimatedLength fx) - { - this.fx = fx; - } - - public SVGAnimatedLength getFy() - { - return fy; - } - - public void setFy(SVGAnimatedLength fy) - { - this.fy = fy; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGRectElementImpl.java b/src/org/apache/fop/dom/svg/SVGRectElementImpl.java deleted file mode 100644 index fe01baa51..000000000 --- a/src/org/apache/fop/dom/svg/SVGRectElementImpl.java +++ /dev/null @@ -1,223 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; -import org.w3c.dom.events.*; - -/** - * class representing a rectangle in an SVG Area - */ -public class SVGRectElementImpl extends GraphicElement implements SVGRectElement { - - /** x-coordinate of corner */ - private SVGAnimatedLength x; - - /** y-coordinate of corner */ - private SVGAnimatedLength y; - private SVGAnimatedLength rx; - private SVGAnimatedLength ry; - - /** width of rectangle */ - private SVGAnimatedLength width; - - /** height of rectangle */ - private SVGAnimatedLength height; - - /** - * construct a rectangle graphic. - * - * @param x x-coordinate of corner - * @param y y-coordinate of corner - * @param width width of rectangle - * @param height height of rectangle - */ - public SVGRectElementImpl() { - } - - public SVGRect getBBox() - { - SVGMatrix matrix = getScreenCTM(); - double minx = 10000; - double maxx = -10000; - double miny = 10000; - double maxy = -10000; - double[] tl = new double[2]; - double[] tr = new double[2]; - double[] bl = new double[2]; - double[] br = new double[2]; - double[] res = new double[2]; - tl[0] = x.getBaseVal().getValue(); - tl[1] = y.getBaseVal().getValue(); - res[0] = matrix.getA() * tl[0] + matrix.getB() * tl[1] + matrix.getE(); - res[1] = matrix.getC() * tl[0] + matrix.getD() * tl[1] + matrix.getF(); - if(res[0] > maxx) - maxx = res[0]; - if(res[0] < minx) - minx = res[0]; - if(res[1] > maxy) - maxy = res[1]; - if(res[1] < miny) - miny = res[1]; - - tl[0] = x.getBaseVal().getValue() + width.getBaseVal().getValue(); - tl[1] = y.getBaseVal().getValue(); - res[0] = matrix.getA() * tl[0] + matrix.getB() * tl[1] + matrix.getE(); - res[1] = matrix.getC() * tl[0] + matrix.getD() * tl[1] + matrix.getF(); - if(res[0] > maxx) - maxx = res[0]; - if(res[0] < minx) - minx = res[0]; - if(res[1] > maxy) - maxy = res[1]; - if(res[1] < miny) - miny = res[1]; - - tl[0] = x.getBaseVal().getValue(); - tl[1] = y.getBaseVal().getValue() + height.getBaseVal().getValue(); - res[0] = matrix.getA() * tl[0] + matrix.getB() * tl[1] + matrix.getE(); - res[1] = matrix.getC() * tl[0] + matrix.getD() * tl[1] + matrix.getF(); - if(res[0] > maxx) - maxx = res[0]; - if(res[0] < minx) - minx = res[0]; - if(res[1] > maxy) - maxy = res[1]; - if(res[1] < miny) - miny = res[1]; - - tl[0] = x.getBaseVal().getValue() + width.getBaseVal().getValue(); - tl[1] = y.getBaseVal().getValue() + height.getBaseVal().getValue(); - res[0] = matrix.getA() * tl[0] + matrix.getB() * tl[1] + matrix.getE(); - res[1] = matrix.getC() * tl[0] + matrix.getD() * tl[1] + matrix.getF(); - if(res[0] > maxx) - maxx = res[0]; - if(res[0] < minx) - minx = res[0]; - if(res[1] > maxy) - maxy = res[1]; - if(res[1] < miny) - miny = res[1]; - - SVGRect rect = new SVGRectImpl(); - rect.setX((float)minx); - rect.setY((float)miny); - rect.setWidth((float)(maxx - minx)); - rect.setHeight((float)(maxy - miny)); - return rect; - } - - public SVGAnimatedLength getX( ) - { - return x; - } - - public void setX( SVGAnimatedLength x ) - { - this.x = x; - } - - public SVGAnimatedLength getY( ) - { - return y; - } - - public void setY( SVGAnimatedLength y ) - { - this.y = y; - } - - public SVGAnimatedLength getWidth( ) - { - return width; - } - - public void setWidth( SVGAnimatedLength width ) - { - this.width = width; - } - - public SVGAnimatedLength getHeight( ) - { - return height; - } - - public void setHeight( SVGAnimatedLength height ) - { - this.height = height; - } - - public SVGAnimatedLength getRx( ) - { - return rx; - } - - public void setRx( SVGAnimatedLength rx ) - { - this.rx = rx; - } - - public SVGAnimatedLength getRy( ) - { - return ry; - } - - public void setRy( SVGAnimatedLength ry ) - { - this.ry = ry; - } - - public String getTagName() - { - return "rect"; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGRectImpl.java b/src/org/apache/fop/dom/svg/SVGRectImpl.java deleted file mode 100644 index b8f64a259..000000000 --- a/src/org/apache/fop/dom/svg/SVGRectImpl.java +++ /dev/null @@ -1,111 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.fo.Property; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGRectImpl implements SVGRect { - float x; - float y; - float width; - float height; - - public SVGRectImpl() - { - } - - public float getX( ) - { - return x; - } - - public void setX(float x ) - { - this.x = x; - } - - public float getY( ) - { - return y; - } - - public void setY(float y ) - { - this.y = y; - } - - public float getWidth( ) - { - return width; - } - - public void setWidth(float width ) - { - this.width = width; - } - - public float getHeight( ) - { - return height; - } - - public void setHeight(float height ) - { - this.height = height; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGSVGElementImpl.java b/src/org/apache/fop/dom/svg/SVGSVGElementImpl.java deleted file mode 100644 index 5c7c52182..000000000 --- a/src/org/apache/fop/dom/svg/SVGSVGElementImpl.java +++ /dev/null @@ -1,368 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.dom.stylesheets.StyleSheetListImpl; -import org.apache.fop.fo.Property; - -import java.util.*; - -import org.w3c.dom.events.Event; -import org.w3c.dom.Element; -import org.w3c.dom.css.RGBColor; -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.stylesheets.StyleSheetList; -import org.w3c.dom.stylesheets.StyleSheet; -import org.w3c.dom.NodeList; -import org.w3c.dom.views.DocumentView; -import org.w3c.dom.svg.*; -import org.w3c.dom.css.*; -import org.w3c.dom.*; - -/** - * - */ -public class SVGSVGElementImpl extends GraphicElement implements SVGSVGElement { - SVGAnimatedLength x; - SVGAnimatedLength y; - SVGAnimatedLength width; - SVGAnimatedLength height; - // This will be null if the user supplied no viewBox attribute - SVGAnimatedRect viewBox; - - public SVGSVGElementImpl() { - } - - public SVGAnimatedLength getX() { - return x; - } - - public SVGAnimatedLength getY() { - return y; - } - - public SVGAnimatedLength getWidth() { - return width; - } - - public SVGAnimatedLength getHeight() { - return height; - } - - public void setWidth(SVGAnimatedLength w) { - width = w; - } - - public void setHeight(SVGAnimatedLength h) { - height = h; - } - - public void setX(SVGAnimatedLength x) { - this.x = x; - } - - public void setY(SVGAnimatedLength y) { - this.y = y; - } - - public SVGAnimatedRect getViewBox() - { - return viewBox; - } - - public void setViewBox(SVGAnimatedRect viewBox) - { - this.viewBox = viewBox; - } - - public SVGRect getViewport() { - return null; - } - - public SVGRect getBBox() { - return getChildrenBBox(); - } - - public String getContentScriptType() { - return null; - } - - public void setContentScriptType(String contentScriptType) { - } - - public String getContentStyleType() { - return null; - } - - public void setContentStyleType(String contentStyleType) { - } - - /* public CSSValue getPresentationAttribute ( String name ) - { - CSSStyleDeclaration style; - style = getStyle(); - CSSValue val; - val = style.getPropertyCSSValue(name); - if(val == null) { - // get "style" element style for this - } - if(val == null) { - // get element parents style - Node par = getParentNode(); - if(par instanceof SVGStylable) { - val = ((SVGStylable)par).getPresentationAttribute(name); - } - } - return val; - }*/ - - public SVGPoint getCurrentTranslate() { - return null; - } - - public void setCurrentTranslate(SVGPoint currentTranslate) { - } - - public SVGViewSpec getCurrentView() { - return null; - } - - public void deSelectAll() { - } - - public NodeList getIntersectionList (SVGRect rect, - SVGElement referenceElement) { - return null; - } - - public NodeList getEnclosureList (SVGRect rect, - SVGElement referenceElement) { - return null; - } - - public boolean checkIntersection (SVGElement element, SVGRect rect) { - return false; - } - - public boolean checkEnclosure (SVGElement element, SVGRect rect) { - return false; - } - - public float getPixelUnitToMillimeterX() { - return 0; - } - - public float getPixelUnitToMillimeterY() { - return 0; - } - - public float getScreenPixelToMillimeterX() { - return 0; - } - - public float getScreenPixelToMillimeterY() { - return 0; - } - - public boolean getUseCurrentView() { - return true; - } - - public void setUseCurrentView(boolean useCurrentView) { - } - - public float getCurrentScale() { - return 0; - } - - public void setCurrentScale(float currentScale) { - } - - public int suspendRedraw (int max_wait_milliseconds) { - return 0; - } - - public void unsuspendRedraw (int suspend_handle_id) { - } - - public void unsuspendRedrawAll () { - } - - public void forceRedraw () { - } - - public void pauseAnimations () { - } - - public void unpauseAnimations () { - } - - public boolean animationsPaused () { - return true; - } - - public float getCurrentTime() { - return 0; - } - - public void setCurrentTime (float seconds) { - } - - public SVGLength createSVGLength () { - return new SVGLengthImpl(); - } - - public SVGAngle createSVGAngle () { - return new SVGAngleImpl(); - } - - public SVGPoint createSVGPoint () { - return null; - } - - public SVGMatrix createSVGMatrix () { - return new SVGMatrixImpl(); - } - - public SVGRect createSVGRect () { - return new SVGRectImpl(); - } - - public SVGTransform createSVGTransform () { - return new SVGTransformImpl(); - } - - public SVGTransform createSVGTransformFromMatrix (SVGMatrix matrix) { - SVGTransform trans = new SVGTransformImpl(); - trans.setMatrix(matrix); - return trans; - } - - public RGBColor createRGBColor () { - return null; - } - - public SVGICCColor createSVGICCColor () { - return null; - } - - public Element getElementById (String elementId) { - return null; - } - - public short getZoomAndPan() { - return 0; - } - - public void setZoomAndPan(short zoomAndPan) { - } - - public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio() { - return null; - } - - public CSSStyleDeclaration getComputedStyle(Element el, String str) { - return null; - } - - public CSSStyleDeclaration getOverrideStyle(Element el, String str) { - return null; - } - - public StyleSheetList getStyleSheets() { - NodeList nl = getElementsByTagName("style"); - Vector shs = new Vector(); - for (int count = 0; count < nl.getLength(); count++) { - Node el = (Node) nl.item(count); - SVGStyleElementImpl sse = (SVGStyleElementImpl) el; - StyleSheet sheet = sse.getStyleSheet(); - shs.addElement(sheet); - } - return new StyleSheetListImpl(shs); - } - - public Event createEvent(String str) { - return null; - } - - public SVGNumber createSVGNumber () { - return null;//new SVGNumberImpl(); - } - - public String createSVGString () { - return new String(); - } - - public DocumentView getDocument() { - return null; - } - - public Node appendChild(Node newChild) throws DOMException { - Node nChild = super.appendChild(newChild); - if (newChild instanceof SVGElementImpl) { - SVGElementImpl ele = (SVGElementImpl) newChild; - ele.setOwnerSVG(this); - } - setOwnerSVG(this); - return nChild; - } - - public void setOwnerSVG(SVGSVGElement owner) { - ownerSvg = owner; - NodeList nl = getChildNodes(); - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof SVGElementImpl) { - ((SVGElementImpl) n).setOwnerSVG(this); - } - } - } -} diff --git a/src/org/apache/fop/dom/svg/SVGSetElementImpl.java b/src/org/apache/fop/dom/svg/SVGSetElementImpl.java deleted file mode 100644 index e259d2170..000000000 --- a/src/org/apache/fop/dom/svg/SVGSetElementImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGSetElementImpl extends GraphicElement {// implements SVGSetElement { - - public SVGSetElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGStopElementImpl.java b/src/org/apache/fop/dom/svg/SVGStopElementImpl.java deleted file mode 100644 index de0592809..000000000 --- a/src/org/apache/fop/dom/svg/SVGStopElementImpl.java +++ /dev/null @@ -1,75 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGStopElementImpl extends SVGElementImpl implements SVGStopElement { - SVGAnimatedNumber offset; - - public SVGStopElementImpl() - { - } - - public SVGAnimatedNumber getOffset() - { - return offset; - } - - public void setOffset(SVGAnimatedNumber offset) - { - this.offset = offset; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGStringListImpl.java b/src/org/apache/fop/dom/svg/SVGStringListImpl.java deleted file mode 100644 index e4eccf139..000000000 --- a/src/org/apache/fop/dom/svg/SVGStringListImpl.java +++ /dev/null @@ -1,109 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.apache.fop.dom.svg.*; -import org.w3c.dom.svg.*; -import org.w3c.dom.*; - -import java.util.*; - -/** - * - */ -public class SVGStringListImpl extends SVGListImpl implements SVGStringList { - public SVGStringListImpl(String str) { - parseString(str); - } - - void parseString(String str) { - StringTokenizer st = new StringTokenizer(str, ", \n\r\t:;"); - while (st.hasMoreTokens()) { - String item = st.nextToken(); - appendItem(item); - } - } - - public String initialize (String newItem) throws SVGException { - return null; - } - - public String createItem() { - return new String(); - } - - public String getItem(int index) throws DOMException { - Object obj = list.elementAt(index); - return (String) obj; - } - - public String removeItem(int index) throws DOMException { - Object obj = list.elementAt(index); - list.removeElementAt(index); - return (String) obj; - } - - public String appendItem(String newItem) throws SVGException { - list.addElement(newItem); - return null; - } - - public String replaceItem(String newItem, - int index) throws DOMException, SVGException { - return null; - } - - public String insertItemBefore(String newItem, - int index) throws SVGException { - return null; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGStyleElementImpl.java b/src/org/apache/fop/dom/svg/SVGStyleElementImpl.java deleted file mode 100644 index 3fedd5edb..000000000 --- a/src/org/apache/fop/dom/svg/SVGStyleElementImpl.java +++ /dev/null @@ -1,109 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.apache.fop.dom.css.*; - -import org.w3c.dom.svg.*; -import org.w3c.dom.css.*; -import org.w3c.dom.stylesheets.*; - -/** - * - */ -public class SVGStyleElementImpl extends GraphicElement implements SVGStyleElement { - String type; - CSSStyleSheet styleSheet; - - public SVGStyleElementImpl(String str) - { - styleSheet = new CSSStyleSheetImpl(str); - } - - public String getType() - { - return type; - } - - public void setType(String type) - { - this.type = type; - } - - public String getMedia( ) - { - return null; - } - - public void setMedia( String media ) - { - } - - public String getTitle( ) - { - return null; - } - - public void setTitle( String title ) - { - } - - public StyleSheet getStyleSheet() - { - return styleSheet; - } - - public String getTagName() - { - return "style"; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGSwitchElementImpl.java b/src/org/apache/fop/dom/svg/SVGSwitchElementImpl.java deleted file mode 100644 index be4ecacab..000000000 --- a/src/org/apache/fop/dom/svg/SVGSwitchElementImpl.java +++ /dev/null @@ -1,69 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGSwitchElementImpl extends GraphicElement implements SVGSwitchElement { - - public SVGSwitchElementImpl() { - } - - public SVGRect getBBox() - { - // is this valid since only one will be rendered? - return getChildrenBBox(); - } -} diff --git a/src/org/apache/fop/dom/svg/SVGSymbolElementImpl.java b/src/org/apache/fop/dom/svg/SVGSymbolElementImpl.java deleted file mode 100644 index 5cc318de5..000000000 --- a/src/org/apache/fop/dom/svg/SVGSymbolElementImpl.java +++ /dev/null @@ -1,86 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGSymbolElementImpl extends GraphicElement implements SVGSymbolElement { - SVGAnimatedRect viewBox; - SVGAnimatedPreserveAspectRatio preserveAspectRatio; - - public SVGSymbolElementImpl() - { - } - - public SVGAnimatedRect getViewBox() - { - return viewBox; - } - - public void setViewBox(SVGAnimatedRect viewBox) - { - this.viewBox = viewBox; - } - - public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio( ) - { - return preserveAspectRatio; - } - - public void setPreserveAspectRatio(SVGAnimatedPreserveAspectRatio preserveAspectRatio) - { - this.preserveAspectRatio = preserveAspectRatio; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGTRefElementImpl.java b/src/org/apache/fop/dom/svg/SVGTRefElementImpl.java deleted file mode 100644 index 205b84b00..000000000 --- a/src/org/apache/fop/dom/svg/SVGTRefElementImpl.java +++ /dev/null @@ -1,154 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import java.util.Vector; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGTRefElementImpl extends SVGTSpanElementImpl implements SVGTRefElement { - public String ref; - - String xlinkType; - String xlinkRole; - String xlinkTitle; - String xlinkShow; - String xlinkActuate; - String xlinkArcRole; - SVGAnimatedString href; - - public SVGTRefElementImpl() - { - } - - public String getXlinkType( ) - { - return xlinkType; - } - - public void setXlinkType( String xlinkType ) - { - this.xlinkType = xlinkType; - } - - public String getXlinkRole( ) - { - return xlinkRole; - } - - public void setXlinkRole( String xlinkRole ) - { - this.xlinkRole = xlinkRole; - } - - public String getXlinkTitle( ) - { - return xlinkTitle; - } - - public void setXlinkTitle( String xlinkTitle ) - { - this.xlinkTitle = xlinkTitle; - } - - public String getXlinkArcRole() - { - return xlinkArcRole; - } - - public void setXlinkArcRole(String xlinkArcRole) - { - this.xlinkArcRole = xlinkArcRole; - } - - public String getXlinkShow( ) - { - return xlinkShow; - } - - public void setXlinkShow( String xlinkShow ) - { - this.xlinkShow = xlinkShow; - } - - public String getXlinkActuate( ) - { - return xlinkActuate; - } - - public void setXlinkActuate( String xlinkActuate ) - { - this.xlinkActuate = xlinkActuate; - } - - public SVGAnimatedString getHref( ) - { - return href; - } - - public void setHref( SVGAnimatedString href ) - { - this.href = href; - } - - public SVGAnimatedBoolean getExternalResourcesRequired() - { - return null; - } - - public void setExternalResourcesRequired(SVGAnimatedBoolean externalResourcesRequired) - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGTSpanElementImpl.java b/src/org/apache/fop/dom/svg/SVGTSpanElementImpl.java deleted file mode 100644 index 209c693ee..000000000 --- a/src/org/apache/fop/dom/svg/SVGTSpanElementImpl.java +++ /dev/null @@ -1,95 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGTSpanElementImpl extends SVGTextContentElementImpl implements SVGTSpanElement { - public String str; - public int dx = 0; - public int dy = 0; - public SVGAnimatedLengthList xlist = null; - public SVGAnimatedLengthList ylist = null; - public SVGAnimatedLengthList dxlist = null; - public SVGAnimatedLengthList dylist = null; - - /** - * - */ - public SVGTSpanElementImpl() { - } - - public SVGAnimatedLengthList getX() { - return xlist; - } - - public SVGAnimatedLengthList getY() { - return ylist; - } - - public SVGAnimatedLengthList getDx() { - return dxlist; - } - - public SVGAnimatedLengthList getDy() { - return dylist; - } - - public SVGAnimatedNumberList getRotate() { - return null; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGTextContentElementImpl.java b/src/org/apache/fop/dom/svg/SVGTextContentElementImpl.java deleted file mode 100644 index ebf0ca5a7..000000000 --- a/src/org/apache/fop/dom/svg/SVGTextContentElementImpl.java +++ /dev/null @@ -1,120 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * class representing text in an SVG Area - * - */ -public class SVGTextContentElementImpl extends GraphicElement implements SVGTextContentElement { - - public SVGTextContentElementImpl() - { - } - - public SVGAnimatedLength getTextLength( ) - { - return null; - } - - public SVGAnimatedEnumeration getLengthAdjust( ) - { - return null; - } - - public int getNumberOfChars ( ) - { - return 0; - } - - public float getComputedTextLength ( ) - { - return 0; - } - - public float getSubStringLength ( int charnum, int nchars) - { - return 0; - } - - public SVGPoint getStartPositionOfChar ( int charnum ) - { - return null; - } - - public SVGPoint getEndPositionOfChar ( int charnum ) - { - return null; - } - - public SVGRect getExtentOfChar ( int charnum ) - { - return null; - } - - public float getRotationOfChar ( int charnum ) - { - return 0; - } - - public int getCharNumAtPosition ( SVGPoint point ) - { - return 0; - } - - public void selectSubString ( int charnum, int nchars ) - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGTextElementImpl.java b/src/org/apache/fop/dom/svg/SVGTextElementImpl.java deleted file mode 100644 index cf8490214..000000000 --- a/src/org/apache/fop/dom/svg/SVGTextElementImpl.java +++ /dev/null @@ -1,82 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.w3c.dom.svg.*; -import org.apache.fop.fo.EnumProperty; - -/** - * class representing text in an SVG Area - * - */ -public class SVGTextElementImpl extends SVGTextContentElementImpl { - - /** x-coordinate of text */ - public float x; - - /** y-coordinate of text */ - public float y; - - /** alignment of text */ - public EnumProperty anchor; - - /** vector of text elements, strings, tspan, tref */ - public Vector textList; - - /** - * construct a text element - */ - public SVGTextElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGTextPathElementImpl.java b/src/org/apache/fop/dom/svg/SVGTextPathElementImpl.java deleted file mode 100644 index 0394d1f4c..000000000 --- a/src/org/apache/fop/dom/svg/SVGTextPathElementImpl.java +++ /dev/null @@ -1,66 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -/** - * - */ -public class SVGTextPathElementImpl extends SVGElementImpl { - public String pathLink; - public String str; - - public SVGTextPathElementImpl(String s, String con) - { - pathLink = s; - str = con; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGTitleElementImpl.java b/src/org/apache/fop/dom/svg/SVGTitleElementImpl.java deleted file mode 100644 index 935cbf693..000000000 --- a/src/org/apache/fop/dom/svg/SVGTitleElementImpl.java +++ /dev/null @@ -1,63 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * class representing a line in an SVG Area - */ -public class SVGTitleElementImpl extends GraphicElement implements SVGTitleElement { - public SVGTitleElementImpl() - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGTransformImpl.java b/src/org/apache/fop/dom/svg/SVGTransformImpl.java deleted file mode 100644 index db2f6ef11..000000000 --- a/src/org/apache/fop/dom/svg/SVGTransformImpl.java +++ /dev/null @@ -1,121 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import org.apache.fop.fo.Property; - -import java.util.*; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class SVGTransformImpl implements SVGTransform { - short type; - SVGMatrix matrix = new SVGMatrixImpl(); - - public SVGTransformImpl() - { - } - - public short getType( ) - { - return type; - } - - public SVGMatrix getMatrix( ) - { - return matrix; - } - - public float getAngle( ) - { - return 0.0f; - } - - public void setMatrix ( SVGMatrix matrix ) - { - this.matrix = matrix; - } - - public void setTranslate ( float tx, float ty ) - throws SVGException - { - matrix.setE(tx); - matrix.setF(ty); - } - - public void setScale ( float sx, float sy ) - throws SVGException - { - matrix.setA(sx); - matrix.setD(sy); - } - - public void setRotate (float angle, float cx, float cy) - throws SVGException - { - matrix = matrix.rotate(angle); - } - - public void setSkewX ( float angle ) - throws SVGException - { - matrix = matrix.skewX(angle); - } - - public void setSkewY ( float angle ) - throws SVGException - { - matrix = matrix.skewY(angle); - } -} diff --git a/src/org/apache/fop/dom/svg/SVGTransformListImpl.java b/src/org/apache/fop/dom/svg/SVGTransformListImpl.java deleted file mode 100644 index 480cf560e..000000000 --- a/src/org/apache/fop/dom/svg/SVGTransformListImpl.java +++ /dev/null @@ -1,115 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.dom.svg; - -import java.util.*; - -import org.w3c.dom.svg.*; -import org.w3c.dom.*; - -/** - * Transform List - */ -public class SVGTransformListImpl extends SVGListImpl implements SVGTransformList { - public SVGTransform createSVGTransformFromMatrix (SVGMatrix matrix) - throws SVGException { - SVGTransform st = new SVGTransformImpl(); - st.setMatrix(matrix); - return st; - } - - public SVGTransform consolidate() { - SVGMatrix matrix = new SVGMatrixImpl(); - for (int count = 0; count < getNumberOfItems(); count++) { - SVGMatrix mat = ((SVGTransform) getItem(count)).getMatrix(); - matrix = matrix.multiply(mat); - } - SVGTransform trans = new SVGTransformImpl(); - trans.setMatrix(matrix); - return trans; - } - - public SVGTransform initialize (SVGTransform newItem) - throws SVGException { - return null; - } - - public SVGTransform createItem() { - return new SVGTransformImpl(); - } - - public SVGTransform getItem(int index) throws DOMException { - Object obj = list.elementAt(index); - return (SVGTransform) obj; - } - - public SVGTransform removeItem(int index) throws DOMException { - Object obj = list.elementAt(index); - list.removeElementAt(index); - return (SVGTransform) obj; - } - - public SVGTransform appendItem(SVGTransform newItem) - throws SVGException { - list.addElement(newItem); - return null; - } - - public SVGTransform replaceItem(SVGTransform newItem, - int index) throws DOMException, SVGException { - return null; - } - - public SVGTransform insertItemBefore(SVGTransform newItem, - int index) throws SVGException { - return null; - } -} diff --git a/src/org/apache/fop/dom/svg/SVGURIReferenceImpl.java b/src/org/apache/fop/dom/svg/SVGURIReferenceImpl.java deleted file mode 100644 index edf9a3ad0..000000000 --- a/src/org/apache/fop/dom/svg/SVGURIReferenceImpl.java +++ /dev/null @@ -1,143 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -public class SVGURIReferenceImpl extends GraphicElement implements SVGURIReference { - String xlinkType; - String xlinkRole; - String xlinkTitle; - String xlinkShow; - String xlinkActuate; - String xlinkArcRole; - SVGAnimatedString href; - - public String getXlinkType( ) - { - return xlinkType; - } - - public void setXlinkType( String xlinkType ) - { - this.xlinkType = xlinkType; - } - - public String getXlinkRole( ) - { - return xlinkRole; - } - - public void setXlinkRole( String xlinkRole ) - { - this.xlinkRole = xlinkRole; - } - - public String getXlinkTitle( ) - { - return xlinkTitle; - } - - public void setXlinkTitle( String xlinkTitle ) - { - this.xlinkTitle = xlinkTitle; - } - - public String getXlinkArcRole() - { - return xlinkArcRole; - } - - public void setXlinkArcRole(String xlinkArcRole) - { - this.xlinkArcRole = xlinkArcRole; - } - - public String getXlinkShow( ) - { - return xlinkShow; - } - - public void setXlinkShow( String xlinkShow ) - { - this.xlinkShow = xlinkShow; - } - - public String getXlinkActuate( ) - { - return xlinkActuate; - } - - public void setXlinkActuate( String xlinkActuate ) - { - this.xlinkActuate = xlinkActuate; - } - - public SVGAnimatedString getHref( ) - { - return href; - } - - public void setHref( SVGAnimatedString href ) - { - this.href = href; - } - - public SVGAnimatedBoolean getExternalResourcesRequired() - { - return null; - } - - public void setExternalResourcesRequired(SVGAnimatedBoolean externalResourcesRequired) - { - } -} diff --git a/src/org/apache/fop/dom/svg/SVGUseElementImpl.java b/src/org/apache/fop/dom/svg/SVGUseElementImpl.java deleted file mode 100644 index 6de276cbf..000000000 --- a/src/org/apache/fop/dom/svg/SVGUseElementImpl.java +++ /dev/null @@ -1,194 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * Use Element - * - */ -public class SVGUseElementImpl extends GraphicElement implements SVGUseElement { - public String link; - String xlinkArcRole; - SVGAnimatedLength x; - SVGAnimatedLength y; - SVGAnimatedLength width; - SVGAnimatedLength height; - - public SVGUseElementImpl(String s) - { - link = s; - } - - public String getXlinkType( ) - { - return null; - } - - public void setXlinkType( String xlinkType ) - { - } - - public String getXlinkRole( ) - { - return null; - } - - public void setXlinkRole( String xlinkRole ) - { - } - - public String getXlinkTitle( ) - { - return null; - } - - public void setXlinkTitle( String xlinkTitle ) - { - } - - public String getXlinkArcRole() - { - return xlinkArcRole; - } - - public void setXlinkArcRole(String xlinkArcRole) - { - this.xlinkArcRole = xlinkArcRole; - } - - public String getXlinkShow( ) - { - return null; - } - - public void setXlinkShow( String xlinkShow ) - { - } - - public String getXlinkActuate( ) - { - return null; - } - - public void setXlinkActuate( String xlinkActuate ) - { - } - - public SVGAnimatedString getHref( ) - { - return null; - } - - public void setHref( SVGAnimatedString href ) - { - } - - public SVGAnimatedLength getX( ) - { - return x; - } - - public void setX( SVGAnimatedLength x ) - { - this.x = x; - } - - public SVGAnimatedLength getY( ) - { - return y; - } - - public void setY( SVGAnimatedLength y ) - { - this.y = y; - } - - public SVGAnimatedLength getWidth( ) - { - return width; - } - - public void setWidth( SVGAnimatedLength width ) - { - this.width = width; - } - - public SVGAnimatedLength getHeight( ) - { - return height; - } - - public void setHeight( SVGAnimatedLength height ) - { - this.height = height; - } - - public SVGElementInstance getInstanceRoot( ) - { - return null; - } - - public SVGElementInstance getAnimatedInstanceRoot( ) - { - return null; - } - -/* public SVGAnimatedBoolean getExternalResourcesRequired( ) - { - } - - public void setExternalResourcesRequired( SVGAnimatedBoolean externalResourcesRequired ) - { - }*/ -} diff --git a/src/org/apache/fop/dom/svg/SVGVKernElementImpl.java b/src/org/apache/fop/dom/svg/SVGVKernElementImpl.java deleted file mode 100644 index befa97e76..000000000 --- a/src/org/apache/fop/dom/svg/SVGVKernElementImpl.java +++ /dev/null @@ -1,65 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.dom.svg; - -import org.w3c.dom.svg.*; - -/** - * - * - */ -public class SVGVKernElementImpl extends SVGElementImpl implements SVGVKernElement { - - public SVGVKernElementImpl() - { - } -} diff --git a/src/org/apache/fop/fo/SVGTreeBuilder.java b/src/org/apache/fop/fo/SVGTreeBuilder.java index efd8e752b..c65a08b56 100644 --- a/src/org/apache/fop/fo/SVGTreeBuilder.java +++ b/src/org/apache/fop/fo/SVGTreeBuilder.java @@ -52,7 +52,7 @@ package org.apache.fop.fo; // FOP import org.apache.fop.fo.*; -import org.apache.fop.dom.svg.*; +import org.apache.fop.svg.*; import org.apache.fop.layout.AreaTree; import org.apache.fop.messaging.MessageHandler; import org.apache.fop.apps.FOPException; @@ -297,9 +297,10 @@ public class SVGTreeBuilder extends DefaultHandler implements TreeBuilder { */ public SVGDocument getSVGDocument() { - SVGDocumentImpl doc = new SVGDocumentImpl(); + SVGDocument doc = null; +/* doc = new SVGDocumentImpl(); SVGSVGElement svg = (SVGSVGElement)((org.apache.fop.svg.SVG)rootFObj).createGraphic(); - doc.appendChild(svg); + doc.appendChild(svg);*/ return doc; } } diff --git a/src/org/apache/fop/pdf/PDFDocument.java b/src/org/apache/fop/pdf/PDFDocument.java index d96654a3e..542107a6a 100644 --- a/src/org/apache/fop/pdf/PDFDocument.java +++ b/src/org/apache/fop/pdf/PDFDocument.java @@ -919,11 +919,13 @@ public class PDFDocument { contents, pagewidth, pageheight); + if(currentPage != null) { Enumeration enum=currentPage.getIDList().elements(); while ( enum.hasMoreElements() ) { String id=enum.nextElement().toString(); idReferences.setInternalGoToPageReference(id,page.referencePDF()); } + } /* add it to the list of objects */ this.objects.addElement(page); diff --git a/src/org/apache/fop/render/PrintRenderer.java b/src/org/apache/fop/render/PrintRenderer.java index efc9b8d56..21094a881 100644 --- a/src/org/apache/fop/render/PrintRenderer.java +++ b/src/org/apache/fop/render/PrintRenderer.java @@ -26,7 +26,7 @@ import org.apache.fop.datatypes.*; //import org.apache.fop.datatypes.IDReferences; import org.apache.fop.render.pdf.FontSetup; -import org.apache.fop.dom.svg.*; +import org.apache.fop.svg.SVGArea; // Java import java.io.IOException; diff --git a/src/org/apache/fop/render/Renderer.java b/src/org/apache/fop/render/Renderer.java index 5fcf18d16..adc268a9a 100644 --- a/src/org/apache/fop/render/Renderer.java +++ b/src/org/apache/fop/render/Renderer.java @@ -51,7 +51,7 @@ package org.apache.fop.render; // FOP -import org.apache.fop.dom.svg.SVGArea; +import org.apache.fop.svg.SVGArea; import org.apache.fop.image.ImageArea; import org.apache.fop.apps.FOPException; import org.apache.fop.layout.*; diff --git a/src/org/apache/fop/render/awt/AWTRenderer.java b/src/org/apache/fop/render/awt/AWTRenderer.java index 2d0790baa..79dabb579 100644 --- a/src/org/apache/fop/render/awt/AWTRenderer.java +++ b/src/org/apache/fop/render/awt/AWTRenderer.java @@ -15,14 +15,20 @@ import org.apache.fop.messaging.MessageHandler; import org.apache.fop.datatypes.*; import org.apache.fop.image.*; import org.apache.fop.svg.*; -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; import org.apache.fop.render.pdf.*; import org.apache.fop.viewer.*; import org.apache.fop.apps.*; import org.w3c.dom.svg.*; +import org.apache.batik.bridge.*; +import org.apache.batik.swing.svg.*; +import org.apache.batik.swing.gvt.*; +import org.apache.batik.gvt.*; +import org.apache.batik.gvt.renderer.*; +import org.apache.batik.gvt.filter.*; +import org.apache.batik.gvt.event.*; + import java.awt.*; import java.awt.Image; import java.awt.image.*; @@ -629,8 +635,13 @@ public class AWTRenderer implements Renderer, Printable, Pageable { Enumeration e = area.getChildren().elements(); while (e.hasMoreElements()) { - org.apache.fop.layout.Box b = - (org.apache.fop.layout.Box) e.nextElement(); + org.apache.fop.layout.Box b = (org.apache.fop.layout.Box) e.nextElement(); + if(b instanceof InlineArea) { + InlineArea ia = (InlineArea)b; + this.currentYPosition = ry - ia.getYOffset(); + } else { + this.currentYPosition = ry - area.getPlacementOffset(); + } b.render(this); } @@ -662,26 +673,65 @@ public class AWTRenderer implements Renderer, Printable, Pageable { this.currentXPosition += area.getContentWidth(); } - public void renderSVGArea(SVGArea area) { - int x = this.currentAreaContainerXPosition; + int x = this.currentXPosition; int y = this.currentYPosition; int w = area.getContentWidth(); int h = area.getHeight(); - Enumeration e = area.getChildren().elements(); - while (e.hasMoreElements()) { - Object o = e.nextElement(); - if (o instanceof GraphicImpl) { - renderElement(area, (GraphicImpl) o, x, y, null); - } - } +// this.currentYPosition -= h; - this.currentYPosition -= h; + SVGDocument doc = area.getSVGDocument(); + + UserAgent userAgent = new MUserAgent(new AffineTransform()); + + GVTBuilder builder = new GVTBuilder(); + GraphicsNodeRenderContext rc = getRenderContext(); + BridgeContext ctx = new BridgeContext(userAgent, rc); + GraphicsNode root; + graphics.translate(x / 1000f, pageHeight - y / 1000f); + graphics.setRenderingHints(rc.getRenderingHints()); + try { + root = builder.build(ctx, doc); + root.paint(graphics, rc); + } catch(Exception e) { + e.printStackTrace(); + } + graphics.translate(-x / 1000f, y / 1000f - pageHeight); + this.currentXPosition += area.getContentWidth(); } + public GraphicsNodeRenderContext getRenderContext() { + GraphicsNodeRenderContext nodeRenderContext = null; + if (nodeRenderContext == null) { + RenderingHints hints = new RenderingHints(null); + hints.put(RenderingHints.KEY_ANTIALIASING, + RenderingHints.VALUE_ANTIALIAS_ON); + + hints.put(RenderingHints.KEY_INTERPOLATION, + RenderingHints.VALUE_INTERPOLATION_BILINEAR); + + FontRenderContext fontRenderContext = + new FontRenderContext(new AffineTransform(), true, true); + + TextPainter textPainter = new StrokingTextPainter(); + + GraphicsNodeRableFactory gnrFactory = + new ConcreteGraphicsNodeRableFactory(); + + nodeRenderContext = + new GraphicsNodeRenderContext(new AffineTransform(), + null, + hints, + fontRenderContext, + textPainter, + gnrFactory); + } + + return nodeRenderContext; + } public void setProducer(String producer) { @@ -782,540 +832,121 @@ public class AWTRenderer implements Renderer, Printable, Pageable { } } + public void renderForeignObjectArea(ForeignObjectArea area) { + area.getObject().render(this); + } - - public void renderElement(SVGArea svgarea, GraphicImpl area, - int posx, int posy, Vector parentTransforms) { - int x = posx; - int y = posy; - Hashtable style = area.oldgetStyle(); - DrawingInstruction di = createInstruction(area, style); - - Object o = null; - Vector v = area.oldgetTransform(); - v = (v == null) ? new Vector() : v; - Vector trans = new Vector(v); - parentTransforms = (parentTransforms == null) ? new Vector() : - parentTransforms; - - if (parentTransforms != null) { - trans.addAll(0, parentTransforms); + protected class MUserAgent implements UserAgent { + AffineTransform currentTransform = null; + /** + * Creates a new SVGUserAgent. + */ + protected MUserAgent(AffineTransform at) { + currentTransform = at; } - float red = (float) graphics.getColor().getRed(); - float green = (float) graphics.getColor().getGreen(); - float blue = (float) graphics.getColor().getBlue(); - Color c = null; - - ColorType ct = null; - try { - o = style.get("fill"); - if (o != null && o instanceof ColorType) { - ct = (ColorType) o; - c = new Color((int)(ct.red() * 255f), - (int)(ct.green() * 255f), (int)(ct.blue() * 255f)); - } - o = style.get("stroke"); - if (c == null && o != null && o instanceof ColorType) { - ct = (ColorType) o; - c = new Color((int)(ct.red() * 255f), - (int)(ct.green() * 255f), (int)(ct.blue() * 255f)); - } - } catch (Exception ex) { - MessageHandler.errorln("Can't set color: R G B : " + - (int)(ct.red() * 255f) + " " + - (int)(ct.green() * 255f) + " " + - (int)(ct.blue() * 255f)); - c = Color.pink; + /** + * Displays an error message. + */ + public void displayError(String message) { + System.err.println(message); } - - if (c == null) { - c = new Color((int) red, (int) green, (int) blue); + + /** + * Displays an error resulting from the specified Exception. + */ + public void displayError(Exception ex) { + ex.printStackTrace(System.err); } - Color oldColor = graphics.getColor(); - if (area instanceof SVGLineElement) { - graphics.setColor(c); - SVGLineElementImpl lg = (SVGLineElementImpl) area; - - float x1 = lg.getX1().getBaseVal().getValue() * 1000 + posx; - float y1 = posy - lg.getY1().getBaseVal().getValue() * 1000 ; - float x2 = lg.getX2().getBaseVal().getValue() * 1000 + posx; - float y2 = posy - lg.getY2().getBaseVal().getValue() * 1000; - // TODO: - // The thickness of contour protect. - int th = 1; - o = style.get("stroke-width"); - if (o != null) - th = (int)((SVGLengthImpl) o).getValue(); - Line2D.Double aLine = new Line2D.Double(x1 / 1000f, - pageHeight - y1 / 1000f, x2 / 1000f, - pageHeight - y2 / 1000f); - drawShape(transformShape(trans, aLine), di); - graphics.setColor(oldColor); - } else if (area instanceof SVGRectElement) { - graphics.setColor(c); - SVGRectElement rg = (SVGRectElement) area; - float rectx = rg.getX().getBaseVal().getValue() * 1000 + posx; - float recty = posy - rg.getY().getBaseVal().getValue() * 1000; - float rx = rg.getRx().getBaseVal().getValue() * 1000; - float ry = rg.getRy().getBaseVal().getValue() * 1000; - float rw = rg.getWidth().getBaseVal().getValue() * 1000; - float rh = rg.getHeight().getBaseVal().getValue() * 1000; - - // TODO: - // rx and ry are roundings. - // RoundRectangle2D.Double - Rectangle aRectangle = new Rectangle(); - aRectangle.setRect(rectx / 1000d, - pageHeight - recty / 1000d, rw / 1000d, rh / 1000d); - drawShape(transformShape(trans, aRectangle), di); - graphics.setColor(oldColor); - } else if (area instanceof SVGCircleElement) { - graphics.setColor(c); - SVGCircleElement cg = (SVGCircleElement) area; - float cx = cg.getCx().getBaseVal().getValue() * 1000 + posx; - float cy = posy - cg.getCy().getBaseVal().getValue() * 1000; - float r = cg.getR().getBaseVal().getValue(); - Ellipse2D.Double anEllipse = - new Ellipse2D.Double(cx / 1000d - r, - pageHeight - cy / 1000d - r, r * 2d, r * 2d); - drawShape(transformShape(trans, anEllipse), di); - graphics.setColor(oldColor); - } else if (area instanceof SVGEllipseElement) { - graphics.setColor(c); - SVGEllipseElement cg = (SVGEllipseElement) area; - float cx = cg.getCx().getBaseVal().getValue() * 1000 + posx; - float cy = posy - cg.getCy().getBaseVal().getValue() * 1000; - float rx = cg.getRx().getBaseVal().getValue(); - float ry = cg.getRy().getBaseVal().getValue(); - Ellipse2D.Double anEllipse = - new Ellipse2D.Double(cx / 1000d - rx, - pageHeight - cy / 1000d - ry, rx * 2d, ry * 2d); - drawShape(transformShape(trans, anEllipse), di); - graphics.setColor(oldColor); - } else if (area instanceof SVGImageElementImpl) { - SVGImageElementImpl ig = (SVGImageElementImpl) area; - renderImage(ig.link, ig.x + posx / 1000f, - pageHeight - (posy / 1000f - ig.y), ig.width, - ig.height, trans); - } else if (area instanceof SVGUseElementImpl) { - SVGUseElementImpl ug = (SVGUseElementImpl) area; - String ref = ug.link; - ref = ref.substring(1, ref.length()); - GraphicImpl graph = null; - // graph = area.locateDef(ref); - if (graph != null) { - // probably not the best way to do this, should be able - // to render without the style being set. - // GraphicImpl parent = graph.getGraphicParent(); - // graph.setParent(area); - // need to clip (if necessary) to the use area - // the style of the linked element is as if is was - // a direct descendant of the use element. - - renderElement(svgarea, graph, posx, posy, trans); - // graph.setParent(parent); - } - } else if (area instanceof SVGPolylineElementImpl) { - graphics.setColor(c); - Vector points = ((SVGPolylineElementImpl) area).points; - PathPoint p = null; - Point2D.Double p1 = null; - Point2D.Double p2 = null; - if (points.size() > 0) { - p = (PathPoint) points.elementAt(0); - double xc = p.x * 1000f + posx; - double yc = posy - p.y * 1000f; - p1 = new Point2D.Double(xc / 1000f, - pageHeight - yc / 1000f); - - int[] xarr = {(int) xc}; - int[] yarr = {(int) yc}; - graphics.drawPolyline(xarr, yarr, 1); - } - Line2D.Double aLine; - for (int i = 1; i < points.size(); i++) { - p = (PathPoint) points.elementAt(i); - p2 = new Point2D.Double(p.x + posx / 1000f, - pageHeight - (posy - p.y * 1000f) / 1000f); - aLine = new Line2D.Double(p1, p2); - graphics.draw(transformShape(trans, aLine)); - p1 = p2; - } - graphics.setColor(oldColor); - } else if (area instanceof SVGPolygonElementImpl) { - graphics.setColor(c); - java.awt.Polygon aPolygon = - convertPolygon(((SVGPolygonElementImpl) area), - posx, posy); - drawShape(transformShape(trans, aPolygon), di); - graphics.setColor(oldColor); - } else if (area instanceof SVGGElementImpl) { - renderGArea(svgarea, (SVGGElementImpl) area, x, y, - parentTransforms); - } else if (area instanceof SVGPathElementImpl) { - graphics.setColor(c); - GeneralPath path = - convertPath((SVGPathElementImpl) area, posx, posy); - drawShape(transformShape(trans, path), di); - graphics.setColor(oldColor); - } else if (area instanceof SVGTextElementImpl) { - MessageHandler.errorln("SVGTextElementImpl is not implemented yet."); - // renderText(svgarea, (SVGTextElementImpl)area, 0, 0, di); - } else if (area instanceof SVGArea) { - // the x and y pos will be wrong! - Enumeration e = ((SVGArea) area).getChildren().elements(); - while (e.hasMoreElements()) { - Object el = e.nextElement(); - if (o instanceof GraphicImpl) { - renderElement((SVGArea) area, (GraphicImpl) el, x, - y, parentTransforms); - } - } + /** + * Displays a message in the User Agent interface. + * The given message is typically displayed in a status bar. + */ + public void displayMessage(String message) { + System.out.println(message); } - // should be done with some cleanup code, so only - // required values are reset. - } // renderElement - - - public void renderGArea(SVGArea svgarea, SVGGElementImpl area, - int posx, int posy, Vector v) { + /** + * Returns a customized the pixel to mm factor. + */ + public float getPixelToMM() { + return 0.264583333333333333333f; // 72 dpi + } + /** + * Returns the language settings. + */ + public String getLanguages() { + return "en";//userLanguages; + } - Vector trans = null; - // trans = new Vector(area.oldgetTransform()); - // trans.addAll(0, v); - /* Enumeration e = area.getChildren().elements(); - while (e.hasMoreElements()) { - Object o = e.nextElement(); - if(o instanceof GraphicImpl) { - renderElement(svgarea, (GraphicImpl)o, posx, posy, trans); - } - }*/ - } - public void renderGArea(SVGArea svgarea, SVGGElementImpl area, - int posx, int posy) { - renderGArea(svgarea, area, posx, posy, new Vector()); - } + /** + * Returns the user stylesheet uri. + * @return null if no user style sheet was specified. + */ + public String getUserStyleSheetURI() { + return null;//userStyleSheetURI; + } + /** + * Returns the class name of the XML parser. + */ + public String getXMLParserClassName() { + String parserClassName = + System.getProperty("org.xml.sax.parser"); + if (parserClassName == null) { + parserClassName = "org.apache.xerces.parsers.SAXParser"; + } + return parserClassName;//application.getXMLParserClassName(); + } - /** - * Applies SVGTransform to the shape and gets the transformed shape. - * The type of the new shape may be different to the original type. - */ - public Shape transformShape(Vector trans, Shape shape) { - if (trans == null || trans.size() == 0) { - return shape; + /** + * Opens a link in a new component. + * @param doc The current document. + * @param uri The document URI. + */ + public void openLink(SVGAElement elt) + { + //application.openLink(uri); } - AffineTransform at; - for (int i = trans.size() - 1; i >= 0; i--) { - org.w3c.dom.svg.SVGTransform t = - (org.w3c.dom.svg.SVGTransform) trans.elementAt(i); - SVGMatrix matrix = t.getMatrix(); - at = new AffineTransform(matrix.getA(), matrix.getB(), - matrix.getC(), matrix.getD(), matrix.getE(), - matrix.getF()); - shape = at.createTransformedShape(shape); + public Point getClientAreaLocationOnScreen() + { + return new Point(0, 0); } - return shape; - } + public void setSVGCursor(java.awt.Cursor cursor) + { + } - /** - * Mapps a SVG-Polygon to a AWT-Polygon. - */ - public java.awt.Polygon convertPolygon(SVGPolygonElementImpl svgpl, - int x, int y) { - java.awt.Polygon aPolygon = new java.awt.Polygon(); - Vector points = svgpl.points; - - PathPoint p; - for (int i = 0; i < points.size(); i++) { - p = (PathPoint) points.elementAt(i); - aPolygon.addPoint((int)(x / 1000f + p.x), - pageHeight - (int)(y / 1000f - p.y)); + public AffineTransform getTransform() + { + return currentTransform; } - return aPolygon; - } + public Dimension2D getViewportSize() + { + return new Dimension(100, 100); + } - // TODO: other attributes of DrawingInstruction protect too. - protected DrawingInstruction createInstruction(GraphicImpl area, - Hashtable style) { - DrawingInstruction di = new DrawingInstruction(); - Object sp; - sp = style.get("fill"); - if (sp != null && !(sp instanceof String && sp.equals("none"))) { - di.fill = true; + public EventDispatcher getEventDispatcher() + { + return null; } - // ... - return di; - } - // Draws a shape. - // TODO: other attributes of DrawingInstruction protect too. - protected void drawShape(Shape s, DrawingInstruction di) { - if (di.fill) { - graphics.fill(s); - } else { - graphics.draw(s); + public boolean supportExtension(String str) + { + return false; } - } - /** - * Mapps a SVG-Path to a AWT-GeneralPath. - */ - public GeneralPath convertPath(SVGPathElementImpl svgpath, float x, - float y) { - Vector points = svgpath.pathElements; - GeneralPath path = new GeneralPath(); - - float lastx = 0; - float lasty = 0; - SVGPathSegImpl pathmoveto = null; - - for (Enumeration e = points.elements(); e.hasMoreElements();) { - SVGPathSegImpl pc = (SVGPathSegImpl) e.nextElement(); - float[] vals = pc.getValues(); - float lastcx = 0; - float lastcy = 0; - switch (pc.getPathSegType()) { - case SVGPathSeg.PATHSEG_MOVETO_ABS: - lastx = vals[0]; - lasty = vals[1]; - pathmoveto = pc; - path.moveTo(lastx + x / 1000f, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_MOVETO_REL: - if (pathmoveto == null) { - lastx = vals[0]; - lasty = vals[1]; - path.moveTo(lastx + x / 1000f, - pageHeight - y / 1000f + lasty); - pathmoveto = pc; - } else { - lastx += vals[0]; - lasty += vals[1]; - path.lineTo(lastx + x / 1000f, - pageHeight - y / 1000f + lasty); - - } - break; - case SVGPathSeg.PATHSEG_LINETO_ABS: - lastx = vals[0]; - lasty = vals[1]; - path.lineTo(lastx + x / 1000f, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_LINETO_REL: - lastx += vals[0]; - lasty += vals[1]; - path.lineTo(lastx + x / 1000f, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_LINETO_VERTICAL_ABS: - lasty = vals[0]; - path.lineTo(lastx + x / 1000f, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_LINETO_VERTICAL_REL: - lasty += vals[0]; - path.lineTo(lastx + x / 1000f, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_ABS: - lastx = vals[0]; - path.lineTo(lastx + x / 1000f, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_REL: - lastx += vals[0]; - path.lineTo(lastx + x / 1000f, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_ABS: - lastx = vals[4]; - lasty = vals[5]; - lastcx = vals[2]; - lastcy = vals[3]; - path.curveTo(x / 1000f + vals[0], - pageHeight - y / 1000f + vals[1], - x / 1000f + lastcx, - pageHeight - y / 1000f + lastcy, - x / 1000f + lastx, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_REL: - path.curveTo(x / 1000f + vals[0] + lastx, - pageHeight - y / 1000f + vals[1] + lasty, - x / 1000f + lastx + vals[2], - pageHeight - y / 1000f + lasty + vals[3], - x / 1000f + lastx + vals[4], - pageHeight - y / 1000f + lasty + vals[5]); - lastcx = vals[2] + lastx; - lastcy = vals[3] + lasty; - lastx += vals[4]; - lasty += vals[5]; - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_ABS: - if (lastcx == 0) - lastcx = lastx; - if (lastcy == 0) - lastcy = lasty; - lastx = vals[2]; - lasty = vals[3]; - path.curveTo(x / 1000f + lastcx, - pageHeight - y / 1000f + lastcy, - x / 1000f + vals[0], - pageHeight - y / 1000f + vals[1], - x / 1000f + lastx, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_REL: - if (lastcx == 0) - lastcx = lastx; - if (lastcy == 0) - lastcy = lasty; - path.curveTo(x / 1000f + lastcx, - pageHeight - y / 1000f + lastcy, - x / 1000f + lastx + vals[0], - pageHeight - y / 1000f + lasty + vals[1], - x / 1000f + lastx + vals[2], - pageHeight - y / 1000f + lasty + vals[3]); - lastx += vals[2]; - lasty += vals[3]; - break; - case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_ABS: - if (lastcx == 0) - lastcx = lastx; - if (lastcy == 0) - lastcy = lasty; - lastx = vals[0]; - lasty = vals[1]; - lastcx = 0; - lastcy = 0; - path.quadTo(x / 1000f + lastcx, - pageHeight - y / 1000f + lastcy, - x / 1000f + lastx, - pageHeight - y / 1000f + lasty); - break; - case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_REL: - if (lastcx == 0) - lastcx = lastx; - if (lastcy == 0) - lastcy = lasty; - - path.quadTo(x / 1000f + lastcx , - pageHeight - y / 1000f + lastcy, - x / 1000f + lastx + vals[0], - pageHeight - y / 1000f + lasty + vals[1]); - - lastx += vals[0]; - lasty += vals[1]; - lastcx = 0; - lastcy = 0; - break; - case SVGPathSeg.PATHSEG_ARC_ABS: - { - // Arc2D.Double arc = new Arc2D.Double(); - // arc.setAngles(current point, end point); .... - double rx = vals[0]; - double ry = vals[1]; - double theta = vals[2]; - boolean largearcflag = (vals[3] == 1.0); - boolean sweepflag = (vals[4] == 1.0); - - double cx = lastx; - double cy = lasty; - - path.curveTo(x / 1000f + lastx, - pageHeight - y / 1000f + lasty, - x / 1000f + vals[0], - pageHeight - y / 1000f + vals[1], - x / 1000f + vals[5], - pageHeight - y / 1000f + vals[6]); - - lastcx = 0; //?? - lastcy = 0; //?? - lastx = vals[5]; - lasty = vals[6]; - } - break; - case SVGPathSeg.PATHSEG_ARC_REL: - { - double rx = vals[0]; - double ry = vals[1]; - double theta = vals[2]; - boolean largearcflag = (vals[3] == 1.0); - boolean sweepflag = (vals[4] == 1.0); - - path.curveTo(x / 1000f + lastx, - pageHeight - y / 1000f + lasty, - x / 1000f + (vals[0] + lastx), - pageHeight - y / 1000f + (vals[1] + lasty), - x / 1000f + (vals[5] + lastx), - pageHeight - y / 1000f + (vals[6] + lasty)); - lastcx = 0; //?? - lastcy = 0; //?? - lastx += vals[5]; - lasty += vals[6]; - } - break; - case SVGPathSeg.PATHSEG_CLOSEPATH: - path.closePath(); - break; - - - } // switch - } // for points.elements() - - return path; - } // convertPath - /* - if(di == null) { - currentStream.add("S\n"); - } else { - if(di.fill) { - if(di.stroke) { - if(!di.nonzero) - currentStream.add("B*\n"); - else - currentStream.add("B\n"); - } else { - if(!di.nonzero) - currentStream.add("f*\n"); - else - currentStream.add("f\n"); - } - } else { - // if(di.stroke) - currentStream.add("S\n"); - } - } - */ - - /* - * by pdfrenderer übernommen. - * - */ - class DrawingInstruction { - boolean stroke = false; - boolean nonzero = false; // non-zero fill rule "f*", "B*" operator - boolean fill = false; - int linecap = 0; // butt - int linejoin = 0; // miter - int miterwidth = 8; - } + public boolean hasFeature(String str) + { + return false; + } - public void renderForeignObjectArea(ForeignObjectArea area) { - area.getObject().render(this); + public void registerExtension(BridgeExtension be) + { + } } - } - - - diff --git a/src/org/apache/fop/render/mif/MIFRenderer.java b/src/org/apache/fop/render/mif/MIFRenderer.java index 6ae5ffe33..07fa3e12a 100644 --- a/src/org/apache/fop/render/mif/MIFRenderer.java +++ b/src/org/apache/fop/render/mif/MIFRenderer.java @@ -67,7 +67,7 @@ import org.apache.fop.fo.*; import org.apache.fop.layout.*; import org.apache.fop.layout.inline.*; import org.apache.fop.datatypes.*; -import org.apache.fop.svg.PathPoint; +import org.apache.fop.svg.*; import org.apache.fop.mif.*; import org.apache.fop.layout.*; import org.apache.fop.image.*; @@ -77,12 +77,6 @@ import org.w3c.dom.svg.*; import org.w3c.dom.css.*; import org.w3c.dom.svg.SVGLength; -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGRectElementImpl; -import org.apache.fop.dom.svg.SVGTextElementImpl; -import org.apache.fop.dom.svg.SVGLineElementImpl; -import org.apache.fop.dom.svg.SVGArea; - // Java import java.io.IOException; import java.io.OutputStream; diff --git a/src/org/apache/fop/render/pcl/PCLRenderer.java b/src/org/apache/fop/render/pcl/PCLRenderer.java index e38e12745..e3f3972db 100755 --- a/src/org/apache/fop/render/pcl/PCLRenderer.java +++ b/src/org/apache/fop/render/pcl/PCLRenderer.java @@ -21,7 +21,7 @@ import org.apache.fop.layout.*; import org.apache.fop.layout.inline.*; import org.apache.fop.image.*; -import org.apache.fop.dom.svg.SVGArea; +import org.apache.fop.svg.SVGArea; import org.w3c.dom.svg.SVGSVGElement; @@ -538,9 +538,6 @@ System.out.println("PCLRenderer.renderSVGArea(" + area + ")"); // TODO - translate and clip to viewbox - PCLSVGRenderer svgRenderer = - new PCLSVGRenderer(this, area.getFontState(), currentFontName, currentFontSize, currentXPosition, currentYPosition, pageHeight, xoffset); - svgRenderer.renderSVG(svg, x, y); //currentStream.add(svgRenderer.getString()); //currentStream.add("Q\n"); diff --git a/src/org/apache/fop/render/pcl/PCLSVGRenderer.java b/src/org/apache/fop/render/pcl/PCLSVGRenderer.java deleted file mode 100755 index 5543faa58..000000000 --- a/src/org/apache/fop/render/pcl/PCLSVGRenderer.java +++ /dev/null @@ -1,1400 +0,0 @@ -/* $Id$ - * Copyright (C) 2001 The Apache Software Foundation. All rights reserved. - * For details on use and redistribution please refer to the - * LICENSE file included with these sources." - */ - -//package com.eastpoint.chrysalis; -package org.apache.fop.render.pcl; - -// FOP -import org.apache.fop.messaging.MessageHandler; -import org.apache.fop.fo.properties.*; -import org.apache.fop.svg.PathPoint; -import org.apache.fop.pdf.PDFColor; -import org.apache.fop.layout.*; -import org.apache.fop.image.*; - -import org.w3c.dom.*; -import org.w3c.dom.svg.*; -import org.w3c.dom.css.*; - -import org.apache.fop.dom.svg.*; - -// Java -import java.util.Enumeration; -import java.util.Vector; - -/** - * Renderer that renders SVG to PCL - */ -public class PCLSVGRenderer -{ - FontState fontState; - - /** the current stream to add PCL commands to */ - PCLStream currentStream; - - /** the current (internal) font name */ - protected String currentFontName; - - /** the current font size in millipoints */ - protected int currentFontSize; - - /** the current vertical position in millipoints from bottom */ - protected int currentYPosition = 0; - - /** the current horizontal position in millipoints from left */ - protected int currentXPosition = 0; - - /** the current colour for use in svg */ - private PDFColor currentColour = new PDFColor(0, 0, 0); - - private PCLRenderer renderer; - - final boolean debug = false; - - private int pageHeight; - private int rendxoffset; - - /** - * create the SVG renderer - */ - public PCLSVGRenderer(PCLRenderer rend, FontState fs, String font, int size, int xpos, int ypos, int ph, int xo) - { - renderer = rend; - currentFontName = font; - currentFontSize = size; - currentYPosition = ypos; - currentXPosition = xpos; - fontState = fs; - - currentStream = rend.currentStream; - - pageHeight = ph; - rendxoffset = xo; - } - - /** - * Renders an SVG element in an SVG document. - * This renders each of the child elements. - */ - protected void renderSVG(SVGSVGElement svg, int x, int y) { - NodeList nl = svg.getChildNodes(); - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof SVGElement) { - renderElement((SVGElement) n, x, y); - } - } - } - - public void renderGArea(SVGGElement area, int posx, int posy) { - NodeList nl = area.getChildNodes(); - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof SVGElement) { - renderElement((SVGElement) n, posx, posy); - } - } - } - - /** - * Handles the SVG switch element. - * The switch determines which of its child elements should be rendered - * according to the required extensions, required features and system language. - */ - protected void handleSwitchElement(int posx, int posy, - SVGSwitchElement ael) { - SVGStringList relist = ael.getRequiredExtensions(); - SVGStringList rflist = ael.getRequiredFeatures(); - SVGStringList sllist = ael.getSystemLanguage(); - NodeList nl = ael.getChildNodes(); - choices: - for (int count = 0; count < nl.getLength(); count++) { - org.w3c.dom.Node n = nl.item(count); - // only render the first child that has a valid - // test data - if (n instanceof GraphicElement) { - GraphicElement graphic = (GraphicElement) n; - SVGStringList grelist = graphic.getRequiredExtensions(); - // if null it evaluates to true - if (grelist != null) { - if (grelist.getNumberOfItems() == 0) { - if ((relist != null) && - relist.getNumberOfItems() != 0) { - continue choices; - } - } - for (int i = 0; i < grelist.getNumberOfItems(); i++) { - String str = (String) grelist.getItem(i); - if (relist == null) { - // use default extension set - // currently no extensions are supported - // if(!(str.equals("http:// ??"))) { - continue choices; - // } - } else { - } - } - } - SVGStringList grflist = graphic.getRequiredFeatures(); - if (grflist != null) { - if (grflist.getNumberOfItems() == 0) { - if ((rflist != null) && - rflist.getNumberOfItems() != 0) { - continue choices; - } - } - for (int i = 0; i < grflist.getNumberOfItems(); i++) { - String str = (String) grflist.getItem(i); - if (rflist == null) { - // use default feature set - if (!(str.equals("org.w3c.svg.static") || - str.equals("org.w3c.dom.svg.all"))) { - continue choices; - } - } else { - boolean found = false; - for (int j = 0; - j < rflist.getNumberOfItems(); j++) { - if (rflist.getItem(j).equals(str)) { - found = true; - break; - } - } - if (!found) - continue choices; - } - } - } - SVGStringList gsllist = graphic.getSystemLanguage(); - if (gsllist != null) { - if (gsllist.getNumberOfItems() == 0) { - if ((sllist != null) && - sllist.getNumberOfItems() != 0) { - continue choices; - } - } - for (int i = 0; i < gsllist.getNumberOfItems(); i++) { - String str = (String) gsllist.getItem(i); - if (sllist == null) { - // use default feature set - if (!(str.equals("en"))) { - continue choices; - } - } else { - boolean found = false; - for (int j = 0; - j < sllist.getNumberOfItems(); j++) { - if (sllist.getItem(j).equals(str)) { - found = true; - break; - } - } - if (!found) - continue choices; - } - } - } - renderElement((SVGElement) n, posx, posy); - // only render the first valid one - break; - } - } - } - - protected void addLine(float x1, float y1, float x2, float y2, PDFColor sc, float sw) - { -if ( debug ) -System.out.println("PCLSVGRenderer.addLine(" + x1 + ", " + y1 + ", " + x2 + ", " + y2 + ", " + sc + ", " + sw + ")"); - if ( x1 == x2 ) - { - addRect(x1 - sw/2, y1, sw, y2 - y1 + 1, 0, 0, sc, null, 0); - } - else if ( y1 == y2 || (Math.abs(y1 - y2) <= 0.24) ) // 72/300=0.24 - { - addRect(x1, y1 - sw/2, x2 - x1 + 1, sw, 0, 0, sc, null, 0); - } - else if ( sc != null ) - { - // Do something for these? - - // Convert dimensions to pixels. - float cfact = 300f / 72f; // 300 dpi, 1pt=1/72in - int ix1 = (int)(x1 * cfact); - int iy1 = (int)(y1 * cfact); - int ix2 = (int)(x2 * cfact); - int iy2 = (int)(y2 * cfact); - int isw = (int)(sw * cfact); - int origix; - - // Normalize - if ( iy1 > iy2 ) - { - int tmp = ix1; - ix1 = ix2; - ix2 = tmp; - tmp = iy1; - iy1 = iy2; - iy2 = tmp; - } - if ( ix1 > ix2 ) - { - origix = ix2; - ix1 -=ix2; - ix2 = 0; - } - else - { - origix = ix1; - ix2 -= ix1; - ix1 = 0; - } - - // Convert line width to a pixel run length. -//System.out.println("PCLRenderer.addLine(" + ix1 + ", " + iy1 + ", " + ix2 + ", " + iy2 + ", " + isw + ")"); - int runlen = (int)Math.sqrt(Math.pow(isw, 2) * (1 + Math.pow((ix1 - ix2) / (iy1 - iy2), 2))); -//System.out.println("PCLRenderer.addLine: runlen = " + runlen); - - // Set Transparency modes and select shading. - currentStream.add("\033*v0n1O\033*c" + (int)(100 - ((0.3f * sc.red() + 0.59f * sc.green() + 0.11f * sc.blue()) * 100f)) + "G\033*v2T"); - - // Draw the line. - int d, dx, dy; - int Aincr, Bincr; - int xincr = 1; - int x, y; - - - dx = Math.abs(ix2 - ix1); - dy = iy2 - iy1; - - if ( origix < 0 ) - MessageHandler.errorln("PCLSVGRenderer.addLine() WARNING: Horizontal position out of bounds."); - - if ( dx > dy ) - { - xincr = dx / dy; - - // Move to starting position. - currentStream.add("\033*p" + origix + "x" + iy1 + "Y"); - x = ix1 - runlen / 2; - iy2 += (isw / 2); - // Start raster graphics - currentStream.add("\033*t300R\033*r" + dx + "s1A\033*b1M"); - } - else - { - // Move to starting position. - currentStream.add("\033*p" + (origix - runlen / 2) + "x" + iy1 + "Y"); - x = ix1; - // Start raster graphics - currentStream.add("\033*t300R\033*r1A\033*b1M"); - } - - if ( ix1 > ix2 ) - xincr *= -1; - d = 2 * dx - dy; - Aincr = 2 * (dx - dy); - Bincr = 2 * dx; - - y = iy1; - - xferLineBytes(x, runlen, null, -1); - - for ( y = iy1 + 1 ; y <= iy2 ; y++ ) - { - if ( d >= 0 ) - { - x += xincr; - d += Aincr; - } - else - d += Bincr; - xferLineBytes(x, runlen, null, -1); - } - - // End raster graphics - currentStream.add("\033*rB"); - // Return to regular print mode. - currentStream.add("\033*v0t0n0O"); - } - } - - private void xferLineBytes(int startpos, int bitcount, Vector save, int start2) - { -//System.out.println("PCLRenderer.xferLineBytes(" + startpos + ", " + bitcount + ")"); - int curbitpos = 0; - if ( start2 > 0 && start2 <= (startpos + bitcount) ) - { - bitcount += (start2 - startpos); - start2 = 0; - } - - char bytes[] = new char[((start2>startpos?start2:startpos) + bitcount) / 4 + 2]; - int dlen = 0; - byte dbyte = 0; - int bytepos = 0; - - do - { - int bits2set; - if ( startpos < 0 ) - { - bits2set = bitcount + startpos; - startpos = 0; - } - else - bits2set = bitcount; - - byte bittype = 0; - do - { - if ( bytepos > 0 ) - { - int inc = startpos - curbitpos; - if ( (inc) >= (8 - bytepos) ) - { - curbitpos += (8 - bytepos); - bytepos = 0; - bytes[dlen++] = (char)0; - bytes[dlen++] = (char)dbyte; - dbyte = 0; - } - else - { - bytepos += inc; - dbyte = (byte)(dbyte ^ (byte)(Math.pow(2, 8 - bytepos) - 1)); - curbitpos += inc; - } - } - - // Set runs of whole bytes. - int setbytes = (startpos - curbitpos) / 8; - if ( setbytes > 0 ) - { - curbitpos += setbytes * 8; - while ( setbytes > 0 ) - { - if ( setbytes > 256 ) - { - bytes[dlen++] = 0xFF; - setbytes -= 256; - } - else - { - bytes[dlen++] = (char)((setbytes - 1) & 0xFF); - setbytes = 0; - } - bytes[dlen++] = (char)bittype; - } - } - // move to position in the first byte. - if ( curbitpos < startpos ) - { - if ( bytepos == 0 ) - dbyte = bittype; - bytepos += startpos - curbitpos; - dbyte = (byte)(dbyte ^ (byte)(Math.pow(2, 8 - bytepos) - 1)); - curbitpos += bytepos; - startpos += bits2set; - } - else - { - startpos += bits2set; - } - - if ( bittype == 0 ) - bittype = (byte)0xFF; - else - bittype = 7; - } while ( bittype != 7 ); - - if ( start2 > 0 ) - { - startpos = start2; - start2 = -1; - } - else - startpos = -1; - } while ( startpos >= 0 ); - if ( bytepos > 0 ) - { - bytes[dlen++] = (char)0; - bytes[dlen++] = (char)dbyte; - } - if ( save == null ) - { - currentStream.add("\033*b" + dlen + "W"); - currentStream.add(new String(bytes, 0, dlen)); - } - else - { - String line = "\033*b" + dlen + "W" + new String(bytes, 0, dlen); - currentStream.add(line); - save.addElement(line); - } - } - - /** - * add a filled rectangle to the current stream - * - * @param x the x position of left edge in millipoints - * @param y the y position of top edge in millipoints - * @param w the width in millipoints - * @param h the height in millipoints - * @param r the red component of edges - * @param g the green component of edges - * @param b the blue component of edges - * @param fr the red component of the fill - * @param fg the green component of the fill - * @param fb the blue component of the fill - */ - protected void addRect(float x, float y, float w, float h, float rx, float ry, - PDFColor fc, PDFColor sc, float sw) - { -if ( debug ) -System.out.println("PCLSVGRenderer.addRect(" + x + ", " + y + ", " + w + ", " + h + ", " + rx + ", " + ry + ", " + fc + ", " + sc + ", " + sw + ")"); - - if ( x < 0 || y < 0 ) - MessageHandler.errorln("PCLSVGRenderer.addRect() WARNING: Position out of bounds."); - - if ( rx == 0 || ry == 0 ) - { - if ( fc != null ) - { - int fillshade = (int)(100 - ((0.3f * fc.red() + 0.59f * fc.green() + 0.11f * fc.blue()) * 100f)); - currentStream.add("\033*v0n1O\033&a" + (x * 10) + "h" + ((y * 10)) + "V" - + "\033*c" + (w * 10) + "h" + (h * 10) + "v" + fillshade + "g2P\033*v0n0O"); - } - if ( sc != null && sw > 0 ) - { - String lend = "v" + String.valueOf((int)(100 - ((0.3f * sc.red() + 0.59f * sc.green() + 0.11f * sc.blue()) * 100f))) + "g2P"; - currentStream.add("\033*v0n1O"); - currentStream.add("\033&a" + ((x - sw/2) * 10) + "h" + (((y - sw/2)) * 10) + "V" - + "\033*c" + ((w + sw) * 10) + "h" + ((sw) * 10) + lend); - currentStream.add("\033&a" + ((x - sw/2) * 10) + "h" + (((y - sw/2)) * 10) + "V" - + "\033*c" + ((sw) * 10) + "h" + ((h + sw) * 10) + lend); - currentStream.add("\033&a" + ((x + w - sw/2) * 10) + "h" + (((y - sw/2)) * 10) + "V" - + "\033*c" + ((sw) * 10) + "h" + ((h + sw) * 10) + lend); - currentStream.add("\033&a" + ((x - sw/2) * 10) + "h" + (((y + h - sw/2)) * 10) + "V" - + "\033*c" + ((w + sw) * 10) + "h" + ((sw) * 10) + lend); - currentStream.add("\033*v0n0O"); - } - } - else - { - // Convert dimensions to pixels. - float cfact = 300f / 72f; // 300 dpi, 1pt=1/72in - int ix = (int)(x * cfact); - int iy = (int)(y * cfact); - int iw = (int)(w * cfact); - int ih = (int)(h * cfact); - int irx = (int)(rx * cfact); - int iry = (int)(ry * cfact); - int isw = (int)(sw * cfact); - int longwidth = 0; - int pass = 0; - PDFColor thecolor = null; - - do - { - if ( pass == 0 && fc != null ) - { - thecolor = fc; - } - else if ( pass == 1 && sc != null ) - { - int iswdiv2 = isw / 2; - thecolor = sc; - ix -= iswdiv2; - iy -= iswdiv2; - irx += iswdiv2; - iry += iswdiv2; - iw += isw; - ih += isw; - longwidth = (int)(isw * 1.414); - } - else - thecolor = null; - - - if ( thecolor != null ) - { - int tx = 0; - int ty = iry; - long a = irx; - long b = iry; - long Asquared = (long)Math.pow(a, 2); - long TwoAsquared = 2 * Asquared; - long Bsquared = (long)Math.pow(b, 2); - long TwoBsquared = 2 * Bsquared; - long d = Bsquared - Asquared * b + Asquared / 4; - long dx = 0; - long dy = TwoAsquared * b; - int rectlen = iw - 2 * irx; - Vector bottomlines = new Vector(); - - int x0 = tx; - - // Set Transparency modes and select shading. - currentStream.add("\033*v0n1O\033*c" + (int)(100 - ((0.3f * thecolor.red() + 0.59f * thecolor.green() + 0.11f * thecolor.blue()) * 100f)) + "G\033*v2T"); - // Move to starting position. - currentStream.add("\033*p" + ix + "x" + iy + "Y"); - // Start raster graphics - currentStream.add("\033*t300R\033*r" + iw + "s1A\033*b1M"); - - while ( dx < dy ) - { - if ( d > 0 ) - { - if ( pass == 0 || ty > (iry - isw) ) - xferLineBytes(irx - x0, rectlen + 2 * x0, bottomlines, -1); - else - xferLineBytes(irx - x0, longwidth, bottomlines, iw - irx + x0 - longwidth); - x0 = tx + 1; - ty--; - dy -= TwoAsquared; - d -= dy; - } - tx++; - dx += TwoBsquared; - d += Bsquared + dx; - } - - d += (3 * (Asquared - Bsquared) / 2 - (dx + dy)) / 2; - - while ( ty > 0 ) - { - if ( pass == 0 || ty >= (iry - isw) ) - xferLineBytes(irx - tx, rectlen + 2 * tx, bottomlines, -1); - else - xferLineBytes(irx - tx, isw, bottomlines, iw - irx + tx - isw); - - if ( d < 0 ) - { - tx++; - dx += TwoBsquared; - d += dx; - } - ty--; - dy -= TwoAsquared; - d += Asquared - dy; - } - - // Draw the middle part of the rectangle - int midlen = ih - 2 * iry; - if ( midlen > 0 ) - { - if ( pass == 0 ) - xferLineBytes(0, iw, null, -1); - else - xferLineBytes(0, isw, null, iw - isw); - currentStream.add("\033*b3M"); - for ( int countr = midlen - 1 ; countr > 0 ; countr-- ) - currentStream.add("\033*b0W"); - currentStream.add("\033*b1M"); - } - - // Draw the bottom. - for ( int countr = bottomlines.size() - 1 ; countr >= 0 ; countr-- ) - currentStream.add((String)bottomlines.elementAt(countr)); - - // End raster graphics - currentStream.add("\033*rB"); - // Return to regular print mode. - currentStream.add("\033*v0t0n0O"); - } - pass++; - } while ( pass < 2 ); - } - } - - // Add a polyline or polygon. Does not support fills yet!!! - protected void addPolyline(Vector points, int posx, int posy, PDFColor fc, PDFColor sc, float sw, boolean close) - { - PathPoint pc; - float lastx = 0; - float lasty = 0; - float curx = 0; - float cury = 0; - float startx = 0; - float starty = 0; - Enumeration e = points.elements(); - if(e.hasMoreElements()) - { - pc = (PathPoint)e.nextElement(); - lastx = rendxoffset / 10 + pc.x + posx / 1000; - lasty = ((pageHeight / 10) - posy/1000) + pc.y; - startx = lastx; - starty = lasty; - //currentStream.add(lastx + " " + lasty + " m\n"); - } - while(e.hasMoreElements()) - { - pc = (PathPoint)e.nextElement(); - curx = rendxoffset / 10 + pc.x + posx / 1000; - cury = ((pageHeight / 10) - posy/1000) + pc.y; - addLine(lastx, lasty, curx, cury, sc, sw); - lastx = curx; - lasty = cury; - //currentStream.add(lastx + " " + lasty + " l\n"); - } - if(close) - { - addLine(lastx, lasty, startx, starty, sc, sw); - //currentStream.add("h\n"); - } - //doDrawing(di); - } - - public void renderImage(String href, float x, float y, float width, float height) - { - if ( x < 0 || y < 0 ) - MessageHandler.errorln("PCLSVGRenderer.renderImage() WARNING: Position out of bounds."); - - try - { - if ( href.indexOf(":") == -1 ) - href = "file:" + href; - FopImage img = FopImageFactory.Make(href); - if(img != null) - { - if ( img instanceof SVGImage ) - { - SVGSVGElement svg = ((SVGImage)img).getSVGDocument().getRootElement(); - renderSVG(svg, (int)x * 1000, (int)y * 1000); - } - else - { - currentStream.add("\033&a" + (x * 10) + "h" + (y * 10) + "V"); - renderer.printBMP(img, (int)x, (int)y, (int)width, (int)height); - } - - } - } - catch(Exception e) - { - MessageHandler.errorln("could not add image to SVG: " + href); - } - } - - /** - * A symbol has a viewbox and preserve aspect ratio. - */ - protected void renderSymbol(SVGSymbolElement symbol, int x, int y) { - NodeList nl = symbol.getChildNodes(); - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof SVGElement) { - renderElement((SVGElement) n, x, y); - } - } - } - - /** - * Main rendering selection. - * This applies any transform ans style and then calls the appropriate - * rendering method depending on the type of the element. - */ - public void renderElement(SVGElement area, int posx, int posy) - { -if ( debug ) -System.out.println("PCLRenderer.renderElement(" + fontState + ", " + area + ", " + posx + ", " + posy + ")"); - int x = posx; - int y = posy; - SVGStylable style = null; - if ( area instanceof SVGStylable ) - style = (SVGStylable)area; - PDFColor fillColour = null; - PDFColor strokeColour = null; - float strokeWidth = 1; - - //currentStream.add("q\n"); - //if( area instanceof SVGTransformable ) - //{ - // SVGTransformable tf = (SVGTransformable)area; - // SVGAnimatedTransformList trans = tf.getTransform(); - // SVGRect bbox = tf.getBBox(); - // if(trans != null) { - // applyTransform(trans, bbox); - // } - //} - - if(style != null) - { - CSSValue sp; - sp = style.getPresentationAttribute("fill"); - if (sp != null) - { - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) - { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == CSSPrimitiveValue.CSS_RGBCOLOR) - { - RGBColor col = ((CSSPrimitiveValue) sp).getRGBColorValue(); - CSSPrimitiveValue val; - val = col.getRed(); - float red = val.getFloatValue(CSSPrimitiveValue.CSS_NUMBER); - val = col.getGreen(); - float green = val.getFloatValue(CSSPrimitiveValue.CSS_NUMBER); - val = col.getBlue(); - float blue = val.getFloatValue(CSSPrimitiveValue.CSS_NUMBER); - fillColour = new PDFColor(red, green, blue); - currentColour = fillColour; - } - else if ( ((CSSPrimitiveValue) sp).getPrimitiveType() == CSSPrimitiveValue.CSS_STRING) - { - String str = ((CSSPrimitiveValue) sp).getCssText(); - if ( str.equals("none") ) - { - fillColour = null; - } - else if ( str.equals("currentColor") ) - { - fillColour = currentColour; - } - } - } - } - else - { - fillColour = new PDFColor(0, 0, 0); - } - sp = style.getPresentationAttribute("stroke"); - if ( sp != null ) - { - if ( sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE ) - { - if ( ((CSSPrimitiveValue) sp).getPrimitiveType() == CSSPrimitiveValue.CSS_RGBCOLOR ) - { - RGBColor col = ((CSSPrimitiveValue) sp).getRGBColorValue(); - CSSPrimitiveValue val; - val = col.getRed(); - float red = val.getFloatValue(CSSPrimitiveValue.CSS_NUMBER); - val = col.getGreen(); - float green = val.getFloatValue(CSSPrimitiveValue.CSS_NUMBER); - val = col.getBlue(); - float blue = val.getFloatValue(CSSPrimitiveValue.CSS_NUMBER); - strokeColour = new PDFColor(red, green, blue); - } - else if ( ((CSSPrimitiveValue) sp).getPrimitiveType() == CSSPrimitiveValue.CSS_STRING ) - { - String str = ((CSSPrimitiveValue) sp).getCssText(); - if (str.equals("none")) - { - strokeColour = null; - } - } - } - } - else - { - strokeColour = new PDFColor(0, 0, 0); - } - sp = style.getPresentationAttribute("stroke-width"); - if ( sp != null ) - { - if ( sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE ) - { - strokeWidth = ((CSSPrimitiveValue) sp).getFloatValue(CSSPrimitiveValue.CSS_PT); - } - } - } - - if (area instanceof SVGRectElement) - { - SVGRectElement rg = (SVGRectElement)area; - float rectx = rendxoffset / 10 + rg.getX().getBaseVal().getValue() + posx / 1000; - float recty = ((pageHeight / 10) - posy/1000) + rg.getY().getBaseVal().getValue(); - float rx = rg.getRx().getBaseVal().getValue(); - float ry = rg.getRy().getBaseVal().getValue(); - float rw = rg.getWidth().getBaseVal().getValue(); - float rh = rg.getHeight().getBaseVal().getValue(); - addRect(rectx, recty, rw, rh, rx, ry, fillColour, strokeColour, strokeWidth); - } - else if (area instanceof SVGLineElement) - { - SVGLineElement lg = (SVGLineElement)area; - float x1 = rendxoffset / 10 + lg.getX1().getBaseVal().getValue() + posx / 1000; - float y1 = ((pageHeight / 10) - posy/1000) + lg.getY1().getBaseVal().getValue(); - float x2 = rendxoffset / 10 + lg.getX2().getBaseVal().getValue() + posx / 1000; - float y2 = ((pageHeight / 10) - posy/1000) + lg.getY2().getBaseVal().getValue(); - addLine(x1,y1,x2,y2, strokeColour, strokeWidth); - } - else if (area instanceof SVGTextElementImpl) - { - //currentStream.add("BT\n"); - //renderText((SVGTextElementImpl)area, rendxoffset + posx / 1000f, ((float)(pageHeight / 10) - posy/1000f)); - //currentStream.add("ET\n"); - SVGTextRenderer str = new SVGTextRenderer(fontState, (SVGTextElementImpl)area, rendxoffset / 10 + posx / 1000f, ((float)(pageHeight / 10) - posy/1000f)); - str.renderText((SVGTextElementImpl)area); - } - else if (area instanceof SVGCircleElement) - { - SVGCircleElement cg = (SVGCircleElement)area; - float cx = rendxoffset / 10 + cg.getCx().getBaseVal().getValue() + posx / 1000; - float cy = ((pageHeight / 10) - posy/1000) + cg.getCy().getBaseVal().getValue(); - float r = cg.getR().getBaseVal().getValue(); - //addCircle(cx,cy,r, di); - addRect(cx - r, cy - r, 2 * r, 2 * r, r, r, fillColour, strokeColour, strokeWidth); - } - else if (area instanceof SVGEllipseElement) - { - SVGEllipseElement cg = (SVGEllipseElement)area; - float cx = rendxoffset / 10 + cg.getCx().getBaseVal().getValue() + posx / 1000; - float cy = ((pageHeight / 10) - posy/1000) + cg.getCy().getBaseVal().getValue(); - float rx = cg.getRx().getBaseVal().getValue(); - float ry = cg.getRy().getBaseVal().getValue(); - //addEllipse(cx,cy,rx,ry, di); - addRect(cx - rx, cy - ry, 2 * rx, 2 * ry, rx, ry, fillColour, strokeColour, strokeWidth); - } - else if (area instanceof SVGPathElementImpl) - { - //addPath(((SVGPathElementImpl)area).pathElements, posx, posy, di); - } - else if (area instanceof SVGPolylineElementImpl) - { - addPolyline(((SVGPolylineElementImpl)area).points, posx, posy, fillColour, strokeColour, strokeWidth, false); - } - else if (area instanceof SVGPolygonElementImpl) - { - addPolyline(((SVGPolylineElementImpl)area).points, posx, posy, fillColour, strokeColour, strokeWidth, true); - } - else if (area instanceof SVGGElementImpl) - { - renderGArea((SVGGElementImpl)area, x, y); - } - else if(area instanceof SVGUseElementImpl) - { - SVGUseElementImpl ug = (SVGUseElementImpl) area; - String ref = ug.link; - // ref = ref.substring(1, ref.length()); - SVGElement graph = null; - graph = locateDef(ref, ug); - if (graph != null) { - // probably not the best way to do this, should be able - // to render without the style being set. - // SVGElement parent = graph.getGraphicParent(); - // graph.setParent(area); - // need to clip (if necessary) to the use area - // the style of the linked element is as if it was - // a direct descendant of the use element. - - // scale to the viewBox - - if (graph instanceof SVGSymbolElement) { - //currentStream.write("q\n"); - SVGSymbolElement symbol = (SVGSymbolElement) graph; - SVGRect view = symbol.getViewBox().getBaseVal(); - float usex = ug.getX().getBaseVal().getValue(); - float usey = ug.getY().getBaseVal().getValue(); - float usewidth = ug.getWidth().getBaseVal().getValue(); - float useheight = - ug.getHeight().getBaseVal().getValue(); - float scaleX; - float scaleY; - scaleX = usewidth / view.getWidth(); - scaleY = useheight / view.getHeight(); - //currentStream.write(usex + " " + usey + " m\n"); - //currentStream.write((usex + usewidth) + " " + - // usey + " l\n"); - //currentStream.write((usex + usewidth) + " " + - // (usey + useheight) + " l\n"); - //currentStream.write(usex + " " + - // (usey + useheight) + " l\n"); - //currentStream.write("h\n"); - //currentStream.write("W\n"); - //currentStream.write("n\n"); - //currentStream.write(scaleX + " 0 0 " + scaleY + - // " " + usex + " " + usey + " cm\n"); - renderSymbol(symbol, posx, posy); - //currentStream.write("Q\n"); - } else { - renderElement(graph, posx, posy); - } - // graph.setParent(parent); - } - else - { - MessageHandler.logln("Use Element: " + ref + " not found"); - } - } - else if (area instanceof SVGImageElementImpl) - { - SVGImageElementImpl ig = (SVGImageElementImpl)area; - renderImage(ig.link, ig.x, ig.y, ig.width, ig.height); - } - else if (area instanceof SVGSVGElement) - { - //currentStream.write("q\n"); - SVGSVGElement svgel = (SVGSVGElement) area; - float svgx = 0; - if (svgel.getX() != null) - svgx = svgel.getX().getBaseVal().getValue(); - float svgy = 0; - if (svgel.getY() != null) - svgy = svgel.getY().getBaseVal().getValue(); - //currentStream.write(1 + " 0 0 " + 1 + " " + svgx + " " + - // svgy + " cm\n"); - renderSVG(svgel, (int)(x + 1000 * svgx), - (int)(y + 1000 * svgy)); - //currentStream.write("Q\n"); - // } else if (area instanceof SVGSymbolElement) { - // 'symbol' element is not rendered (except by 'use') - } - else if (area instanceof SVGAElement) - { - SVGAElement ael = (SVGAElement)area; - org.w3c.dom.NodeList nl = ael.getChildNodes(); - for ( int count = 0 ; count < nl.getLength() ; count++ ) - { - org.w3c.dom.Node n = nl.item(count); - if ( n instanceof SVGElement ) - { - if ( n instanceof GraphicElement ) - { - SVGRect rect = ((GraphicElement)n).getBBox(); - if ( rect != null ) - { -/* currentAnnotList = this.pdfDoc.makeAnnotList(); - currentPage.setAnnotList(currentAnnotList); - String dest = linkSet.getDest(); - int linkType = linkSet.getLinkType(); - currentAnnotList.addLink( - this.pdfDoc.makeLink(lrect.getRectangle(), dest, linkType)); - currentAnnotList = null; -*/ } - } - renderElement((SVGElement)n, posx, posy); - } - } - } - else if ( area instanceof SVGSwitchElement ) - { - handleSwitchElement(posx, posy, (SVGSwitchElement)area); - } - // should be done with some cleanup code, so only - // required values are reset. - //currentStream.add("Q\n"); - } - - /** - * Adds an svg string to the output. - * This handles the escaping of special pdf chars and deals with - * whitespace. - */ - protected float addSVGStr(FontState fs, float currentX, String str, - boolean spacing) { - boolean inbetween = false; - boolean addedspace = false; - StringBuffer pdf = new StringBuffer(); - for (int i = 0; i < str.length(); i++) { - char ch = str.charAt(i); - switch (ch) - { - case '\t': - case ' ': - if (spacing) { - pdf = pdf.append(' '); - currentX += fs.width(' ') / 1000f; - } else { - if (inbetween && !addedspace) { - addedspace = true; - pdf = pdf.append(' '); - currentX += fs.width(' ') / 1000f; - } - } - break; - case '\n': - case '\r': - if (spacing) { - pdf = pdf.append(' '); - currentX += fs.width(' ') / 1000f; - } - break; - default: - addedspace = false; - pdf = pdf.append(ch); - currentX += fs.width(ch) / 1000f; - inbetween = true; - break; - } - } - currentStream.add(pdf.toString()); - return currentX; - } - - /** - * Locates a defined element in an svg document. - * Either gets the element defined by its "id" in the current - * SVGDocument, or if the uri reference is to an external - * document it loads the document and returns the element. - */ - protected SVGElement locateDef(String ref, SVGElement currentElement) { - int pos; - ref = ref.trim(); - pos = ref.indexOf("#"); - if (pos == 0) { - // local doc - Document doc = currentElement.getOwnerDocument(); - Element ele = - doc.getElementById(ref.substring(1, ref.length())); - if (ele instanceof SVGElement) { - return (SVGElement) ele; - } - } else if (pos != -1) { - String href = ref.substring(0, pos); - if (href.indexOf(":") == -1) { - href = "file:" + href; - } - try { - // this is really only to get a cached svg image - FopImage img = FopImageFactory.Make(href); - if (img instanceof SVGImage) { - SVGDocument doc = ((SVGImage) img).getSVGDocument(); - Element ele = doc.getElementById( - ref.substring(pos + 1, ref.length())); - if (ele instanceof SVGElement) { - return (SVGElement) ele; - } - } - } catch (Exception e) { - MessageHandler.errorln(e.toString()); - } - } - return null; - } - - /** - * This class is used to handle the rendering of svg text. - * This is so that it can deal with the recursive rendering - * of text markup, while keeping track of the state and position. - */ - class SVGTextRenderer { - FontState fs; - String transstr; - float currentX; - float currentY; - float baseX; - float baseY; - SVGMatrix matrix; - float x; - float y; - - SVGTextRenderer(FontState fontState, SVGTextElementImpl tg, - float x, float y) { - fs = fontState; - - //PDFNumber pdfNumber = new PDFNumber(); - SVGTransformList trans = tg.getTransform().getBaseVal(); - matrix = trans.consolidate().getMatrix(); - //transstr = (pdfNumber.doubleOut(matrix.getA()) + " " + - // pdfNumber.doubleOut(matrix.getB()) + " " + - // pdfNumber.doubleOut(matrix.getC()) + " " + - // pdfNumber.doubleOut(-matrix.getD()) + " "); - this.x = x; - this.y = y; - } - - void renderText(SVGTextElementImpl te) { - float xoffset = 0; - - if (te.anchor.getEnum() != TextAnchor.START) { - // This is a bit of a hack: The code below will update - // the current position, so all I have to do is to - // prevent that the code will write anything to the - // PCL stream... - currentStream.setDoOutput(false); - - _renderText (te, 0f, true); - - float width = currentX - te.x; - currentStream.setDoOutput(true); - - if (te.anchor.getEnum() == TextAnchor.END) { - xoffset = -width; - } else if (te.anchor.getEnum() == TextAnchor.MIDDLE) { - xoffset = -width/2; - } - } - - _renderText (te, xoffset, false); - } - - void _renderText(SVGTextElementImpl te, float xoffset, boolean getWidthOnly) - { - //DrawingInstruction di = applyStyle(te, te); - //if (di.fill) { - // if (di.stroke) { - // currentStream.write("2 Tr\n"); - // } else { - // currentStream.write("0 Tr\n"); - // } - //} else if (di.stroke) { - // currentStream.write("1 Tr\n"); - //} - updateFont(te, fs); - - float tx = te.x; - float ty = te.y; - currentX = x + tx + xoffset; - currentY = y + ty; - baseX = currentX; - baseY = currentY; - NodeList nodel = te.getChildNodes(); - // Vector list = te.textList; - for (int count = 0; count < nodel.getLength(); count++) { - Object o = nodel.item(count); - //applyStyle(te, te); - if ( o instanceof CharacterData ) - { - String str = ((CharacterData) o).getData(); - //currentStream.write(transstr + - // (currentX + matrix.getE()) + " " + - // (baseY + matrix.getF()) + " Tm " + "("); - boolean spacing = "preserve".equals(te.getXMLspace()); - //currentX = addSVGStr(fs, currentX, str, spacing); - //currentStream.write(") Tj\n"); - currentStream.add("\033&a" + (currentX + matrix.getE())*10 + "h" + (baseY + matrix.getF())*10 + "V"); - currentX = addSVGStr(fs, currentX, str, spacing); - } - else if ( o instanceof SVGTextPathElementImpl ) - { - SVGTextPathElementImpl tpg = (SVGTextPathElementImpl) o; - String ref = tpg.str; - SVGElement graph = null; - graph = locateDef(ref, tpg); - if (graph instanceof SVGPathElementImpl) { - // probably not the best way to do this, should be able - // to render without the style being set. - // GraphicImpl parent = graph.getGraphicParent(); - // graph.setParent(tpg); - // set text path?? - // how should this work - // graph.setParent(parent); - } - } else if (o instanceof SVGTRefElementImpl) { - SVGTRefElementImpl trg = (SVGTRefElementImpl) o; - String ref = trg.ref; - SVGElement element = locateDef(ref, trg); - if (element instanceof SVGTextElementImpl) { - // GraphicImpl parent = graph.getGraphicParent(); - // graph.setParent(trg); - SVGTextElementImpl tele = - (SVGTextElementImpl) element; - // the style should be from tele, but it needs to be placed as a child - // of trg to work - //di = applyStyle(trg, trg); - //if (di.fill) { - // if (di.stroke) { - // currentStream.write("2 Tr\n"); - // } else { - // currentStream.write("0 Tr\n"); - // } - //} else if (di.stroke) { - // currentStream.write("1 Tr\n"); - //} - boolean changed = false; - FontState oldfs = fs; - changed = updateFont(te, fs); - NodeList nl = tele.getChildNodes(); - boolean spacing = - "preserve".equals(trg.getXMLspace()); - renderTextNodes(spacing, nl, - trg.getX().getBaseVal(), - trg.getY().getBaseVal(), - trg.getDx().getBaseVal(), - trg.getDy().getBaseVal()); - - if (changed) { - fs = oldfs; - //currentStream.write("/" + - // fs.getFontName() + " " + - // fs.getFontSize() / 1000f + " Tf\n"); - } - // graph.setParent(parent); - } - } else if (o instanceof SVGTSpanElementImpl) { - SVGTSpanElementImpl tsg = (SVGTSpanElementImpl) o; - //applyStyle(tsg, tsg); - boolean changed = false; - FontState oldfs = fs; - changed = updateFont(tsg, fs); - boolean spacing = "preserve".equals(tsg.getXMLspace()); - renderTextNodes(spacing, tsg.getChildNodes(), - tsg.getX().getBaseVal(), - tsg.getY().getBaseVal(), - tsg.getDx().getBaseVal(), - tsg.getDy().getBaseVal()); - - // currentX += fs.width(' ') / 1000f; - if (changed) { - fs = oldfs; - //currentStream.write("/" + fs.getFontName() + - // " " + fs.getFontSize() / 1000f + " Tf\n"); - } - } else { - MessageHandler.errorln("Error: unknown text element " + o); - } - } - } - - void renderTextNodes(boolean spacing, NodeList nl, - SVGLengthList xlist, SVGLengthList ylist, - SVGLengthList dxlist, SVGLengthList dylist) { - boolean inbetween = false; - boolean addedspace = false; - int charPos = 0; - float xpos = currentX; - float ypos = currentY; - - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof CharacterData) { - //StringBuffer pdf = new StringBuffer(); - String str = ((CharacterData) n).getData(); - for (int i = 0; i < str.length(); i++) { - char ch = str.charAt(i); - xpos = currentX; - ypos = currentY; - if (ylist.getNumberOfItems() > charPos) { - ypos = baseY + (ylist.getItem(charPos)). - getValue(); - } - if (dylist.getNumberOfItems() > charPos) { - ypos = ypos + (dylist.getItem(charPos)). - getValue(); - } - if (xlist.getNumberOfItems() > charPos) { - xpos = baseX + (xlist.getItem(charPos)). - getValue(); - } - if (dxlist.getNumberOfItems() > charPos) { - xpos = xpos + (dxlist.getItem(charPos)). - getValue(); - } - - switch (ch) { - case '\t': - case ' ': - if (spacing) { - currentX = xpos + fs.width(' ') / - 1000f; - currentY = ypos; - charPos++; - } else { - if (inbetween && !addedspace) { - addedspace = true; - currentX = xpos + fs.width(' ') - / 1000f; - currentY = ypos; - charPos++; - } - } - break; - case '\n': - case '\r': - if (spacing) { - currentX = xpos + fs.width(' ') / - 1000f; - currentY = ypos; - charPos++; - } - break; - default: - addedspace = false; - //pdf = pdf.append(transstr + - // (xpos + matrix.getE()) + - // " " + (ypos + - // matrix.getF()) + " Tm " + - // "(" + ch + ") Tj\n"); - currentStream.add("\033&a" + (xpos + matrix.getE())*10 + "h" + (ypos + matrix.getF())*10 + "V" + ch); - currentX = xpos + fs.width(ch) / 1000f; - currentY = ypos; - charPos++; - inbetween = true; - break; - } - //currentStream.write(pdf.toString()); - } - } - } - } - - protected boolean updateFont(SVGStylable style, FontState fs) { - boolean changed = false; - String fontFamily = fs.getFontFamily(); - CSSValue sp = style.getPresentationAttribute("font-family"); - if (sp != null && - sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - fontFamily = sp.getCssText(); - } - } - if (!fontFamily.equals(fs.getFontFamily())) { - changed = true; - } - String fontStyle = fs.getFontStyle(); - sp = style.getPresentationAttribute("font-style"); - if (sp != null && - sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - fontStyle = sp.getCssText(); - } - } - if (!fontStyle.equals(fs.getFontStyle())) { - changed = true; - } - String fontWeight = fs.getFontWeight(); - sp = style.getPresentationAttribute("font-weight"); - if (sp != null && - sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - fontWeight = sp.getCssText(); - } - } - if (!fontWeight.equals(fs.getFontWeight())) { - changed = true; - } - float newSize = fs.getFontSize() / 1000f; - sp = style.getPresentationAttribute("font-size"); - if (sp != null && - sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - // if(((CSSPrimitiveValue)sp).getPrimitiveType() == CSSPrimitiveValue.CSS_NUMBER) { - newSize = ((CSSPrimitiveValue) sp).getFloatValue( - CSSPrimitiveValue.CSS_PT); - // } - } - if (fs.getFontSize() / 1000f != newSize) { - changed = true; - } - if (changed) { - try { - fs = new FontState(fs.getFontInfo(), fontFamily, - fontStyle, fontWeight, (int)(newSize * 1000), - FontVariant.NORMAL); - } catch (Exception fope) { - } - this.fs = fs; - - //currentStream.write("/" + fs.getFontName() + " " + - // newSize + " Tf\n"); - renderer.setFont(fs.getFontName(), newSize * 1000); - } else { - if (!currentFontName.equals(fs.getFontName()) || - currentFontSize != fs.getFontSize()) { - // currentFontName = fs.getFontName(); - // currentFontSize = fs.getFontSize(); - //currentStream.write("/" + fs.getFontName() + " " + - // (fs.getFontSize() / 1000) + " Tf\n"); - renderer.setFont(fs.getFontName(), fs.getFontSize()); - } - } - return changed; - } - } -} diff --git a/src/org/apache/fop/render/pdf/PDFRenderer.java b/src/org/apache/fop/render/pdf/PDFRenderer.java index b524a7358..bd0d5761b 100644 --- a/src/org/apache/fop/render/pdf/PDFRenderer.java +++ b/src/org/apache/fop/render/pdf/PDFRenderer.java @@ -14,15 +14,26 @@ import org.apache.fop.image.FopImage; import org.apache.fop.apps.FOPException; import org.apache.fop.fo.properties.*; import org.apache.fop.layout.inline.*; +import org.apache.fop.datatypes.*; +import org.apache.fop.svg.*; import org.apache.fop.pdf.*; import org.apache.fop.layout.*; import org.apache.fop.image.*; import org.apache.fop.extensions.*; import org.apache.fop.datatypes.IDReferences; -import org.w3c.dom.svg.*; +import org.apache.batik.bridge.*; +import org.apache.batik.swing.svg.*; +import org.apache.batik.swing.gvt.*; +import org.apache.batik.gvt.*; +import org.apache.batik.gvt.renderer.*; +import org.apache.batik.gvt.filter.*; +import org.apache.batik.gvt.event.*; -import org.apache.fop.dom.svg.*; +import org.w3c.dom.*; +import org.w3c.dom.svg.*; +import org.w3c.dom.css.*; +import org.w3c.dom.svg.SVGLength; // Java import java.io.IOException; @@ -30,6 +41,12 @@ import java.io.OutputStream; import java.util.Enumeration; import java.util.Vector; import java.util.Hashtable; +import java.awt.geom.AffineTransform; +import java.awt.geom.Dimension2D; +import java.awt.Point; +import java.awt.RenderingHints; +import java.awt.font.FontRenderContext; +import java.awt.Dimension; /** * Renderer that renders areas to PDF @@ -295,6 +312,7 @@ public class PDFRenderer extends PrintRenderer { case Overflow.HIDDEN: break; } + area.getObject().render(this); currentStream.add("Q\n"); currentStream.add("BT\n"); @@ -356,20 +374,67 @@ public class PDFRenderer extends PrintRenderer { } // transform so that the coordinates (0,0) is from the top left // and positive is down and to the right. (0,0) is where the - // viewBox puts it. - currentStream.add(sx + " 0 0 " + sy + " " + xOffset / 1000f + - " " + yOffset / 1000f + " cm\n"); + // viewBox puts it. + currentStream.add(sx + " 0 0 " + sy + " " + + xOffset / 1000f + " " + yOffset / 1000f + " cm\n"); + - SVGRenderer svgRenderer = - new SVGRenderer(area.getFontState(), pdfDoc, + SVGDocument doc = area.getSVGDocument(); + + UserAgent userAgent = new MUserAgent(new AffineTransform()); + + GVTBuilder builder = new GVTBuilder(); + GraphicsNodeRenderContext rc = getRenderContext(); + BridgeContext ctx = new BridgeContext(userAgent, rc); + GraphicsNode root; + //System.out.println("creating PDFGraphics2D"); + PDFGraphics2D graphics = new PDFGraphics2D(true, area.getFontState(), pdfDoc, currentFontName, currentFontSize, currentXPosition, currentYPosition); - svgRenderer.renderSVG(svg, 0, 0); - currentStream.add(svgRenderer.getString()); + graphics.setGraphicContext(new org.apache.batik.ext.awt.g2d.GraphicContext()); + graphics.setRenderingHints(rc.getRenderingHints()); + try { + root = builder.build(ctx, doc); + root.paint(graphics, rc); + currentStream.add(graphics.getString()); + } catch(Exception e) { + e.printStackTrace(); + } currentStream.add("Q\n"); } + public GraphicsNodeRenderContext getRenderContext() { + GraphicsNodeRenderContext nodeRenderContext = null; + if (nodeRenderContext == null) { + RenderingHints hints = new RenderingHints(null); + hints.put(RenderingHints.KEY_ANTIALIASING, + RenderingHints.VALUE_ANTIALIAS_ON); + + hints.put(RenderingHints.KEY_INTERPOLATION, + RenderingHints.VALUE_INTERPOLATION_BILINEAR); + + FontRenderContext fontRenderContext = + new FontRenderContext(new AffineTransform(), true, true); + + TextPainter textPainter = new StrokingTextPainter(); + + GraphicsNodeRableFactory gnrFactory = + new ConcreteGraphicsNodeRableFactory(); + + nodeRenderContext = + new GraphicsNodeRenderContext(new AffineTransform(), + null, + hints, + fontRenderContext, + textPainter, + gnrFactory); + nodeRenderContext.setTextPainter(textPainter); + } + + return nodeRenderContext; + } + /** * render inline area to PDF * @@ -709,4 +774,118 @@ public class PDFRenderer extends PrintRenderer { renderOutline((Outline) e.nextElement()); } } + + protected class MUserAgent implements UserAgent { + AffineTransform currentTransform = null; + /** + * Creates a new SVGUserAgent. + */ + protected MUserAgent(AffineTransform at) { + currentTransform = at; + } + + /** + * Displays an error message. + */ + public void displayError(String message) { + System.err.println(message); + } + + /** + * Displays an error resulting from the specified Exception. + */ + public void displayError(Exception ex) { + ex.printStackTrace(System.err); + } + + /** + * Displays a message in the User Agent interface. + * The given message is typically displayed in a status bar. + */ + public void displayMessage(String message) { + System.out.println(message); + } + + /** + * Returns a customized the pixel to mm factor. + */ + public float getPixelToMM() { + return 0.264583333333333333333f; // 72 dpi + } + + /** + * Returns the language settings. + */ + public String getLanguages() { + return "en";//userLanguages; + } + + /** + * Returns the user stylesheet uri. + * @return null if no user style sheet was specified. + */ + public String getUserStyleSheetURI() { + return null;//userStyleSheetURI; + } + + /** + * Returns the class name of the XML parser. + */ + public String getXMLParserClassName() { + String parserClassName = + System.getProperty("org.xml.sax.parser"); + if (parserClassName == null) { + parserClassName = "org.apache.xerces.parsers.SAXParser"; + } + return parserClassName;//application.getXMLParserClassName(); + } + + /** + * Opens a link in a new component. + * @param doc The current document. + * @param uri The document URI. + */ + public void openLink(SVGAElement elt) + { + //application.openLink(uri); + } + + public Point getClientAreaLocationOnScreen() + { + return new Point(0, 0); + } + + public void setSVGCursor(java.awt.Cursor cursor) + { + } + + public AffineTransform getTransform() + { + return currentTransform; + } + + public Dimension2D getViewportSize() + { + return new Dimension(100, 100); + } + + public EventDispatcher getEventDispatcher() + { + return null; + } + + public boolean supportExtension(String str) + { + return false; + } + + public boolean hasFeature(String str) + { + return false; + } + + public void registerExtension(BridgeExtension be) + { + } + } } diff --git a/src/org/apache/fop/render/pdf/SVGRenderer.java b/src/org/apache/fop/render/pdf/SVGRenderer.java deleted file mode 100644 index f56d4a553..000000000 --- a/src/org/apache/fop/render/pdf/SVGRenderer.java +++ /dev/null @@ -1,2759 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.render.pdf; - -// FOP -import org.apache.fop.messaging.MessageHandler; -import org.apache.fop.image.ImageArea; -import org.apache.fop.image.FopImage; -import org.apache.fop.apps.FOPException; -import org.apache.fop.fo.properties.*; -import org.apache.fop.layout.*; -import org.apache.fop.datatypes.*; -import org.apache.fop.svg.PathPoint; -import org.apache.fop.pdf.*; -import org.apache.fop.layout.*; -import org.apache.fop.image.*; - -import org.w3c.dom.*; -import org.w3c.dom.svg.*; -import org.w3c.dom.css.*; -import org.w3c.dom.svg.SVGLength; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGRectElementImpl; -import org.apache.fop.dom.svg.SVGTextElementImpl; -import org.apache.fop.dom.svg.SVGLineElementImpl; -import org.apache.fop.dom.svg.SVGArea; - -// Java -import java.io.IOException; -import java.io.StringWriter; -import java.util.Enumeration; -import java.awt.Rectangle; -import java.util.Vector; -import java.util.Hashtable; - -/** - * Renderer that renders SVG to PDF - */ -public class SVGRenderer { - - /** the PDF Document being created */ - protected PDFDocument pdfDoc; - - protected FontState fontState; - - /** the /Resources object of the PDF document being created */ - // protected PDFResources pdfResources; - - /** the current stream to add PDF commands to */ - StringWriter currentStream = new StringWriter(); - - /** the current (internal) font name */ - protected String currentFontName; - - /** the current font size in millipoints */ - protected int currentFontSize; - - /** the current vertical position in millipoints from bottom */ - protected int currentYPosition = 0; - - /** the current horizontal position in millipoints from left */ - protected int currentXPosition = 0; - - /** the current colour for use in svg */ - private PDFColor currentColour = new PDFColor(0, 0, 0); - - // The toRadians() and toDegrees() methods of the Math class are not available in JDK 1.1, so reproduce here - /** - * Converts an angle measured in degrees to the equivalent angle - * measured in radians. - * - * @param angdeg an angle, in degrees - * @return the measurement of the angle angdeg - * in radians. - * @since JDK1.2 - */ - public static double toRadians(double angdeg) { - return angdeg / 180.0 * Math.PI; - } - /** - * Converts an angle measured in radians to the equivalent angle - * measured in degrees. - * - * @param angrad an angle, in radians - * @return the measurement of the angle angrad - * in degrees. - * @since JDK1.2 - */ - public static double toDegrees(double angrad) { - return angrad * 180.0 / Math.PI; - } - - /** - * create the SVG renderer - */ - public SVGRenderer(FontState fs, PDFDocument doc, String font, - int size, int xpos, int ypos) { - pdfDoc = doc; - currentFontName = font; - currentFontSize = size; - currentYPosition = ypos; - currentXPosition = xpos; - fontState = fs; - } - - public String getString() { - return currentStream.toString(); - } - - /** - * Renders an SVG element in an SVG document. - * This renders each of the child elements. - */ - protected void renderSVG(SVGSVGElement svg, int x, int y) { - NodeList nl = svg.getChildNodes(); - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof SVGElement) { - renderElement((SVGElement) n, x, y); - } - } - } - - public void renderGArea(SVGGElement area, int posx, int posy) { - NodeList nl = area.getChildNodes(); - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof SVGElement) { - renderElement((SVGElement) n, posx, posy); - } - } - } - - /** - * Handles the SVG switch element. - * The switch determines which of its child elements should be rendered - * according to the required extensions, required features and system language. - */ - protected void handleSwitchElement(int posx, int posy, - SVGSwitchElement ael) { - SVGStringList relist = ael.getRequiredExtensions(); - SVGStringList rflist = ael.getRequiredFeatures(); - SVGStringList sllist = ael.getSystemLanguage(); - NodeList nl = ael.getChildNodes(); - choices: - for (int count = 0; count < nl.getLength(); count++) { - org.w3c.dom.Node n = nl.item(count); - // only render the first child that has a valid - // test data - if (n instanceof GraphicElement) { - GraphicElement graphic = (GraphicElement) n; - SVGStringList grelist = graphic.getRequiredExtensions(); - // if null it evaluates to true - if (grelist != null) { - if (grelist.getNumberOfItems() == 0) { - if ((relist != null) && - relist.getNumberOfItems() != 0) { - continue choices; - } - } - for (int i = 0; i < grelist.getNumberOfItems(); i++) { - String str = (String) grelist.getItem(i); - if (relist == null) { - // use default extension set - // currently no extensions are supported - // if(!(str.equals("http:// ??"))) { - continue choices; - // } - } else { - } - } - } - SVGStringList grflist = graphic.getRequiredFeatures(); - if (grflist != null) { - if (grflist.getNumberOfItems() == 0) { - if ((rflist != null) && - rflist.getNumberOfItems() != 0) { - continue choices; - } - } - for (int i = 0; i < grflist.getNumberOfItems(); i++) { - String str = (String) grflist.getItem(i); - if (rflist == null) { - // use default feature set - if (!(str.equals("org.w3c.svg.static") || - str.equals("org.w3c.dom.svg.all"))) { - continue choices; - } - } else { - boolean found = false; - for (int j = 0; - j < rflist.getNumberOfItems(); j++) { - if (rflist.getItem(j).equals(str)) { - found = true; - break; - } - } - if (!found) - continue choices; - } - } - } - SVGStringList gsllist = graphic.getSystemLanguage(); - if (gsllist != null) { - if (gsllist.getNumberOfItems() == 0) { - if ((sllist != null) && - sllist.getNumberOfItems() != 0) { - continue choices; - } - } - for (int i = 0; i < gsllist.getNumberOfItems(); i++) { - String str = (String) gsllist.getItem(i); - if (sllist == null) { - // use default feature set - if (!(str.equals("en"))) { - continue choices; - } - } else { - boolean found = false; - for (int j = 0; - j < sllist.getNumberOfItems(); j++) { - if (sllist.getItem(j).equals(str)) { - found = true; - break; - } - } - if (!found) - continue choices; - } - } - } - renderElement((SVGElement) n, posx, posy); - // only render the first valid one - break; - } - } - } - - /** - * add a line to the current stream - * - * @param x1 the start x location in millipoints - * @param y1 the start y location in millipoints - * @param x2 the end x location in millipoints - * @param y2 the end y location in millipoints - * @param th the thickness in millipoints - * @param r the red component - * @param g the green component - * @param b the blue component - */ - protected void addLine(float x1, float y1, float x2, float y2, - DrawingInstruction di) { - String str; - PDFNumber pdfNumber = new PDFNumber(); - str = "" + pdfNumber.doubleOut(x1) + " " + pdfNumber.doubleOut(y1) + " m " + pdfNumber.doubleOut(x2) + " " + pdfNumber.doubleOut(y2) + " l"; - if (di != null && di.fill) - currentStream.write(str + " f\n"); // ?? - currentStream.write(str + " S\n"); - } - - /** - * Add an SVG circle - * Uses bezier curves to approximate the shape of a circle. - */ - protected void addCircle(float cx, float cy, float r, - DrawingInstruction di) { - PDFNumber pdfNumber = new PDFNumber(); - String str; - str = "" + pdfNumber.doubleOut(cx) + " " + pdfNumber.doubleOut((cy - r)) + " m\n" + "" + - pdfNumber.doubleOut((cx + 21 * r / 40f)) + " " + pdfNumber.doubleOut((cy - r)) + " " + - pdfNumber.doubleOut((cx + r)) + " " + pdfNumber.doubleOut((cy - 21 * r / 40f)) + " " + - pdfNumber.doubleOut((cx + r)) + " " + pdfNumber.doubleOut(cy) + " c\n" + "" + pdfNumber.doubleOut((cx + r)) + " " + - pdfNumber.doubleOut((cy + 21 * r / 40f)) + " " + pdfNumber.doubleOut((cx + 21 * r / 40f)) + - " " + pdfNumber.doubleOut((cy + r)) + " " + pdfNumber.doubleOut(cx) + " " + pdfNumber.doubleOut((cy + r)) + " c\n" + - "" + pdfNumber.doubleOut((cx - 21 * r / 40f)) + " " + pdfNumber.doubleOut((cy + r)) + " " + - pdfNumber.doubleOut(cx - r) + " " + pdfNumber.doubleOut(cy + 21 * r / 40f) + " " + - pdfNumber.doubleOut(cx - r) + " " + pdfNumber.doubleOut(cy) + " c\n" + "" + pdfNumber.doubleOut(cx - r) + " " + - pdfNumber.doubleOut(cy - 21 * r / 40f) + " " + pdfNumber.doubleOut(cx - 21 * r / 40f) + - " " + pdfNumber.doubleOut(cy - r) + " " + pdfNumber.doubleOut(cx) + " " + pdfNumber.doubleOut(cy - r) + " c\n"; - - currentStream.write(str); - doDrawing(di); - } - - /** - * Add an SVG ellips - * Uses bezier curves to approximate the shape of an ellipse. - */ - protected void addEllipse(float cx, float cy, float rx, float ry, - DrawingInstruction di) { - PDFNumber pdfNumber = new PDFNumber(); - String str; - str = "" + pdfNumber.doubleOut(cx) + " " + pdfNumber.doubleOut(cy - ry) + " m\n" + "" + - pdfNumber.doubleOut(cx + 21 * rx / 40f) + " " + pdfNumber.doubleOut(cy - ry) + " " + - pdfNumber.doubleOut(cx + rx) + " " + pdfNumber.doubleOut(cy - 21 * ry / 40f) + " " + - pdfNumber.doubleOut(cx + rx) + " " + pdfNumber.doubleOut(cy) + " c\n" + "" + pdfNumber.doubleOut(cx + rx) + " " + - pdfNumber.doubleOut(cy + 21 * ry / 40f) + " " + pdfNumber.doubleOut(cx + 21 * rx / 40f) + - " " + pdfNumber.doubleOut(cy + ry) + " " + pdfNumber.doubleOut(cx) + " " + pdfNumber.doubleOut(cy + ry) + - " c\n" + "" + pdfNumber.doubleOut(cx - 21 * rx / 40f) + " " + pdfNumber.doubleOut(cy + ry) + - " " + pdfNumber.doubleOut(cx - rx) + " " + pdfNumber.doubleOut(cy + 21 * ry / 40f) + " " + - pdfNumber.doubleOut(cx - rx) + " " + pdfNumber.doubleOut(cy) + " c\n" + "" + pdfNumber.doubleOut(cx - rx) + " " + - pdfNumber.doubleOut(cy - 21 * ry / 40f) + " " + pdfNumber.doubleOut(cx - 21 * rx / 40f) + - " " + pdfNumber.doubleOut(cy - ry) + " " + pdfNumber.doubleOut(cx) + " " + pdfNumber.doubleOut(cy - ry) + " c\n"; - currentStream.write(str); - doDrawing(di); - } - - /** - * add an SVG rectangle to the current stream. - * If there are curved edges then these are rendered using bezier curves. - * - * @param x the x position of left edge - * @param y the y position of top edge - * @param w the width - * @param h the height - * @param rx the x radius curved edge - * @param ry the y radius curved edge - */ - protected void addRect(float x, float y, float w, float h, - float rx, float ry, DrawingInstruction di) { - PDFNumber pdfNumber = new PDFNumber(); - String str = ""; - if (rx == 0.0 && ry == 0.0) { - str = "" + pdfNumber.doubleOut(x) + " " + pdfNumber.doubleOut(y) + " " + pdfNumber.doubleOut(w) + " " + pdfNumber.doubleOut(h) + " re\n"; - } else { - if (ry == 0.0) - ry = rx; - if (rx > w / 2.0f) - rx = w / 2.0f; - if (ry > h / 2.0f) - ry = h / 2.0f; - str = "" + pdfNumber.doubleOut(x + rx) + " " + pdfNumber.doubleOut(y) + " m\n"; - str += "" + pdfNumber.doubleOut(x + w - rx) + " " + pdfNumber.doubleOut(y) + " l\n"; - str += "" + pdfNumber.doubleOut(x + w - 19 * rx / 40) + " " + pdfNumber.doubleOut(y) + " " + - pdfNumber.doubleOut(x + w) + " " + pdfNumber.doubleOut(y + 19 * ry / 40) + " " + - pdfNumber.doubleOut(x + w) + " " + pdfNumber.doubleOut(y + ry) + " c\n"; - str += "" + pdfNumber.doubleOut(x + w) + " " + pdfNumber.doubleOut(y + h - ry) + " l\n"; - str += "" + pdfNumber.doubleOut(x + w) + " " + pdfNumber.doubleOut(y + h - 19 * ry / 40) + " " + - pdfNumber.doubleOut(x + w - 19 * rx / 40) + " " + pdfNumber.doubleOut(y + h) + " " + - pdfNumber.doubleOut(x + w - rx) + " " + pdfNumber.doubleOut(y + h) + " c\n"; - str += "" + pdfNumber.doubleOut(x + rx) + " " + pdfNumber.doubleOut(y + h) + " l\n"; - str += "" + pdfNumber.doubleOut(x + 19 * rx / 40) + " " + pdfNumber.doubleOut(y + h) + " " + pdfNumber.doubleOut(x) + - " " + pdfNumber.doubleOut(y + h - 19 * ry / 40) + " " + pdfNumber.doubleOut(x) + " " + - pdfNumber.doubleOut(y + h - ry) + " c\n"; - str += "" + pdfNumber.doubleOut(x) + " " + pdfNumber.doubleOut(y + ry) + " l\n"; - str += "" + pdfNumber.doubleOut(x) + " " + pdfNumber.doubleOut(y + 19 * ry / 40) + " " + - pdfNumber.doubleOut(x + 19 * rx / 40) + " " + pdfNumber.doubleOut(y) + " " + pdfNumber.doubleOut(x + rx) + - " " + pdfNumber.doubleOut(y) + " c\n"; - } - currentStream.write(str); - doDrawing(di); - } - - /** - * Adds an SVG path to the current streem. - * An SVG path is made up of a list of drawing instructions that are rendered - * out in order. - * Arcs don't work. - */ - protected void addPath(Vector points, int posx, int posy, - DrawingInstruction di) { - PDFNumber pdfNumber = new PDFNumber(); - SVGPathSegImpl pathmoveto = null; - float lastx = 0; - float lasty = 0; - float lastmovex = 0; - float lastmovey = 0; - float[] cxs; - float tempx; - float tempy; - float lastcx = 0; - float lastcy = 0; - for (Enumeration e = points.elements(); e.hasMoreElements();) { - SVGPathSegImpl pc = (SVGPathSegImpl) e.nextElement(); - float[] vals = pc.getValues(); - switch (pc.getPathSegType()) { - case SVGPathSeg.PATHSEG_MOVETO_ABS: - pathmoveto = pc; - lastx = vals[0]; - lasty = vals[1]; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " m\n"); - lastcx = 0; - lastcy = 0; - lastmovex = lastx; - lastmovey = lasty; - break; - case SVGPathSeg.PATHSEG_MOVETO_REL: - // the test cases seem to interprete this command differently - // it seems if there is an 'm' then the current path is closed - // then the point is move to a place relative to the point - // after doing the close - if (pathmoveto == null) { - lastx += vals[0]; - lasty += vals[1]; - pathmoveto = pc; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " m\n"); - } else { - lastx += vals[0]; - lasty += vals[1]; - pathmoveto = pc; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " l\n"); - } - lastmovex = lastx; - lastmovey = lasty; - lastcx = 0; - lastcy = 0; - break; - case SVGPathSeg.PATHSEG_LINETO_ABS: - lastx = vals[0]; - lasty = vals[1]; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " l\n"); - lastcx = 0; - lastcy = 0; - break; - case SVGPathSeg.PATHSEG_LINETO_REL: - lastx += vals[0]; - lasty += vals[1]; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " l\n"); - lastcx = 0; - lastcy = 0; - break; - case SVGPathSeg.PATHSEG_LINETO_VERTICAL_ABS: - lasty = vals[0]; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " l\n"); - lastcx = 0; - lastcy = 0; - break; - case SVGPathSeg.PATHSEG_LINETO_VERTICAL_REL: - lasty += vals[0]; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " l\n"); - lastcx = 0; - lastcy = 0; - break; - case SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_ABS: - lastx = vals[0]; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " l\n"); - lastcx = 0; - lastcy = 0; - break; - case SVGPathSeg.PATHSEG_LINETO_HORIZONTAL_REL: - lastx += vals[0]; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " l\n"); - lastcx = 0; - lastcy = 0; - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_ABS: - lastx = vals[4]; - lasty = vals[5]; - lastcx = vals[2]; - lastcy = vals[3]; - currentStream.write(pdfNumber.doubleOut(vals[0]) + " " + pdfNumber.doubleOut(vals[1]) + - " " + pdfNumber.doubleOut(vals[2]) + " " + pdfNumber.doubleOut(vals[3]) + " " + - pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " c\n"); - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_REL: - currentStream.write(pdfNumber.doubleOut(vals[0] + lastx) + " " + - pdfNumber.doubleOut(vals[1] + lasty) + " " + - pdfNumber.doubleOut(vals[2] + lastx) + " " + - pdfNumber.doubleOut(vals[3] + lasty) + " " + - pdfNumber.doubleOut(vals[4] + lastx) + " " + - pdfNumber.doubleOut(vals[5] + lasty) + " c\n"); - lastcx = vals[2] + lastx; - lastcy = vals[3] + lasty; - lastx += vals[4]; - lasty += vals[5]; - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_ABS: - if (lastcx == 0) { - lastcx = lastx; - } - if (lastcy == 0) { - lastcy = lasty; - } - lastcx = lastx + (lastx - lastcx); - lastcy = lasty + (lasty - lastcy); - lastx = vals[2]; - lasty = vals[3]; - currentStream.write(pdfNumber.doubleOut(lastcx) + " " + pdfNumber.doubleOut(lastcy) + " " + - pdfNumber.doubleOut(vals[0]) + " " + pdfNumber.doubleOut(vals[1]) + " " + - pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " c\n"); - lastcx = vals[0]; - lastcy = vals[1]; - break; - case SVGPathSeg.PATHSEG_CURVETO_CUBIC_SMOOTH_REL: - if (lastcx == 0) { - lastcx = lastx; - } - if (lastcy == 0) { - lastcy = lasty; - } - lastcx = lastx + (lastx - lastcx); - lastcy = lasty + (lasty - lastcy); - currentStream.write(pdfNumber.doubleOut(lastcx) + " " + pdfNumber.doubleOut(lastcy) + " " + - pdfNumber.doubleOut(vals[0] + lastx) + " " + - pdfNumber.doubleOut(vals[1] + lasty) + " " + - pdfNumber.doubleOut(vals[2] + lastx) + " " + - pdfNumber.doubleOut(vals[3] + lasty) + " c\n"); - lastcx = (vals[0] + lastx); - lastcy = (vals[1] + lasty); - lastx += vals[2]; - lasty += vals[3]; - break; - case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_ABS: - if (lastcx == 0) { - lastcx = lastx; - } - if (lastcy == 0) { - lastcy = lasty; - } - tempx = lastx; - tempy = lasty; - lastx = vals[2]; - lasty = vals[3]; - currentStream.write(pdfNumber.doubleOut(vals[0]) + " " + pdfNumber.doubleOut(vals[1]) + " " + - pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " y\n"); - cxs = calculateLastControl(tempx, tempy, lastx, lasty, -tempx + vals[0], -tempy + vals[1]); - lastcx = cxs[0]; - lastcy = cxs[1]; - break; - case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_REL: - if (lastcx == 0) { - lastcx = lastx; - } - if (lastcy == 0) { - lastcy = lasty; - } - currentStream.write(pdfNumber.doubleOut(vals[0] + lastx) + " " + pdfNumber.doubleOut(vals[1] + lasty) + " " + - pdfNumber.doubleOut(vals[2] + lastx) + " " + - pdfNumber.doubleOut(vals[3] + lasty) + " y\n"); - cxs = calculateLastControl(lastx, lasty, lastx + vals[2], lasty + vals[3], vals[0], vals[1]); - lastcx = cxs[0]; - lastcy = cxs[1]; - lastx += vals[2]; - lasty += vals[3]; - break; - case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS: - if (lastcx == 0) { - lastcx = lastx; - } - if (lastcy == 0) { - lastcy = lasty; - } - tempx = lastx; - tempy = lasty; - lastcx = lastx + (lastx - lastcx); - lastcy = lasty + (lasty - lastcy); - lastx = vals[0]; - lasty = vals[1]; - currentStream.write(pdfNumber.doubleOut(lastcx) + " " + pdfNumber.doubleOut(lastcy) + " " + - pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " y\n"); - cxs = calculateLastControl(tempx, tempy, lastx, lasty, -tempx + lastcx, -tempy + lastcy); - lastcx = cxs[0]; - lastcy = cxs[1]; - break; - case SVGPathSeg.PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL: - if (lastcx == 0) { - lastcx = lastx; - } - if (lastcy == 0) { - lastcy = lasty; - } - lastcx = lastx + (lastx - lastcx); - lastcy = lasty + (lasty - lastcy); - currentStream.write(pdfNumber.doubleOut(lastcx) + " " + pdfNumber.doubleOut(lastcy) + " " + - pdfNumber.doubleOut(vals[0] + lastx) + " " + - pdfNumber.doubleOut(vals[1] + lasty) + " y\n"); - cxs = calculateLastControl(lastx, lasty, lastx + vals[0], lasty + vals[1], -lastx + lastcx, -lasty + lastcy); - lastcx = cxs[0]; - lastcy = cxs[1]; - lastx += vals[0]; - lasty += vals[1]; - break; - case SVGPathSeg.PATHSEG_ARC_ABS: - { - addArc(lastx, lasty, vals[0], vals[1], vals[2], (vals[3] != 0.0), (vals[4] != 0.0), - vals[5], vals[6]); - lastcx = 0; //?? - lastcy = 0; //?? - lastx = vals[5]; - lasty = vals[6]; - } - break; - case SVGPathSeg.PATHSEG_ARC_REL: - { - addArc(lastx, lasty, vals[0], vals[1], vals[2], (vals[3] != 0.0), (vals[4] != 0.0), - lastx + vals[5], lasty + vals[6]); - lastcx = 0; //?? - lastcy = 0; //?? - lastx += vals[5]; - lasty += vals[6]; - } - break; - case SVGPathSeg.PATHSEG_CLOSEPATH: - currentStream.write("h\n"); - pathmoveto = null; - lastx = lastmovex; - lasty = lastmovey; - break; - } - } - doDrawing(di); - } - - /** - * Calculate the last control point for a bezier curve. - * This is used to find the last control point for a curve where - * only the first control point is specified. - * The control point is a reflection of the first control point - * which results in an even smooth curve. The curve is symmetrical. - */ - protected float[] calculateLastControl(float x1, float y1, float x2, float y2, float relx, float rely) - { - float vals[] = new float[2]; - relx = -relx; - rely = -rely; - float dist = (float)Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1)); - float costheta = (float)(x2 - x1) / dist; - float sinetheta = (float)(y2 - y1) / dist; - float temp = relx; - relx = relx * costheta + rely * sinetheta; - rely = -temp * sinetheta + rely * costheta; - relx = -relx; - temp = relx; - relx = relx * costheta - rely * sinetheta; - rely = temp * sinetheta + rely * costheta; - vals[0] = x2 - relx; - vals[1] = y2 - rely; - return vals; - } - - protected void addArc(double startx, double starty, double rx, double ry, - double angle, - boolean largeArcFlag, - boolean sweepFlag, - double x, double y) - { - PDFNumber pdfNumber = new PDFNumber(); - if((startx == x) && (starty == y)) { - return; - } - // Ensure radii are valid - if (rx == 0 || ry == 0) { - currentStream.write(pdfNumber.doubleOut(x) + " " + pdfNumber.doubleOut(y) + " l\n"); - return; - } - if(rx < 0) - rx = -rx; - if(ry < 0) - ry = -ry; - // Convert angle from degrees to radians - angle = toRadians(angle % 360.0); - - double x0 = startx; - double y0 = starty; - // Compute the half distance between the current and the final point - double dx2 = (x0 - x) / 2.0; - double dy2 = (y0 - y) / 2.0; - - double cosAngle = Math.cos(angle); - double sinAngle = Math.sin(angle); - - // Step 1 : Compute (x1, y1) - double x1 = (cosAngle * dx2 + sinAngle * dy2); - double y1 = (-sinAngle * dx2 + cosAngle * dy2); - - double Prx = rx * rx; - double Pry = ry * ry; - double Px1 = x1 * x1; - double Py1 = y1 * y1; - // check that radii are large enough - double radiiCheck = Px1/Prx + Py1/Pry; - if (radiiCheck > 1) { - rx = Math.sqrt(radiiCheck) * rx; - ry = Math.sqrt(radiiCheck) * ry; - Prx = rx * rx; - Pry = ry * ry; - } - - // Step 2 : Compute (cx1, cy1) - double sign = (largeArcFlag == sweepFlag) ? -1 : 1; - double sq = ((Prx*Pry)-(Prx*Py1)-(Pry*Px1)) / ((Prx*Py1)+(Pry*Px1)); - sq = (sq < 0) ? 0 : sq; - double coef = (sign * Math.sqrt(sq)); - double cx1 = coef * ((rx * y1) / ry); - double cy1 = coef * -((ry * x1) / rx); - - // Step 3 : Compute (cx, cy) from (cx1, cy1) - double sx2 = (x0 + x) / 2.0; - double sy2 = (y0 + y) / 2.0; - double cx = sx2 + (cosAngle * cx1 - sinAngle * cy1); - double cy = sy2 + (sinAngle * cx1 + cosAngle * cy1); - - // Step 4 : Compute the angleStart (angle1) and the angleExtent (dangle) - double ux = (x1 - cx1) / rx; - double uy = (y1 - cy1) / ry; - double vx = (-x1 - cx1) / rx; - double vy = (-y1 - cy1) / ry; - double p, n; - // Compute the angle start - n = Math.sqrt((ux * ux) + (uy * uy)); - p = ux; // (1 * ux) + (0 * uy) - sign = (uy < 0) ? -1d : 1d; - double angleStart = toDegrees(sign * Math.acos(p / n)); - - // Compute the angle extent - n = Math.sqrt((ux * ux + uy * uy) * (vx * vx + vy * vy)); - p = ux * vx + uy * vy; - sign = (ux * vy - uy * vx < 0) ? -1d : 1d; - double angleExtent = toDegrees(sign * Math.acos(p / n)); - if(!sweepFlag && angleExtent > 0) { - angleExtent -= 360f; - } else if (sweepFlag && angleExtent < 0) { - angleExtent += 360f; - } - angleExtent %= 360f; - angleStart %= 360f; - - // arc attempt with lines -// System.out.println("start:" + angleStart + " : " + angleExtent + " sweep:" + sweepFlag); - double newx = startx; - double newy = starty; - double currentAngle = angleStart + angle; - boolean wrap = (sweepFlag ? angleStart > angleExtent : angleStart < angleExtent); - boolean wrapped = false; - -/* newx = Math.cos(toRadians(angle)) * rx * Math.cos(toRadians(currentAngle)) - Math.sin(toRadians(angle)) * ry * Math.sin(toRadians(currentAngle)) + cx; - newy = Math.sin(toRadians(angle)) * rx * Math.cos(toRadians(currentAngle)) + Math.cos(toRadians(angle)) * ry * Math.sin(toRadians(currentAngle)) + cy; - System.out.println("ox:" + startx + " oy: " + starty + " nx:" + newx + " ny:" + newy); - newx = Math.cos(toRadians(angle)) * rx * Math.cos(toRadians(angleStart + angleExtent)) - Math.sin(toRadians(angle)) * ry * Math.sin(toRadians(angleStart + angleExtent)) + cx; - newy = Math.sin(toRadians(angle)) * rx * Math.cos(toRadians(angleStart + angleExtent)) + Math.cos(toRadians(angle)) * ry * Math.sin(toRadians(angleStart + angleExtent)) + cy; - System.out.println("ox:" + x + " oy: " + y + " nx:" + newx + " ny:" + newy);*/ - - while(true) { - newx = Math.cos(toRadians(angle)) * rx * Math.cos(toRadians(currentAngle)) - Math.sin(toRadians(angle)) * ry * Math.sin(toRadians(currentAngle)) + cx; - newy = Math.sin(toRadians(angle)) * rx * Math.cos(toRadians(currentAngle)) + Math.cos(toRadians(angle)) * ry * Math.sin(toRadians(currentAngle)) + cy; - currentStream.write(pdfNumber.doubleOut(newx) + " " + pdfNumber.doubleOut(newy) + " l\n"); - currentAngle = (currentAngle + (sweepFlag ? 1 : -1) * 5.0); - if((sweepFlag && currentAngle > (angleStart + angleExtent)) || (!sweepFlag && currentAngle < (angleStart + angleExtent))) { - break; - } - } - currentStream.write(pdfNumber.doubleOut(x) + " " + pdfNumber.doubleOut(y) + " l\n"); - } - - /** - * Adds an SVG polyline or polygon. - * A polygon is merely a closed polyline. - * This is made up from a set of points that straight lines are drawn between. - */ - protected void addPolyline(Vector points, DrawingInstruction di, - boolean close) { - PDFNumber pdfNumber = new PDFNumber(); - PathPoint pc; - float lastx = 0; - float lasty = 0; - Enumeration e = points.elements(); - if (e.hasMoreElements()) { - pc = (PathPoint) e.nextElement(); - lastx = pc.x; - lasty = pc.y; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " m\n"); - } - while (e.hasMoreElements()) { - pc = (PathPoint) e.nextElement(); - lastx = pc.x; - lasty = pc.y; - currentStream.write(pdfNumber.doubleOut(lastx) + " " + pdfNumber.doubleOut(lasty) + " l\n"); - } - if (close) - currentStream.write("h\n"); - doDrawing(di); - } - - /** - * Writes the drawing instruction out to the current stream - * depending on what type of drawing is required. - */ - protected void doDrawing(DrawingInstruction di) { - if (di == null) { - currentStream.write("S\n"); - } else { - if (di.fill) { - if (di.stroke) { - if (!di.nonzero) - currentStream.write("B*\n"); - else - currentStream.write("B\n"); - } else { - if (!di.nonzero) - currentStream.write("f*\n"); - else - currentStream.write("f\n"); - } - } else { - // if(di.stroke) - currentStream.write("S\n"); - } - } - } - - /** - * Renders an svg image to the current stream. - * This uses the FopImageFactory to load the image and then renders it. - */ - public void renderImage(String href, float x, float y, float width, - float height) { - try { - if (href.indexOf(":") == -1) { - href = "file:" + href; - } - FopImage img = FopImageFactory.Make(href); - PDFNumber pdfNumber = new PDFNumber(); - if (img instanceof SVGImage) { - SVGSVGElement svg = - ((SVGImage) img).getSVGDocument().getRootElement(); - currentStream.write("q\n" + pdfNumber.doubleOut(width / - svg.getWidth().getBaseVal().getValue()) + " 0 0 " + - pdfNumber.doubleOut(height / - svg.getHeight().getBaseVal().getValue()) + " 0 0 cm\n"); - renderSVG(svg, (int) x * 1000, (int) y * 1000); - currentStream.write("Q\n"); - // renderSVG(svg); - } else if (img != null) { - int xObjectNum = this.pdfDoc.addImage(img); - currentStream.write("q\n1 0 0 -1 0 " + - pdfNumber.doubleOut(2 * y + height) + " cm\n" + pdfNumber.doubleOut(width) + " 0 0 " + - pdfNumber.doubleOut(height) + " " + pdfNumber.doubleOut(x) + " " + pdfNumber.doubleOut(y) + " cm\n" + "/Im" + - xObjectNum + " Do\nQ\n"); - // img.close(); - } - } catch (Exception e) { - MessageHandler.errorln("could not add image to SVG: " + href); - } - } - - /** - * A symbol has a viewbox and preserve aspect ratio. - */ - protected void renderSymbol(SVGSymbolElement symbol, int x, int y) { - NodeList nl = symbol.getChildNodes(); - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof SVGElement) { - renderElement((SVGElement) n, x, y); - } - } - } - - /** - * Handles the construction of an SVG gradient. - * This gets the gradient element and creates the pdf info - * in the pdf document. - * The type of gradient is determined by what class the gradient element is. - */ - protected void handleGradient(String sp, DrawingInstruction di, - boolean fill, SVGElement area) { - // should be a url to a gradient - String url = (String) sp; - if (url.startsWith("url(")) { - String address; - int b1 = url.indexOf("("); - int b2 = url.indexOf(")"); - address = url.substring(b1 + 1, b2); - SVGElement gi = null; - gi = locateDef(address, area); - if (gi instanceof SVGLinearGradientElement) { - SVGLinearGradientElement linear = - (SVGLinearGradientElement) gi; - handleLinearGradient(linear, di, fill, area); - } else if (gi instanceof SVGRadialGradientElement) { - SVGRadialGradientElement radial = - (SVGRadialGradientElement) gi; - handleRadialGradient(radial, di, fill, area); - } else if (gi instanceof SVGPatternElement) { - SVGPatternElement pattern = (SVGPatternElement) gi; - handlePattern(pattern, di, fill, area); - } else { - MessageHandler.errorln("WARNING Invalid fill reference :" + - gi + ":" + address); - } - } - } - - protected void handlePattern(SVGPatternElement pattern, - DrawingInstruction di, boolean fill, SVGElement area) { - SVGAnimatedLength x, y, width, height; - short pattUnits = SVGUnitTypes.SVG_UNIT_TYPE_UNKNOWN; - NodeList stops = null; - x = pattern.getX(); - y = pattern.getY(); - width = pattern.getWidth(); - height = pattern.getHeight(); - NodeList nl = pattern.getChildNodes(); - SVGPatternElement ref = (SVGPatternElement) locateDef( - pattern.getHref().getBaseVal(), pattern); - while (ref != null) { - if (x == null) { - x = ref.getX(); - pattUnits = ref.getPatternUnits().getBaseVal(); - } - if (y == null) { - y = ref.getY(); - } - if (width == null) { - width = ref.getWidth(); - } - if (height == null) { - height = ref.getHeight(); - } - if (nl.getLength() == 0) { - nl = ref.getChildNodes(); - } - ref = (SVGPatternElement) locateDef( - ref.getHref().getBaseVal(), ref); - } - if (x == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 0); - x = new SVGAnimatedLengthImpl(length); - } - if (y == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 0); - y = new SVGAnimatedLengthImpl(length); - } - if (width == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 1); - width = new SVGAnimatedLengthImpl(length); - } - if (height == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 1); - height = new SVGAnimatedLengthImpl(length); - } - - StringWriter realStream = currentStream; - currentStream = new StringWriter(); - - currentStream.write("q\n"); - // this makes the pattern the right way up, since it is outside the original - // transform around the whole svg document - currentStream.write("1 0 0 -1 0 " + - height.getBaseVal().getValue() + " cm\n"); - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof SVGElement) { - renderElement((SVGElement) n, 0, 0); - } - } - currentStream.write("Q\n"); - - double xval = x.getBaseVal().getValue() + currentXPosition / 1000f; - double yval = -y.getBaseVal().getValue() + currentYPosition / 1000f; - if (area instanceof GraphicElement) { - SVGRect bbox = ((GraphicElement) area).getBBox(); - if (bbox != null) { - // xval += bbox.getX(); - // yval -= bbox.getY(); - } - } - double widthval = width.getBaseVal().getValue(); - double heightval = height.getBaseVal().getValue(); - Vector bbox = new Vector(); - bbox.addElement(new Double(0)); - bbox.addElement(new Double(0)); - bbox.addElement(new Double(widthval)); - bbox.addElement(new Double(heightval)); - Vector translate = new Vector(); - // combine with pattern transform - translate.addElement(new Double(1)); - translate.addElement(new Double(0)); - translate.addElement(new Double(0)); - translate.addElement(new Double(1)); - translate.addElement(new Double(xval)); - translate.addElement(new Double(yval)); - // need to handle PDFResources - PDFPattern myPat = - this.pdfDoc.makePattern(1, null, 1, 1, bbox, widthval, - heightval, translate, null, currentStream.getBuffer()); - - currentStream = realStream; - currentStream.write(myPat.getColorSpaceOut(fill)); - if (fill) - di.fill = true; - else - di.stroke = true; - } - - protected void handleLinearGradient( - SVGLinearGradientElement linear, DrawingInstruction di, - boolean fill, SVGElement area) { - // first get all the gradient values - // if values not present follow the href - // the gradient units will be where the vals are specified - // the spread method will be where there are stop elements - SVGAnimatedLength ax1, ax2, ay1, ay2; - short spread = SVGGradientElement.SVG_SPREADMETHOD_UNKNOWN; - short gradUnits = SVGUnitTypes.SVG_UNIT_TYPE_UNKNOWN; - NodeList stops = null; - ax1 = linear.getX1(); - ax2 = linear.getX2(); - ay1 = linear.getY1(); - ay2 = linear.getY2(); - stops = linear.getChildNodes(); - SVGLinearGradientElement ref = (SVGLinearGradientElement) locateDef( - linear.getHref().getBaseVal(), linear); - while (ref != null) { - if (ax1 == null) { - ax1 = ref.getX1(); - gradUnits = ref.getGradientUnits().getBaseVal(); - } - if (ax2 == null) { - ax2 = ref.getX2(); - } - if (ay1 == null) { - ay1 = ref.getY1(); - } - if (ay2 == null) { - ay2 = ref.getY2(); - } - if (stops.getLength() == 0) { - stops = ref.getChildNodes(); - } - ref = (SVGLinearGradientElement) locateDef( - ref.getHref().getBaseVal(), ref); - } - if (ax1 == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 0); - ax1 = new SVGAnimatedLengthImpl(length); - } - if (ax2 == null) { - // if x2 is not specified then it should be 100% - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 1); - ax2 = new SVGAnimatedLengthImpl(length); - } - if (ay1 == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 0); - ay1 = new SVGAnimatedLengthImpl(length); - } - if (ay2 == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 0); - ay2 = new SVGAnimatedLengthImpl(length); - } - SVGAnimatedTransformList an = linear.getGradientTransform(); - SVGMatrix transform = null; - if(an != null) - transform = an.getBaseVal().consolidate().getMatrix(); - Vector theCoords = null; - if (gradUnits == SVGUnitTypes.SVG_UNIT_TYPE_UNKNOWN) - gradUnits = linear.getGradientUnits().getBaseVal(); - // spread: pad (normal), reflect, repeat - spread = linear.getSpreadMethod().getBaseVal(); - if (gradUnits == SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE) { - if (area instanceof SVGTransformable) { - SVGTransformable tf = (SVGTransformable) area; - double x1, y1, x2, y2; - x1 = ax1.getBaseVal().getValue(); - y1 = -ay1.getBaseVal().getValue(); - x2 = ax2.getBaseVal().getValue(); - y2 = -ay2.getBaseVal().getValue(); - SVGMatrix matrix = tf.getScreenCTM(); - if(transform != null) - matrix = matrix.multiply(transform); - double oldx = x1; - x1 = matrix.getA() * x1 + matrix.getC() * y1 + - matrix.getE(); - y1 = matrix.getB() * oldx + matrix.getD() * y1 - - matrix.getF(); - oldx = x2; - x2 = matrix.getA() * x2 + matrix.getC() * y2 + - matrix.getE(); - y2 = matrix.getB() * oldx + matrix.getD() * y2 - - matrix.getF(); - theCoords = new Vector(); - if (spread == SVGGradientElement.SVG_SPREADMETHOD_REFLECT) { - } else if (spread == - SVGGradientElement.SVG_SPREADMETHOD_REFLECT) { - } else { - theCoords.addElement( - new Double(currentXPosition / 1000f + x1)); - theCoords.addElement( - new Double(currentYPosition / 1000f + y1)); - theCoords.addElement( - new Double(currentXPosition / 1000f + x2)); - theCoords.addElement( - new Double(currentYPosition / 1000f + y2)); - } - } - } else if (area instanceof GraphicElement) { - SVGRect rect = ((GraphicElement) area).getBBox(); - if (rect != null) { - theCoords = new Vector(); - SVGLength val; - val = ax1.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentXPosition / 1000f + - rect.getX() + - val.getValue() * rect.getWidth())); - } else { - theCoords.addElement( - new Double(currentXPosition / 1000f + - val.getValue())); - } - val = ay1.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentYPosition / 1000f - - rect.getY() - - val.getValue() * rect.getHeight())); - } else { - theCoords.addElement( - new Double(currentYPosition / 1000f - - val.getValue())); - } - val = ax2.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentXPosition / 1000f + - rect.getX() + - val.getValue() * rect.getWidth())); - } else { - theCoords.addElement( - new Double(currentXPosition / 1000f + - val.getValue())); - } - val = ay2.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentYPosition / 1000f - - rect.getY() - - val.getValue() * rect.getHeight())); - } else { - theCoords.addElement( - new Double(currentYPosition / 1000f - - val.getValue())); - } - } - } - if (theCoords == null) { - theCoords = new Vector(); - theCoords.addElement( new Double(currentXPosition / 1000f + - ax1.getBaseVal().getValue())); - theCoords.addElement( new Double(currentYPosition / 1000f - - ay1.getBaseVal().getValue())); - theCoords.addElement( new Double(currentXPosition / 1000f + - ax2.getBaseVal().getValue())); - theCoords.addElement( new Double(currentYPosition / 1000f - - ay2.getBaseVal().getValue())); - } - - Vector theExtend = new Vector(); - theExtend.addElement(new Boolean(true)); - theExtend.addElement(new Boolean(true)); - - Vector theDomain = new Vector(); - theDomain.addElement(new Double(0)); - theDomain.addElement(new Double(1)); - - Vector theEncode = new Vector(); - theEncode.addElement(new Double(0)); - theEncode.addElement(new Double(1)); - theEncode.addElement(new Double(0)); - theEncode.addElement(new Double(1)); - - Vector theBounds = new Vector(); - theBounds.addElement(new Double(0)); - theBounds.addElement(new Double(1)); - - Vector theFunctions = new Vector(); - - NodeList nl = stops; - Vector someColors = new Vector(); - float lastoffset = 0; - Vector lastVector = null; - SVGStopElementImpl stop; - if (nl.getLength() == 0) { - // the color should be "none" - if (fill) - di.fill = false; - else - di.stroke = false; - return; - } else if (nl.getLength() == 1) { - stop = (SVGStopElementImpl) nl.item(0); - CSSValue cv = stop.getPresentationAttribute("stop-color"); - if (cv == null) { - // maybe using color - cv = stop.getPresentationAttribute("color"); - } - if (cv == null) { - // problems - MessageHandler.errorln("no stop-color or color in stop element"); - return; - } - PDFColor color = new PDFColor(0, 0, 0); - if (cv != null && - cv.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) cv).getPrimitiveType() == - CSSPrimitiveValue.CSS_RGBCOLOR) { - RGBColor col = - ((CSSPrimitiveValue) cv).getRGBColorValue(); - CSSPrimitiveValue val; - val = col.getRed(); - float red = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getGreen(); - float green = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getBlue(); - float blue = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - color = new PDFColor(red, green, blue); - } - } - currentStream.write(color.getColorSpaceOut(fill)); - if (fill) - di.fill = true; - else - di.stroke = true; - return; - } - for (int count = 0; count < nl.getLength(); count++) { - stop = (SVGStopElementImpl) nl.item(count); - CSSValue cv = stop.getPresentationAttribute("stop-color"); - if (cv == null) { - // maybe using color - cv = stop.getPresentationAttribute("color"); - } - if (cv == null) { - // problems - MessageHandler.errorln("no stop-color or color in stop element"); - continue; - } - PDFColor color = new PDFColor(0, 0, 0); - if (cv != null && - cv.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) cv).getPrimitiveType() == - CSSPrimitiveValue.CSS_RGBCOLOR) { - RGBColor col = - ((CSSPrimitiveValue) cv).getRGBColorValue(); - CSSPrimitiveValue val; - val = col.getRed(); - float red = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getGreen(); - float green = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getBlue(); - float blue = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - color = new PDFColor(red, green, blue); - currentColour = color; - } - } - float offset = stop.getOffset().getBaseVal(); - Vector colVector = color.getVector(); - // create bounds from last to offset - if (lastVector != null) { - Vector theCzero = lastVector; - Vector theCone = colVector; - PDFFunction myfunc = - this.pdfDoc.makeFunction(2, theDomain, null, - theCzero, theCone, 1.0); - theFunctions.addElement(myfunc); - } - lastoffset = offset; - lastVector = colVector; - someColors.addElement(color); - } - ColorSpace aColorSpace = new ColorSpace(ColorSpace.DEVICE_RGB); - /* PDFFunction myfunky = this.pdfDoc.makeFunction(3, - theDomain, null, - theFunctions, null, - theEncode); - PDFShading myShad = null; - myShad = this.pdfDoc.makeShading( - 2, aColorSpace, - null, null, false, - theCoords, null, myfunky,theExtend); - PDFPattern myPat = this.pdfDoc.makePattern(2, myShad, null, null, null);*/ - PDFPattern myPat = this.pdfDoc.createGradient(false, aColorSpace, - someColors, null, theCoords); - currentStream.write(myPat.getColorSpaceOut(fill)); - if (fill) - di.fill = true; - else - di.stroke = true; - } - - protected void handleRadialGradient( - SVGRadialGradientElement radial, DrawingInstruction di, - boolean fill, SVGElement area) { - // first get all the gradient values - // if values not present follow the href - // the gradient units will be where the vals are specified - SVGAnimatedLength acx, acy, ar, afx, afy; - short gradUnits = radial.getGradientUnits().getBaseVal(); - NodeList stops = null; - acx = radial.getCx(); - acy = radial.getCy(); - ar = radial.getR(); - afx = radial.getFx(); - afy = radial.getFy(); - stops = radial.getChildNodes(); - SVGRadialGradientElement ref = (SVGRadialGradientElement) locateDef( - radial.getHref().getBaseVal(), radial); - while (ref != null) { - if (acx == null) { - acx = ref.getCx(); - gradUnits = ref.getGradientUnits().getBaseVal(); - } - if (acy == null) { - acy = ref.getCy(); - } - if (ar == null) { - ar = ref.getR(); - } - if (afx == null) { - afx = ref.getFx(); - } - if (afy == null) { - afy = ref.getFy(); - } - if (stops.getLength() == 0) { - stops = ref.getChildNodes(); - } - ref = (SVGRadialGradientElement) locateDef( - ref.getHref().getBaseVal(), ref); - } - if (acx == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 0.5f); - acx = new SVGAnimatedLengthImpl(length); - } - if (acy == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 0.5f); - acy = new SVGAnimatedLengthImpl(length); - } - if (ar == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 1); - ar = new SVGAnimatedLengthImpl(length); - } - if (afx == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 0.5f); - afx = new SVGAnimatedLengthImpl(length); - } - if (afy == null) { - SVGLength length = new SVGLengthImpl(); - length.newValueSpecifiedUnits( - SVGLength.SVG_LENGTHTYPE_PERCENTAGE, 0.5f); - afy = new SVGAnimatedLengthImpl(length); - } - ColorSpace aColorSpace = new ColorSpace(ColorSpace.DEVICE_RGB); - org.w3c.dom.NodeList nl = stops; - SVGStopElementImpl stop; - if (nl.getLength() == 0) { - // the color should be "none" - if (fill) - di.fill = false; - else - di.stroke = false; - return; - } else if (nl.getLength() == 1) { - stop = (SVGStopElementImpl) nl.item(0); - CSSValue cv = stop.getPresentationAttribute("stop-color"); - if (cv == null) { - // maybe using color - cv = stop.getPresentationAttribute("color"); - } - if (cv == null) { - // problems - MessageHandler.errorln("no stop-color or color in stop element"); - return; - } - PDFColor color = new PDFColor(0, 0, 0); - if (cv != null && - cv.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) cv).getPrimitiveType() == - CSSPrimitiveValue.CSS_RGBCOLOR) { - RGBColor col = - ((CSSPrimitiveValue) cv).getRGBColorValue(); - CSSPrimitiveValue val; - val = col.getRed(); - float red = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getGreen(); - float green = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getBlue(); - float blue = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - color = new PDFColor(red, green, blue); - } - } - currentStream.write(color.getColorSpaceOut(fill)); - if (fill) - di.fill = true; - else - di.stroke = true; - return; - } - Hashtable table = null; - Vector someColors = new Vector(); - Vector theCoords = null; - Vector theBounds = new Vector(); - // the coords should be relative to the current object - // check value types, eg. % - if (gradUnits == SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE) { - if (area instanceof SVGTransformable) { - SVGTransformable tf = (SVGTransformable) area; - double x1, y1, x2, y2; - x1 = acx.getBaseVal().getValue(); - y1 = -acy.getBaseVal().getValue(); - x2 = afx.getBaseVal().getValue(); - y2 = -afy.getBaseVal().getValue(); - SVGMatrix matrix = tf.getScreenCTM(); - double oldx = x1; - x1 = matrix.getA() * x1 + matrix.getB() * y1 + - matrix.getE(); - y1 = matrix.getC() * oldx + matrix.getD() * y1 + - matrix.getF(); - oldx = x2; - x2 = matrix.getA() * x2 + matrix.getB() * y2 + - matrix.getE(); - y2 = matrix.getC() * oldx + matrix.getD() * y2 + - matrix.getF(); - theCoords = new Vector(); - // if(spread == SVGGradientElement.SVG_SPREADMETHOD_REFLECT) { - // } else if(spread== SVGGradientElement.SVG_SPREADMETHOD_REFLECT) { - // } else { - theCoords.addElement( - new Double(currentXPosition / 1000f + x1)); - // the y val needs to be adjust by 2 * R * rotation - // depending on if this value is from an x or y coord - // before transformation - theCoords.addElement( - new Double(currentYPosition / 1000f - y1 + - (matrix.getC() - matrix.getD()) * 2 * - ar.getBaseVal().getValue())); - theCoords.addElement(new Double(0)); - theCoords.addElement( - new Double(currentXPosition / 1000f + x2)); - theCoords.addElement( - new Double(currentYPosition / 1000f - y2 + - (matrix.getC() - matrix.getD()) * 2 * - ar.getBaseVal().getValue())); - theCoords.addElement( - new Double(ar.getBaseVal().getValue())); - // } - } - } else if (gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX && - area instanceof GraphicElement) { - SVGRect rect = ((GraphicElement) area).getBBox(); - if (rect != null) { - theCoords = new Vector(); - SVGLength val; - val = acx.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentXPosition / 1000f + - rect.getX() + - val.getValue() * rect.getWidth())); - } else { - theCoords.addElement( - new Double(currentXPosition / 1000f + - val.getValue())); - } - val = acy.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentYPosition / 1000f - - rect.getY() - - val.getValue() * rect.getHeight())); - } else { - theCoords.addElement( - new Double(currentYPosition / 1000f - - val.getValue())); - } - theCoords.addElement(new Double(0)); - val = afx.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentXPosition / 1000f + - rect.getX() + - val.getValue() * rect.getWidth())); - } else { - theCoords.addElement( - new Double(currentXPosition / 1000f + - val.getValue())); - } - val = afy.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentYPosition / 1000f - - rect.getY() - - val.getValue() * rect.getHeight())); - } else { - theCoords.addElement( - new Double(currentYPosition / 1000f - - val.getValue())); - } - val = ar.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(val.getValue() * rect.getHeight())); - } else { - theCoords.addElement(new Double(val.getValue())); - } - } - } - if (theCoords == null) { - // percentage values are expressed according to the viewport. - SVGElement vp = - ((GraphicElement) area).getNearestViewportElement(); - if (area instanceof GraphicElement) { - SVGRect rect = ((GraphicElement) area).getBBox(); - if (rect != null) { - theCoords = new Vector(); - SVGLength val = acx.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || - gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentXPosition / 1000f + - rect.getX() + - val.getValue() * rect.getWidth())); - } else { - theCoords.addElement( - new Double(currentXPosition / 1000f + - val.getValue())); - } - val = acy.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || - gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentYPosition / 1000f - - rect.getY() - - val.getValue() * rect.getHeight())); - } else { - theCoords.addElement( - new Double(currentYPosition / 1000f - - val.getValue())); - } - theCoords.addElement(new Double(0)); - val = afx.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || - gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentXPosition / 1000f + - rect.getX() + - val.getValue() * rect.getWidth())); - } else { - theCoords.addElement( - new Double(currentXPosition / 1000f + - val.getValue())); - } - val = afy.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || - gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( - new Double(currentYPosition / 1000f - - rect.getY() - - val.getValue() * rect.getHeight())); - } else { - theCoords.addElement( - new Double(currentYPosition / 1000f - - val.getValue())); - } - val = ar.getBaseVal(); - if (val.getUnitType() == - SVGLength.SVG_LENGTHTYPE_PERCENTAGE || - gradUnits == - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) { - theCoords.addElement( new Double(val.getValue() * - rect.getHeight())); - } else { - theCoords.addElement(new Double(val.getValue())); - } - } - } - } - if (theCoords == null) { - theCoords = new Vector(); - theCoords.addElement( new Double(currentXPosition / 1000f + - acx.getBaseVal().getValue())); - theCoords.addElement( new Double(currentYPosition / 1000f - - acy.getBaseVal().getValue())); - theCoords.addElement(new Double(0)); - theCoords.addElement( new Double(currentXPosition / 1000f + - afx.getBaseVal().getValue())); // Fx - theCoords.addElement( - new Double(currentYPosition / 1000f - - afy.getBaseVal().getValue())); // Fy - theCoords.addElement( - new Double(ar.getBaseVal().getValue())); - } - float lastoffset = 0; - for (int count = 0; count < nl.getLength(); count++) { - stop = (SVGStopElementImpl) nl.item(count); - CSSValue cv = stop.getPresentationAttribute("stop-color"); - if (cv == null) { - // maybe using color - cv = stop.getPresentationAttribute("color"); - } - if (cv == null) { - // problems - MessageHandler.errorln("no stop-color or color in stop element"); - continue; - } - PDFColor color = new PDFColor(0, 0, 0); - if (cv != null && - cv.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) cv).getPrimitiveType() == - CSSPrimitiveValue.CSS_RGBCOLOR) { - RGBColor col = - ((CSSPrimitiveValue) cv).getRGBColorValue(); - CSSPrimitiveValue val; - val = col.getRed(); - float red = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getGreen(); - float green = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getBlue(); - float blue = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - color = new PDFColor(red, green, blue); - } - } - float offset = stop.getOffset().getBaseVal(); - // create bounds from last to offset - lastoffset = offset; - someColors.addElement(color); - } - PDFPattern myPat = this.pdfDoc.createGradient(true, aColorSpace, - someColors, theBounds, theCoords); - - currentStream.write(myPat.getColorSpaceOut(fill)); - if (fill) - di.fill = true; - else - di.stroke = true; - } - - /* - * This sets up the style for drawing objects. - * Should only set style for elements that have changes. - * - */ - // need mask drawing - class DrawingInstruction { - boolean stroke = false; - boolean nonzero = false; // non-zero fill rule "f*", "B*" operator - boolean fill = false; - int linecap = 0; // butt - int linejoin = 0; // miter - int miterwidth = 8; - } - protected DrawingInstruction applyStyle(SVGElement area, - SVGStylable style) { - DrawingInstruction di = new DrawingInstruction(); - CSSValue sp; - sp = style.getPresentationAttribute("fill"); - if (sp != null) { - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_RGBCOLOR) { - RGBColor col = - ((CSSPrimitiveValue) sp).getRGBColorValue(); - CSSPrimitiveValue val; - val = col.getRed(); - float red = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getGreen(); - float green = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getBlue(); - float blue = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - PDFColor fillColour = new PDFColor(red, green, blue); - currentColour = fillColour; - currentStream.write(fillColour.getColorSpaceOut(true)); - di.fill = true; - } else if ( ((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_URI) { - // gradient - String str = ((CSSPrimitiveValue) sp).getCssText(); - handleGradient(str, di, true, area); - } else if ( ((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - String str = ((CSSPrimitiveValue) sp).getCssText(); - if (str.equals("none")) { - di.fill = false; - } else if (str.equals("currentColor")) { - currentStream.write( - currentColour.getColorSpaceOut(true)); - di.fill = true; - // } else { - // handleGradient(str, true, area); - } - } - } - } else { - PDFColor fillColour = new PDFColor(0, 0, 0); - currentStream.write(fillColour.getColorSpaceOut(true)); - } - sp = style.getPresentationAttribute("fill-rule"); - if (sp != null) { - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - if (sp.getCssText().equals("nonzero")) { - di.nonzero = true; - } - } - } - } else { - } - sp = style.getPresentationAttribute("stroke"); - if (sp != null) { - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_RGBCOLOR) { - RGBColor col = - ((CSSPrimitiveValue) sp).getRGBColorValue(); - CSSPrimitiveValue val; - val = col.getRed(); - float red = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getGreen(); - float green = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - val = col.getBlue(); - float blue = val.getFloatValue( - CSSPrimitiveValue.CSS_NUMBER); - PDFColor fillColour = new PDFColor(red, green, blue); - currentStream.write( - fillColour.getColorSpaceOut(false)); - di.stroke = true; - } else if ( ((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_URI) { - // gradient - String str = ((CSSPrimitiveValue) sp).getCssText(); - handleGradient(str, di, false, area); - } else if ( ((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - String str = ((CSSPrimitiveValue) sp).getCssText(); - if (str.equals("none")) { - di.stroke = false; - // } else { - // handleGradient(str, false, area); - } - } - } - } else { - PDFColor fillColour = new PDFColor(0, 0, 0); - currentStream.write(fillColour.getColorSpaceOut(false)); - } - sp = style.getPresentationAttribute("stroke-linecap"); - if (sp != null) { - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - String str = sp.getCssText(); - // butt, round ,square - if (str.equals("butt")) { - currentStream.write(0 + " J\n"); - } else if (str.equals("round")) { - currentStream.write(1 + " J\n"); - } else if (str.equals("square")) { - currentStream.write(2 + " J\n"); - } - } - } - } else { - } - sp = style.getPresentationAttribute("stroke-linejoin"); - if (sp != null) { - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - String str = sp.getCssText(); - if (str.equals("miter")) { - currentStream.write(0 + " j\n"); - } else if (str.equals("round")) { - currentStream.write(1 + " j\n"); - } else if (str.equals("bevel")) { - currentStream.write(2 + " j\n"); - } - } - } - } else { - } - sp = style.getPresentationAttribute("stroke-miterlimit"); - if (sp != null) { - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - float width; - width = ((CSSPrimitiveValue) sp).getFloatValue( - CSSPrimitiveValue.CSS_PT); - PDFNumber pdfNumber = new PDFNumber(); - currentStream.write(pdfNumber.doubleOut(width) + " M\n"); - } - } else { - } - sp = style.getPresentationAttribute("stroke-width"); - if (sp != null) { - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - float width; - width = ((CSSPrimitiveValue) sp).getFloatValue( - CSSPrimitiveValue.CSS_PT); - PDFNumber pdfNumber = new PDFNumber(); - currentStream.write(pdfNumber.doubleOut(width) + " w\n"); - } - } - sp = style.getPresentationAttribute("stroke-dasharray"); - if (sp != null) { - if (sp.getValueType() == CSSValue.CSS_VALUE_LIST) { - currentStream.write("[ "); - CSSValueList list = (CSSValueList) sp; - for (int count = 0; count < list.getLength(); count++) { - CSSValue val = list.item(count); - if (val.getValueType() == - CSSValue.CSS_PRIMITIVE_VALUE) { - currentStream.write( - ((CSSPrimitiveValue) val).getFloatValue( - CSSPrimitiveValue.CSS_NUMBER) + " "); - } - } - currentStream.write("] "); - sp = style.getPresentationAttribute("stroke-dashoffset"); - if (sp != null && sp.getValueType() == - CSSValue.CSS_PRIMITIVE_VALUE) { - currentStream.write( - ((CSSPrimitiveValue) sp).getFloatValue( - CSSPrimitiveValue.CSS_NUMBER) + " d\n"); - } else { - currentStream.write("0 d\n"); - } - } - } - sp = style.getPresentationAttribute("clip-path"); - if (sp != null) { - String clipurl; - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_URI) { - clipurl = ((CSSPrimitiveValue) sp).getCssText(); - if (clipurl.startsWith("url(")) { - int b1 = clipurl.indexOf("("); - int b2 = clipurl.indexOf(")"); - clipurl = clipurl.substring(b1 + 1, b2); - } - // get def of mask and set mask - SVGElement graph = null; - graph = locateDef(clipurl, area); - if (graph != null) { - MessageHandler.logln("clip path: " + graph); - // render the clip path elements and make it the clip - // renderElement(svgarea, graph, posx, posy); - } - } - } - } - sp = style.getPresentationAttribute("mask"); - if (sp != null) { - String maskurl; - if (sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_URI) { - maskurl = ((CSSPrimitiveValue) sp).getCssText(); - // System.out.println("mask: " + maskurl); - // get def of mask and set mask - if (maskurl.startsWith("url(")) { - int b1 = maskurl.indexOf("("); - int b2 = maskurl.indexOf(")"); - maskurl = maskurl.substring(b1 + 1, b2); - } - SVGElement graph = null; - graph = locateDef(maskurl, area); - if (graph != null) { - MessageHandler.logln("mask: " + graph); - // SVGElement parent = graph.getGraphicParent(); - // graph.setParent(area); - // renderElement(svgarea, graph, posx, posy); - // graph.setParent(parent); - } - } - } - } - return di; - } - - protected void applyTransform(SVGAnimatedTransformList trans) { - PDFNumber pdfNumber = new PDFNumber(); - SVGTransformList list = trans.getBaseVal(); - for (int count = 0; count < list.getNumberOfItems(); count++) { - SVGMatrix matrix = - ((SVGTransform) list.getItem(count)).getMatrix(); - currentStream.write(pdfNumber.doubleOut(matrix.getA(), 5) + - " " + pdfNumber.doubleOut(matrix.getB(), 5) + " " + - pdfNumber.doubleOut(matrix.getC(), 5) + " " + - pdfNumber.doubleOut(matrix.getD(), 5) + " " + - pdfNumber.doubleOut(matrix.getE(), 5) + " " + - pdfNumber.doubleOut(matrix.getF(), 5) + " cm\n"); - } - } - - /** - * Main rendering selection. - * This applies any transform and style and then calls the appropriate - * rendering method depending on the type of element. - */ - public void renderElement(SVGElement area, int posx, int posy) { - int x = posx; - int y = posy; - // CSSStyleDeclaration style = null; - // if(area instanceof SVGStylable) - // style = ((SVGStylable)area).getStyle(); - DrawingInstruction di = null; - - currentStream.write("q\n"); - if (area instanceof SVGTransformable) { - SVGTransformable tf = (SVGTransformable) area; - SVGAnimatedTransformList trans = tf.getTransform(); - if (trans != null) { - applyTransform(trans); - } - } - - if (area instanceof SVGStylable) { - di = applyStyle(area, (SVGStylable) area); - } - - if (area instanceof SVGRectElement) { - SVGRectElement rg = (SVGRectElement) area; - float rectx = rg.getX().getBaseVal().getValue(); - float recty = rg.getY().getBaseVal().getValue(); - float rx = rg.getRx().getBaseVal().getValue(); - float ry = rg.getRy().getBaseVal().getValue(); - float rw = rg.getWidth().getBaseVal().getValue(); - float rh = rg.getHeight().getBaseVal().getValue(); - addRect(rectx, recty, rw, rh, rx, ry, di); - } else if (area instanceof SVGLineElement) { - SVGLineElement lg = (SVGLineElement) area; - float x1 = lg.getX1().getBaseVal().getValue(); - float y1 = lg.getY1().getBaseVal().getValue(); - float x2 = lg.getX2().getBaseVal().getValue(); - float y2 = lg.getY2().getBaseVal().getValue(); - addLine(x1, y1, x2, y2, di); - } else if (area instanceof SVGTextElementImpl) { - // currentStream.add("q\n"); - // currentStream.add(1 + " " + 0 + " " + 0 + " " + 1 + " " + 0 + " " + 0 + " cm\n"); - currentStream.write("BT\n"); - renderText((SVGTextElementImpl) area, 0, 0, di); - currentStream.write("ET\n"); - // currentStream.add("Q\n"); - } else if (area instanceof SVGCircleElement) { - SVGCircleElement cg = (SVGCircleElement) area; - float cx = cg.getCx().getBaseVal().getValue(); - float cy = cg.getCy().getBaseVal().getValue(); - float r = cg.getR().getBaseVal().getValue(); - addCircle(cx, cy, r, di); - } else if (area instanceof SVGEllipseElement) { - SVGEllipseElement cg = (SVGEllipseElement) area; - float cx = cg.getCx().getBaseVal().getValue(); - float cy = cg.getCy().getBaseVal().getValue(); - float rx = cg.getRx().getBaseVal().getValue(); - float ry = cg.getRy().getBaseVal().getValue(); - addEllipse(cx, cy, rx, ry, di); - } else if (area instanceof SVGPathElementImpl) { - addPath(((SVGPathElementImpl) area).pathElements, posx, - posy, di); - } else if (area instanceof SVGPolylineElementImpl) { - addPolyline(((SVGPolylineElementImpl) area).points, di, false); - } else if (area instanceof SVGPolygonElementImpl) { - addPolyline(((SVGPolygonElementImpl) area).points, di, true); - } else if (area instanceof SVGGElementImpl) { - renderGArea((SVGGElementImpl) area, x, y); - } else if (area instanceof SVGUseElementImpl) { - SVGUseElementImpl ug = (SVGUseElementImpl) area; - String ref = ug.link; - // ref = ref.substring(1, ref.length()); - SVGElement graph = null; - graph = locateDef(ref, ug); - if (graph != null) { - // probably not the best way to do this, should be able - // to render without the style being set. - // SVGElement parent = graph.getGraphicParent(); - // graph.setParent(area); - // need to clip (if necessary) to the use area - // the style of the linked element is as if it was - // a direct descendant of the use element. - - // scale to the viewBox - - if (graph instanceof SVGSymbolElement) { - currentStream.write("q\n"); - SVGSymbolElement symbol = (SVGSymbolElement) graph; - SVGRect view = symbol.getViewBox().getBaseVal(); - float usex = ug.getX().getBaseVal().getValue(); - float usey = ug.getY().getBaseVal().getValue(); - float usewidth = ug.getWidth().getBaseVal().getValue(); - float useheight = - ug.getHeight().getBaseVal().getValue(); - float scaleX; - float scaleY; - scaleX = usewidth / view.getWidth(); - scaleY = useheight / view.getHeight(); - currentStream.write(usex + " " + usey + " m\n"); - currentStream.write((usex + usewidth) + " " + - usey + " l\n"); - currentStream.write((usex + usewidth) + " " + - (usey + useheight) + " l\n"); - currentStream.write(usex + " " + - (usey + useheight) + " l\n"); - currentStream.write("h\n"); - currentStream.write("W\n"); - currentStream.write("n\n"); - currentStream.write(scaleX + " 0 0 " + scaleY + - " " + usex + " " + usey + " cm\n"); - renderSymbol(symbol, posx, posy); - currentStream.write("Q\n"); - } else { - renderElement(graph, posx, posy); - } - // graph.setParent(parent); - } - else { - MessageHandler.logln("Use Element: " + ref + " not found"); - } - } else if (area instanceof SVGImageElementImpl) { - SVGImageElementImpl ig = (SVGImageElementImpl) area; - renderImage(ig.link, ig.x, ig.y, ig.width, ig.height); - } else if (area instanceof SVGSVGElement) { - currentStream.write("q\n"); - SVGSVGElement svgel = (SVGSVGElement) area; - float svgx = 0; - if (svgel.getX() != null) - svgx = svgel.getX().getBaseVal().getValue(); - float svgy = 0; - if (svgel.getY() != null) - svgy = svgel.getY().getBaseVal().getValue(); - currentStream.write(1 + " 0 0 " + 1 + " " + svgx + " " + - svgy + " cm\n"); - renderSVG(svgel, (int)(x + 1000 * svgx), - (int)(y + 1000 * svgy)); - currentStream.write("Q\n"); - // } else if (area instanceof SVGSymbolElement) { - // 'symbol' element is not rendered (except by 'use') - } else if (area instanceof SVGAElement) { - SVGAElement ael = (SVGAElement) area; - org.w3c.dom.NodeList nl = ael.getChildNodes(); - for (int count = 0; count < nl.getLength(); count++) { - org.w3c.dom.Node n = nl.item(count); - if (n instanceof SVGElement) { - if (n instanceof GraphicElement) { - SVGRect rect = ((GraphicElement) n).getBBox(); - if (rect != null) { - /* currentAnnotList = this.pdfDoc.makeAnnotList(); - currentPage.setAnnotList(currentAnnotList); - String dest = linkSet.getDest(); - int linkType = linkSet.getLinkType(); - currentAnnotList.addLink( - this.pdfDoc.makeLink(lrect.getRectangle(), dest, linkType)); - currentAnnotList = null; - */ } - } - renderElement((SVGElement) n, posx, posy); - } - } - } else if (area instanceof SVGSwitchElement) { - handleSwitchElement(posx, posy, (SVGSwitchElement) area); - } - // should be done with some cleanup code, so only - // required values are reset. - currentStream.write("Q\n"); - } - - /** - * Todo: underline, linethrough, textpath - */ - public void renderText(SVGTextElementImpl tg, float x, float y, - DrawingInstruction di) { - SVGTextRenderer str = new SVGTextRenderer(fontState, tg, x, y); - str.renderText(tg); - } - - /** - * Adds an svg string to the output. - * This handles the escaping of special pdf chars and deals with - * whitespace. - */ - protected float addSVGStr(FontState fs, float currentX, String str, boolean spacing) { - boolean inbetween = false; - boolean addedspace = false; - StringBuffer pdf = new StringBuffer(); - Font f = (Font) fs.getFontInfo().getFonts().get(fs.getFontName()); - boolean useMultiByte = false; - if (f instanceof CIDFont) - useMultiByte=true; - String startText = useMultiByte ? "<" : "("; - String endText = useMultiByte ? ">" : ")"; - - pdf.append(startText); - - if ( useMultiByte ) { - String enc = ((CIDFont)f).getCharEncoding(); - try { - str = new String(str.getBytes(enc), "8859_1"); - } catch (java.io.UnsupportedEncodingException ex) { } - } - - for (int i = 0; i < str.length(); i++) { - char ch = fs.mapChar(str.charAt(i)); - if ( useMultiByte ) { - switch ( str.charAt( i )) - { - case '\t': - case ' ': - if (spacing) { - pdf = pdf.append( endText ); - - pdf = pdf.append( startText ); - currentX += fs.width(fs.mapChar(' ')) / 1000f; - } else { - if (inbetween && !addedspace) { - addedspace = true; - pdf = pdf.append( endText ); - pdf = pdf.append(" "); - pdf = pdf.append(Float.toString(-fs.width(fs.mapChar(' ')))); - pdf = pdf.append(" "); - pdf = pdf.append( startText ); - currentX += fs.width(fs.mapChar(' ')) / 1000f; - } - } - break; - case '\n': - case '\r': - if (spacing) { - pdf = pdf.append( endText ); - pdf = pdf.append(" "); - pdf = pdf.append(Float.toString(-fs.width(fs.mapChar(' ')))); - pdf = pdf.append(" "); - pdf = pdf.append( startText ); - currentX += fs.width(fs.mapChar(' ')) / 1000f; - } - break; - default: - pdf = pdf.append(getUnicodeString( ch)); - currentX += fs.width(ch) / 1000f; - inbetween = true; - addedspace = false; - break; - } - } else if (ch > 127) { - pdf = pdf.append("\\"); - pdf = pdf.append(Integer.toOctalString((int) ch)); - currentX += fs.width(ch) / 1000f; - inbetween = true; - addedspace = false; - } else { - switch (ch) { - case '(' : - pdf = pdf.append("\\("); - currentX += fs.width(ch) / 1000f; - inbetween = true; - addedspace = false; - break; - case ')' : - pdf = pdf.append("\\)"); - currentX += fs.width(ch) / 1000f; - inbetween = true; - addedspace = false; - break; - case '\\' : - pdf = pdf.append("\\\\"); - currentX += fs.width(ch) / 1000f; - inbetween = true; - addedspace = false; - break; - case '\t': - case ' ': - if (spacing) { - pdf = pdf.append(' '); - currentX += fs.width(' ') / 1000f; - } else { - if (inbetween && !addedspace) { - addedspace = true; - pdf = pdf.append(' '); - currentX += fs.width(' ') / 1000f; - } - } - break; - case '\n': - case '\r': - if (spacing) { - pdf = pdf.append(' '); - currentX += fs.width(' ') / 1000f; - } - break; - default: - addedspace = false; - pdf = pdf.append(ch); - currentX += fs.width(ch) / 1000f; - inbetween = true; - break; - } - } - } - pdf.append(endText); - currentStream.write(pdf.toString()); - return currentX; - } - - /** - * Locates a defined element in an svg document. - * Either gets the element defined by its "id" in the current - * SVGDocument, or if the uri reference is to an external - * document it loads the document and returns the element. - */ - protected SVGElement locateDef(String ref, SVGElement currentElement) { - int pos; - ref = ref.trim(); - pos = ref.indexOf("#"); - if (pos == 0) { - // local doc - Document doc = currentElement.getOwnerDocument(); - Element ele = - doc.getElementById(ref.substring(1, ref.length())); - if (ele instanceof SVGElement) { - return (SVGElement) ele; - } - } else if (pos != -1) { - String href = ref.substring(0, pos); - if (href.indexOf(":") == -1) { - href = "file:" + href; - } - try { - // this is really only to get a cached svg image - FopImage img = FopImageFactory.Make(href); - if (img instanceof SVGImage) { - SVGDocument doc = ((SVGImage) img).getSVGDocument(); - Element ele = doc.getElementById( - ref.substring(pos + 1, ref.length())); - if (ele instanceof SVGElement) { - return (SVGElement) ele; - } - } - } catch (Exception e) { - MessageHandler.errorln(e.toString()); - } - } - return null; - } - - /** - * This class is used to handle the rendering of svg text. - * This is so that it can deal with the recursive rendering - * of text markup, while keeping track of the state and position. - */ - class SVGTextRenderer { - FontState fs; - String transstr; - float currentX; - float currentY; - float baseX; - float baseY; - SVGMatrix matrix; - float x; - float y; - - SVGTextRenderer(FontState fontState, SVGTextElementImpl tg, - float x, float y) { - fs = fontState; - - PDFNumber pdfNumber = new PDFNumber(); - SVGTransformList trans = tg.getTransform().getBaseVal(); - matrix = trans.consolidate().getMatrix(); - transstr = (pdfNumber.doubleOut(matrix.getA()) + " " + - pdfNumber.doubleOut(matrix.getB()) + " " + - pdfNumber.doubleOut(matrix.getC()) + " " + - pdfNumber.doubleOut(-matrix.getD()) + " "); - this.x = x; - this.y = y; - } - - void renderText(SVGTextElementImpl te) { - float xoffset = 0; - - if (te.anchor.getEnum() != TextAnchor.START) { - // This is a bit of a hack: The code below will update - // the current position, so all I have to do is to - // prevent that the code will write anything to the - // PDF stream... - StringWriter oldStream = currentStream; - currentStream = new StringWriter (); - FontState saveFS = fs; - _renderText (te, 0f, true); - - float width = currentX - te.x; - currentStream = oldStream; - fs = saveFS; - - if (te.anchor.getEnum() == TextAnchor.END) { - xoffset = -width; - } else if (te.anchor.getEnum() == TextAnchor.MIDDLE) { - xoffset = -width/2; - } - } - - _renderText (te, xoffset, false); - } - - void _renderText(SVGTextElementImpl te, float xoffset, boolean getWidthOnly) { - DrawingInstruction di = applyStyle(te, te); - if (di.fill) { - if (di.stroke) { - currentStream.write("2 Tr\n"); - } else { - currentStream.write("0 Tr\n"); - } - } else if (di.stroke) { - currentStream.write("1 Tr\n"); - } - updateFont(te, fs); - - float tx = te.x; - float ty = te.y; - currentX = x + tx + xoffset; - currentY = y + ty; - baseX = currentX; - baseY = currentY; - NodeList nodel = te.getChildNodes(); - // Vector list = te.textList; - for (int count = 0; count < nodel.getLength(); count++) { - Object o = nodel.item(count); - applyStyle(te, te); - if (o instanceof CharacterData) { - String str = ((CharacterData) o).getData(); - currentStream.write(transstr + - (currentX + matrix.getE()) + " " + - (baseY + matrix.getF()) + " Tm [" ); - boolean spacing = "preserve".equals(te.getXMLspace()); - currentX = addSVGStr(fs, currentX, str, spacing); - currentStream.write(" ] TJ\n"); - } else if (o instanceof SVGTextPathElementImpl) { - SVGTextPathElementImpl tpg = (SVGTextPathElementImpl) o; - String ref = tpg.str; - SVGElement graph = null; - graph = locateDef(ref, tpg); - if (graph instanceof SVGPathElementImpl) { - // probably not the best way to do this, should be able - // to render without the style being set. - // GraphicImpl parent = graph.getGraphicParent(); - // graph.setParent(tpg); - // set text path?? - // how should this work - // graph.setParent(parent); - } - } else if (o instanceof SVGTRefElementImpl) { - SVGTRefElementImpl trg = (SVGTRefElementImpl) o; - String ref = trg.ref; - SVGElement element = locateDef(ref, trg); - if (element instanceof SVGTextElementImpl) { - // GraphicImpl parent = graph.getGraphicParent(); - // graph.setParent(trg); - SVGTextElementImpl tele = - (SVGTextElementImpl) element; - // the style should be from tele, but it needs to be placed as a child - // of trg to work - di = applyStyle(trg, trg); - if (di.fill) { - if (di.stroke) { - currentStream.write("2 Tr\n"); - } else { - currentStream.write("0 Tr\n"); - } - } else if (di.stroke) { - currentStream.write("1 Tr\n"); - } - boolean changed = false; - FontState oldfs = fs; - changed = updateFont(te, fs); - NodeList nl = tele.getChildNodes(); - boolean spacing = - "preserve".equals(trg.getXMLspace()); - renderTextNodes(spacing, nl, - trg.getX().getBaseVal(), - trg.getY().getBaseVal(), - trg.getDx().getBaseVal(), - trg.getDy().getBaseVal()); - - if (changed) { - fs = oldfs; - currentStream.write("/" + - fs.getFontName() + " " + - fs.getFontSize() / 1000f + " Tf\n"); - } - // graph.setParent(parent); - } - } else if (o instanceof SVGTSpanElementImpl) { - SVGTSpanElementImpl tsg = (SVGTSpanElementImpl) o; - applyStyle(tsg, tsg); - boolean changed = false; - FontState oldfs = fs; - changed = updateFont(tsg, fs); - boolean spacing = "preserve".equals(tsg.getXMLspace()); - renderTextNodes(spacing, tsg.getChildNodes(), - tsg.getX().getBaseVal(), - tsg.getY().getBaseVal(), - tsg.getDx().getBaseVal(), - tsg.getDy().getBaseVal()); - - // currentX += fs.width(' ') / 1000f; - if (changed) { - fs = oldfs; - currentStream.write("/" + fs.getFontName() + - " " + fs.getFontSize() / 1000f + " Tf\n"); - } - } else { - MessageHandler.errorln("Error: unknown text element " + o); - } - } - } - - void renderTextNodes(boolean spacing, NodeList nl, - SVGLengthList xlist, SVGLengthList ylist, - SVGLengthList dxlist, SVGLengthList dylist) { - boolean inbetween = false; - boolean addedspace = false; - int charPos = 0; - float xpos = currentX; - float ypos = currentY; - - for (int count = 0; count < nl.getLength(); count++) { - Node n = nl.item(count); - if (n instanceof CharacterData) { - StringBuffer pdf = new StringBuffer(); - String str = ((CharacterData) n).getData(); - for (int i = 0; i < str.length(); i++) { - char ch = str.charAt(i); - xpos = currentX; - ypos = currentY; - if (ylist.getNumberOfItems() > charPos) { - ypos = baseY + (ylist.getItem(charPos)). - getValue(); - } - if (dylist.getNumberOfItems() > charPos) { - ypos = ypos + (dylist.getItem(charPos)). - getValue(); - } - if (xlist.getNumberOfItems() > charPos) { - xpos = baseX + (xlist.getItem(charPos)). - getValue(); - } - if (dxlist.getNumberOfItems() > charPos) { - xpos = xpos + (dxlist.getItem(charPos)). - getValue(); - } - if (ch > 127) { - pdf = pdf.append(transstr + - (xpos + matrix.getE()) + " " + - (ypos + matrix.getF()) + " Tm " + - "(" + "\\" + - Integer.toOctalString((int) ch) + - ") Tj\n"); - currentX = xpos + fs.width(ch) / 1000f; - currentY = ypos; - charPos++; - inbetween = true; - addedspace = false; - } else { - switch (ch) { - case '(' : - pdf = pdf.append(transstr + - (xpos + matrix.getE()) + - " " + (ypos + - matrix.getF()) + " Tm " + - "(" + "\\(" + ") Tj\n"); - currentX = xpos + fs.width(ch) / 1000f; - currentY = ypos; - charPos++; - inbetween = true; - addedspace = false; - break; - case ')' : - pdf = pdf.append(transstr + - (xpos + matrix.getE()) + - " " + (ypos + - matrix.getF()) + " Tm " + - "(" + "\\)" + ") Tj\n"); - currentX = xpos + fs.width(ch) / 1000f; - currentY = ypos; - charPos++; - inbetween = true; - addedspace = false; - break; - case '\\' : - pdf = pdf.append(transstr + - (xpos + matrix.getE()) + - " " + (ypos + - matrix.getF()) + " Tm " + - "(" + "\\\\" + ") Tj\n"); - currentX = xpos + fs.width(ch) / 1000f; - currentY = ypos; - charPos++; - inbetween = true; - addedspace = false; - break; - case '\t': - case ' ': - if (spacing) { - currentX = xpos + fs.width(' ') / - 1000f; - currentY = ypos; - charPos++; - } else { - if (inbetween && !addedspace) { - addedspace = true; - currentX = xpos + fs.width(' ') - / 1000f; - currentY = ypos; - charPos++; - } - } - break; - case '\n': - case '\r': - if (spacing) { - currentX = xpos + fs.width(' ') / - 1000f; - currentY = ypos; - charPos++; - } - break; - default: - addedspace = false; - pdf = pdf.append(transstr + - (xpos + matrix.getE()) + - " " + (ypos + - matrix.getF()) + " Tm " + - "(" + ch + ") Tj\n"); - currentX = xpos + fs.width(ch) / 1000f; - currentY = ypos; - charPos++; - inbetween = true; - break; - } - } - currentStream.write(pdf.toString()); - } - } - } - } - - protected boolean updateFont(SVGStylable style, FontState fs) { - boolean changed = false; - String fontFamily = fs.getFontFamily(); - CSSValue sp = style.getPresentationAttribute("font-family"); - if (sp != null && - sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - fontFamily = sp.getCssText(); - } - } - if (!fontFamily.equals(fs.getFontFamily())) { - changed = true; - } - String fontStyle = fs.getFontStyle(); - sp = style.getPresentationAttribute("font-style"); - if (sp != null && - sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - fontStyle = sp.getCssText(); - } - } - if (!fontStyle.equals(fs.getFontStyle())) { - changed = true; - } - String fontWeight = fs.getFontWeight(); - sp = style.getPresentationAttribute("font-weight"); - if (sp != null && - sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - if (((CSSPrimitiveValue) sp).getPrimitiveType() == - CSSPrimitiveValue.CSS_STRING) { - fontWeight = sp.getCssText(); - } - } - if (!fontWeight.equals(fs.getFontWeight())) { - changed = true; - } - float newSize = fs.getFontSize() / 1000f; - sp = style.getPresentationAttribute("font-size"); - if (sp != null && - sp.getValueType() == CSSValue.CSS_PRIMITIVE_VALUE) { - // if(((CSSPrimitiveValue)sp).getPrimitiveType() == CSSPrimitiveValue.CSS_NUMBER) { - newSize = ((CSSPrimitiveValue) sp).getFloatValue( - CSSPrimitiveValue.CSS_PT); - // } - } - if (fs.getFontSize() / 1000f != newSize) { - changed = true; - } - if (changed) { - try { - // FIX-ME: should get the font-variant property - fs = new FontState(fs.getFontInfo(), fontFamily, - fontStyle, fontWeight, (int)(newSize * 1000), - FontVariant.NORMAL); - } catch (Exception fope) { - } - this.fs = fs; - - currentStream.write("/" + fs.getFontName() + " " + - newSize + " Tf\n"); - } else { - if (!currentFontName.equals(fs.getFontName()) || - currentFontSize != fs.getFontSize()) { - // currentFontName = fs.getFontName(); - // currentFontSize = fs.getFontSize(); - currentStream.write("/" + fs.getFontName() + " " + - (fs.getFontSize() / 1000f) + " Tf\n"); - } - } - return changed; - } - } - - /** - * Convert a char to a multibyte hex representation - */ - private String getUnicodeString(char c) { - - StringBuffer buf = new StringBuffer(4); - - byte[] uniBytes = null; - try { - char[] a = {c}; - uniBytes = new String(a).getBytes("UnicodeBigUnmarked"); - } catch (Exception e) { - // This should never fail - } - - for (int i = 0; i < uniBytes.length; i++) { - int b = (uniBytes[i] < 0) ? (int)(256 + uniBytes[i]) : - (int) uniBytes[i]; - - String hexString = Integer.toHexString(b); - if (hexString.length() == 1) - buf = buf.append("0"+hexString); - else - buf = buf.append(hexString); - } - - return buf.toString(); - - } - - -} diff --git a/src/org/apache/fop/render/txt/TXTRenderer.java b/src/org/apache/fop/render/txt/TXTRenderer.java index 98ffe018d..32efcd893 100755 --- a/src/org/apache/fop/render/txt/TXTRenderer.java +++ b/src/org/apache/fop/render/txt/TXTRenderer.java @@ -21,7 +21,8 @@ import org.apache.fop.pdf.PDFPathPaint; import org.apache.fop.pdf.PDFColor; import org.apache.fop.image.*; -import org.apache.fop.dom.svg.SVGArea; +import org.apache.fop.svg.SVGArea; + import org.w3c.dom.svg.SVGSVGElement; // Java diff --git a/src/org/apache/fop/render/xml/XMLRenderer.java b/src/org/apache/fop/render/xml/XMLRenderer.java index 767ccab04..d0044ebf1 100644 --- a/src/org/apache/fop/render/xml/XMLRenderer.java +++ b/src/org/apache/fop/render/xml/XMLRenderer.java @@ -53,8 +53,6 @@ package org.apache.fop.render.xml; // FOP import org.apache.fop.svg.*; import org.apache.fop.messaging.MessageHandler; -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; import org.apache.fop.render.Renderer; import org.apache.fop.image.ImageArea; import org.apache.fop.layout.*; diff --git a/src/org/apache/fop/svg/A.java b/src/org/apache/fop/svg/A.java deleted file mode 100644 index 1e881f407..000000000 --- a/src/org/apache/fop/svg/A.java +++ /dev/null @@ -1,127 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; - -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:a pseudo flow object. - * - */ -public class A extends SVGObj { - - /** - * inner class for making A objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a A object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the A object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new A(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for A objects - */ - public static FObj.Maker maker() { - return new A.Maker(); - } - - /** - * constructs a A object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected A(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:a"; - } - - public SVGElement createGraphic() { - String rf = this.properties.get("xlink:href").getString(); - SVGAElementImpl graphic; - graphic = new SVGAElementImpl(); - // graphic.setTarget(new SVGAnimatedStringImpl(rf)); - - int numChildren = this.children.size(); - for (int i = 0; i < numChildren; i++) { - FONode child = (FONode) children.elementAt(i); - if (child instanceof GraphicsCreator) { - SVGElement impl = ((GraphicsCreator) child).createGraphic(); - graphic.appendChild(impl); - } else if (child instanceof Defs) { - } - } - - return graphic; - } -} diff --git a/src/org/apache/fop/svg/AltGlyph.java b/src/org/apache/fop/svg/AltGlyph.java deleted file mode 100644 index 86739386e..000000000 --- a/src/org/apache/fop/svg/AltGlyph.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; - -/** - * class representing svg:altGlyph pseudo flow object. - * - */ -public class AltGlyph extends SVGObj { - - /** - * inner class for making AltGlyph objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a AltGlyph object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the AltGlyph object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new AltGlyph(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for AltGlyph objects - */ - public static FObj.Maker maker() { - return new AltGlyph.Maker(); - } - - /** - * constructs a AltGlyph object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected AltGlyph(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:altGlyph"; - } -} diff --git a/src/org/apache/fop/svg/Animate.java b/src/org/apache/fop/svg/Animate.java deleted file mode 100644 index b1f79b7ca..000000000 --- a/src/org/apache/fop/svg/Animate.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; - -/** - * class representing svg:Animate pseudo flow object. - * - */ -public class Animate extends SVGObj { - - /** - * inner class for making Animate objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Animate object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Animate object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Animate(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Animate objects - */ - public static FObj.Maker maker() { - return new Animate.Maker(); - } - - /** - * constructs a Animate object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Animate(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:animate"; - } -} diff --git a/src/org/apache/fop/svg/AnimateColor.java b/src/org/apache/fop/svg/AnimateColor.java deleted file mode 100644 index b25f20198..000000000 --- a/src/org/apache/fop/svg/AnimateColor.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; - -/** - * class representing svg:AnimateColor pseudo flow object. - * - */ -public class AnimateColor extends SVGObj { - - /** - * inner class for making AnimateColor objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a AnimateColor object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the AnimateColor object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new AnimateColor(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for AnimateColor objects - */ - public static FObj.Maker maker() { - return new AnimateColor.Maker(); - } - - /** - * constructs a AnimateColor object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected AnimateColor(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:animateColor"; - } -} diff --git a/src/org/apache/fop/svg/AnimateMotion.java b/src/org/apache/fop/svg/AnimateMotion.java deleted file mode 100644 index facb011d5..000000000 --- a/src/org/apache/fop/svg/AnimateMotion.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; - -/** - * class representing svg:AnimateMotion pseudo flow object. - * - */ -public class AnimateMotion extends SVGObj { - - /** - * inner class for making AnimateMotion objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a AnimateMotion object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the AnimateMotion object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new AnimateMotion(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for AnimateMotion objects - */ - public static FObj.Maker maker() { - return new AnimateMotion.Maker(); - } - - /** - * constructs a AnimateMotion object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected AnimateMotion(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:animateMotion"; - } -} diff --git a/src/org/apache/fop/svg/AnimateTransform.java b/src/org/apache/fop/svg/AnimateTransform.java deleted file mode 100644 index a569c535a..000000000 --- a/src/org/apache/fop/svg/AnimateTransform.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; - -/** - * class representing svg:AnimateTransform pseudo flow object. - * - */ -public class AnimateTransform extends SVGObj { - - /** - * inner class for making AnimateTransform objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a AnimateTransform object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the AnimateTransform object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new AnimateTransform(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for AnimateTransform objects - */ - public static FObj.Maker maker() { - return new AnimateTransform.Maker(); - } - - /** - * constructs a AnimateTransform object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected AnimateTransform(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:animateTransform"; - } -} diff --git a/src/org/apache/fop/svg/Circle.java b/src/org/apache/fop/svg/Circle.java deleted file mode 100644 index f32b467dd..000000000 --- a/src/org/apache/fop/svg/Circle.java +++ /dev/null @@ -1,139 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import java.util.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGLength; -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:Circle pseudo flow object. - * - */ -public class Circle extends SVGObj { - - /** - * inner class for making Circle objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Circle object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Circle object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new Circle(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Circle objects - */ - public static FObj.Maker maker() { - return new Circle.Maker(); - } - - /** - * constructs a Circle object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Circle(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:circle"; - } - - public SVGElement createGraphic() { - /* retrieve properties */ - SVGLength cx = ((SVGLengthProperty) this.properties.get("cx")). - getSVGLength(); - if (cx == null) - cx = new SVGLengthImpl(); - SVGLength cy = ((SVGLengthProperty) this.properties.get("cy")). - getSVGLength(); - if (cy == null) - cy = new SVGLengthImpl(); - SVGLength r = ((SVGLengthProperty) this.properties.get("r")). - getSVGLength(); - if (r == null) - r = new SVGLengthImpl(); - SVGCircleElementImpl graph = new SVGCircleElementImpl(); - graph.setCx(new SVGAnimatedLengthImpl(cx)); - graph.setCy(new SVGAnimatedLengthImpl(cy)); - graph.setR(new SVGAnimatedLengthImpl(r)); - graph.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - graph.setTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - graph.setId(this.properties.get("id").getString()); - return graph; - } -} diff --git a/src/org/apache/fop/svg/ClipPath.java b/src/org/apache/fop/svg/ClipPath.java deleted file mode 100644 index 65b5562a0..000000000 --- a/src/org/apache/fop/svg/ClipPath.java +++ /dev/null @@ -1,142 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; -import org.apache.fop.fo.properties.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; -import org.w3c.dom.svg.*; - -/** - * class representing svg:ClipPath pseudo flow object. - * - */ -public class ClipPath extends SVGObj { - - /** - * inner class for making ClipPath objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a ClipPath object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the ClipPath object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new ClipPath(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for ClipPath objects - */ - public static FObj.Maker maker() { - return new ClipPath.Maker(); - } - - /** - * constructs a ClipPath object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected ClipPath(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:clipPath"; - } - - SVGClipPathElementImpl clippath = new SVGClipPathElementImpl(); - - protected void addChild(FONode child) { - super.addChild(child); - if (child instanceof GraphicsCreator) { - GraphicsCreator gc = (GraphicsCreator) child; - SVGElement graph = gc.createGraphic(); - clippath.addElement(graph); - // graph.setParent(clippath); - } else { - // error - } - } - - public SVGElement createGraphic() { - clippath.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - clippath.setId(this.properties.get("id").getString()); - switch ((this.properties.get("clipPathUnits")).getEnum()) { - case GenericUnits.Enums.USER_SPACE_ON_USE: - clippath.setClipPathUnits( new SVGAnimatedEnumerationImpl( - SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE)); - break; - case GenericUnits.Enums.OBJECT_BOUNDING_BOX: - clippath.setClipPathUnits( new SVGAnimatedEnumerationImpl( - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX)); - break; - } - return clippath; - } -} diff --git a/src/org/apache/fop/svg/Cursor.java b/src/org/apache/fop/svg/Cursor.java deleted file mode 100644 index 1507ce04b..000000000 --- a/src/org/apache/fop/svg/Cursor.java +++ /dev/null @@ -1,105 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * - */ -public class Cursor extends SVGObj { - - /** - * inner class for making Cursor objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Cursor object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Cursor object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Cursor(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Cursor objects - */ - public static FObj.Maker maker() { - return new Cursor.Maker(); - } - - /** - * constructs a Cursor object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Cursor(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:cursor"; - } -} diff --git a/src/org/apache/fop/svg/Defs.java b/src/org/apache/fop/svg/Defs.java deleted file mode 100644 index 8ee14015e..000000000 --- a/src/org/apache/fop/svg/Defs.java +++ /dev/null @@ -1,135 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import java.util.*; - -import org.w3c.dom.svg.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * class representing svg:Defs pseudo flow object. - * - */ -public class Defs extends SVGObj { - - /** - * inner class for making Defs objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Defs object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Defs object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Defs(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Defs objects - */ - public static FObj.Maker maker() { - return new Defs.Maker(); - } - - /** - * constructs a Defs object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Defs(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:defs"; - } - -// Hashtable defs = new Hashtable(); - - public SVGElement createGraphic() - { - SVGDefsElement defs = new SVGDefsElementImpl(); - int numChildren = this.children.size(); - for (int i = 0; i < numChildren; i++) { - FONode child = (FONode) children.elementAt(i); - if(child instanceof GraphicsCreator) { - SVGElement gi = ((GraphicsCreator)child).createGraphic(); - if(gi instanceof SVGElement) { - defs.appendChild((SVGElement)gi); -// String id = ((SVGElement)gi).getId(); -// if(!id.equals("")) { -// defs.put(id, gi); -// } else { - // no id -// System.err.println("WARNING No ID for defs element : " + gi); -// } - } - } - } - return defs; - } -} diff --git a/src/org/apache/fop/svg/Desc.java b/src/org/apache/fop/svg/Desc.java deleted file mode 100644 index 8bf382ccf..000000000 --- a/src/org/apache/fop/svg/Desc.java +++ /dev/null @@ -1,120 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -/** - * class representing svg:Desc pseudo flow object. - * - */ -public class Desc extends SVGObj { - - /** - * inner class for making Desc objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Desc object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Desc object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Desc(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Desc objects - */ - public static FObj.Maker maker() { - return new Desc.Maker(); - } - - /** - * the desc string - */ - protected String text = ""; - - /** - * constructs a Desc object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Desc(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:desc"; - } - - /** - * add characters to the string to display. - * - * @param data array of characters - * @param start start offset in character array - * @param length number of characters to add - */ - protected void addCharacters(char data[], int start, int length) { - this.text += new String(data, start, length - start); - } -} diff --git a/src/org/apache/fop/svg/Ellipse.java b/src/org/apache/fop/svg/Ellipse.java deleted file mode 100644 index 3c955b51a..000000000 --- a/src/org/apache/fop/svg/Ellipse.java +++ /dev/null @@ -1,142 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGLength; -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:Ellipse pseudo flow object. - * - */ -public class Ellipse extends SVGObj { - - /** - * inner class for making Ellipse objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Ellipse object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Ellipse object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new Ellipse(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Ellipse objects - */ - public static FObj.Maker maker() { - return new Ellipse.Maker(); - } - - /** - * constructs a Ellipse object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Ellipse(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:ellipse"; - } - - public SVGElement createGraphic() { - /* retrieve properties */ - SVGLength cx = ((SVGLengthProperty) this.properties.get("cx")). - getSVGLength(); - if (cx == null) - cx = new SVGLengthImpl(); - SVGLength cy = ((SVGLengthProperty) this.properties.get("cy")). - getSVGLength(); - if (cy == null) - cy = new SVGLengthImpl(); - SVGLength rx = ((SVGLengthProperty) this.properties.get("rx")). - getSVGLength(); - if (rx == null) - rx = new SVGLengthImpl(); - SVGLength ry = ((SVGLengthProperty) this.properties.get("ry")). - getSVGLength(); - if (ry == null) - ry = new SVGLengthImpl(); - SVGEllipseElementImpl graph = new SVGEllipseElementImpl(); - graph.setCx(new SVGAnimatedLengthImpl(cx)); - graph.setCy(new SVGAnimatedLengthImpl(cy)); - graph.setRx(new SVGAnimatedLengthImpl(rx)); - graph.setRy(new SVGAnimatedLengthImpl(ry)); - graph.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - graph.setTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - graph.setId(this.properties.get("id").getString()); - return graph; - } -} diff --git a/src/org/apache/fop/svg/Filter.java b/src/org/apache/fop/svg/Filter.java deleted file mode 100644 index a2dc40f08..000000000 --- a/src/org/apache/fop/svg/Filter.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * class representing svg:Filter pseudo flow object. - * - */ -public class Filter extends SVGObj { - - /** - * inner class for making Filter objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Filter object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Filter object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Filter(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Filter objects - */ - public static FObj.Maker maker() { - return new Filter.Maker(); - } - - /** - * constructs a Filter object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Filter(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:filter"; - } -} diff --git a/src/org/apache/fop/svg/Font.java b/src/org/apache/fop/svg/Font.java deleted file mode 100644 index bffe59043..000000000 --- a/src/org/apache/fop/svg/Font.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * class representing svg:Font pseudo flow object. - * - */ -public class Font extends SVGObj { - - /** - * inner class for making Font objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Font object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Font object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Font(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Font objects - */ - public static FObj.Maker maker() { - return new Font.Maker(); - } - - /** - * constructs a Font object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Font(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:font"; - } -} diff --git a/src/org/apache/fop/svg/G.java b/src/org/apache/fop/svg/G.java deleted file mode 100644 index 81e949e50..000000000 --- a/src/org/apache/fop/svg/G.java +++ /dev/null @@ -1,135 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:G pseudo flow object. - * - */ -public class G extends SVGObj { - - /** - * inner class for making G objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a G object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the G object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new G(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for G objects - */ - public static FObj.Maker maker() { - return new G.Maker(); - } - - /** - * constructs a G object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected G(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:g"; - } - - SVGGElementImpl ggraphic = new SVGGElementImpl(); - - public SVGElement createGraphic() - { - ggraphic.setTransform(((SVGTransform)this.properties.get("transform")).getTransform()); - ggraphic.setStyle(((SVGStyle)this.properties.get("style")).getStyle()); - ggraphic.setId(this.properties.get("id").getString()); - ggraphic.setClassName(new SVGAnimatedStringImpl(this.properties.get("class").getString())); - int numChildren = this.children.size(); - for (int i = 0; i < numChildren; i++) { - FONode child = (FONode) children.elementAt(i); - if(child instanceof GraphicsCreator) { - SVGElement impl = ((GraphicsCreator)child).createGraphic(); - if(impl != null) { - if(impl instanceof SVGElementImpl) - ((SVGElementImpl)impl).setClassName(new SVGAnimatedStringImpl(((FObj)child).getProperty("class").getString())); - ggraphic.appendChild(impl); - } - } else if(child instanceof Defs) { -// System.out.println(child); -// ggraphic.addDefs(((Defs)child).createDefs()); - } - } - return ggraphic; - } -} diff --git a/src/org/apache/fop/svg/Glyph.java b/src/org/apache/fop/svg/Glyph.java deleted file mode 100644 index 8fb8b59a6..000000000 --- a/src/org/apache/fop/svg/Glyph.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * class representing svg:Glyph pseudo flow object. - * - */ -public class Glyph extends SVGObj { - - /** - * inner class for making Glyph objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Glyph object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Glyph object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Glyph(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Glyph objects - */ - public static FObj.Maker maker() { - return new Glyph.Maker(); - } - - /** - * constructs a Glyph object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Glyph(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:glyph"; - } -} diff --git a/src/org/apache/fop/svg/GraphicsCreator.java b/src/org/apache/fop/svg/GraphicsCreator.java index 139bf7b8a..295a80006 100644 --- a/src/org/apache/fop/svg/GraphicsCreator.java +++ b/src/org/apache/fop/svg/GraphicsCreator.java @@ -51,13 +51,12 @@ package org.apache.fop.svg; -import org.apache.fop.dom.svg.*; - import org.w3c.dom.svg.SVGElement; +import org.w3c.dom.*; /** * */ public interface GraphicsCreator { - public SVGElement createGraphic(); + public void addGraphic(Document doc, Element parent); } diff --git a/src/org/apache/fop/svg/HKern.java b/src/org/apache/fop/svg/HKern.java deleted file mode 100644 index 7632c9930..000000000 --- a/src/org/apache/fop/svg/HKern.java +++ /dev/null @@ -1,105 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * - */ -public class HKern extends SVGObj { - - /** - * inner class for making HKern objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a HKern object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the HKern object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new HKern(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for HKern objects - */ - public static FObj.Maker maker() { - return new HKern.Maker(); - } - - /** - * constructs a HKern object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected HKern(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:hkern"; - } -} diff --git a/src/org/apache/fop/svg/Image.java b/src/org/apache/fop/svg/Image.java deleted file mode 100644 index 8fa6b9803..000000000 --- a/src/org/apache/fop/svg/Image.java +++ /dev/null @@ -1,144 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; -import org.w3c.dom.svg.SVGLength; - -/** - * class representing svg:Image pseudo flow object. - * - */ -public class Image extends SVGObj { - - /** - * inner class for making Image objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Image object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Image object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new Image(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Image objects - */ - public static FObj.Maker maker() { - return new Image.Maker(); - } - - /** - * constructs a Image object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Image(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:image"; - } - - public SVGElement createGraphic() { - String link = this.properties.get("xlink:href").getString(); - SVGLength length; - length = ((SVGLengthProperty) this.properties.get("x")). - getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - float x = length.getValue(); - length = ((SVGLengthProperty) this.properties.get("y")). - getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - float y = length.getValue(); - length = ((SVGLengthProperty) this.properties.get("width")). - getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - float width = length.getValue(); - length = ((SVGLengthProperty) this.properties.get("height")). - getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - float height = length.getValue(); - SVGImageElementImpl graph = - new SVGImageElementImpl(link, x, y, width, height); - graph.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - graph.setTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - graph.setId(this.properties.get("id").getString()); - return graph; - } -} diff --git a/src/org/apache/fop/svg/Line.java b/src/org/apache/fop/svg/Line.java deleted file mode 100644 index a69aee426..000000000 --- a/src/org/apache/fop/svg/Line.java +++ /dev/null @@ -1,144 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.messaging.MessageHandler; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.w3c.dom.svg.SVGLength; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGLineElementImpl; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:line pseudo flow object. - */ -public class Line extends SVGObj { - - /** - * inner class for making Line objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Line object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Line object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new Line(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Line objects - */ - public static FObj.Maker maker() { - return new Line.Maker(); - } - - /** - * constructs a Line object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Line(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:line"; - } - - public SVGElement createGraphic() { - /* retrieve properties */ - SVGLength x1 = ((SVGLengthProperty) this.properties.get("x1")). - getSVGLength(); - if (x1 == null) - x1 = new SVGLengthImpl(); - SVGLength x2 = ((SVGLengthProperty) this.properties.get("x2")). - getSVGLength(); - if (x2 == null) - x2 = new SVGLengthImpl(); - SVGLength y1 = ((SVGLengthProperty) this.properties.get("y1")). - getSVGLength(); - if (y1 == null) - y1 = new SVGLengthImpl(); - SVGLength y2 = ((SVGLengthProperty) this.properties.get("y2")). - getSVGLength(); - if (y2 == null) - y2 = new SVGLengthImpl(); - SVGLineElementImpl graph = new SVGLineElementImpl(); - graph.setX1(new SVGAnimatedLengthImpl(x1)); - graph.setY1(new SVGAnimatedLengthImpl(y1)); - graph.setX2(new SVGAnimatedLengthImpl(x2)); - graph.setY2(new SVGAnimatedLengthImpl(y2)); - graph.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - graph.setTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - graph.setId(this.properties.get("id").getString()); - return graph; - } -} diff --git a/src/org/apache/fop/svg/LinearGradient.java b/src/org/apache/fop/svg/LinearGradient.java deleted file mode 100644 index 2f4be86ae..000000000 --- a/src/org/apache/fop/svg/LinearGradient.java +++ /dev/null @@ -1,179 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; -import org.apache.fop.fo.properties.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.*; - -/** - * class representing svg:LinearGradient pseudo flow object. - * - */ -public class LinearGradient extends SVGObj { - - /** - * inner class for making LinearGradient objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a LinearGradient object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the LinearGradient object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new LinearGradient(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for LinearGradient objects - */ - public static FObj.Maker maker() { - return new LinearGradient.Maker(); - } - - /** - * constructs a LinearGradient object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected LinearGradient(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:linearGradient"; - } - - SVGLinearGradientElementImpl linear = - new SVGLinearGradientElementImpl(); - - protected void addChild(FONode child) { - super.addChild(child); - if (child instanceof Stop) { - SVGStopElement sse = ((Stop) child).createStop(); - linear.appendChild(sse); - } - } - - public SVGElement createGraphic() { - linear.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - linear.setTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - linear.setGradientTransform( - ((SVGTransform) this.properties.get("gradientTransform")). - getTransform()); - linear.setId(this.properties.get("id").getString()); - String rf = this.properties.get("xlink:href").getString(); - linear.setHref(new SVGAnimatedStringImpl(rf)); - - SVGLength lengthProp = - ((SVGLengthProperty) this.properties.get("x1")). - getSVGLength(); - linear.setX1(lengthProp == null ? null : - new SVGAnimatedLengthImpl(lengthProp)); - // if x2 is not specified then it should be 100% - lengthProp = ((SVGLengthProperty) this.properties.get("x2")). - getSVGLength(); - linear.setX2(lengthProp == null ? null : - new SVGAnimatedLengthImpl(lengthProp)); - lengthProp = ((SVGLengthProperty) this.properties.get("y1")). - getSVGLength(); - linear.setY1(lengthProp == null ? null : - new SVGAnimatedLengthImpl(lengthProp)); - lengthProp = ((SVGLengthProperty) this.properties.get("y2")). - getSVGLength(); - linear.setY2(lengthProp == null ? null : - new SVGAnimatedLengthImpl(lengthProp)); - switch ((this.properties.get("spreadMethod")).getEnum()) { - case SpreadMethod.PAD: - linear.setSpreadMethod( new SVGAnimatedEnumerationImpl( - SVGGradientElement.SVG_SPREADMETHOD_PAD)); - break; - case SpreadMethod.REFLECT: - linear.setSpreadMethod( new SVGAnimatedEnumerationImpl( - SVGGradientElement.SVG_SPREADMETHOD_REFLECT)); - break; - case SpreadMethod.REPEAT: - linear.setSpreadMethod( new SVGAnimatedEnumerationImpl( - SVGGradientElement.SVG_SPREADMETHOD_REPEAT)); - break; - } - switch ((this.properties.get("gradientUnits")).getEnum()) { - case GenericUnits.Enums.USER_SPACE_ON_USE: - linear.setGradientUnits( new SVGAnimatedEnumerationImpl( - SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE)); - break; - case GenericUnits.Enums.OBJECT_BOUNDING_BOX: - linear.setGradientUnits( new SVGAnimatedEnumerationImpl( - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX)); - break; - } - return linear; - } -} diff --git a/src/org/apache/fop/svg/Marker.java b/src/org/apache/fop/svg/Marker.java deleted file mode 100644 index 7fd2887d6..000000000 --- a/src/org/apache/fop/svg/Marker.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * class representing svg:Marker pseudo flow object. - * - */ -public class Marker extends SVGObj { - - /** - * inner class for making Marker objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Marker object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Marker object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Marker(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Marker objects - */ - public static FObj.Maker maker() { - return new Marker.Maker(); - } - - /** - * constructs a Marker object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Marker(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:marker"; - } -} diff --git a/src/org/apache/fop/svg/Mask.java b/src/org/apache/fop/svg/Mask.java deleted file mode 100644 index 451de833a..000000000 --- a/src/org/apache/fop/svg/Mask.java +++ /dev/null @@ -1,131 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; - -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:Mask pseudo flow object. - * - */ -public class Mask extends SVGObj { - - /** - * inner class for making Mask objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Mask object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Mask object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Mask(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Mask objects - */ - public static FObj.Maker maker() { - return new Mask.Maker(); - } - - /** - * constructs a Mask object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Mask(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:mask"; - } - - SVGMaskElementImpl mask = new SVGMaskElementImpl(); - - protected void addChild(FONode child) { - super.addChild(child); - if(child instanceof GraphicsCreator) { - GraphicsCreator gc = (GraphicsCreator)child; - SVGElement graph = gc.createGraphic(); - if(graph != null) { - mask.addElement(graph); -// graph.setParent(mask); - } - } else { - // error - } - } - - public SVGElement createGraphic() - { - mask.setStyle(((SVGStyle)this.properties.get("style")).getStyle()); - mask.setId(this.properties.get("id").getString()); - return mask; - } -} diff --git a/src/org/apache/fop/svg/MissingGlyph.java b/src/org/apache/fop/svg/MissingGlyph.java deleted file mode 100644 index 5065e2b16..000000000 --- a/src/org/apache/fop/svg/MissingGlyph.java +++ /dev/null @@ -1,105 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * - */ -public class MissingGlyph extends SVGObj { - - /** - * inner class for making MissingGlyph objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a MissingGlyph object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the MissingGlyph object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new MissingGlyph(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for MissingGlyph objects - */ - public static FObj.Maker maker() { - return new MissingGlyph.Maker(); - } - - /** - * constructs a MissingGlyph object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected MissingGlyph(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:missing-glyph"; - } -} diff --git a/src/org/apache/fop/svg/PDFDocumentGraphics2D.java b/src/org/apache/fop/svg/PDFDocumentGraphics2D.java new file mode 100644 index 000000000..37bc930fd --- /dev/null +++ b/src/org/apache/fop/svg/PDFDocumentGraphics2D.java @@ -0,0 +1,120 @@ +/***************************************************************************** + * Copyright (C) The Apache Software Foundation. All rights reserved. * + * ------------------------------------------------------------------------- * + * This software is published under the terms of the Apache Software License * + * version 1.1, a copy of which has been included with this distribution in * + * the LICENSE file. * + *****************************************************************************/ + +package org.apache.fop.svg; + +import org.apache.fop.pdf.*; +import org.apache.fop.layout.*; +import org.apache.fop.fonts.*; +import org.apache.fop.render.pdf.*; +import org.apache.fop.image.*; +import org.apache.fop.datatypes.ColorSpace; + +import org.apache.batik.ext.awt.g2d.*; + +import java.text.AttributedCharacterIterator; +import java.awt.*; +import java.awt.Font; +import java.awt.Image; +import java.awt.image.*; +import java.awt.font.*; +import java.awt.geom.*; +import java.awt.image.renderable.*; +import java.io.*; + +import java.util.Map; + +/** + * This concrete implementation of AbstractGraphics2D is a + * simple help to programmers to get started with their own + * implementation of Graphics2D. + * DefaultGraphics2D implements all the abstract methods + * is AbstractGraphics2D and makes it easy to start + * implementing a Graphic2D piece-meal. + * + * @author Vincent Hardy + * @version $Id$ + * @see org.apache.batik.ext.awt.g2d.AbstractGraphics2D + */ +public class PDFDocumentGraphics2D extends PDFGraphics2D { + OutputStream stream; + + PDFStream pdfStream; + int width; + int height; + + /** + * Create a new PDFGraphics2D with the given pdf document info. + * This is used to create a Graphics object for use inside an already + * existing document. + * Maybe this could be handled as a subclass (PDFDocumentGraphics2d) + */ + public PDFDocumentGraphics2D(boolean textAsShapes, OutputStream stream, int width, int height) + { + super(textAsShapes); + standalone = true; + this.stream = stream; + this.pdfDoc = new PDFDocument(); + this.pdfDoc.setProducer("FOP SVG Renderer"); + pdfStream = this.pdfDoc.makeStream(); + this.width = width; + this.height = height; + + currentFontName = ""; + currentFontSize = 0; + currentYPosition = 0; + currentXPosition = 0; +// fontState = fs; + + currentStream.write("1 0 0 -1 0 " + height + " cm\n"); + + // end part + /* + FontSetup.addToResources(this.pdfDoc, fontInfo); + */ + + } + + public void finish() throws IOException + { + pdfStream.add(getString()); + PDFResources pdfResources = this.pdfDoc.getResources(); + PDFPage currentPage = this.pdfDoc.makePage(pdfResources, pdfStream, + width, + height, null); + this.pdfDoc.output(stream); + + } + + public String getString() { + return currentStream.toString(); + } + + public void setGraphicContext(GraphicContext c) + { + gc = c; + } + + /** + * This constructor supports the create method + */ + public PDFDocumentGraphics2D(PDFDocumentGraphics2D g){ + super(g); + } + + /** + * Creates a new Graphics object that is + * a copy of this Graphics object. + * @return a new graphics context that is a copy of + * this graphics context. + */ + public Graphics create(){ + return new PDFDocumentGraphics2D(this); + } + +} diff --git a/src/org/apache/fop/svg/PDFGraphics2D.java b/src/org/apache/fop/svg/PDFGraphics2D.java new file mode 100644 index 000000000..a625d90d7 --- /dev/null +++ b/src/org/apache/fop/svg/PDFGraphics2D.java @@ -0,0 +1,780 @@ +/***************************************************************************** + * Copyright (C) The Apache Software Foundation. All rights reserved. * + * ------------------------------------------------------------------------- * + * This software is published under the terms of the Apache Software License * + * version 1.1, a copy of which has been included with this distribution in * + * the LICENSE file. * + *****************************************************************************/ + +package org.apache.fop.svg; + +import org.apache.fop.pdf.*; +import org.apache.fop.layout.*; +import org.apache.fop.fonts.*; +import org.apache.fop.render.pdf.*; +import org.apache.fop.image.*; +import org.apache.fop.datatypes.ColorSpace; + +import org.apache.batik.ext.awt.g2d.*; + +import java.text.AttributedCharacterIterator; +import java.awt.*; +import java.awt.Font; +import java.awt.Image; +import java.awt.image.*; +import java.awt.font.*; +import java.awt.geom.*; +import java.awt.image.renderable.*; +import java.io.*; + +import java.util.Map; + +/** + * This concrete implementation of AbstractGraphics2D is a + * simple help to programmers to get started with their own + * implementation of Graphics2D. + * DefaultGraphics2D implements all the abstract methods + * is AbstractGraphics2D and makes it easy to start + * implementing a Graphic2D piece-meal. + * + * @author Vincent Hardy + * @version $Id$ + * @see org.apache.batik.ext.awt.g2d.AbstractGraphics2D + */ +public class PDFGraphics2D extends AbstractGraphics2D { + protected PDFDocument pdfDoc; + + protected FontState fontState; + + boolean standalone = false; + + /** the PDF Document being created */ + //protected PDFDocument pdfDoc; + + //protected FontState fontState; + + /** the current stream to add PDF commands to */ + StringWriter currentStream = new StringWriter(); + + /** the current (internal) font name */ + protected String currentFontName; + + /** the current font size in millipoints */ + protected int currentFontSize; + + /** the current vertical position in millipoints from bottom */ + protected int currentYPosition = 0; + + /** the current horizontal position in millipoints from left */ + protected int currentXPosition = 0; + + /** the current colour for use in svg */ + PDFColor currentColour = new PDFColor(0, 0, 0); + + FontInfo fontInfo; + + /** + * Create a new PDFGraphics2D with the given pdf document info. + * This is used to create a Graphics object for use inside an already + * existing document. + */ + public PDFGraphics2D(boolean textAsShapes, FontState fs, + PDFDocument doc, String font, int size, int xpos, int ypos) { + super(textAsShapes); + pdfDoc = doc; + currentFontName = font; + currentFontSize = size; + currentYPosition = ypos; + currentXPosition = xpos; + fontState = fs; + } + + public PDFGraphics2D(boolean textAsShapes) { + super(textAsShapes); + } + + public String getString() { + return currentStream.toString(); + } + + public void setGraphicContext(GraphicContext c) { + gc = c; + } + + /** + * This constructor supports the create method + */ + public PDFGraphics2D(PDFGraphics2D g) { + super(g); + } + + /** + * Creates a new Graphics object that is + * a copy of this Graphics object. + * @return a new graphics context that is a copy of + * this graphics context. + */ + public Graphics create() { + return new PDFGraphics2D(this); + } + + /** + * Draws as much of the specified image as is currently available. + * The image is drawn with its top-left corner at + * (xy) in this graphics context's coordinate + * space. Transparent pixels in the image do not affect whatever + * pixels are already there. + *

+ * This method returns immediately in all cases, even if the + * complete image has not yet been loaded, and it has not been dithered + * and converted for the current output device. + *

+ * If the image has not yet been completely loaded, then + * drawImage returns false. As more of + * the image becomes available, the process that draws the image notifies + * the specified image observer. + * @param img the specified image to be drawn. + * @param x the x coordinate. + * @param y the y coordinate. + * @param observer object to be notified as more of + * the image is converted. + * @see java.awt.Image + * @see java.awt.image.ImageObserver + * @see java.awt.image.ImageObserver#imageUpdate(java.awt.Image, int, int, int, int, int) + */ + public boolean drawImage(Image img, int x, int y, + ImageObserver observer) { + System.err.println("drawImage:x, y"); + + final int width = img.getWidth(observer); + final int height = img.getHeight(observer); + if (width == -1 || height == -1) { + return false; + } + + Dimension size = new Dimension(width, height); + BufferedImage buf = buildBufferedImage(size); + + java.awt.Graphics2D g = buf.createGraphics(); + g.setComposite(AlphaComposite.SrcOver); + g.setBackground(new Color(1, 1, 1, 0)); + g.setPaint(new Color(1, 1, 1, 0)); + g.fillRect(0, 0, width, height); + g.clip(new Rectangle(0, 0, buf.getWidth(), buf.getHeight())); + + if (!g.drawImage(img, 0, 0, observer)) { + return false; + } + g.dispose(); + + final byte[] result = + new byte[buf.getWidth() * buf.getHeight() * 3]; + + Raster raster = buf.getData(); + DataBuffer bd = raster.getDataBuffer(); + + int count = 0; + switch (bd.getDataType()) { + case DataBuffer.TYPE_INT: + int[][] idata = ((DataBufferInt) bd).getBankData(); + for (int i = 0; i < idata.length; i++) { + for (int j = 0; j < idata[i].length; j++) { + //System.out.println("data:" + ((idata[i][j] >> 24) & 0xFF)); + if (((idata[i][j] >> 24) & 0xFF) != 255) { + System.out.println("data:" + + ((idata[i][j] >> 24) & 0xFF)); + result[count++] = (byte) 0xFF; + result[count++] = (byte) 0xFF; + result[count++] = (byte) 0xFF; + } else { + result[count++] = + (byte)((idata[i][j] >> 16) & 0xFF); + result[count++] = + (byte)((idata[i][j] >> 8) & 0xFF); + result[count++] = (byte)((idata[i][j]) & 0xFF); + } + } + } + break; + default: + // error + break; + } + + try { + FopImage fopimg = new TempImage(width, height, result); + int xObjectNum = this.pdfDoc.addImage(fopimg); + /*currentStream.write("q\n" + (((float) width)) + + " 0 0 " + (((float) height)) + " " + + x + " " + + ((float)(y - height)) + " cm\n" + "/Im" + + xObjectNum + " Do\nQ\n");*/ + AffineTransform at = getTransform(); + double[] matrix = new double[6]; + at.getMatrix(matrix); + currentStream.write("q\n"); + Shape imclip = getClip(); + writeClip(imclip); + currentStream.write("" + matrix[0] + " " + matrix[1] + + " " + matrix[2] + " " + matrix[3] + " " + + matrix[4] + " " + matrix[5] + " cm\n"); + currentStream.write("" + width + " 0 0 " + (-height) + + " " + x + " " + (y + height) + " cm\n" + "/Im" + + xObjectNum + " Do\nQ\n"); + } catch (Exception e) { + e.printStackTrace(); + } + return true; + } + + public BufferedImage buildBufferedImage(Dimension size) { + return new BufferedImage(size.width, size.height, + BufferedImage.TYPE_INT_ARGB); + } + + class TempImage implements FopImage { + int m_height; + int m_width; + int m_bitsPerPixel; + ColorSpace m_colorSpace; + int m_bitmapSiye; + byte[] m_bitmaps; + PDFColor transparent = new PDFColor(255, 255, 255); + + TempImage(int width, int height, + byte[] result) throws FopImageException { + this.m_height = height; + this.m_width = width; + this.m_bitsPerPixel = 8; + this.m_colorSpace = new ColorSpace(ColorSpace.DEVICE_RGB); + //this.m_isTransparent = false; + //this.m_bitmapsSize = this.m_width * this.m_height * 3; + this.m_bitmaps = result; + } + + public String getURL() { + return "" + m_bitmaps; + } + + // image size + public int getWidth() throws FopImageException { + return m_width; + } + + public int getHeight() throws FopImageException { + return m_height; + } + + // DeviceGray, DeviceRGB, or DeviceCMYK + public ColorSpace getColorSpace() throws FopImageException { + return m_colorSpace; + } + + // bits per pixel + public int getBitsPerPixel() throws FopImageException { + return m_bitsPerPixel; + } + + // For transparent images + public boolean isTransparent() throws FopImageException { + return transparent != null; + } + public PDFColor getTransparentColor() throws FopImageException { + return transparent; + } + + // get the image bytes, and bytes properties + + // get uncompressed image bytes + public byte[] getBitmaps() throws FopImageException { + return m_bitmaps; + } + // width * (bitsPerPixel / 8) * height, no ? + public int getBitmapsSize() throws FopImageException { + return m_width * m_height * 3; + } + + // get compressed image bytes + // I don't know if we really need it, nor if it + // should be changed... + public byte[] getRessourceBytes() throws FopImageException { + return null; + } + public int getRessourceBytesSize() throws FopImageException { + return 0; + } + // return null if no corresponding PDFFilter + public PDFFilter getPDFFilter() throws FopImageException { + return null; + } + + // release memory + public void close() {} + + } + + + /** + * Draws as much of the specified image as has already been scaled + * to fit inside the specified rectangle. + *

+ * The image is drawn inside the specified rectangle of this + * graphics context's coordinate space, and is scaled if + * necessary. Transparent pixels do not affect whatever pixels + * are already there. + *

+ * This method returns immediately in all cases, even if the + * entire image has not yet been scaled, dithered, and converted + * for the current output device. + * If the current output representation is not yet complete, then + * drawImage returns false. As more of + * the image becomes available, the process that draws the image notifies + * the image observer by calling its imageUpdate method. + *

+ * A scaled version of an image will not necessarily be + * available immediately just because an unscaled version of the + * image has been constructed for this output device. Each size of + * the image may be cached separately and generated from the original + * data in a separate image production sequence. + * @param img the specified image to be drawn. + * @param x the x coordinate. + * @param y the y coordinate. + * @param width the width of the rectangle. + * @param height the height of the rectangle. + * @param observer object to be notified as more of + * the image is converted. + * @see java.awt.Image + * @see java.awt.image.ImageObserver + * @see java.awt.image.ImageObserver#imageUpdate(java.awt.Image, int, int, int, int, int) + */ + public boolean drawImage(Image img, int x, int y, int width, + int height, ImageObserver observer) { + System.out.println("drawImage"); + return true; + } + + /** + * Disposes of this graphics context and releases + * any system resources that it is using. + * A Graphics object cannot be used after + * disposehas been called. + *

+ * When a Java program runs, a large number of Graphics + * objects can be created within a short time frame. + * Although the finalization process of the garbage collector + * also disposes of the same system resources, it is preferable + * to manually free the associated resources by calling this + * method rather than to rely on a finalization process which + * may not run to completion for a long period of time. + *

+ * Graphics objects which are provided as arguments to the + * paint and update methods + * of components are automatically released by the system when + * those methods return. For efficiency, programmers should + * call dispose when finished using + * a Graphics object only if it was created + * directly from a component or another Graphics object. + * @see java.awt.Graphics#finalize + * @see java.awt.Component#paint + * @see java.awt.Component#update + * @see java.awt.Component#getGraphics + * @see java.awt.Graphics#create + */ + public void dispose() { + System.out.println("dispose"); + } + + /** + * Strokes the outline of a Shape using the settings of the + * current Graphics2D context. The rendering attributes + * applied include the Clip, Transform, + * Paint, Composite and + * Stroke attributes. + * @param s the Shape to be rendered + * @see #setStroke + * @see #setPaint + * @see java.awt.Graphics#setColor + * @see #transform + * @see #setTransform + * @see #clip + * @see #setClip + * @see #setComposite + */ + public void draw(Shape s) { + //System.out.println("draw(Shape)"); + currentStream.write("q\n"); + Shape imclip = getClip(); + writeClip(imclip); + Color c = getColor(); + currentColour = new PDFColor(c.getRed(), c.getGreen(), c.getBlue()); + currentStream.write(currentColour.getColorSpaceOut(true)); + c = getBackground(); + PDFColor col = new PDFColor(c.getRed(), c.getGreen(), c.getBlue()); + currentStream.write(col.getColorSpaceOut(false)); + + PDFNumber pdfNumber = new PDFNumber(); + + PathIterator iter = s.getPathIterator(getTransform()); + while (!iter.isDone()) { + double vals[] = new double[6]; + int type = iter.currentSegment(vals); + switch (type) { + case PathIterator.SEG_CUBICTO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " " + + pdfNumber.doubleOut(vals[2]) + " " + + pdfNumber.doubleOut(vals[3]) + " " + + pdfNumber.doubleOut(vals[4]) + " " + + pdfNumber.doubleOut(vals[5]) + " c\n"); + break; + case PathIterator.SEG_LINETO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " l\n"); + break; + case PathIterator.SEG_MOVETO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " m\n"); + break; + case PathIterator.SEG_QUADTO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " " + + pdfNumber.doubleOut(vals[2]) + " " + + pdfNumber.doubleOut(vals[3]) + " y\n"); + break; + case PathIterator.SEG_CLOSE: + currentStream.write("h\n"); + break; + default: + break; + } + iter.next(); + } + doDrawing(false, true, false); + currentStream.write("Q\n"); + } + + protected void writeClip(Shape s) { + PDFNumber pdfNumber = new PDFNumber(); + + PathIterator iter = s.getPathIterator(getTransform()); + while (!iter.isDone()) { + double vals[] = new double[6]; + int type = iter.currentSegment(vals); + switch (type) { + case PathIterator.SEG_CUBICTO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " " + + pdfNumber.doubleOut(vals[2]) + " " + + pdfNumber.doubleOut(vals[3]) + " " + + pdfNumber.doubleOut(vals[4]) + " " + + pdfNumber.doubleOut(vals[5]) + " c\n"); + break; + case PathIterator.SEG_LINETO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " l\n"); + break; + case PathIterator.SEG_MOVETO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " m\n"); + break; + case PathIterator.SEG_QUADTO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " " + + pdfNumber.doubleOut(vals[2]) + " " + + pdfNumber.doubleOut(vals[3]) + " y\n"); + break; + case PathIterator.SEG_CLOSE: + currentStream.write("h\n"); + break; + default: + break; + } + iter.next(); + } + // clip area + currentStream.write("W\n"); + currentStream.write("n\n"); + } + + /** + * Renders a {@link RenderedImage}, + * applying a transform from image + * space into user space before drawing. + * The transformation from user space into device space is done with + * the current Transform in the Graphics2D. + * The specified transformation is applied to the image before the + * transform attribute in the Graphics2D context is applied. + * The rendering attributes applied include the Clip, + * Transform, and Composite attributes. Note + * that no rendering is done if the specified transform is + * noninvertible. + * @param img the image to be rendered + * @param xform the transformation from image space into user space + * @see #transform + * @see #setTransform + * @see #setComposite + * @see #clip + * @see #setClip + */ + public void drawRenderedImage(RenderedImage img, + AffineTransform xform) { + System.out.println("drawRenderedImage"); + } + + + /** + * Renders a + * {@link RenderableImage}, + * applying a transform from image space into user space before drawing. + * The transformation from user space into device space is done with + * the current Transform in the Graphics2D. + * The specified transformation is applied to the image before the + * transform attribute in the Graphics2D context is applied. + * The rendering attributes applied include the Clip, + * Transform, and Composite attributes. Note + * that no rendering is done if the specified transform is + * noninvertible. + *

+ * Rendering hints set on the Graphics2D object might + * be used in rendering the RenderableImage. + * If explicit control is required over specific hints recognized by a + * specific RenderableImage, or if knowledge of which hints + * are used is required, then a RenderedImage should be + * obtained directly from the RenderableImage + * and rendered using + *{@link #drawRenderedImage(RenderedImage, AffineTransform) drawRenderedImage}. + * @param img the image to be rendered + * @param xform the transformation from image space into user space + * @see #transform + * @see #setTransform + * @see #setComposite + * @see #clip + * @see #setClip + * @see #drawRenderedImage + */ + public void drawRenderableImage(RenderableImage img, + AffineTransform xform) { + System.out.println("drawRenderableImage"); + } + + /** + * Renders the text specified by the specified String, + * using the current Font and Paint attributes + * in the Graphics2D context. + * The baseline of the first character is at position + * (xy) in the User Space. + * The rendering attributes applied include the Clip, + * Transform, Paint, Font and + * Composite attributes. For characters in script systems + * such as Hebrew and Arabic, the glyphs can be rendered from right to + * left, in which case the coordinate supplied is the location of the + * leftmost character on the baseline. + * @param s the String to be rendered + * @param x, y the coordinates where the String + * should be rendered + * @see #setPaint + * @see java.awt.Graphics#setColor + * @see java.awt.Graphics#setFont + * @see #setTransform + * @see #setComposite + * @see #setClip + */ + public void drawString(String s, float x, float y) { + System.out.println("drawString(String)"); + } + + /** + * Renders the text of the specified iterator, using the + * Graphics2D context's current Paint. The + * iterator must specify a font + * for each character. The baseline of the + * first character is at position (xy) in the + * User Space. + * The rendering attributes applied include the Clip, + * Transform, Paint, and + * Composite attributes. + * For characters in script systems such as Hebrew and Arabic, + * the glyphs can be rendered from right to left, in which case the + * coordinate supplied is the location of the leftmost character + * on the baseline. + * @param iterator the iterator whose text is to be rendered + * @param x, y the coordinates where the iterator's text is to be + * rendered + * @see #setPaint + * @see java.awt.Graphics#setColor + * @see #setTransform + * @see #setComposite + * @see #setClip + */ + public void drawString(AttributedCharacterIterator iterator, + float x, float y) { + System.err.println("drawString(AttributedCharacterIterator)"); + } + + /** + * Fills the interior of a Shape using the settings of the + * Graphics2D context. The rendering attributes applied + * include the Clip, Transform, + * Paint, and Composite. + * @param s the Shape to be filled + * @see #setPaint + * @see java.awt.Graphics#setColor + * @see #transform + * @see #setTransform + * @see #setComposite + * @see #clip + * @see #setClip + */ + public void fill(Shape s) { + //System.err.println("fill"); + currentStream.write("q\n"); + Shape imclip = getClip(); + writeClip(imclip); + Color c = getColor(); + currentColour = new PDFColor(c.getRed(), c.getGreen(), c.getBlue()); + currentStream.write(currentColour.getColorSpaceOut(true)); + c = getBackground(); + PDFColor col = new PDFColor(c.getRed(), c.getGreen(), c.getBlue()); + currentStream.write(col.getColorSpaceOut(false)); + + PDFNumber pdfNumber = new PDFNumber(); + + PathIterator iter = s.getPathIterator(getTransform()); + while (!iter.isDone()) { + double vals[] = new double[6]; + int type = iter.currentSegment(vals); + switch (type) { + case PathIterator.SEG_CUBICTO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " " + + pdfNumber.doubleOut(vals[2]) + " " + + pdfNumber.doubleOut(vals[3]) + " " + + pdfNumber.doubleOut(vals[4]) + " " + + pdfNumber.doubleOut(vals[5]) + " c\n"); + break; + case PathIterator.SEG_LINETO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " l\n"); + break; + case PathIterator.SEG_MOVETO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " m\n"); + break; + case PathIterator.SEG_QUADTO: + currentStream.write(pdfNumber.doubleOut(vals[0]) + + " " + pdfNumber.doubleOut(vals[1]) + " " + + pdfNumber.doubleOut(vals[2]) + " " + + pdfNumber.doubleOut(vals[3]) + " y\n"); + break; + case PathIterator.SEG_CLOSE: + currentStream.write("h\n"); + break; + default: + break; + } + iter.next(); + } + doDrawing(true, false, + iter.getWindingRule() == PathIterator.WIND_EVEN_ODD); + currentStream.write("Q\n"); + } + + protected void doDrawing(boolean fill, boolean stroke, + boolean nonzero) { + if (fill) { + if (stroke) { + if (!nonzero) + currentStream.write("B*\n"); + else + currentStream.write("B\n"); + } else { + if (!nonzero) + currentStream.write("f*\n"); + else + currentStream.write("f\n"); + } + } else { + //if(stroke) + currentStream.write("S\n"); + } + } + + /** + * Returns the device configuration associated with this + * Graphics2D. + */ + public GraphicsConfiguration getDeviceConfiguration() { + System.out.println("getDeviceConviguration"); + return GraphicsEnvironment.getLocalGraphicsEnvironment(). + getDefaultScreenDevice().getDefaultConfiguration(); + } + + /** + * Used to create proper font metrics + */ + private Graphics2D fmg; + + { + BufferedImage bi = + new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB); + + fmg = bi.createGraphics(); + } + + /** + * Gets the font metrics for the specified font. + * @return the font metrics for the specified font. + * @param f the specified font + * @see java.awt.Graphics#getFont + * @see java.awt.FontMetrics + * @see java.awt.Graphics#getFontMetrics() + */ + public FontMetrics getFontMetrics(Font f) { + return fmg.getFontMetrics(f); + } + + /** + * Sets the paint mode of this graphics context to alternate between + * this graphics context's current color and the new specified color. + * This specifies that logical pixel operations are performed in the + * XOR mode, which alternates pixels between the current color and + * a specified XOR color. + *

+ * When drawing operations are performed, pixels which are the + * current color are changed to the specified color, and vice versa. + *

+ * Pixels that are of colors other than those two colors are changed + * in an unpredictable but reversible manner; if the same figure is + * drawn twice, then all pixels are restored to their original values. + * @param c1 the XOR alternation color + */ + public void setXORMode(Color c1) { + System.out.println("setXORMode"); + } + + + /** + * Copies an area of the component by a distance specified by + * dx and dy. From the point specified + * by x and y, this method + * copies downwards and to the right. To copy an area of the + * component to the left or upwards, specify a negative value for + * dx or dy. + * If a portion of the source rectangle lies outside the bounds + * of the component, or is obscured by another window or component, + * copyArea will be unable to copy the associated + * pixels. The area that is omitted can be refreshed by calling + * the component's paint method. + * @param x the x coordinate of the source rectangle. + * @param y the y coordinate of the source rectangle. + * @param width the width of the source rectangle. + * @param height the height of the source rectangle. + * @param dx the horizontal distance to copy the pixels. + * @param dy the vertical distance to copy the pixels. + */ + public void copyArea(int x, int y, int width, int height, int dx, + int dy) { + System.out.println("copyArea"); + } + +} diff --git a/src/org/apache/fop/svg/PDFTranscoder.java b/src/org/apache/fop/svg/PDFTranscoder.java new file mode 100644 index 000000000..fdf67007c --- /dev/null +++ b/src/org/apache/fop/svg/PDFTranscoder.java @@ -0,0 +1,659 @@ +/***************************************************************************** + * Copyright (C) The Apache Software Foundation. All rights reserved. * + * ------------------------------------------------------------------------- * + * This software is published under the terms of the Apache Software License * + * version 1.1, a copy of which has been included with this distribution in * + * the LICENSE file. * + *****************************************************************************/ + +package org.apache.fop.svg; + +import java.awt.AlphaComposite; +import java.awt.Cursor; +import java.awt.Dimension; +import java.awt.Graphics2D; +import java.awt.Paint; +import java.awt.Point; +import java.awt.Rectangle; +import java.awt.Shape; + +import java.awt.geom.AffineTransform; +import java.awt.geom.Dimension2D; +import java.awt.geom.Rectangle2D; +import java.awt.image.BufferedImage; + +import java.awt.*; +import java.awt.event.*; +import java.awt.geom.*; +import java.awt.font.*; + +import java.net.MalformedURLException; +import java.net.URL; + +import java.util.HashSet; +import java.util.Set; + +import org.apache.batik.transcoder.*; + +import org.apache.batik.bridge.BridgeContext; +import org.apache.batik.bridge.BridgeException; +import org.apache.batik.bridge.GVTBuilder; +import org.apache.batik.bridge.UserAgent; +import org.apache.batik.bridge.ViewBox; + +import org.apache.batik.dom.svg.DefaultSVGContext; +import org.apache.batik.dom.svg.SAXSVGDocumentFactory; +import org.apache.batik.dom.svg.SVGDOMImplementation; +import org.apache.batik.dom.svg.SVGOMDocument; +import org.apache.batik.dom.util.DocumentFactory; + +import org.apache.batik.ext.awt.image.GraphicsUtil; + +import org.apache.batik.gvt.GraphicsNode; +import org.apache.batik.gvt.GraphicsNodeRenderContext; +import org.apache.batik.gvt.event.EventDispatcher; +import org.apache.batik.gvt.renderer.ImageRenderer; +import org.apache.batik.gvt.renderer.ImageRendererFactory; + +import org.apache.batik.transcoder.TranscoderException; +import org.apache.batik.transcoder.TranscoderOutput; +import org.apache.batik.transcoder.TranscodingHints; +import org.apache.batik.transcoder.XMLAbstractTranscoder; +import org.apache.batik.transcoder.image.resources.Messages; + +import org.apache.batik.transcoder.keys.BooleanKey; +import org.apache.batik.transcoder.keys.FloatKey; +import org.apache.batik.transcoder.keys.LengthKey; +import org.apache.batik.transcoder.keys.PaintKey; +import org.apache.batik.transcoder.keys.PaintKey; +import org.apache.batik.transcoder.keys.Rectangle2DKey; +import org.apache.batik.transcoder.keys.StringKey; +import org.apache.batik.transcoder.*; + +import org.apache.batik.util.SVGConstants; + +import org.apache.batik.bridge.*; +import org.apache.batik.swing.svg.*; +import org.apache.batik.swing.gvt.*; +import org.apache.batik.gvt.*; +import org.apache.batik.gvt.renderer.*; +import org.apache.batik.gvt.filter.*; +import org.apache.batik.gvt.event.*; + +import org.w3c.dom.*; +import org.w3c.dom.svg.*; +import org.w3c.dom.css.*; +import org.w3c.dom.svg.SVGLength; + +import org.apache.fop.svg.*; + +import org.w3c.dom.DOMException; +import org.w3c.dom.DOMImplementation; +import org.w3c.dom.Document; +import org.w3c.dom.svg.SVGAElement; +import org.w3c.dom.svg.SVGDocument; +import org.w3c.dom.svg.SVGSVGElement; + +// FIXME : Those import clauses will change with new design +import org.apache.batik.gvt.renderer.StaticRendererFactory; + +/** + * This class enables to transcode an input to an image of any format. + * + *

Two transcoding hints (KEY_WIDTH and + * KEY_HEIGHT) can be used to respectively specify the image + * width and the image height. If only one of these keys is specified, + * the transcoder preserves the aspect ratio of the original image. + * + *

The KEY_BACKGROUND_COLOR defines the background color + * to use for opaque image formats, or the background color that may + * be used for image formats that support alpha channel. + * + *

The KEY_AOI represents the area of interest to paint + * in device space. + * + *

Three additional transcoding hints that act on the SVG + * processor can be specified: + * + *

KEY_LANGUAGE to set the default language to use (may be + * used by a <switch> SVG element for example), + * KEY_USER_STYLESHEET_URI to fix the URI of a user + * stylesheet, and KEY_PIXEL_TO_MM to specify the pixel to + * millimeter conversion factor. + * + * @author Thierry Kormann + * @version $Id$ + */ +public class PDFTranscoder extends XMLAbstractTranscoder { + + /** The user agent dedicated to an ImageTranscoder. */ + protected UserAgent userAgent = new ImageTranscoderUserAgent(); + + /** + * Constructs a new ImageTranscoder. + */ + public PDFTranscoder() { + hints.put(KEY_DOCUMENT_ELEMENT_NAMESPACE_URI, + SVGConstants.SVG_NAMESPACE_URI); + hints.put(KEY_DOCUMENT_ELEMENT, + SVGConstants.SVG_SVG_TAG); + hints.put(KEY_DOM_IMPLEMENTATION, + SVGDOMImplementation.getDOMImplementation()); + } + + /** + * Transcodes the specified Document as an image in the specified output. + * + * @param document the document to transcode + * @param uri the uri of the document or null if any + * @param output the ouput where to transcode + * @exception TranscoderException if an error occured while transcoding + */ + protected void transcode(Document document, + String uri, + TranscoderOutput output) + throws TranscoderException { + + if (!(document instanceof SVGOMDocument)) { + throw new TranscoderException( + Messages.formatMessage("notsvg", null)); + } + SVGDocument svgDoc = (SVGDocument)document; + SVGSVGElement root = svgDoc.getRootElement(); + // initialize the SVG document with the appropriate context + String parserClassname = (String)hints.get(KEY_XML_PARSER_CLASSNAME); + DefaultSVGContext svgCtx = new DefaultSVGContext(); + svgCtx.setPixelToMM(userAgent.getPixelToMM()); + ((SVGOMDocument)document).setSVGContext(svgCtx); + + // build the GVT tree + GVTBuilder builder = new GVTBuilder(); + ImageRendererFactory rendFactory = new StaticRendererFactory(); + GraphicsNodeRenderContext rc = getRenderContext(); + BridgeContext ctx = new BridgeContext(userAgent, rc); + GraphicsNode gvtRoot; + try { + gvtRoot = builder.build(ctx, svgDoc); + } catch (BridgeException ex) { + throw new TranscoderException(ex); + } + // get the 'width' and 'height' attributes of the SVG document + float docWidth = (float)ctx.getDocumentSize().getWidth(); + float docHeight = (float)ctx.getDocumentSize().getHeight(); + ctx = null; + builder = null; + + // compute the image's width and height according the hints + float imgWidth = -1; + if (hints.containsKey(KEY_WIDTH)) { + imgWidth = ((Float)hints.get(KEY_WIDTH)).floatValue(); + } + float imgHeight = -1; + if (hints.containsKey(KEY_HEIGHT)) { + imgHeight = ((Float)hints.get(KEY_HEIGHT)).floatValue(); + } + float width, height; + if (imgWidth > 0 && imgHeight > 0) { + width = imgWidth; + height = imgHeight; + } else if (imgHeight > 0) { + width = (docWidth * imgHeight) / docHeight; + height = imgHeight; + } else if (imgWidth > 0) { + width = imgWidth; + height = (docHeight * imgWidth) / docWidth; + } else { + width = docWidth; + height = docHeight; + } + // compute the preserveAspectRatio matrix + AffineTransform Px; + String ref = null; + try { + ref = new URL(uri).getRef(); + } catch (MalformedURLException ex) { + // nothing to do, catched previously + } + + try { + Px = ViewBox.getViewTransform(ref, root, width, height); + } catch (BridgeException ex) { + throw new TranscoderException(ex); + } + + if (Px.isIdentity() && (width != docWidth || height != docHeight)) { + // The document has no viewBox, we need to resize it by hand. + // we want to keep the document size ratio + float d = Math.max(docWidth, docHeight); + float dd = Math.max(width, height); + float scale = dd/d; + Px = AffineTransform.getScaleInstance(scale, scale); + } + // take the AOI into account if any + if (hints.containsKey(KEY_AOI)) { + Rectangle2D aoi = (Rectangle2D)hints.get(KEY_AOI); + // transform the AOI into the image's coordinate system + aoi = Px.createTransformedShape(aoi).getBounds2D(); + AffineTransform Mx = new AffineTransform(); + double sx = width / aoi.getWidth(); + double sy = height / aoi.getHeight(); + Mx.scale(sx, sy); + double tx = -aoi.getX(); + double ty = -aoi.getY(); + Mx.translate(tx, ty); + // take the AOI transformation matrix into account + // we apply first the preserveAspectRatio matrix + Px.preConcatenate(Mx); + } + // prepare the image to be painted + int w = (int)width; + int h = (int)height; + + PDFDocumentGraphics2D graphics = new PDFDocumentGraphics2D(true, output.getOutputStream(), w, h); + // GraphicsNodeRenderContext rc = getRenderContext(); + graphics.setGraphicContext(new org.apache.batik.ext.awt.g2d.GraphicContext()); + graphics.setRenderingHints(rc.getRenderingHints()); + + gvtRoot.paint(graphics, rc); + + try { + graphics.finish(); + } catch (Exception ex) { + ex.printStackTrace(); + throw new TranscoderException(ex); + } + /* + // paint the SVG document using the bridge package + // create the appropriate renderer + ImageRenderer renderer = rendFactory.createImageRenderer(); + renderer.updateOffScreen(w, h); + renderer.setTransform(Px); + renderer.setTree(gvtRoot); + gvtRoot = null; // We're done with it... + + try { + // now we are sure that the aoi is the image size + Shape raoi = new Rectangle2D.Float(0, 0, width, height); + // Warning: the renderer's AOI must be in user space + renderer.repaint(Px.createInverse().createTransformedShape(raoi)); + BufferedImage rend = renderer.getOffScreen(); + renderer = null; // We're done with it... + + // BufferedImage dest = createImage(w, h); + + //Graphics2D g2d = GraphicsUtil.createGraphics(dest); + + //g2d.drawRenderedImage(rend, new AffineTransform()); + } catch (Exception ex) { + throw new TranscoderException(ex); + } + */ + } + + public GraphicsNodeRenderContext getRenderContext() { + GraphicsNodeRenderContext nodeRenderContext = null; + if (nodeRenderContext == null) { + RenderingHints hints = new RenderingHints(null); + hints.put(RenderingHints.KEY_ANTIALIASING, + RenderingHints.VALUE_ANTIALIAS_ON); + + hints.put(RenderingHints.KEY_INTERPOLATION, + RenderingHints.VALUE_INTERPOLATION_BILINEAR); + + FontRenderContext fontRenderContext = + new FontRenderContext(new AffineTransform(), true, true); + + TextPainter textPainter = new StrokingTextPainter(); + + GraphicsNodeRableFactory gnrFactory = + new ConcreteGraphicsNodeRableFactory(); + + nodeRenderContext = + new GraphicsNodeRenderContext(new AffineTransform(), + null, + hints, + fontRenderContext, + textPainter, + gnrFactory); + nodeRenderContext.setTextPainter(textPainter); + } + + return nodeRenderContext; + } + + /** + * Creates a DocumentFactory that is used to create an SVG DOM + * tree. The specified DOM Implementation is ignored and the Batik + * SVG DOM Implementation is automatically used. + * + * @param domImpl the DOM Implementation (not used) + * @param parserClassname the XML parser classname + */ + protected DocumentFactory createDocumentFactory(DOMImplementation domImpl, + String parserClassname) { + return new SAXSVGDocumentFactory(parserClassname); + } + + // -------------------------------------------------------------------- + // UserAgent implementation + // -------------------------------------------------------------------- + + /** + * A user agent implementation for ImageTranscoder. + */ + protected class ImageTranscoderUserAgent implements UserAgent { + + /** + * Returns the default size of this user agent (400x400). + */ + public Dimension2D getViewportSize() { + return new Dimension(400, 400); + } + + /** + * Displays the specified error message using the ErrorHandler. + */ + public void displayError(String message) { + try { + getErrorHandler().error(new TranscoderException(message)); + } catch (TranscoderException ex) { + throw new RuntimeException(); + } + } + + /** + * Displays the specified error using the ErrorHandler. + */ + public void displayError(Exception e) { + try { + getErrorHandler().error(new TranscoderException(e)); + } catch (TranscoderException ex) { + throw new RuntimeException(); + } + } + + /** + * Displays the specified message using the ErrorHandler. + */ + public void displayMessage(String message) { + try { + getErrorHandler().warning(new TranscoderException(message)); + } catch (TranscoderException ex) { + throw new RuntimeException(); + } + } + + /** + * Returns the pixel to millimeter conversion factor specified in the + * TranscodingHints or 0.3528 if any. + */ + public float getPixelToMM() { + if (getTranscodingHints().containsKey(KEY_PIXEL_TO_MM)) { + return ((Float)getTranscodingHints().get(KEY_PIXEL_TO_MM)).floatValue(); + } else { + // return 0.3528f; // 72 dpi + return 0.26458333333333333333333333333333f; // 96dpi + } + } + + /** + * Returns the user language specified in the + * TranscodingHints or "en" (english) if any. + */ + public String getLanguages() { + if (getTranscodingHints().containsKey(KEY_LANGUAGE)) { + return (String)getTranscodingHints().get(KEY_LANGUAGE); + } else { + return "en"; + } + } + + /** + * Returns the user stylesheet specified in the + * TranscodingHints or null if any. + */ + public String getUserStyleSheetURI() { + return (String)getTranscodingHints().get(KEY_USER_STYLESHEET_URI); + } + + /** + * Returns the XML parser to use from the TranscodingHints. + */ + public String getXMLParserClassName() { + return (String)getTranscodingHints().get(KEY_XML_PARSER_CLASSNAME); + } + + /** + * Unsupported operation. + */ + public EventDispatcher getEventDispatcher() { + return null; + } + + /** + * Unsupported operation. + */ + public void openLink(SVGAElement elt) { } + + /** + * Unsupported operation. + */ + public void setSVGCursor(Cursor cursor) { } + + /** + * Unsupported operation. + */ + public void runThread(Thread t) { } + + /** + * Unsupported operation. + */ + public AffineTransform getTransform() { + return null; + } + + /** + * Unsupported operation. + */ + public Point getClientAreaLocationOnScreen() { + return new Point(); + } + + /** + * Tells whether the given feature is supported by this + * user agent. + */ + public boolean hasFeature(String s) { + return FEATURES.contains(s); + } + + /** + * Tells whether the given extension is supported by this + * user agent. + */ + public boolean supportExtension(String s) { + return false; + } + + public void registerExtension(BridgeExtension be) + { + } + } + + protected final static Set FEATURES = new HashSet(); + static { + FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_FEATURE); + FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_LANG_FEATURE); + FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_STATIC_FEATURE); + } + + // -------------------------------------------------------------------- + // Keys definition + // -------------------------------------------------------------------- + + /** + * The image width key. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *

Key:

KEY_WIDTH

Value:

Float

Default:

The width of the top most svg element

Required:

No

Description:

Specify the width of the image to create.
*/ + public static final TranscodingHints.Key KEY_WIDTH + = new LengthKey(); + + /** + * The image height key. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *

Key:

KEY_HEIGHT

Value:

Float

Default:

The height of the top most svg element

Required:

No

Description:

Specify the height of the image to create.
*/ + public static final TranscodingHints.Key KEY_HEIGHT + = new LengthKey(); + + /** + * The area of interest key. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *

Key:

KEY_AOI

Value:

Rectangle2D

Default:

The document's size

Required:

No

Description:

Specify the area of interest to render. The + * rectangle coordinates must be specified in pixels and in the + * document coordinates system.
+ */ + public static final TranscodingHints.Key KEY_AOI + = new Rectangle2DKey(); + + /** + * The language key. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *

Key:

KEY_LANGUAGE

Value:

String

Default:

"en"

Required:

No

Description:

Specify the preferred language of the document. + *
+ */ + public static final TranscodingHints.Key KEY_LANGUAGE + = new StringKey(); + + /** + * The user stylesheet URI key. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *

Key:

KEY_USER_STYLESHEET_URI

Value:

String

Default:

null

Required:

No

Description:

Specify the user style sheet.
+ */ + public static final TranscodingHints.Key KEY_USER_STYLESHEET_URI + = new StringKey(); + + /** + * The pixel to millimeter conversion factor key. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *

Key:

KEY_PIXEL_TO_MM

Value:

Float

Default:

0.33

Required:

No

Description:

Specify the pixel to millimeter conversion factor. + *
+ */ + public static final TranscodingHints.Key KEY_PIXEL_TO_MM + = new FloatKey(); + + /** + * The image background paint key. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *

Key:

KEY_BACKGROUND_COLOR

Value:

Paint

Default:

null

Required:

No

Description:

Specify the background color to use. + * The color is required by opaque image formats and is used by + * image formats that support alpha channel.
+ */ + public static final TranscodingHints.Key KEY_BACKGROUND_COLOR + = new PaintKey(); + +} diff --git a/src/org/apache/fop/svg/Path.java b/src/org/apache/fop/svg/Path.java deleted file mode 100644 index 64a5b0a8c..000000000 --- a/src/org/apache/fop/svg/Path.java +++ /dev/null @@ -1,121 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import java.util.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:Path pseudo flow object. - * - */ -public class Path extends SVGObj { - - /** - * inner class for making Path objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Path object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Path object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Path(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Path objects - */ - public static FObj.Maker maker() { - return new Path.Maker(); - } - - /** - * constructs a Path object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Path(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:path"; - } - - public SVGElement createGraphic() - { - Vector pd = ((SVGD)this.properties.get("d")).getPath(); - SVGPathElementImpl graph = new SVGPathElementImpl(pd); - graph.setStyle(((SVGStyle)this.properties.get("style")).getStyle()); - graph.setTransform(((SVGTransform)this.properties.get("transform")).getTransform()); - graph.setId(this.properties.get("id").getString()); - return graph; - } -} diff --git a/src/org/apache/fop/svg/Pattern.java b/src/org/apache/fop/svg/Pattern.java deleted file mode 100644 index 5f3a852f2..000000000 --- a/src/org/apache/fop/svg/Pattern.java +++ /dev/null @@ -1,161 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; -import org.apache.fop.fo.properties.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.*; -/** - * class representing svg:Pattern pseudo flow object. - * - */ -public class Pattern extends SVGObj { - - /** - * inner class for making Pattern objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Pattern object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Pattern object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new Pattern(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Pattern objects - */ - public static FObj.Maker maker() { - return new Pattern.Maker(); - } - - /** - * constructs a Pattern object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Pattern(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:pattern"; - } - - public SVGElement createGraphic() { - SVGPatternElementImpl pattern = new SVGPatternElementImpl(); - String rf = this.properties.get("xlink:href").getString(); - pattern.setHref(new SVGAnimatedStringImpl(rf)); - SVGLength width = - ((SVGLengthProperty) this.properties.get("width")). - getSVGLength(); - SVGLength height = - ((SVGLengthProperty) this.properties.get("height")). - getSVGLength(); - SVGLength x = ((SVGLengthProperty) this.properties.get("x")). - getSVGLength(); - SVGLength y = ((SVGLengthProperty) this.properties.get("y")). - getSVGLength(); - pattern.setX(x == null ? null : new SVGAnimatedLengthImpl(x)); - pattern.setY(y == null ? null : new SVGAnimatedLengthImpl(y)); - pattern.setWidth(width == null ? null : - new SVGAnimatedLengthImpl(width)); - pattern.setHeight(height == null ? null : - new SVGAnimatedLengthImpl(height)); - pattern.setPatternTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - pattern.setId(this.properties.get("id").getString()); - int numChildren = this.children.size(); - for (int i = 0; i < numChildren; i++) { - FONode child = (FONode) children.elementAt(i); - if (child instanceof GraphicsCreator) { - SVGElement impl = ((GraphicsCreator) child).createGraphic(); - if (impl != null) { - if (impl instanceof SVGElementImpl) - ((SVGElementImpl) impl).setClassName( - new SVGAnimatedStringImpl( - ((FObj) child).getProperty( - "class").getString())); - pattern.appendChild(impl); - } - } - } - switch ((this.properties.get("patternUnits")).getEnum()) { - case GenericUnits.Enums.USER_SPACE_ON_USE: - pattern.setPatternUnits( new SVGAnimatedEnumerationImpl( - SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE)); - break; - case GenericUnits.Enums.OBJECT_BOUNDING_BOX: - pattern.setPatternUnits( new SVGAnimatedEnumerationImpl( - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX)); - break; - } - return pattern; - } -} diff --git a/src/org/apache/fop/svg/Polygon.java b/src/org/apache/fop/svg/Polygon.java deleted file mode 100644 index bd53fe4de..000000000 --- a/src/org/apache/fop/svg/Polygon.java +++ /dev/null @@ -1,120 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import java.util.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; - -/** - * - */ -public class Polygon extends SVGObj { - - /** - * inner class for making Polygon objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Polygon object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Polygon object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Polygon(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Polygon objects - */ - public static FObj.Maker maker() { - return new Polygon.Maker(); - } - - /** - * constructs a Polygon object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Polygon(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:polygon"; - } - - public SVGElement createGraphic() - { - Vector points = ((SVGPoints)this.properties.get("points")).getPoints(); - SVGPolygonElementImpl graph = new SVGPolygonElementImpl(points); - graph.setStyle(((SVGStyle)this.properties.get("style")).getStyle()); - graph.setTransform(((SVGTransform)this.properties.get("transform")).getTransform()); - graph.setId(this.properties.get("id").getString()); - return graph; - } -} diff --git a/src/org/apache/fop/svg/Polyline.java b/src/org/apache/fop/svg/Polyline.java deleted file mode 100644 index 05187eef1..000000000 --- a/src/org/apache/fop/svg/Polyline.java +++ /dev/null @@ -1,121 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import java.util.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:Polyline pseudo flow object. - * - */ -public class Polyline extends SVGObj { - - /** - * inner class for making Polyline objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Polyline object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Polyline object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Polyline(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Polyline objects - */ - public static FObj.Maker maker() { - return new Polyline.Maker(); - } - - /** - * constructs a Polyline object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Polyline(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:polyline"; - } - - public SVGElement createGraphic() - { - Vector points = ((SVGPoints)this.properties.get("points")).getPoints(); - SVGPolylineElementImpl graph = new SVGPolylineElementImpl(points); - graph.setStyle(((SVGStyle)this.properties.get("style")).getStyle()); - graph.setTransform(((SVGTransform)this.properties.get("transform")).getTransform()); - graph.setId(this.properties.get("id").getString()); - return graph; - } -} diff --git a/src/org/apache/fop/svg/RadialGradient.java b/src/org/apache/fop/svg/RadialGradient.java deleted file mode 100644 index 36a4770ee..000000000 --- a/src/org/apache/fop/svg/RadialGradient.java +++ /dev/null @@ -1,167 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; -import org.apache.fop.fo.properties.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.*; - -/** - * class representing svg:RadialGradient pseudo flow object. - * - */ -public class RadialGradient extends SVGObj { - - /** - * inner class for making RadialGradient objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a RadialGradient object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the RadialGradient object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new RadialGradient(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for RadialGradient objects - */ - public static FObj.Maker maker() { - return new RadialGradient.Maker(); - } - - SVGRadialGradientElementImpl radial = - new SVGRadialGradientElementImpl(); - - /** - * constructs a RadialGradient object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected RadialGradient(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:radialGradient"; - } - - protected void addChild(FONode child) { - super.addChild(child); - if (child instanceof Stop) { - SVGStopElement sse = ((Stop) child).createStop(); - radial.appendChild(sse); - } - } - - public SVGElement createGraphic() { - radial.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - radial.setTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - radial.setGradientTransform( - ((SVGTransform) this.properties.get("gradientTransform")). - getTransform()); - radial.setId(this.properties.get("id").getString()); - String rf = this.properties.get("xlink:href").getString(); - radial.setHref(new SVGAnimatedStringImpl(rf)); - - SVGLength length = ((SVGLengthProperty) this.properties.get("cx")). - getSVGLength(); - radial.setCx(length == null ? null : - new SVGAnimatedLengthImpl(length)); - length = ((SVGLengthProperty) this.properties.get("cy")). - getSVGLength(); - radial.setCy(length == null ? null : - new SVGAnimatedLengthImpl(length)); - length = ((SVGLengthProperty) this.properties.get("r")). - getSVGLength(); - radial.setR(length == null ? null : - new SVGAnimatedLengthImpl(length)); - length = ((SVGLengthProperty) this.properties.get("fx")). - getSVGLength(); - radial.setFx(length == null ? null : - new SVGAnimatedLengthImpl(length)); - length = ((SVGLengthProperty) this.properties.get("fy")). - getSVGLength(); - radial.setFy(length == null ? null : - new SVGAnimatedLengthImpl(length)); - switch ((this.properties.get("gradientUnits")).getEnum()) { - case GenericUnits.Enums.USER_SPACE_ON_USE: - radial.setGradientUnits( new SVGAnimatedEnumerationImpl( - SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE)); - break; - case GenericUnits.Enums.OBJECT_BOUNDING_BOX: - radial.setGradientUnits( new SVGAnimatedEnumerationImpl( - SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX)); - break; - } - return radial; - } -} diff --git a/src/org/apache/fop/svg/Rect.java b/src/org/apache/fop/svg/Rect.java deleted file mode 100644 index 49e3b741b..000000000 --- a/src/org/apache/fop/svg/Rect.java +++ /dev/null @@ -1,154 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.messaging.MessageHandler; -//import org.apache.fop.fo.properties.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -//import org.apache.fop.dom.svg.Graphic; -import org.apache.fop.dom.svg.SVGRectElementImpl; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGLength; -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:rect pseudo flow object. - */ -public class Rect extends SVGObj { - - /** - * inner class for making Rect objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Rect object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Rect object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new Rect(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Rect objects - */ - public static FObj.Maker maker() { - return new Rect.Maker(); - } - - /** - * constructs a Rect object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Rect(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:rect"; - } - - public SVGElement createGraphic() { - /* retrieve properties */ - SVGLength width = - ((SVGLengthProperty) this.properties.get("width")). - getSVGLength(); - SVGLength height = - ((SVGLengthProperty) this.properties.get("height")). - getSVGLength(); - SVGLength length = new SVGLengthImpl(); - SVGLength lengthProp = - ((SVGLengthProperty) this.properties.get("x")). - getSVGLength(); - SVGLength x = lengthProp == null ? length : lengthProp; - lengthProp = ((SVGLengthProperty) this.properties.get("y")). - getSVGLength(); - length = new SVGLengthImpl(); - SVGLength y = lengthProp == null ? length : lengthProp; - lengthProp = ((SVGLengthProperty) this.properties.get("rx")). - getSVGLength(); - length = new SVGLengthImpl(); - SVGLength rx = lengthProp == null ? length : lengthProp; - lengthProp = ((SVGLengthProperty) this.properties.get("ry")). - getSVGLength(); - length = new SVGLengthImpl(); - SVGLength ry = lengthProp == null ? length : lengthProp; - SVGRectElementImpl graph = new SVGRectElementImpl(); - graph.setX(new SVGAnimatedLengthImpl(x)); - graph.setY(new SVGAnimatedLengthImpl(y)); - graph.setRx(new SVGAnimatedLengthImpl(rx)); - graph.setRy(new SVGAnimatedLengthImpl(ry)); - graph.setWidth(new SVGAnimatedLengthImpl(width)); - graph.setHeight(new SVGAnimatedLengthImpl(height)); - graph.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - graph.setTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - graph.setId(this.properties.get("id").getString()); - return graph; - } -} diff --git a/src/org/apache/fop/svg/SVG.java b/src/org/apache/fop/svg/SVG.java index afa9ab336..3b9b18c02 100644 --- a/src/org/apache/fop/svg/SVG.java +++ b/src/org/apache/fop/svg/SVG.java @@ -59,18 +59,17 @@ import org.apache.fop.layout.FontState; import org.apache.fop.apps.FOPException; import org.apache.fop.layout.inline.*; -import org.apache.fop.dom.svg.*; +import org.apache.batik.dom.svg.*; +import org.w3c.dom.*; import org.w3c.dom.svg.*; import org.w3c.dom.svg.SVGLength; -import org.apache.fop.dom.svg.SVGArea; - -import java.util.StringTokenizer; +import java.io.File; /** * class representing svg:svg pseudo flow object. */ -public class SVG extends FObj implements GraphicsCreator { +public class SVG extends SVGObj implements GraphicsCreator { /** * inner class for making SVG objects. @@ -101,8 +100,6 @@ public class SVG extends FObj implements GraphicsCreator { } FontState fs; - float width; - float height; /** * constructs an SVG object (called by Maker). @@ -113,49 +110,128 @@ public class SVG extends FObj implements GraphicsCreator { public SVG(FObj parent, PropertyList propertyList) { super(parent, propertyList); this.name = "svg:svg"; + tagName = "svg"; + props = new String[] {"width", "height", "x", "y", "id", "style", "class", "visibility", + "id", + "class", + + + + "enable-background", + + + "flood-color", + "flood-opacity", + + + "fill", + "fill-opacity", + "fill-rule", + "stroke", + "stroke-dasharray", + "stroke-dashoffset", + "stroke-linecap", + "stroke-linejoin", + "stroke-miterlimit", + "stroke-opacity", + "stroke-width", + + + "font-family", + "font-size", + "font-size-adjust", + "font-stretch", + "font-style", + "font-variant", + "font-weight", + + + "stop-color", + "stop-opacity", + + + "clip-path", + "clip-rule", + "color", + "color-interpolation", + "color-rendering", + "cursor", + "display", + "filter", + "image-rendering", + "mask", + "opacity", + "pointer-events", + "space-rendering", + "text-rendering", + "visibility", + + + "color-profile", + + + "lighting-color", + + + "marker-start", + "marker-mid", + "marker-end", + + + "alignment-baseline", + "baseline-shift", + "direction", + "glyph-orientation-horizontal", + "glyph-orientation-vertical", + "kerning", + "letter-spacing", + "text-decoration", + "unicode-bidi", + "word-spacing", + + + "writing-mode", + "text-anchor", + "dominant-baseline", + + + "clip", + "overflow", + + + "id", + "style", + "transform", + "class", + }; } - public SVGElement createGraphic() { +/* public void addGraphic(Document doc, Element parent) { + Element element = doc.createElement(tagName); + for(int count = 0; count < props.length; count++) { + String rf = this.properties.get(props[count]).getString(); + element.setAttribute(props[count], rf); + } + parent.appendChild(element); + int numChildren = this.children.size(); + for (int i = 0; i < numChildren; i++) { + Object child = children.elementAt(i); + if (child instanceof GraphicsCreator) { + ((GraphicsCreator)child).addGraphic(doc, element); + } else if (child instanceof String) { + org.w3c.dom.Text text = doc.createTextNode((String)child); + element.appendChild(text); + } + } + }*/ + +/* public SVGElement createGraphic() { SVGSVGElementImpl svgArea = null; SVGLength w = ((SVGLengthProperty) this.properties.get("width")). getSVGLength(); SVGLength h = ((SVGLengthProperty) this.properties.get("height")). getSVGLength(); svgArea = new SVGSVGElementImpl(); - { - String box = this.properties.get("viewBox").getString(); - if (box != "") { - StringTokenizer st = new StringTokenizer(box, " "); - float x = 0; - float y = 0; - float width = 0; - float height = 0; - try { - if(st.hasMoreTokens()) { - x = Double.valueOf(st.nextToken()).floatValue(); - } - if(st.hasMoreTokens()) { - y = Double.valueOf(st.nextToken()).floatValue(); - } - if(st.hasMoreTokens()) { - width = Double.valueOf(st.nextToken()).floatValue(); - } - if(st.hasMoreTokens()) { - height = Double.valueOf(st.nextToken()).floatValue(); - } - } catch(Exception e) { - } - SVGRect rect = new SVGRectImpl(); - rect.setX(x); - rect.setY(y); - rect.setWidth(width); - rect.setHeight(height); - svgArea.setViewBox (new SVGAnimatedRectImpl (rect)); - } else { - svgArea.setViewBox (null); - } - } - SVGAnimatedLengthImpl sal; if (w == null) w = new SVGLengthImpl(); @@ -206,7 +282,7 @@ public class SVG extends FObj implements GraphicsCreator { Status status; } return svgArea; - } + }*/ /** * layout this formatting object. @@ -235,45 +311,79 @@ public class SVG extends FObj implements GraphicsCreator { this.properties.get("font-style").getString(); String fontWeight = this.properties.get("font-weight").getString(); - int fontSize = - this.properties.get("font-size").getLength().mvalue(); + String fontSz = this.properties.get("font-size").getString(); + int fontSize = area.getFontState().getFontSize(); + try { + fontSize = Integer.parseInt(fontSz); + } catch(Exception e) { + } // FIX-ME: should get the font-variant property this.fs = new FontState(area.getFontInfo(), fontFamily, fontStyle, fontWeight, fontSize, FontVariant.NORMAL); - SVGLength length; - length = ((SVGLengthProperty) this.properties.get("width")).getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - this.width = length.getValue(); - length = ((SVGLengthProperty) this.properties.get("height")). - getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - this.height = length.getValue(); +// this.width = this.properties.get("width").getString(); +// this.height = this.properties.get("height").getString(); this.marker = 0; } /* create an SVG area */ /* if width and height are zero, may want to get the bounds of the content. */ + SVGOMDocument doc = new SVGOMDocument(null, SVGDOMImplementation.getDOMImplementation()); + try { + doc.setURLObject(new File(".").toURL()); + } catch(Exception e) { + } + + DefaultSVGContext dc = new DefaultSVGContext() { + public float getPixelToMM() { + return 0.264583333333333333333f; // 72 dpi + } + public float getViewportWidth() { + return 100; + } + public float getViewportHeight() { + return 100; + } + }; + doc.setSVGContext(dc); + + Element topLevel = doc.createElementNS("http://www.w3.org/2000/svg", tagName); + for(int count = 0; count < props.length; count++) { + if(this.properties.get(props[count]) != null) { + String rf = this.properties.get(props[count]).getString(); + if(rf != null) + topLevel.setAttribute(props[count], rf); + } + } + doc.appendChild(topLevel); + int numChildren = this.children.size(); + for (int i = 0; i < numChildren; i++) { + Object child = children.elementAt(i); + if (child instanceof GraphicsCreator) { + ((GraphicsCreator)child).addGraphic(doc, topLevel); + } else if (child instanceof String) { + org.w3c.dom.Text text = doc.createTextNode((String)child); + topLevel.appendChild(text); + } + } + + float width = ((SVGSVGElement)topLevel).getWidth().getBaseVal().getValue(); + float height = ((SVGSVGElement)topLevel).getHeight().getBaseVal().getValue(); SVGArea svg = new SVGArea(fs, width, height); - SVGDocument doc = new SVGDocumentImpl(); svg.setSVGDocument(doc); svg.start(); + /* finish off the SVG area */ + svg.end(); + /* add the SVG area to the containing area */ ForeignObjectArea foa = (ForeignObjectArea) area; foa.setObject(svg); foa.setIntrinsicWidth(svg.getWidth()); foa.setIntrinsicHeight(svg.getHeight()); - doc.appendChild((SVGSVGElement) createGraphic()); - - /* finish off the SVG area */ - svg.end(); - /* return status */ return new Status(Status.OK); } diff --git a/src/org/apache/fop/dom/svg/SVGArea.java b/src/org/apache/fop/svg/SVGArea.java similarity index 98% rename from src/org/apache/fop/dom/svg/SVGArea.java rename to src/org/apache/fop/svg/SVGArea.java index 58c3fee68..ea7e60d9d 100644 --- a/src/org/apache/fop/dom/svg/SVGArea.java +++ b/src/org/apache/fop/svg/SVGArea.java @@ -48,13 +48,12 @@ Software Foundation, please see . */ -package org.apache.fop.dom.svg; +package org.apache.fop.svg; // FOP import org.apache.fop.render.Renderer; import org.apache.fop.layout.FontState; import org.apache.fop.layout.Area; -import org.apache.fop.dom.svg.*; import java.util.*; diff --git a/src/org/apache/fop/svg/SVGD.java b/src/org/apache/fop/svg/SVGD.java deleted file mode 100644 index 7fab240ce..000000000 --- a/src/org/apache/fop/svg/SVGD.java +++ /dev/null @@ -1,130 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.datatypes.*; -import org.apache.fop.apps.FOPException; - -import java.util.*; - -/** - * - */ -public class SVGD extends Property { - - /** - * inner class for making SVG Length objects. - */ - public static class Maker extends Property.Maker { - - /** - * whether this property is inherited or not. - * - * @return is this inherited? - */ - public boolean isInherited() { - return false; - } - - /** - * make an SVG Length property with the given value. - * - * @param propertyList the property list this is a member of - * @param value the explicit string value of the property - */ - public Property make(PropertyList propertyList, String value, - FObj fo) throws FOPException { - return new SVGD(propertyList, new PathData(value)); - } - - /** - * make an SVG Length property with the default value. - * - * @param propertyList the property list the property is a member of - */ - public Property make(PropertyList propertyList) - throws FOPException { - return make(propertyList, "", null); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for SVG Length objects - */ - public static Property.Maker maker(String propName) { - return new SVGD.Maker(); - } - - protected PathData style; - - /** - * construct an SVG length (called by the Maker). - * - * @param propertyList the property list this is a member of - * @param explicitValue the explicit value as a Length object - */ - protected SVGD(PropertyList propertyList, PathData explicitValue) { - this.style = explicitValue; - } - - /** - * get the length - * - * @return the length as a Length object - */ - public Vector getPath() { - return this.style.getPath(); - } -} diff --git a/src/org/apache/fop/svg/SVGDriver.java b/src/org/apache/fop/svg/SVGDriver.java index caa56640d..0bb662f1e 100644 --- a/src/org/apache/fop/svg/SVGDriver.java +++ b/src/org/apache/fop/svg/SVGDriver.java @@ -54,7 +54,6 @@ package org.apache.fop.svg; // FOP import org.apache.fop.fo.*; import org.apache.fop.apps.*; -import org.apache.fop.dom.svg.*; import org.apache.fop.fo.FOTreeBuilder; import org.apache.fop.fo.ElementMapping; import org.apache.fop.fo.PropertyListMapping; diff --git a/src/org/apache/fop/svg/SVGElementMapping.java b/src/org/apache/fop/svg/SVGElementMapping.java index bdedf174e..cb7305750 100644 --- a/src/org/apache/fop/svg/SVGElementMapping.java +++ b/src/org/apache/fop/svg/SVGElementMapping.java @@ -53,12 +53,11 @@ package org.apache.fop.svg; import org.apache.fop.fo.TreeBuilder; import org.apache.fop.fo.FOTreeBuilder; import org.apache.fop.fo.ElementMapping; -import org.apache.fop.dom.svg.SVGDocumentImpl; public class SVGElementMapping implements ElementMapping { public void addToBuilder(TreeBuilder builder) { - String uri = SVGDocumentImpl.namespaceURI; + String uri = "http://www.w3.org/2000/svg"; builder.addMapping(uri, "svg", SVG.maker()); builder.addMapping(uri, "rect", Rect.maker()); builder.addMapping(uri, "line", Line.maker()); @@ -74,8 +73,8 @@ public class SVGElementMapping implements ElementMapping { builder.addMapping(uri, "defs", Defs.maker()); builder.addMapping(uri, "path", Path.maker()); builder.addMapping(uri, "use", Use.maker()); - builder.addMapping(uri, "tspan", TSpan.maker()); - builder.addMapping(uri, "tref", TRef.maker()); + builder.addMapping(uri, "tspan", Tspan.maker()); + builder.addMapping(uri, "tref", Tref.maker()); builder.addMapping(uri, "image", Image.maker()); builder.addMapping(uri, "style", Style.maker()); @@ -99,13 +98,19 @@ public class SVGElementMapping implements ElementMapping { builder.addMapping(uri, "font", Font.maker()); builder.addMapping(uri, "glyph", Glyph.maker()); builder.addMapping(uri, "missing-glyph", MissingGlyph.maker()); - builder.addMapping(uri, "hkern", HKern.maker()); - builder.addMapping(uri, "vkern", VKern.maker()); + builder.addMapping(uri, "hkern", Hkern.maker()); + builder.addMapping(uri, "vkern", Vkern.maker()); builder.addMapping(uri, "set", Set.maker()); builder.addMapping(uri, "animateMotion", AnimateMotion.maker()); builder.addMapping(uri, "animateColor", AnimateColor.maker()); builder.addMapping(uri, "animateTransform", AnimateTransform.maker()); builder.addMapping(uri, "cursor", Cursor.maker()); builder.addMapping(uri, "filter", Filter.maker()); + + builder.addMapping(uri, "feFlood", FeFlood.maker()); + builder.addMapping(uri, "feGaussianBlur", FeGaussianBlur.maker()); + builder.addMapping(uri, "feOffset", FeOffset.maker()); + builder.addMapping(uri, "feMerge", FeMerge.maker()); + builder.addMapping(uri, "feMergeNode", FeMergeNode.maker()); } } diff --git a/src/org/apache/fop/svg/SVGLengthListProperty.java b/src/org/apache/fop/svg/SVGLengthListProperty.java deleted file mode 100644 index bdbe25656..000000000 --- a/src/org/apache/fop/svg/SVGLengthListProperty.java +++ /dev/null @@ -1,145 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.svg; - -import java.util.*; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.datatypes.*; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; - -import org.w3c.dom.svg.*; - -/** - * a class representing all the length properties in SVG - */ -public class SVGLengthListProperty extends Property { - - /** - * inner class for making SVG Length objects. - */ - public static class Maker extends Property.Maker { - - /** - * whether this property is inherited or not. - * - * @return is this inherited? - */ - public boolean isInherited() { - return false; - } - - /** - * make an SVG Length property with the given value. - * - * @param propertyList the property list this is a member of - * @param value the explicit string value of the property - */ - public Property make(PropertyList propertyList, String value, - FObj fo) throws FOPException { - SVGAnimatedLengthListImpl anime = - new SVGAnimatedLengthListImpl(); - SVGLengthListImpl len = new SVGLengthListImpl(); - anime.setBaseVal(len); - len.setValueAsString(value); - return new SVGLengthListProperty(propertyList, anime); - } - - /** - * make an SVG Length property with the default value. - * - * @param propertyList the property list the property is a member of - */ - public Property make(PropertyList propertyList) - throws FOPException { - return make(propertyList, "", null); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for SVG Length objects - */ - public static Property.Maker maker() { - return new SVGLengthListProperty.Maker(); - } - - public static Property.Maker maker(String propName) { - return new SVGLengthListProperty.Maker(); - } - - /** the length as a Length object */ - protected SVGAnimatedLengthList value; - - /** - * construct an SVG length (called by the Maker). - * - * @param propertyList the property list this is a member of - * @param explicitValue the explicit value as a Length object - */ - protected SVGLengthListProperty(PropertyList propertyList, - SVGAnimatedLengthList explicitValue) { - this.value = explicitValue; - } - - /** - * get the length - * - * @return the length as a Length object - */ - public SVGAnimatedLengthList getSVGLengthList() { - return this.value; - } -} diff --git a/src/org/apache/fop/svg/SVGLengthProperty.java b/src/org/apache/fop/svg/SVGLengthProperty.java deleted file mode 100644 index da30e761e..000000000 --- a/src/org/apache/fop/svg/SVGLengthProperty.java +++ /dev/null @@ -1,143 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.datatypes.*; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -/** - * a class representing all the length properties in SVG - */ -public class SVGLengthProperty extends Property { - - /** - * inner class for making SVG Length objects. - */ - public static class Maker extends Property.Maker { - - /** - * whether this property is inherited or not. - * - * @return is this inherited? - */ - public boolean isInherited() { - return false; - } - - /** - * make an SVG Length property with the given value. - * - * @param propertyList the property list this is a member of - * @param value the explicit string value of the property - */ - public Property make(PropertyList propertyList, String value, - FObj fo) throws FOPException { - SVGLengthImpl len = new SVGLengthImpl(); - len.setValueAsString(value); - return new SVGLengthProperty(propertyList, len); - } - - /** - * make an SVG Length property with the default value. - * - * @param propertyList the property list the property is a member of - */ - public Property make(PropertyList propertyList) - throws FOPException { - return new SVGLengthProperty(propertyList, null); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for SVG Length objects - */ - public static Property.Maker maker() { - return new SVGLengthProperty.Maker(); - } - - /** - * returns the maker for this object. - * @param propName the name of the property (used with new - * property mapping scheme) - * @return the maker for SVG Length objects - */ - public static Property.Maker maker(String propName) { - return new SVGLengthProperty.Maker(); - } - - /** the length as a Length object */ - protected SVGLengthImpl value; - - /** - * construct an SVG length (called by the Maker). - * - * @param propertyList the property list this is a member of - * @param explicitValue the explicit value as a Length object - */ - protected SVGLengthProperty(PropertyList propertyList, - SVGLengthImpl explicitValue) { - this.value = explicitValue; - } - - /** - * get the length - * - * @return the length as a Length object - */ - public SVGLengthImpl getSVGLength() { - return this.value; - } -} diff --git a/src/org/apache/fop/svg/SVGObj.java b/src/org/apache/fop/svg/SVGObj.java index c41b58cef..c5d53ad6f 100644 --- a/src/org/apache/fop/svg/SVGObj.java +++ b/src/org/apache/fop/svg/SVGObj.java @@ -57,9 +57,12 @@ import org.apache.fop.layout.Area; import org.apache.fop.layout.FontState; import org.apache.fop.apps.FOPException; -import org.apache.fop.dom.svg.*; +import org.apache.batik.dom.svg.*; -import org.w3c.dom.svg.SVGElement; +import org.w3c.dom.svg.*; +import org.w3c.dom.*; + +import java.util.*; /** * Since SVG objects are not layed out then this class checks @@ -68,6 +71,8 @@ import org.w3c.dom.svg.SVGElement; */ public abstract class SVGObj extends FObj implements GraphicsCreator { + String tagName = ""; + String[] props = {}; /** * * @param parent the parent formatting object @@ -77,10 +82,42 @@ public abstract class SVGObj extends FObj implements GraphicsCreator { super(parent, propertyList); } - public SVGElement createGraphic() - { - return null; - } + protected static Hashtable ns = new Hashtable(); + + public void addGraphic(Document doc, Element parent) { + Element element = doc.createElementNS("http://www.w3.org/2000/svg", tagName); +// Element element = doc.createElement(tagName); + for(int count = 0; count < props.length; count++) { + if(this.properties.get(props[count]) != null) { + String rf = this.properties.get(props[count]).getString(); + if(rf != null) { + if(props[count].indexOf(":") == -1) { + element.setAttribute(props[count], rf); + } else { + String pref = props[count].substring(0, props[count].indexOf(":")); +System.out.println(pref); + if(pref.equals("xmlns")) { + ns.put(props[count].substring(props[count].indexOf(":") + 1), rf); +System.out.println(ns); + } + ns.put("xlink", "http://www.w3.org/1999/xlink"); + element.setAttributeNS((String)ns.get(pref), props[count], rf); + } + } + } + } + parent.appendChild(element); + int numChildren = this.children.size(); + for (int i = 0; i < numChildren; i++) { + Object child = children.elementAt(i); + if (child instanceof GraphicsCreator) { + ((GraphicsCreator)child).addGraphic(doc, element); + } else if (child instanceof String) { + org.w3c.dom.Text text = doc.createTextNode((String)child); + element.appendChild(text); + } + } + } /** * layout this formatting object. @@ -90,11 +127,11 @@ public abstract class SVGObj extends FObj implements GraphicsCreator { */ public Status layout(Area area) throws FOPException { - if (area instanceof SVGArea) { - } else { +// if (area instanceof SVGArea) { +// } else { /* otherwise generate a warning */ System.err.println("WARNING: " + this.name + " outside svg:svg"); - } +// } /* return status */ return new Status(Status.OK); diff --git a/src/org/apache/fop/svg/SVGPropertyListMapping.java b/src/org/apache/fop/svg/SVGPropertyListMapping.java index e6b8940e5..3754194ae 100644 --- a/src/org/apache/fop/svg/SVGPropertyListMapping.java +++ b/src/org/apache/fop/svg/SVGPropertyListMapping.java @@ -53,7 +53,6 @@ package org.apache.fop.svg; import org.apache.fop.fo.*; import org.apache.fop.fo.properties.SVGPropertyMapping; -import org.apache.fop.dom.svg.SVGDocumentImpl; import java.util.Enumeration; @@ -61,7 +60,7 @@ public class SVGPropertyListMapping implements PropertyListMapping { public void addToBuilder(TreeBuilder builder) { - String uri = SVGDocumentImpl.namespaceURI; + String uri = "http://www.w3.org/2000/svg"; builder.addPropertyList(uri, SVGPropertyMapping.getGenericMappings()); /* Add any element mappings */ for (Enumeration e = SVGPropertyMapping.getElementMappings(); diff --git a/src/org/apache/fop/svg/SVGStringProperty.java b/src/org/apache/fop/svg/SVGStringProperty.java index 507e19c96..6fb768d71 100644 --- a/src/org/apache/fop/svg/SVGStringProperty.java +++ b/src/org/apache/fop/svg/SVGStringProperty.java @@ -54,10 +54,8 @@ import java.util.*; // FOP import org.apache.fop.fo.*; -import org.apache.fop.datatypes.*; import org.apache.fop.apps.FOPException; -import org.apache.fop.dom.svg.*; /** * a class representing all the length properties in SVG */ @@ -95,7 +93,7 @@ public class SVGStringProperty extends Property { */ public Property make(PropertyList propertyList) throws FOPException { - return make(propertyList, "", null); + return make(propertyList, null, null); } } @@ -104,7 +102,7 @@ public class SVGStringProperty extends Property { * * @return the maker for SVG Length objects */ - public static Property.Maker maker() { + public static Property.Maker maker(String name) { return new SVGStringProperty.Maker(); } diff --git a/src/org/apache/fop/svg/SVGStyle.java b/src/org/apache/fop/svg/SVGStyle.java deleted file mode 100644 index 28bc62fa5..000000000 --- a/src/org/apache/fop/svg/SVGStyle.java +++ /dev/null @@ -1,132 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.datatypes.*; -import org.apache.fop.apps.FOPException; - -import java.util.*; - -import org.w3c.dom.css.CSSStyleDeclaration; - -/** - * - */ -public class SVGStyle extends Property { - - /** - * inner class for making SVG Length objects. - */ - public static class Maker extends Property.Maker { - - /** - * whether this property is inherited or not. - * - * @return is this inherited? - */ - public boolean isInherited() { - return false; - } - - /** - * make an SVG Length property with the given value. - * - * @param propertyList the property list this is a member of - * @param value the explicit string value of the property - */ - public Property make(PropertyList propertyList, String value, - FObj fo) throws FOPException { - return new SVGStyle(propertyList, new StyleData(value)); - } - - /** - * make an SVG Length property with the default value. - * - * @param propertyList the property list the property is a member of - */ - public Property make(PropertyList propertyList) - throws FOPException { - return make(propertyList, "", null); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for SVG Length objects - */ - public static Property.Maker maker(String propName) { - return new SVGStyle.Maker(); - } - - protected StyleData style; - - /** - * construct an SVG length (called by the Maker). - * - * @param propertyList the property list this is a member of - * @param explicitValue the explicit value as a Length object - */ - protected SVGStyle(PropertyList propertyList, StyleData explicitValue) { - this.style = explicitValue; - } - - /** - * get the length - * - * @return the length as a Length object - */ - public CSSStyleDeclaration getStyle() { - return this.style.getStyle(); - } -} diff --git a/src/org/apache/fop/svg/SVGTransform.java b/src/org/apache/fop/svg/SVGTransform.java deleted file mode 100644 index 834621525..000000000 --- a/src/org/apache/fop/svg/SVGTransform.java +++ /dev/null @@ -1,131 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "Fop" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.datatypes.*; -import org.apache.fop.apps.FOPException; - -import org.w3c.dom.svg.SVGAnimatedTransformList; - -import java.util.*; - -/** - * - */ -public class SVGTransform extends Property { - - /** - * inner class for making SVG Length objects. - */ - public static class Maker extends Property.Maker { - - /** - * whether this property is inherited or not. - * - * @return is this inherited? - */ - public boolean isInherited() { - return false; - } - - /** - * make an SVG Length property with the given value. - * - * @param propertyList the property list this is a member of - * @param value the explicit string value of the property - */ - public Property make(PropertyList propertyList, String value, - FObj fo) throws FOPException { - return new SVGTransform(propertyList, new TransformData(value)); - } - - /** - * make an SVG Length property with the default value. - * - * @param propertyList the property list the property is a member of - */ - public Property make(PropertyList propertyList) - throws FOPException { - return make(propertyList, "", null); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for SVG Length objects - */ - public static Property.Maker maker(String propName) { - return new SVGTransform.Maker(); - } - - protected TransformData trans; - - /** - * - * @param propertyList the property list this is a member of - * @param explicitValue the explicit value as a Length object - */ - protected SVGTransform(PropertyList propertyList, - TransformData explicitValue) { - this.trans = explicitValue; - } - - /** - * - * @return the length as a Length object - */ - public SVGAnimatedTransformList getTransform() { - return this.trans.getTransform(); - } -} diff --git a/src/org/apache/fop/svg/Set.java b/src/org/apache/fop/svg/Set.java deleted file mode 100644 index d35dd254f..000000000 --- a/src/org/apache/fop/svg/Set.java +++ /dev/null @@ -1,106 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * class representing svg:Set pseudo flow object. - * - */ -public class Set extends SVGObj { - - /** - * inner class for making Set objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Set object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Set object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Set(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Set objects - */ - public static FObj.Maker maker() { - return new Set.Maker(); - } - - /** - * constructs a Set object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Set(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:set"; - } -} diff --git a/src/org/apache/fop/svg/Stop.java b/src/org/apache/fop/svg/Stop.java deleted file mode 100644 index 76f0e1af5..000000000 --- a/src/org/apache/fop/svg/Stop.java +++ /dev/null @@ -1,120 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.*; -import org.w3c.dom.svg.SVGLength; - -/** - * class representing svg:Stop pseudo flow object. - * - */ -public class Stop extends SVGObj { - - /** - * inner class for making Stop objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Stop object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Stop object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Stop(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Stop objects - */ - public static FObj.Maker maker() { - return new Stop.Maker(); - } - - /** - * constructs a Stop object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Stop(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:stop"; - } - - public SVGStopElement createStop() - { - SVGStopElementImpl sse = new SVGStopElementImpl(); - sse.setStyle(((SVGStyle)this.properties.get("style")).getStyle()); - SVGLength offset = ((SVGLengthProperty)this.properties.get("offset")).getSVGLength(); - sse.setOffset(new SVGAnimatedNumberImpl(offset.getValue())); // what about percentages - sse.setId(this.properties.get("id").getString()); - return sse; - } -} diff --git a/src/org/apache/fop/svg/Style.java b/src/org/apache/fop/svg/Style.java deleted file mode 100644 index 676ec7b56..000000000 --- a/src/org/apache/fop/svg/Style.java +++ /dev/null @@ -1,125 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.*; - -/** - * class representing svg:Style pseudo flow object. - * - */ -public class Style extends SVGObj { - - /** - * inner class for making Style objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Style object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Style object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Style(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Style objects - */ - public static FObj.Maker maker() { - return new Style.Maker(); - } - - /** - * constructs a Style object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Style(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:style"; - } - - String styleText = ""; - protected void addCharacters(char data[], int start, int length) - { - styleText += new String(data, start, length - start); - } - - public SVGElement createGraphic() - { - SVGStyleElement sse = new SVGStyleElementImpl(styleText); -// sse.setType(this.properties.get("type").getString()); -// sse.setMedia(this.properties.get("media").getString()); -// sse.setTitle(this.properties.get("title").getString()); -// sse.setStyle(styleText); - return sse; - } -} diff --git a/src/org/apache/fop/svg/Switch.java b/src/org/apache/fop/svg/Switch.java deleted file mode 100644 index caece1c73..000000000 --- a/src/org/apache/fop/svg/Switch.java +++ /dev/null @@ -1,167 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class Switch extends SVGObj { - - /** - * inner class for making Line objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Line object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Line object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new Switch(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Switch objects - */ - public static FObj.Maker maker() { - return new Switch.Maker(); - } - - /** - * constructs a Switch object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Switch(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:switch"; - } - - public SVGElement createGraphic() { - /* - * There are two options - * 1) add all children and select the correct one when rendering - * 2) select the correct one now and return it rather than a switch element - * Since renderers may have different ideas, leave it up to the renderer - * to select the correct one. - */ - String rf = this.properties.get("requiredFeatures").getString(); - String re = this.properties.get("requiredExtensions").getString(); - String sl = this.properties.get("systemLanguage").getString(); - SVGStringListImpl strlist; - GraphicElement graphic; - graphic = new SVGSwitchElementImpl(); - if (!rf.equals("notpresent")) { - strlist = new SVGStringListImpl(rf); - graphic.setRequiredFeatures(strlist); - } - if (!re.equals("notpresent")) { - strlist = new SVGStringListImpl(re); - graphic.setRequiredExtensions(strlist); - } - if (!sl.equals("notpresent")) { - strlist = new SVGStringListImpl(sl); - graphic.setSystemLanguage(strlist); - } - - int numChildren = this.children.size(); - for (int i = 0; i < numChildren; i++) { - FONode child = (FONode) children.elementAt(i); - if (child instanceof GraphicsCreator) { - SVGElement impl = ((GraphicsCreator) child).createGraphic(); - if (impl instanceof GraphicElement) { - GraphicElement testable = (GraphicElement) impl; - rf = child.getProperty("requiredFeatures").getString(); - re = child.getProperty( - "requiredExtensions").getString(); - sl = child.getProperty("systemLanguage").getString(); - if (!rf.equals("notpresent")) { - strlist = new SVGStringListImpl(rf); - testable.setRequiredFeatures(strlist); - } - if (!re.equals("notpresent")) { - strlist = new SVGStringListImpl(re); - testable.setRequiredExtensions(strlist); - } - if (!sl.equals("notpresent")) { - strlist = new SVGStringListImpl(sl); - testable.setSystemLanguage(strlist); - } - graphic.appendChild((GraphicElement) impl); - } - } else if (child instanceof Defs) { - } - } - - return graphic; - } -} diff --git a/src/org/apache/fop/svg/Symbol.java b/src/org/apache/fop/svg/Symbol.java deleted file mode 100644 index f119e220e..000000000 --- a/src/org/apache/fop/svg/Symbol.java +++ /dev/null @@ -1,156 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.*; - -import java.util.StringTokenizer; - -/** - * - */ -public class Symbol extends SVGObj { - - /** - * inner class for making Symbol objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Symbol object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Symbol object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Symbol(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Symbol objects - */ - public static FObj.Maker maker() { - return new Symbol.Maker(); - } - - /** - * constructs a Symbol object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Symbol(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:symbol"; - } - - public SVGElement createGraphic() - { - String box = this.properties.get("viewBox").getString(); - StringTokenizer st = new StringTokenizer(box, " "); - float x = 0; - float y = 0; - float width = 0; - float height = 0; - try { - if(st.hasMoreTokens()) { - x = Double.valueOf(st.nextToken()).floatValue(); - } - if(st.hasMoreTokens()) { - y = Double.valueOf(st.nextToken()).floatValue(); - } - if(st.hasMoreTokens()) { - width = Double.valueOf(st.nextToken()).floatValue(); - } - if(st.hasMoreTokens()) { - height = Double.valueOf(st.nextToken()).floatValue(); - } - } catch(Exception e) { - } - SVGRect rect = new SVGRectImpl(); - rect.setX(x); - rect.setY(y); - rect.setWidth(width); - rect.setHeight(height); - SVGSymbolElementImpl graphic; - graphic = new SVGSymbolElementImpl(); - String id = this.properties.get("id").getString(); - graphic.setId(id); - graphic.setViewBox(new SVGAnimatedRectImpl(rect)); - - int numChildren = this.children.size(); - for (int i = 0; i < numChildren; i++) { - FONode child = (FONode) children.elementAt(i); - if(child instanceof GraphicsCreator) { - SVGElement impl = ((GraphicsCreator)child).createGraphic(); - graphic.appendChild(impl); - } - } - - return graphic; - } -} diff --git a/src/org/apache/fop/svg/TRef.java b/src/org/apache/fop/svg/TRef.java deleted file mode 100644 index 8d4f93846..000000000 --- a/src/org/apache/fop/svg/TRef.java +++ /dev/null @@ -1,130 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.*; - -/** - * - */ -public class TRef extends SVGObj implements TextElement { - - /** - * inner class for making Line objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Line object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Line object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new TRef(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for TRef objects - */ - public static FObj.Maker maker() { - return new TRef.Maker(); - } - - /** - * constructs a TRef object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected TRef(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:tref"; - } - - public SVGElement createTextElement() - { - SVGTRefElementImpl tref = new SVGTRefElementImpl(); - tref.setStyle(((SVGStyle)this.properties.get("style")).getStyle()); - Property prop; - prop = this.properties.get("x"); - SVGAnimatedLengthList xlist = ((SVGLengthListProperty)prop).getSVGLengthList(); - tref.xlist = xlist; - prop = this.properties.get("y"); - SVGAnimatedLengthList ylist = ((SVGLengthListProperty)prop).getSVGLengthList(); - tref.ylist = ylist; - prop = this.properties.get("dx"); - SVGAnimatedLengthList dxlist = ((SVGLengthListProperty)prop).getSVGLengthList(); - tref.dxlist = dxlist; - prop = this.properties.get("dy"); - SVGAnimatedLengthList dylist = ((SVGLengthListProperty)prop).getSVGLengthList(); - tref.dylist = dylist; - tref.ref = this.properties.get("xlink:href").getString(); - tref.setId(this.properties.get("id").getString()); - return tref; - } -} diff --git a/src/org/apache/fop/svg/TSpan.java b/src/org/apache/fop/svg/TSpan.java deleted file mode 100644 index f4b7624c5..000000000 --- a/src/org/apache/fop/svg/TSpan.java +++ /dev/null @@ -1,148 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.CharacterDataImpl; -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; -import org.w3c.dom.CharacterData; - -/** - * class representing svg:tspan pseudo flow object. - * - */ -public class TSpan extends SVGObj implements TextElement { - - /** - * inner class for making tspan objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Line object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Line object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new TSpan(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Line objects - */ - public static FObj.Maker maker() { - return new TSpan.Maker(); - } - - SVGTSpanElementImpl tspan = new SVGTSpanElementImpl(); - String text = ""; - /** - * add characters to the string to display. - * - * @param data array of characters - * @param start start offset in character array - * @param length number of characters to add - */ - protected void addCharacters(char data[], int start, int length) - { - this.text = new String(data, start, length - start); - CharacterData cd = new CharacterDataImpl(); - cd.setData(text); - tspan.appendChild(cd); -// tspan.str = this.text; - } - - /** - * constructs a TSpan object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected TSpan(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:tspan"; - } - - public SVGElement createTextElement() - { - tspan.setStyle(((SVGStyle)this.properties.get("style")).getStyle()); -/* CharacterData cd = new CharacterDataImpl(); - cd.setData(text); - tspan.appendChild(cd);*/ - Property prop; - prop = this.properties.get("x"); - tspan.xlist = ((SVGLengthListProperty)prop).getSVGLengthList(); - prop = this.properties.get("y"); - tspan.ylist = ((SVGLengthListProperty)prop).getSVGLengthList(); - prop = this.properties.get("dx"); - tspan.dxlist = ((SVGLengthListProperty)prop).getSVGLengthList(); - prop = this.properties.get("dy"); - tspan.dylist = ((SVGLengthListProperty)prop).getSVGLengthList(); - tspan.setId(this.properties.get("id").getString()); - return tspan; - } -} diff --git a/src/org/apache/fop/svg/Text.java b/src/org/apache/fop/svg/Text.java deleted file mode 100644 index 9b03852e6..000000000 --- a/src/org/apache/fop/svg/Text.java +++ /dev/null @@ -1,191 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.messaging.MessageHandler; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; -import org.apache.fop.fo.properties.XMLSpace; -import org.apache.fop.fo.properties.TextAnchor; - -import java.util.*; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGTextElementImpl; -import org.apache.fop.dom.svg.SVGArea; -import org.apache.fop.dom.CharacterDataImpl; - -import org.w3c.dom.svg.*; -import org.w3c.dom.svg.SVGLength; -import org.w3c.dom.CharacterData; - -/** - * class representing svg:text pseudo flow object. - * - */ -public class Text extends SVGObj { - - /** - * inner class for making SVG Text objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make an SVG Text object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the SVG Text object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new Text(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for SVG Text objects - */ - public static FObj.Maker maker() { - return new Text.Maker(); - } - - /** - * the string of text to display - */ - Vector textList = new Vector(); - - /** - * constructs an SVG Text object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Text(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:text"; - } - - SVGTextElementImpl textGraph = new SVGTextElementImpl(); - - /** - * add characters to the string to display. - * - * @param data array of characters - * @param start start offset in character array - * @param length number of characters to add - */ - protected void addCharacters(char data[], int start, int length) { - textList.addElement(new String(data, start, length - start)); - } - - /** - * The children need to be added in order so that the text data - * is also added in order. - */ - protected void addChild(FONode child) { - super.addChild(child); - if (child instanceof TextElement) { - TextElement te = (TextElement) child; - SVGElement graph = te.createTextElement(); - textList.addElement(graph); - } else { - // error - } - } - - public SVGElement createGraphic() { - int numChildren = this.textList.size(); - for (int i = 0; i < numChildren; i++) { - Object obj = textList.elementAt(i); - if (obj instanceof SVGElement) { - SVGElement child = (SVGElement) obj; - textGraph.appendChild(child); - } else if (obj instanceof String) { - String str = (String) obj; - CharacterData cd = new CharacterDataImpl(); - cd.setData(str); - textGraph.appendChild(cd); - } - // System.out.println(child); - } - /* retrieve properties */ - SVGLength prop; - prop = ((SVGLengthProperty) this.properties.get("x")).getSVGLength(); - textGraph.x = prop == null ? 0 : prop.getValue(); - prop = ((SVGLengthProperty) this.properties.get("y")).getSVGLength(); - textGraph.y = prop == null ? 0 : prop.getValue(); - textGraph.anchor = ((EnumProperty) this.properties.get("text-anchor")); - // textGraph.textList = textList; - textGraph.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - textGraph.setTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - textGraph.setId(this.properties.get("id").getString()); - switch ((this.properties.get("xml:space")).getEnum()) { - case XMLSpace.DEFAULT: - textGraph.setXMLspace("default"); - break; - case XMLSpace.PRESERVE: - textGraph.setXMLspace("preserve"); - break; - } - return textGraph; - } -} diff --git a/src/org/apache/fop/svg/TextElement.java b/src/org/apache/fop/svg/TextElement.java index 92486066b..fb63bbe40 100644 --- a/src/org/apache/fop/svg/TextElement.java +++ b/src/org/apache/fop/svg/TextElement.java @@ -51,8 +51,6 @@ package org.apache.fop.svg; -import org.apache.fop.dom.svg.*; - import org.w3c.dom.svg.SVGElement; /** diff --git a/src/org/apache/fop/svg/TextPath.java b/src/org/apache/fop/svg/TextPath.java deleted file mode 100644 index 0e1c96799..000000000 --- a/src/org/apache/fop/svg/TextPath.java +++ /dev/null @@ -1,124 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; - -/** - * class representing svg:TextPath pseudo flow object. - * - */ -public class TextPath extends SVGObj implements TextElement { - - /** - * inner class for making TextPath objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a TextPath object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the TextPath object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new TextPath(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for TextPath objects - */ - public static FObj.Maker maker() { - return new TextPath.Maker(); - } - - /** - * constructs a TextPath object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected TextPath(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:textPath"; - } - - String text = ""; - protected void addCharacters(char data[], int start, int length) - { - text += new String(data, start, length - start); - } - - public SVGElement createTextElement() - { - SVGTextPathElementImpl graph = null; - String link = this.properties.get("xlink:href").getString(); - graph = new SVGTextPathElementImpl(link, text.trim()); - graph.setId(this.properties.get("id").getString()); - return graph; - } -} diff --git a/src/org/apache/fop/svg/Title.java b/src/org/apache/fop/svg/Title.java deleted file mode 100644 index a8f8cd89a..000000000 --- a/src/org/apache/fop/svg/Title.java +++ /dev/null @@ -1,119 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -/** - * - */ -public class Title extends SVGObj { - - /** - * inner class for making Title objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Title object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Title object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new Title(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Title objects - */ - public static FObj.Maker maker() { - return new Title.Maker(); - } - - /** - * the title string - */ - protected String text = ""; - - /** - * constructs a Title object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Title(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:title"; - } - - /** - * add characters to the string to display. - * - * @param data array of characters - * @param start start offset in character array - * @param length number of characters to add - */ - protected void addCharacters(char data[], int start, int length) { - this.text += new String(data, start, length - start); - } -} diff --git a/src/org/apache/fop/svg/Use.java b/src/org/apache/fop/svg/Use.java deleted file mode 100644 index 3254a13d0..000000000 --- a/src/org/apache/fop/svg/Use.java +++ /dev/null @@ -1,142 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; - -import org.w3c.dom.svg.SVGElement; -import org.w3c.dom.svg.SVGLength; - -/** - * - */ -public class Use extends SVGObj { - - /** - * inner class for making Use objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a Use object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the Use object - */ - public FObj make(FObj parent, - PropertyList propertyList) throws FOPException { - return new Use(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for Use objects - */ - public static FObj.Maker maker() { - return new Use.Maker(); - } - - /** - * constructs a Use object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected Use(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:use"; - } - - public SVGElement createGraphic() { - String str = this.properties.get("xlink:href").getString(); - SVGUseElementImpl graph = new SVGUseElementImpl(str); - graph.setStyle( - ((SVGStyle) this.properties.get("style")).getStyle()); - graph.setTransform( - ((SVGTransform) this.properties.get("transform")). - getTransform()); - graph.setId(this.properties.get("id").getString()); - SVGLength length; - length = ((SVGLengthProperty) this.properties.get("x")). - getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - graph.setX(new SVGAnimatedLengthImpl(length)); - length = ((SVGLengthProperty) this.properties.get("y")). - getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - graph.setY(new SVGAnimatedLengthImpl(length)); - length = ((SVGLengthProperty) this.properties.get("width")). - getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - graph.setWidth(new SVGAnimatedLengthImpl(length)); - length = ((SVGLengthProperty) this.properties.get("height")). - getSVGLength(); - if (length == null) - length = new SVGLengthImpl(); - graph.setHeight(new SVGAnimatedLengthImpl(length)); - return graph; - } -} diff --git a/src/org/apache/fop/svg/VKern.java b/src/org/apache/fop/svg/VKern.java deleted file mode 100644 index 78c2f67c8..000000000 --- a/src/org/apache/fop/svg/VKern.java +++ /dev/null @@ -1,105 +0,0 @@ -/*-- $Id$ -- - - ============================================================================ - The Apache Software License, Version 1.1 - ============================================================================ - - Copyright (C) 1999 The Apache Software Foundation. All rights reserved. - - Redistribution and use in source and binary forms, with or without modifica- - tion, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - - 3. The end-user documentation included with the redistribution, if any, must - include the following acknowledgment: "This product includes software - developed by the Apache Software Foundation (http://www.apache.org/)." - Alternately, this acknowledgment may appear in the software itself, if - and wherever such third-party acknowledgments normally appear. - - 4. The names "FOP" and "Apache Software Foundation" must not be used to - endorse or promote products derived from this software without prior - written permission. For written permission, please contact - apache@apache.org. - - 5. Products derived from this software may not be called "Apache", nor may - "Apache" appear in their name, without prior written permission of the - Apache Software Foundation. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND - FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- - DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - This software consists of voluntary contributions made by many individuals - on behalf of the Apache Software Foundation and was originally created by - James Tauber . For more information on the Apache - Software Foundation, please see . - - */ - -package org.apache.fop.svg; - -// FOP -import org.apache.fop.fo.*; -import org.apache.fop.layout.Area; -import org.apache.fop.layout.FontState; -import org.apache.fop.apps.FOPException; - -import org.apache.fop.dom.svg.*; -import org.apache.fop.dom.svg.SVGArea; -/** - * - */ -public class VKern extends SVGObj { - - /** - * inner class for making VKern objects. - */ - public static class Maker extends FObj.Maker { - - /** - * make a VKern object. - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - * - * @return the VKern object - */ - public FObj make(FObj parent, PropertyList propertyList) throws FOPException - { - return new VKern(parent, propertyList); - } - } - - /** - * returns the maker for this object. - * - * @return the maker for VKern objects - */ - public static FObj.Maker maker() { - return new VKern.Maker(); - } - - /** - * constructs a VKern object (called by Maker). - * - * @param parent the parent formatting object - * @param propertyList the explicit properties of this object - */ - protected VKern(FObj parent, PropertyList propertyList) { - super(parent, propertyList); - this.name = "svg:vkern"; - } -} -- 2.39.5

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Πs)jMc-tWQN9Fb+VG`dRiiEyqngpo`jZTV98 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